Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
383 views

Module 2 - Application Development and Emerging Technologies

This document provides information about a course on application development and emerging technologies offered at Southern Leyte State University. The course overview includes the course code, title, credit units, term, mode of delivery, instructor, description, and outcomes. It then discusses the university's vision and mission. The document outlines the software development life cycle (SDLC) process, including the typical phases of planning, requirements, design, build, test, deploy, and maintain. It defines what the SDLC is and how it works to help reduce waste and increase efficiency. Finally, it provides more detail on some key phases in the SDLC like planning, requirements, and design.

Uploaded by

Arvin Buzon
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
383 views

Module 2 - Application Development and Emerging Technologies

This document provides information about a course on application development and emerging technologies offered at Southern Leyte State University. The course overview includes the course code, title, credit units, term, mode of delivery, instructor, description, and outcomes. It then discusses the university's vision and mission. The document outlines the software development life cycle (SDLC) process, including the typical phases of planning, requirements, design, build, test, deploy, and maintain. It defines what the SDLC is and how it works to help reduce waste and increase efficiency. Finally, it provides more detail on some key phases in the SDLC like planning, requirements, and design.

Uploaded by

Arvin Buzon
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 18

SOUTHERN LEYTE STATE UNIVERSITY

Main Campus, Sogod Southern Leyte

COLLEGE OF COMPUTER STUDIES AND


INFORMATION TECHNOLOGY

IT 308 – APPLICATION DEVELOPMENT


AND EMERGING TECHNOLOGIES

MODULE 2 – SDLC, MODELS AND METHODOLOGIES,


DESIGNING BASIC SDLC

BENIGNO E. AMBUS JR. / JUDE YMARI P. ANSALE

SLSU-CCSIT Main Campus


MODULE 2 APPLICATION DEVELOPMENT AND EMERGING TECHNOLOGIES
Module One: Application Development and Emerging Technologies

COURSE OVERVIEW

Course No.

Course Code IT 308

Descriptive Title Application Development and Emerging Technologies

Credit Units 3 Units

School Year/Term 2nd Semester, AY: 2021-2022

Mode of Delivery Online and Modular Learning, Simulation, PAPET

Name of Instructor/ Benigno E. Ambus Jr. / Jude Ymari Ansale


Professor

Course Description In this course the students will be introduced to the


emerging technologies; Understand what are the application
development process, methodologies and software
development life cycle on how they affect in the development
of the application; Design and build basic CRUD and complete
application diagrams using UML’s; Perform and apply their
learnings and knowledge into a complete system or
application.
Course Outcomes Knowledge (Think)
CO2. Analyze the application development process,
methodologies and life cycle.

SLSU Vision A high quality corporate university of Science, Technology and


Innovation.
SLSU Mission SLSU will: a. Develop Science, Technology and Innovation
leaders and professionals; b. Produce high-impact
technologies from research and innovations; c. Contribute to
sustainable development through responsive community
engagement programs; d. Generate revenues to be self-
sufficient and financially-viable;

SLSU-CCSIT Main Campus


MODULE GUIDE
In this module, we will continue our exploration in the world of Object-
Oriented Programming (OOP). OOP-based architecture proves to be
beneficial especially when dealing with special types of data which need to
be packaged into one entity. What would you do if you have so much
capability at your hand? Of course, you will use it. This ideology will be
covered in this module together with the principles that surround OOP. Hard
might it be at first, however their important role in OOP’s implementation
will be eviden

In the previous module we tackled the different emerging technologies, in this module we
will be recalling and discussing some topics from your previous subject (System Integration and
Architecture). Topics included are SLDC, methodologies, models and best practices.

You can download this module and learning material at:

Classroom: https://classroom.google.com/
3B: https://classroom.google.com/u/1/c/NDYyOTYwNzk1MjQ5 code: sc6buqk
3C: https://classroom.google.com/u/1/c/NDYyOTYwNzk1Nzc3 code: 3om2ovr
3E: https://classroom.google.com/u/1/c/NDYyOTY0ODU5NzM3 code: eq4k6ex
3F: https://classroom.google.com/u/1/c/NDYyOTY2NDU2MzQ4 code: b677mqa
3G: https://classroom.google.com/u/1/c/NDYyOTY2NDU2NzUy code: hnxytvy

Instructor’s Contacts

Email: benj.official0989@gmail.com
Mobile: +639307673736
Messenger: Benigno Entera Ambus

Email: jansale@southernleytestateu.edu.ph
Mobile: +639392644910
Messenger: Jude Ymari Paranas Ansale

CCSIT Hotline: +639120972073

PRE-TEST

 What is SDLC?
 What are the application development methodologies?
 Phases of software development.

LEARNING PLAN

SLSU-CCSIT Main Campus


Intended Learning Outcome:
I. Define what are the development process, methodologies and life cycles.
II. Distinguish the different application development process, methodologies
and life cycles.

Introduction

Software Development Life Cycle (SDLC) is a framework that defines the steps involved in
the development of software at each phase. It covers the detailed plan for building, deploying and
maintaining the software. SDLC, or Software Development Life Cycle, is a set of steps used to
create software applications. These steps divide the development process into tasks that can then
be assigned, completed, and measured.
SDLC defines the complete cycle of development i.e. all the tasks involved in planning,
creating, testing, and deploying a Software Product.

In this course, we will understand and learn the following:


1. What is SDLC?
2. Phases of Software Development, Models and Best Practices.
3. Application Development Methodologies.
4. Designing basic SDLC

Software Development Life Cycle

What is SDLC?

- is the application of standard business practices to building software applications. It’s


typically divided into six to eight steps: Planning, Requirements, Design, Build, Document,
Test, Deploy, Maintain. Some project managers will combine, split, or omit steps,
depending on the project’s scope. These are the core components recommended for all
software development projects.
- is a way to measure and improve the development process. It allows a fine-grain analysis
of each step of the process. This, in turn, helps companies maximize efficiency at each
stage. As computing power increases, it places a higher demand on software and
developers. Companies must reduce costs, deliver software faster, and meet or exceed
their customers’ needs. SDLC helps achieve these goals by identifying inefficiencies and
higher costs and fixing them to run smoothly.
- is a framework defining tasks performed at each step in the software development
process. The life cycle define a methodology for improving the quality of software and the
overall development process.

How the Software Development Life Cycle Works

SLSU-CCSIT Main Campus


The Software Development Life Cycle Many companies will subdivide these
simply outlines each task required to put steps into smaller units. Planning might be
together a software application. This helps to broken into technology research, marketing
reduce waste and increase the efficiency of research, and a cost-benefit analysis. Other
the development process. Monitoring also steps can merge with each other. The Testing
ensures the project stays on track, and phase can run concurrently with the
continues to be a feasible investment for the Development phase, since developers need
company. to fix errors that occur during testing.

Software Development Life Cycle Process For Example, A software has to be


developed and a team is divided to work on a
SDLC is a process that defines the feature of the product and is allowed to work
various stages involved in the development as they want. One of the developers decides
of software for delivering a high-quality to design first whereas the other decides to
product. SDLC stages cover the complete life code first and the other on the
cycle of a software i.e. from inception to documentation part.
retirement of the product. This will lead to project failure because of
Adhering to the SDLC process leads which it is necessary to have a good
to the development of the software in a knowledge and understanding among the
systematic and disciplined manner. team members to deliver an expected
product.
Purpose:
Purpose of SDLC is to deliver a high-quality
product which is as per the customer’s
requirement.
SDLC has defined its phases as,
Requirement gathering, Designing, Coding,
Testing, and Maintenance. It is important to
adhere to the phases to provide the Product
in a systematic manner.

Phases included in the Software Development Life


Cycle
Generally, the software development life cycle (SDLC) comprises the step by step processes of
developing the software.

SLSU-CCSIT Main Campus


Planning
In the Planning phase, project customers, developers, subject matter
leaders evaluate the terms of the project. experts, and sales reps.
This includes calculating labor and material Planning should clearly define the
costs, creating a timetable with target goals, scope and purpose of the application. It plots
and creating the project’s teams and the course and provisions the team to
leadership structure. effectively create the software. It also sets
Planning can also include feedback boundaries to help keep the project from
from stakeholders. Stakeholders are anyone expanding or shifting from its original
who stands to benefit from the application. purpose.
Try to get feedback from potential
Define Requirements
Defining requirements is considered Requirements also include defining
part of planning to determine what the the resources needed to build the project.
application is supposed to do and its For example, a team might develop software
requirements. For example, a social media to control a custom manufacturing machine.
application would require the ability to The machine is a requirement in the process.
connect with a friend. An inventory program
might require a search feature.
Design and Prototyping
The Design phase models the way a language, but including methods of solving
software application will work. Some aspects problems and performing tasks in the
of the design include: application
Communications – Defines the methods
Architecture – Specifies programming that the application can communicate with
language, industry practices, overall design, other assets, such as a central server or other
and use of any templates or boilerplate instances of the application
User Interface – Defines the ways Security – Defines the measures taken to
customers interact with the software, and secure the application, and may include SSL
how the software responds to input traffic encryption, password protection, and
Platforms – Defines the platforms on which secure storage of user credentials
the software will run, such as Apple, Prototyping can be a part of the
Android, Windows version, Linux, or even Design phase. A prototype is like one of the
gaming consoles early versions of software in the Iterative
Programming – Not just the programming software development model. It

SLSU-CCSIT Main Campus


demonstrates a basic idea of how the expensive to change the Prototype phase
application looks and works. This “hands-on” than to rewrite code to make a change in the
design can be shown to stakeholders. Use Development phase.
feedback o improve the application. It’s less

Software Development
This is the actual writing of the as waiting for test results or compiling code
program. A small project might be written by so an application can run. SDLC can
a single developer, while a large project anticipate these delays so that developers
might be broken up and worked by several can be tasked with other duties.
teams. Use an Access Control or Source Code Software developers appreciate
Management application in this phase. These instructions and explanations.
systems help developers track changes to the Documentation can be a formal process,
code. They also help ensure compatibility including wiring a user guide for the
between different team projects and to make application. It can also be informal, like
sure target goals are being met. comments in the source code that explain
The coding process includes many why a developer used a certain procedure.
other tasks. Many developers need to brush Even companies that strive to create
up on skills or work as a team. Finding and software that’s easy and intuitive benefit
fixing errors and glitches is critical. Tasks from the documentation.
often hold up the development process, such

Testing
It’s critical to test an application processing. The testing phase helps reduce
before making it available to users. Much of the number of bugs and glitches that users
the testing can be automated, like security encounter. This leads to a higher user
testing. Other testing can only be done in a satisfaction and a better usage rate.
specific environment – consider creating a Testing involves in almost every
simulated production environment for phase in the modern SDLC methodologies.
complex deployments. Testing should ensure Once the coding is done, it undergoes testing
that each function works correctly. Different for quality assurance.  Testing includes
parts of the application should also be tested various functional testing like system testing,
to work seamlessly together—performance acceptance testing, unit testing, integration
test, to reduce any hangs or lags in testing, and also non-functional testing.

SLSU-CCSIT Main Campus


Deployment
In the deployment phase, the Deployment can also be complex.
application is made available to users. Many Upgrading a company-wide database to a
companies prefer to automate the newly-developed application is one example.
deployment phase. This can be as simple as a Because there are several other systems
payment portal and download link on the used by the database, integrating the
company website. It could also be upgrade can take more time and effort.
downloading an application on a
smartphone.

Operations and Maintenance


At this point, the development cycle errors need to be resolved, which can spawn
is almost finished. The application is done new development cycles.
and being used in the field. The Operation In addition to bug fixes, models like
and Maintenance phase is still important, Iterative development plan additional
though. In this phase, users discover bugs features in future releases. For each new
that weren’t found during testing. These release, a new Development Cycle can be
launched.
SDLC Models & Methodologies

Waterfall
The Waterfall Model was the first SDLC approach that was used for software
Process Model to be introduced. It is also development.
referred to as a linear-sequential life cycle The waterfall Model illustrates the
model. It is very simple to understand and software development process in a linear
use. In a waterfall model, each phase must sequential flow. This means that any phase
be completed before the next phase can in the development process begins only if
begin and there is no overlapping in the the previous phase is complete. In this
phases. The Waterfall model is the earliest waterfall model, the phases do not overlap.

SLSU-CCSIT Main Campus


The Waterfall SDLC model is the classic method of development. As each phase completes, the
project spills over into the next step. This is a tried-and-tested model, and it works. One
advantage of the Waterfall model is each phase can be evaluated for continuity and feasibility
before moving on. It’s limited in speed, however, since one phase must finish before another can
begin.

Agile
Agile SDLC model is a combination of Agile model believes that every
iterative and incremental process models project needs to be handled differently and
with focus on process adaptability and the existing methods need to be tailored to
customer satisfaction by rapid delivery of best suit the project requirements. In Agile,
working software product. Agile Methods the tasks are divided to time boxes (small
break the product into small incremental time frames) to deliver specific features for a
builds. These builds are provided in release.
iterations. Each iteration typically lasts from
about one to three weeks.

The AGILE model was designed by software highly responsive to customer


developers to put customer needs first. This feedback. Agile seeks to release software
method focuses strongly on user experience cycles quickly, to respond to a changing
and input. This solves much of the problems market. This requires a strong team with
of older applications that were arcane and excellent communication. It can also lead to a
cumbersome to use. Plus, it makes the

SLSU-CCSIT Main Campus


project going off-track by relying too heavily on customer feedback.

Iterative
In the Iterative model, iterative requirements. Instead, development begins
process starts with a simple by specifying and implementing just part of
implementation of a small set of the the software, which is then reviewed to
software requirements and iteratively identify further requirements. This process
enhances the evolving versions until the is then repeated, producing a new version
complete system is implemented and ready of the software at the end of each iteration
to be deployed. of the model.
An iterative life cycle model does not
attempt to start with a full specification of

In the Iterative development model, developers create an initial basic version of the software
quickly. Then they review and improve on the application in small steps (or iterations). This
approach is most often used in very large applications. It can get an application up and functional
quickly to meet a business need.

DevOps

SLSU-CCSIT Main Campus


The DevOps security model incorporates operations – the people who use the software – into the
development cycle. Like Agile, this seeks to improve the usability and relevance of applications.
One significant advantage of this model is the feedback from actual software users on the design
and implementation steps. One drawback is that it requires active collaboration and
communication. Those additional costs can be offset by automating parts of the development
process.

V-Model
The V-model is an SDLC model association of a testing phase for each
where execution of processes happens in a corresponding development stage. This
sequential manner in a V-shape. It is also means that for every single phase in the
known as Verification and Validation development cycle, there is a directly
model. associated testing phase. This is a highly-
The V-Model is an extension of the disciplined model and the next phase starts
waterfall model and is based on the only after completion of the previous phase.

V-shaped model is inspired by the Waterfall model, wherein V stands for Validation and
Verification. Each development stage has a parallel testing stage. Testing is done at each
and every stage of development. The development team moves to the next stage only
after the previous stage is completed.

Spiral SDLC
The spiral model combines the idea waterfall model with a very high emphasis
of iterative development with the systematic, on risk analysis. It allows incremental
controlled aspects of the waterfall model. releases of the product or incremental
This Spiral model is a combination of refinement through each iteration around
iterative development process model and the spiral.
sequential linear development model i.e. the

SLSU-CCSIT Main Campus


The Spiral model is considered to be the most flexible software development life cycle model
mostly adopted for full-blown projects. The development process is divided into small stages for
easier follow-up. This methodology passes through four different phases-mainly planning, risk
analysis, engineering, and evaluation. The spiral model helps to develop a highly customized
project.

RAD
The RAD (Rapid Application Rapid Application Development
Development) model is based on focuses on gathering customer
prototyping and iterative development with requirements through workshops or focus
no specific planning involved. The process groups, early testing of the prototypes by
of writing the software itself involves the the customer using iterative concept, reuse
planning required for developing the of the existing prototypes (components),
product. continuous integration and rapid delivery.

SLSU-CCSIT Main Campus


Rapid application development is a incorporate the changes within the
software development methodology that development process.
uses minimal planning in favor of rapid RAD projects follow iterative and
prototyping. A prototype is a working incremental model and have small teams
model that is functionally equivalent to a comprising of developers, domain experts,
component of the product. customer representatives and other IT
In the RAD model, the functional resources working progressively on their
modules are developed in parallel as component or prototype.
prototypes and are integrated to make the The most important aspect for this
complete product for faster product model to be successful is to make sure that
delivery. Since there is no detailed the prototypes developed are reusable.
preplanning, it makes it easier to

Big Bang
The Big Bang model is an SDLC very little planning required. Even the
model where we do not follow any specific customer is not sure about what exactly he
process. The development just starts with wants and the requirements are
the required money and efforts as the input, implemented on the fly without much
and the output is the software developed analysis.
which may or may not be as per customer
Usually this model is followed for
requirement. This Big Bang Model does not
small projects where the development
follow a process/procedure and there is a
teams are very small.

SLSU-CCSIT Main Campus


The Big Bang Model comprises of This model is ideal for small projects
focusing all the possible resources in the with one or two developers working
software development and coding, with together and is also useful for academic or
very little or no planning. The requirements practice projects. It is an ideal model for the
are understood and implemented as they product where requirements are not well
come. Any changes required may or may understood and the final release date is not
not need to revamp the complete software. given.

Software Prototype
The Software Prototyping refers to model, as it enables to understand customer
building software application prototypes requirements at an early stage of
which displays the functionality of the development. It helps get valuable feedback
product under development, but may not from the customer and helps software
actually hold the exact logic of the original designers and developers understand about
software. what exactly is expected from the product
Software prototyping is becoming under development.
very popular as a software development

Prototype is a working model of them out before implementation. It also


software with some limited functionality. helps understand the requirements which
The prototype does not always hold the are user specific and may not have been
exact logic used in the actual software considered by the developer during product
application and is an extra effort to be design.
considered under effort estimation. Following is a stepwise approach
Prototyping is used to allow the explained to design a software prototype.
users evaluate developer proposals and try

SLSU-CCSIT Main Campus


Basic Requirement Identification
This step involves understanding the very basics product requirements especially in
terms of user interface. The more intricate details of the internal design and external aspects like
performance and security can be ignored at this stage.

Developing the initial Prototype


The initial Prototype is developed in this stage, where the very basic requirements are
showcased and user interfaces are provided. These features may not exactly work in the same
manner internally in the actual software developed. While, the workarounds are used to give the
same look and feel to the customer in the prototype developed.

Review of the Prototype


The prototype developed is then presented to the customer and the other important
stakeholders in the project. The feedback is collected in an organized manner and used for
further enhancements in the product under development.

Revise and Enhance the Prototype


The feedback and the review side is a detailed elaboration of a specific
comments are discussed during this stage function or a sub system in the product.
and some negotiations happen with the The purpose of both horizontal and
customer based on factors like – time and vertical prototype is different. Horizontal
budget constraints and technical feasibility prototypes are used to get more
of the actual implementation. The changes information on the user interface level and
accepted are again incorporated in the new the business requirements. It can even be
Prototype developed and the cycle repeats presented in the sales demos to get
until the customer expectations are met. business in the market. Vertical prototypes
Prototypes can have horizontal or are technical in nature and are used to get
vertical dimensions. A Horizontal prototype details of the exact functioning of the sub
displays the user interface for the product systems. For example, database
and gives a broader view of the entire requirements, interaction and data
system, without concentrating on internal processing loads in a given sub system.
functions. A Vertical prototype on the other

Software Prototyping - Types


There are different types of software prototypes used in the industry. Following are the
major software prototyping types used widely −
Throwaway/Rapid Prototyping
Throwaway prototyping is also called as rapid or close ended prototyping. This type of
prototyping uses very little efforts with minimum requirement analysis to build a prototype.
Once the actual requirements are understood, the prototype is discarded and the actual system
is developed with a much clear understanding of user requirements.
Evolutionary Prototyping
Evolutionary prototyping also called as breadboard prototyping is based on building
actual functional prototypes with minimal functionality in the beginning. The prototype
developed forms the heart of the future prototypes on top of which the entire system is built. By
using evolutionary prototyping, the well-understood requirements are included in the prototype
and the requirements are added as and when they are understood.
Incremental Prototyping
Incremental prototyping refers to building multiple functional prototypes of the various
sub-systems and then integrating all the available prototypes to form a complete system.

SLSU-CCSIT Main Campus


Extreme Prototyping
Extreme prototyping is used in the services are implemented and integrated to
web development domain. It consists of the final prototype. This process is called
three sequential phases. First, a basic Extreme Prototyping used to draw
prototype with all the existing pages is attention to the second phase of the
presented in the HTML format. Then the process, where a fully functional UI is
data processing is simulated using a developed with very little regard to the
prototype services layer. Finally, the actual services.

Software Prototyping - Application


Software Prototyping is most useful Software that involves too much of
in development of systems having high level data processing and most of the
of user interactions such as online systems. functionality is internal with very little user
Systems which need users to fill out forms interface does not usually benefit from
or go through various screens before data is prototyping. Prototype development could
processed can use prototyping very be an extra overhead in such projects and
effectively to give the exact look and feel may need lot of extra efforts.
even before the actual software is
developed.

Best Practices Of Software Development


In addition to the models and stages of software development, there are a few other
helpful practices. These can be applied to part or all of the development cycle.

Source Control
Source Control is a security plan to encrypted connection to a cloud-based
secure your working code. Implement development environment.
Source Control by keeping the code in a Source Control applications include a
single location, with secure and logged change management system to track work
access. This could be a physical location done by individuals or teams. As with any
where files are stored and accessed in a storage, use a backup system to record
single room in the building. It could also be a development progress in case of a disaster.
virtual space where users can log in with an

Continuous Integration
Continuous Integration evolved out significant challenges at the end when
of a case of what not to do. CI works to make developers stitched the application together.
sure each component is compatible through Continuous Integration ensures all teams use
the whole development cycle. Before CI, similar programming languages and
different teams would build their own libraries, and helps prevent conflicts and
projects independently. This created duplicated work.

SDLC Management Systems


A software development cycle also add analytics, bug-tracking, and work
management system works to control and management systems. These metrics or KPI’s
manage each step of the development cycle. can be used to improve parts of the cycle
Management Systems add transparency to that aren’t running efficiently.
each phase and the project as a whole. They

SLSU-CCSIT Main Campus


ASSESSMENT

Test I
1. In your own opinion, why you should learn software development life cycle?
2. Do you think learning SDLC helps you improve your software development? Why?
3. Which of the model would you prefer to use in software development? Why?
4. Define is the difference between waterfall and agile?
5. How software development life cycle works?

Test II

1. Let see, you have your own IT company and you want your company to be unique. How
would you create your own software development life cycle? Enumarate development
processes and give an explaination to each of the process.
2. Draw a diagram of your own software development life cycle.

 TEST
POST

1. What are the different types of models?


2. A model is based on prototyping and iterative development with no specific planning
involved.
3. Also called as breadboard prototyping is based on building actual functional prototypes
with minimal functionality in the beginning The process of analysis of large volumes of
diverse data sets, using advanced analytic techniques.
4. What are the types of software prototyping?
5. In addition to the models and stages of software development, there are a few other
helpful practices. These can be applied to part or all of the development cycle. What are
they?
6. It is a security plan to secure your working code?
7. Refers to building software application prototypes which displays the functionality of the
product under development, but may not actually hold the exact logic of the original
software.
8. It evolved out of a case of what not to do?
9. It was the first Process Model to be introduced. It is also referred to as a linear-sequential
life cycle model.
10. It is a way to measure and improve the development process?

11. Name
REFERENCES

1. Striebig, B., Ogundipe, A. A., & Papadakis, M. (2015). Engineering Applications in


Sustainable Design and Development (1st ed.). Cengage Learning.

SLSU-CCSIT Main Campus


2. Price, M. J. (2019). C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development: Build
applications with C#, .NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using
Visual Studio Code, 4th Edition (Illustrated ed.). Packt Publishing.
3. Zhong, X. (2015). Development and Application of Offline Learning System in College
Teaching. International Journal of Emerging Technologies in Learning (IJET), 10(5), 35.
https://doi.org/10.3991/ijet.v10i5.4794
4. M. (2019). Emerging Technologies for Economic Development (Science, Technology and
Innovation Studies) (1st ed. 2019 ed.). Springer.
5. Udell, C., & Woodill, G. (2019). Shock of the New: The Challenge and Promise of Emerging
Learning Technologies. Association for Talent Development.
6. Blokdyk, G. (2019). Software Development Life Cycle SDLC A Complete Guide - 2020
Edition. Emereo Pty Limited.
7. Blokdyk, G. (2021). Application Development Process A Complete Guide - 2019
Edition. 5STARCooks.
8. Langer, A. M. (2016). Guide to Software Development: Designing and Managing the
Life Cycle (2nd ed.). Springer.
9. Percival, H., & Gregory, B. (2020). Architecture Patterns with Python: Enabling Test-
Driven Development, Domain-Driven Design, and Event-Driven Microservices (1st
ed.). O’Reilly Media.
10. Douglass, B. P. (2021). Agile Model-Based Systems Engineering Cookbook: Improve
system development by applying proven recipes for effective agile systems engineering.
Packt Publishing.
11. Muller, G. (2021). System Modeling and Analysis: A Practical Approach. Retrieve from
SystemModelingAndAnalysisBook.pdf (gaudisite.nl)
12. Wasson, C.S. (2006). System Analysis, Design, and Development Concepts, Principles,
and Practices. Retrieve from System Analysis, Design, and Development : Concepts,
Principles, and Practices (zu.edu.jo)

Internet Sources

13. https://www.qat.com/9-emerging-technologies/
14. https://phoenixnap.com/blog/software-development-life-cycle
15. https://www.conceptdraw.com/How-To-Guide/uml-diagram-types-list
16. https://kissflow.com/low-code/rad/types-of-application-development-methodologies/
#:~:text=Application%20development%20is%20the%20process,by%20a%20single
%20freelance%20developer.&text=Application%20development%20is%20closely
%20linked,life%2Dcycle%20(SDLC).

SLSU-CCSIT Main Campus

You might also like