0% found this document useful (0 votes)
60 views5 pages

SDLC - Agile Model - Quitoriano

The document describes the 5 steps in the agile model which are brainstorming, design, development, quality assurance, and deployment. It provides details about each step and how they work together in an iterative process to develop software using client feedback.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views5 pages

SDLC - Agile Model - Quitoriano

The document describes the 5 steps in the agile model which are brainstorming, design, development, quality assurance, and deployment. It provides details about each step and how they work together in an iterative process to develop software using client feedback.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

NAME: MAYNARD M.

QUITORIANO DATE: MAY 13, 2023


YEAR & COURSE: 1st – BSIT DEADLINE: MAY 15, 2023

AGILE MODEL

The Agile Software Development Life Cycle (SDLC) is a dynamic methodology that combines iterative
and incremental process models to enhance process adaptability and ensure customer satisfaction through the
rapid delivery of a functional software product. Unlike traditional approaches, Agile SDLC breaks down the
product into small, manageable increments, which are then further divided into iterations.
One notable advantage of the Agile SDLC model is its emphasis on client involvement throughout the
development process. By providing working software at the end of each iteration, clients have the opportunity
to observe tangible progress and provide timely feedback. This interactive collaboration allows for a greater
degree of transparency and ensures that the final product aligns with the client's expectations and requirements.
Consequently, the Agile SDLC model promotes customer satisfaction and minimizes the risk of misalignment
between the delivered software and the client's vision.
However, along with its benefits, the Agile SDLC model does present some challenges. One of the key
drawbacks is the absence of well-defined requirements at the initial stages. This can make it difficult to estimate
the necessary resources and accurately project the development cost. The iterative nature of Agile SDLC allows
for flexibility and adaptation, but it can also lead to scope creep if the requirements are not clearly defined and
managed. Project teams must be vigilant in maintaining a balance between accommodating changes and
ensuring that the project stays on track, both in terms of time and budget. To mitigate these challenges, Agile
SDLC relies heavily on effective communication and collaboration among team members. Close coordination
between developers, stakeholders, and clients is vital to continuously refine and prioritize requirements. This
iterative approach allows for regular reassessment and adjustment of goals, leading to an optimized final
product that meets the client's evolving needs.
These are the steps in the agile model:
STEP 1: BRAINSTORM (REQUIREMENTS ANALYSIS)
During the initial stage of brainstorming or gathering requirements, it is of utmost importance to thoroughly
define and outline the specific requirements for the project at hand. This crucial phase involves delving into the
core aspects of the project, identifying and elucidating the business opportunities that it presents. By
comprehensively understanding these opportunities, you can effectively strategize and plan the allocation of
time, effort, and resources needed to successfully bring the project to fruition. In this phase, it becomes
imperative to thoroughly analyze and evaluate the technical and economic feasibility of the project. This entails
a meticulous examination of the technical capabilities required to develop and implement the project, as well as
an assessment of the financial viability and potential return on investment. By conducting a detailed evaluation,
you can gain valuable insights into the project's technical constraints, potential challenges, and the financial
implications associated with its implementation.

STEP 2: DESIGN (DESIGN DOCUMENT & PROTOTYPE)


In the Agile model, Phase 2 involves the process of designing and developing software based on the predefined
requirements. Once the project has been identified, collaboration with stakeholders becomes crucial to clearly
define and establish the necessary requirements. To visualize and communicate the planned work for
incorporating new features and their integration into the existing system, two effective tools can be utilized: the
user flow diagram and the high-level UML diagram. The user flow diagram serves as a visual representation of
the intended user journey within the software system. By mapping out the various steps and interactions
involved, it provides a clear overview of how users will navigate through the system and accomplish their tasks.
This diagram acts as a valuable tool for illustrating the logical flow and sequence of actions, helping
stakeholders and development teams to gain a shared understanding of the software's functionality. In addition,
the high-level UML (Unified Modeling Language) diagram is employed to depict the structural and behavioral
aspects of the software system. It offers a comprehensive overview of the key components, their relationships,
and the interactions among them. This diagram helps stakeholders and development teams to visualize the
system's architecture and design, ensuring a coherent and organized approach to software development. By
leveraging these visual aids during the design and development phase, stakeholders and development teams can
effectively communicate and collaborate on refining the requirements, ensuring that the software is designed
and developed in alignment with the project goals.

STEP 3: DEVELOPMENT (ITERATION, DEMO & FEED BACK)


And in step 3 once the team has established the requirements, the project enters an active phase. Designers and
developers initiate their work with the objective of delivering a functional product. This product undergoes
iterative stages of enhancement and refinement, beginning with a simple and minimalistic functionality.
Following the definition of requirements, designers and developers embark on their respective tasks, employing
their expertise to create and implement the necessary designs and software components. Their collaborative
efforts focus on developing a product that meets the desired objectives and fulfills the specified requirements.
Throughout the development process, the product evolves through a series of improvement stages. Initially, the
emphasis is placed on achieving basic functionality, ensuring that the core features are functional and
operational. This allows for the deployment of a preliminary version of the product, enabling stakeholders to
gain an initial understanding of its capabilities.
Subsequently, the product undergoes continuous refinement and enhancement. Feedback from users,
stakeholders, and ongoing testing helps to identify areas for improvement and guide the development team in
making iterative adjustments. This iterative approach ensures that the product grows and matures over time,
gradually incorporating additional features and functionality.
By prioritizing simplicity and minimalism in the early stages, the development team can streamline the initial
deployment and gain valuable insights from early user experiences. This approach facilitates an agile and
iterative development process, enabling the team to adapt, iterate, and improve the product based on real-world
feedback and evolving requirements.

STEP 4: QUALITY ASSURANCE (ITERATION, DEMO & FEED BACK)


During Phase 3 of the Agile model, which is the Testing phase, the Quality Assurance (QA) team plays a vital
role in evaluating the performance of the product and identifying any potential bugs or defects. In this phase, the
QA team conducts comprehensive testing procedures to ensure that the product meets the desired quality
standards. They employ various testing methodologies and techniques to assess the functionality, usability,
reliability, and performance of the software.
The primary objective of the QA team during this phase is to identify any issues or bugs that may hinder the
product's performance or user experience. They meticulously examine the product, executing test cases,
scenarios, and scripts to detect and report any deviations from the expected behavior. Furthermore, the QA team
collaborates closely with the development team to provide timely feedback and bug reports. This collaboration
helps in addressing and resolving the identified issues promptly, ensuring that the product reaches a high level
of quality before its final release. By conducting rigorous testing and actively searching for bugs, the QA team
contributes significantly to the overall product quality. Their efforts help in identifying and rectifying any
potential issues, allowing for a more reliable and seamless user experience.
STEP 5: DEPLOYMENT (PRODUCTION AND TECHNICAL SUPPORT)
In the final phase of the Agile model, known as the Deployment and Feedback phase, the focus shifts towards
integrating and delivering the working iteration of the product into production. Once the product has been
released, the subsequent step involves gathering feedback from various sources.
During this phase, the development team ensures the smooth integration of the developed features and
functionalities into the production environment. They follow established processes and methodologies to deploy
the working iteration of the product, making it available for use by end-users or customers.
After the product has been deployed, the team actively seeks feedback from customers, stakeholders, and users.
This feedback serves as valuable input for evaluating the product's performance, usability, and overall
satisfaction. The team meticulously reviews the feedback received, analyzing it to gain insights into areas of
improvement and potential enhancements.

By considering customer and stakeholder feedback, the team identifies any gaps or shortcomings in the
product's current state. They use this feedback as a valuable resource to refine and iterate on the requirements
for the next iteration or release. Incorporating customer and stakeholder feedback into the requirements ensures
that the subsequent iterations address their needs and expectations more effectively.
Through this continuous feedback loop, the Agile team can iteratively improve the product, responding to
changing requirements and market demands. By actively engaging with feedback and aligning it with the
development process, the team can enhance the product's quality, usability, and overall user satisfaction.

The Agile model is particularly suitable in the following scenarios:

- When frequent changes are required: Agile is well-suited for projects where requirements are likely to change
or evolve during the development process. It allows for flexibility and adaptive planning, enabling teams to
respond efficiently to changing needs.

- When a highly qualified and experienced team is available: Agile methodologies rely on self-organizing,
cross-functional teams. Having a skilled and experienced team that can collaborate effectively is crucial for the
success of Agile projects.

-When regular customer collaboration is possible: Agile promotes close collaboration between the development
team and the customer or stakeholders. If the customer is actively involved and willing to participate in regular
meetings, provide feedback, and be engaged throughout the project, Agile can be highly effective.

-When the project size is small: Agile methodologies are often well-suited for small to medium-sized projects.
The iterative and incremental nature of Agile allows for efficient management and quick delivery of tangible
results.

It's important to note that while these are common scenarios for using Agile, the suitability of any development
approach depends on the specific project requirements, organizational context, and team dynamics. Each project
should be evaluated individually to determine the most appropriate methodology to ensure successful project
delivery.

Advantages (Pros) of Agile Method:


- Frequent Delivery: Agile emphasizes delivering working increments of the product at regular
intervals, providing early and continuous value to the stakeholders. Face-to-
- Face Communication with clients: Agile methodologies encourage direct and regular interaction
between the development team and the client. This facilitates effective communication, quick
feedback, and a better understanding of client requirements.
- Efficient design and fulfilling business requirements: Agile allows for iterative development and
continuous improvement. It enables the development team to respond to changing business needs
and prioritize the most valuable features, resulting in a solution that aligns closely with the business
requirements.
- Flexibility for changes: Agile embraces change and welcomes modifications to requirements, even
during the development process. This flexibility allows teams to adapt and respond to evolving
customer needs and market conditions.
Reduced development time: Agile promotes a time-boxed and iterative approach, where
development is done in short cycles or sprints. This iterative process, combined with continuous
feedback, helps in reducing overall development time and enables earlier product delivery.

Disadvantages (Cons) of Agile Model:


- Lack of formal documentation: Agile methodologies often prioritize working software over
comprehensive documentation. This can create challenges in maintaining a detailed record of project
decisions and can lead to confusion, especially when team members change or new stakeholders join
the project.
- Difficulty in project maintenance: With Agile's focus on rapid development and frequent iterations,
there can be less emphasis on extensive documentation for future maintenance. Once the
development team moves on to other projects, maintaining and updating the finished project can
become challenging due to limited documentation.
It's important to note that while Agile offers numerous advantages, it may not be the most suitable
approach for every project or organization. Careful consideration should be given to project
requirements, team dynamics, and the level of documentation needed to determine the best-fit
development methodology.

You might also like