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