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

Agile Model 1

Uploaded by

maang9598
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 views22 pages

Agile Model 1

Uploaded by

maang9598
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/ 22

1. Introduction.................................................................................................

1
2.1 Definition................................................................................................1
2.2 Detail of Phases......................................................................................1
2.3 Diagram..................................................................................................1
2.4 Pros and Cons.........................................................................................2
3. Kanban.........................................................................................................3
3.1 Definition................................................................................................3
3.2 Detail of Phases......................................................................................3
3.3 Diagram..................................................................................................3
3.4 Pros and Cons.........................................................................................4
4. Extreme Programming (XP).........................................................................4
4.1 Definition................................................................................................5
4.2 Detail of Phases......................................................................................5
4.3 Diagram..................................................................................................5
4.4 Pros and Cons.........................................................................................6
5. Feature-Driven Development (FDD)............................................................6
5.1 Definition................................................................................................7
5.2 Detail of Phases......................................................................................7
5.3 Diagram..................................................................................................7
5.4 Pros and Cons.........................................................................................8
6. Lean Software Development........................................................................8
6.1 Definition................................................................................................8
6.2 Detail of Phases......................................................................................8
6.3 Diagram..................................................................................................9
6.4 Pros and Cons.........................................................................................9
7. Crystal Clear..............................................................................................10
7.1 Definition..............................................................................................10
7.2 Detail of Phases....................................................................................10
7.4 Pros and Cons.......................................................................................11
8. Dynamic Systems Development Method (DSDM)......................................11
8.1 Definition..............................................................................................12
8.2 Detail of Phases....................................................................................12
8.3 Diagram................................................................................................12
8.4 Pros and Cons.......................................................................................13
9. Summary...................................................................................................13
10. References of Topics................................................................................16
1. Introduction

Agile software development methodologies are widely adopted frameworks aimed


at delivering high-quality software iteratively and collaboratively. This document
explores prominent Agile models including Scrum, Kanban, Extreme Programming
(XP), Feature-Driven Development (FDD), Lean Software Development, Crystal
Clear, and Dynamic Systems Development Method (DSDM). Each model is detailed
with its phases, diagrams, advantages, disadvantages, and relevant questions.

2.Scrum

2.1 Definition

Scrum is an iterative and incremental Agile methodology that focuses on delivering


small, working pieces of software through time-boxed sprints. It relies on a
framework of roles, events, and artifacts to ensure continuous delivery and
improvement. The Scrum model is an agile framework for managing and
completing complex projects, typically used in software development but applicable
to other fields. Scrum focuses on iterative progress through short, time-boxed
periods known as sprints, where teams work on specific features or tasks. It
emphasizes collaboration, adaptability, and delivering value incrementally

2.2 Detail of Phases

1. Sprint Planning: The team collaborates to define the tasks and objectives
for the sprint, typically lasting 2-4 weeks. A clear sprint goal is set.
2. Daily Scrum: A daily 15-minute stand-up meeting where team members
discuss progress, challenges, and plans for the day. It ensures alignment and
transparency.
3. Sprint Execution: The team works on the tasks defined in the sprint
backlog, adhering to the sprint goal.
4. Sprint Review: The completed work is demonstrated to stakeholders for
feedback and approval, fostering collaboration.
5. Sprint Retrospective: The team reflects on the sprint to identify successes
and areas for improvement, enhancing future iterations.
2.3 Diagram

GeeksforGeeks. Accessed December 31, 2024.

https://www.geeksforgeeks.org/.

2.4 Pros and Cons


 Pros:
o Enhances communication through regular meetings.
o Frequent feedback ensures alignment with stakeholder expectations.
o Iterative testing improves overall product quality.
 Cons:
o Requires consistent team commitment and collaboration.
o Challenging to implement for teams new to Agile principles.
o Success depends heavily on team dynamics and expertise.
3. Kanban

3.1 Definition

Kanban is a visual workflow management methodology that emphasizes continuous


delivery and adaptability. It focuses on limiting work in progress (WIP) to optimize
efficiency and reduce bottlenecks. Unlike Scrum, which uses time-boxed sprints,
Kanban is more flexible and operates on a continuous flow basis. The primary goal
is to improve the flow of work by identifying bottlenecks and reducing cycle times.
Here’s an overview of the key components of Kanban

3.2 Detail of Phases

1. Visualize Workflow: Create a Kanban board with columns like "To Do," "In
Progress," and "Done." Tasks are moved between columns as they progress.
2. Limit Work in Progress: Define a maximum number of tasks allowed in
each column to prevent resource overload.
3. Manage Flow: Continuously monitor the movement of tasks to ensure a
smooth workflow and identify bottlenecks.
4. Feedback Loops: Conduct regular meetings to review the efficiency of the
workflow and make necessary adjustments.
5. Continuous Improvement: Use data from task tracking to implement
incremental improvements.

3.3 Diagram
“Agile models” Wikipedia, December 29, 2024.

https://en.wikipedia.org/wiki/Agilemodels.

3.4 Pros and Cons

 Pros:
o Transparent workflow provides clarity for all team members.
o Adaptable to changing priorities without disrupting ongoing work.
o Minimizes idle time and maximizes throughput

 Cons:
o Requires a disciplined approach to maintain WIP limits.
o May lead to delays if not properly managed.
o Less structured, making it unsuitable for complex projects.
4. Extreme Programming (XP)

4.1 Definition

Extreme Programming (XP) is a disciplined Agile methodology that emphasizes


technical excellence and frequent delivery. It focuses on practices like pair
programming, continuous integration, and test-driven development (TDD) to
produce high-quality code. Extreme Programming (XP) is an agile software
development methodology that emphasizes customer satisfaction, flexibility, and
high-quality code. XP aims to improve the software development process by
focusing on engineering practices that enhance collaboration, encourage continuous
feedback, and promote sustainable practices. It is particularly suitable for projects
with rapidly changing requirements and were delivering high-quality, functional
software quickly is crucial.

4.2 Detail of Phases

1. Planning: Define user stories and prioritize them based on customer needs.
Develop release plans with clear deliverables.
2. Design: Focus on creating simple, efficient designs. Employ design patterns
to enhance scalability and maintainability.
3. Coding: Use pair programming and collective code ownership to write clean,
efficient code collaboratively.
4. Testing: Conduct continuous testing, including unit, integration, and
acceptance tests, to ensure code quality.
5. Release: Deliver small, functional increments frequently to gather feedback
and adapt as needed.

4.3 Diagram
GeeksforGeeks. Accessed December 31, 2024.

https://www.geeksforgeeks.org/.

4.4 Pros and Cons

 Pros:
o High-quality code due to rigorous testing.
o Encourages frequent customer feedback and adaptation.
o Promotes team collaboration and knowledge sharing.
 Cons:
o Resource-intensive due to continuous testing and pair programming.
o Requires a disciplined team with strong technical skills.
o Less suitable for large, complex teams.
5. Feature-Driven Development (FDD)

5.1 Definition

Feature-Driven Development (FDD) is a client-centric Agile methodology that


emphasizes delivering tangible, working features in short iterations. It focuses on
upfront planning and incremental development. Feature-Driven Development
(FDD) is an agile software development methodology focused on delivering
tangible, working software features in a structured and predictable manner. FDD
emphasizes upfront planning and modeling, but its core approach is centered on
incremental, feature-based development, where each feature delivers a working
and functional piece of the system. It is particularly well-suited for larger teams and
projects where clear goals, collaboration, and predictability are critical.

5.2 Detail of Phases

1. Develop Overall Model: Create a high-level model of the system by


collaborating with stakeholders to understand requirements.
2. Build Feature List: Break down the system into a comprehensive list of
features based on the model.
3. Plan by Feature: Prioritize features and develop a detailed schedule for
their implementation.
4. Design by Feature: Create detailed designs for each feature, ensuring
alignment with system architecture.
5. Build by Feature: Develop and test features iteratively, integrating them
into the system.
6. Large-Scale Projects: It works well for larger teams or projects where
the complexity of the system requires clear organization and planning.

7. Stable or Well-Defined Domains: FDD is ideal for projects where the


domain is relatively stable or well-understood, allowing for a detailed
domain model and feature list to be created upfront.
5.3 Diagram

Custom Web & Mobile Development Company - New Line Technologies,

https://newline.tech/.

5.4 Pros and Cons

 Pros:
o Structured approach with clear deliverables.
o Scales effectively for large teams and projects.
o Focuses on client needs and feature-driven progress.
 Cons:
o Requires extensive upfront planning and modeling.
o Developer-focused, less emphasis on end-user interaction.
o Less adaptable to rapidly changing requirements.
6. Lean Software Development

6.1 Definition

Lean Software Development is an Agile methodology inspired by lean


manufacturing principles. It focuses on delivering maximum value to the
customer by eliminating waste and optimizing development processes.

6.2 Detail of Phases

Lean Software Development (LSD) is an agile methodology that focuses


on optimizing efficiency, reducing waste, and improving the flow of work in
software development processes. It is inspired by the principles of Lean
manufacturing, particularly the Toyota Production System, and applies those
principles to software development to create value more quickly, with fewer
resources, and at lower cost. The goal is to build software efficiently by
eliminating unnecessary steps, reducing cycle time, and continuously
improving processes.

1. Eliminate Waste: Identify and remove non-value-adding processes,


focusing resources only on activities that directly contribute to the
product.
2. Build Quality In: Integrate quality checks at every stage of
development to prevent defects instead of fixing them later.
3. Create Knowledge: Use iterative development to gather feedback
and learn from the process, ensuring continuous improvement.
4. Defer Commitment: Make decisions based on the latest and most
accurate information, avoiding premature conclusions.
5. Deliver Fast: Deliver value to the customer quickly through
incremental releases.
6. Respect People: Foster a culture of collaboration, autonomy, and
respect within the team.
7. Optimize the Whole: Look at the system holistically to ensure all
components work efficiently together.
6.3 Diagram

“App Development & Digital Transformation Agency USA.”

https://appinventiv.com/.

6.4 Pros and Cons

 Pros:
o Minimizes waste and optimizes resource utilization.
o Promotes collaboration and team engagement.
o Accelerates delivery of value to the customer.
 Cons:
o Requires a cultural shift and strong leadership to implement
effectively.
o May not be suitable for highly regulated environments.
o Can be challenging to balance speed with quality.
7. Crystal Clear

7.1 Definition

Crystal Clear is a lightweight Agile methodology designed for small teams


working on projects with low criticality. It emphasizes frequent delivery,
personal communication, and reflective improvement.

7.2 Detail of Phases

Crystal Clear is one of the methodologies in the Crystal family of agile


software development approaches, created by Alistair Cockburn. It is
designed to be lightweight, adaptable, and easy to implement, with a strong
emphasis on communication, simplicity, and close collaboration. The
methodology is based on the idea that different projects have different
needs, so it provides flexible guidance that can be tailored to the size and
complexity of a given project.

1. Project Chartering: Define the project’s goals, constraints, and


success criteria, ensuring alignment among all stakeholders.
2. Cyclic Delivery: Deliver functional increments in short cycles,
maintaining adaptability to changing requirements.
3. Iteration Reviews: Reflect on the work completed during an iteration,
gathering feedback to improve future cycles.
4. Wrap-Up: Finalize and deploy the product while documenting key
learnings and improvements for future projects.
5. Frequent Delivery: Just like other agile methodologies, Crystal Clear
encourages the frequent delivery of working software. This ensures
that stakeholders can provide regular feedback, and the project can be
adjusted as needed to meet their needs.

7.3 Diagram
GeeksforGeeks. Accessed December 31, 2024.

https://www.geeksforgeeks.org/.

7.4 Pros and Cons

 Pros:
o Highly adaptable to team size and project needs.
o Encourages transparency, collaboration, and communication.
o Simple to implement and manage.
 Cons:
o Limited scalability for larger teams or complex projects.
o Relies heavily on team dynamics and individual contributions.
o Lacks formal structure, which may lead to inconsistencies.
8. Dynamic Systems Development Method (DSDM)

8.1 Definition

DSDM is an Agile framework that emphasizes active user involvement and


iterative development. It focuses on delivering a functional system aligned
with business needs within tight deadlines and budgets.

8.2 Detail of Phases

The Dynamic Systems Development Method (DSDM) is an agile project


delivery framework that is primarily focused on delivering high-quality
software within a fixed timeframe and budget. It is one of the earliest agile
methodologies, originating in the 1990s, and has since evolved into a robust
approach for managing complex projects. DSDM emphasizes collaboration,
flexibility, and delivering business value, ensuring that the project meets the
needs of both stakeholders and customers.

1. Feasibility Study: Assess the project’s technical and financial


viability, ensuring it aligns with organizational goals.
2. Business Study: Define business requirements, objectives, and
priorities, engaging key stakeholders.
3. Functional Model Iteration: Develop prototypes and gather user
feedback to refine requirements and functionality.
4. Design and Build Iteration: Design, build, and test the system
iteratively, incorporating feedback from users and stakeholders.
5. Implementation: Deliver the final system to users, ensuring it meets
business needs and expectations.
6. Business Sponsor: The person responsible for providing the funding
and overseeing the project's strategic alignment with business goals.
This role ensures that the project meets business needs and priorities.
7. Business Visionary: This individual is responsible for defining the
overall business objectives and ensuring that the team stays focused
on delivering value.
8. Project Manager: The person responsible for overseeing the project's
progress, ensuring that the project is delivered on time, within scope,
and on budget. The Project Manager is also responsible for managing
risks and issues.
8.3 Diagram

Agency, DECODE. “Full-Service Software Development.” .

https://decode.agency/.

8.4 Pros and Cons

 Pros:
o Strong emphasis on user involvement and stakeholder
engagement.
o Ensures alignment with business goals and priorities.
o Flexible and adaptive to changing requirements.
 Cons:
o Requires significant user and stakeholder commitment.
o Resource-intensive, making it challenging for smaller teams.
o May not suit projects with rigid deadlines or fixed scopes.

9. Summary

Methodology Definition Key Pros Cons


Phases

Scrum Iterative Sprint Enhances Requires


and Planning, communica consistent
incremental Daily tion, commitmen
methodolog Scrum, regular t, depends
y with time- Sprint feedback, on team
boxed Execution, improves collaboratio
sprints. Sprint product n,
Review, quality. challenging
Sprint for new
Retrospecti teams.
ve

Kanban Focuses on Visualize Transparen Difficult for


visualizing Workflow, t process, unstructure
workflows Limit Work adaptable, d
and limiting in Progress, minimizes workflows,
work in Manage idle time. requires
progress. Flow, discipline
Feedback for WIP
Loops, limits.
Continuous
Improveme
nt

Develop Clear Strong


Overall deliverable upfront
Delivers
Model, s, modeling,
tangible
FDD Build consistent less
features
Feature progress, dynamic,
with a
List, Plan scalable for developer-
focus on by Feature, large focused.
planning Design by projects.
and Feature,
modeling. Build by
Feature

Lean Focuses on Eliminate Maximizes Cultural


delivering Waste, value, changes
value Build reduces required,
efficiently Quality In, inefficiencie challenging
by Create s, promotes in
eliminating Knowledge, collaboratio regulated
waste. Defer n. environmen
Commitme ts.
nt, Deliver
Fast,
Respect
People,
Optimize
Whole

Crystal Lightweight Project Flexible, Limited


Clear , simple Chartering, encourages scalability,
methodolog Cyclic transparen relies on
y tailored Delivery, cy, easy to team
for small Iteration implement. dynamics,
teams. Reviews, lacks
Wrap-Up formal
structure.

DSDM Structured Feasibility User Resource-


Agile Study, involvemen intensive,
framework Business t, requires
dedicated user
with active Study, alignment
participation,
user Functional with may not suit
involvemen Model business small teams.
t. Iteration, goals,
Design and adaptable
Build to change.
Iteration,
Implement
ation

Extreme Promotes Planning, High- Resource-


Programm technical Design, quality intensive,
ing excellence Coding, code, requires
through Testing, continuous discipline,
practices Release feedback, less effective
like pair encourages for large
programmi collaboratio teams.
ng and n.
TDD.

10. References of Topics

1. Beck, Kent. "Extreme Programming Explained: Embrace Change."


Addison-Wesley, 2004.
2. Schwaber, Ken, and Jeff Sutherland. "The Scrum Guide." Scrum.org,
2020.
3. Anderson, David J. "Kanban: Successful Evolutionary Change for Your
Technology Business." Blue Hole Press, 2010.
4. Highsmith, Jim. "Agile Software Development Ecosystems." Addison-
Wesley, 2002.
5. Stapleton, Jennifer. "DSDM: Dynamic Systems Development Method."
Addison-Wesley, 1997.
References of Diagram

 30, Grorapid labsNovember, and Grorapid labs. “Custom Software

Development Company: GroRapid Labs.” Custom Software


Development Company | GroRapid Labs, November 30, 2024.

https://www.grorapidlabs.com/.

 Admin. “Home.” Custom Web & Mobile Development Company - New

Line Technologies, November 4, 2024. https://newline.tech/.

 Agency, DECODE. “Full-Service Software Development.” DECODE, July

25, 2024. https://decode.agency/.

 “App Development & Digital Transformation Agency USA.”

Appinventiv, May 6, 2024. https://appinventiv.com/.

 “FasterCapital.” YouTube. Accessed December 31, 2024.

https://www.youtube.com/channel/UCqXINvmzjxJ9yCyhtqP4SDQ.

 GeeksforGeeks. Accessed December 31, 2024.

https://www.geeksforgeeks.org/.

 “Google.” Wikipedia, December 29, 2024.

https://en.wikipedia.org/wiki/Google.

 “Nimble - Unified Project Management Platform For Your Teams.”

NimbleWork, December 13, 2024. https://www.nimblework.com/.


Plagiarism Report
i

You might also like