Glossary

Agile methodology


A


B


C


D


E


F


G


H


I


J


K


L


M


N


O


P


Q


R


S


T


U


V


W


X


Y


Z

    • Individuals and interactions over processes and tools
    • Working software over comprehensive documentation
    • Customer collaboration over contract negotiation
    • Responding to change over following a plan
    1. Identify a business need or opportunity
    2. Gather and document software requirements
    3. Software and architecture design
    4. Coding and unit testing
    5. System testing
    6. User acceptance testing
    7. Debug
    8. Final delivery

    In contrast to the traditional Waterfall method, the Agile methodology takes an iterative and customer-focused approach to software development. Its goal is to deliver completed functional code units as frequently as possible.

    1. Define the project scope and product requirements.
    2. Create a product backlog with all the necessary features and user stories.
    3. Plan the sprint by selecting user stories to work on.
    4. Conduct daily stand-up meetings to track progress and address any issues.
    5. Develop the features and functionalities in short iterations or sprints.
    6. Test the developed features to ensure they meet the acceptance criteria.
    7. Review the progress with stakeholders and gather feedback for continuous improvement.
    8. Repeat the process for each sprint, incorporating feedback and making necessary adjustments.
    9. Conduct a sprint retrospective to reflect on the successes and areas for improvement.
    10. Continue iterating on the product until the desired outcome is achieved.

    Four values of the Agile methodology

    Individuals and interactions over processes and tools

    This first Agile principle reflects an important belief shared by the founders of Agile: software problems are solved by teams of individuals interacting with each other, not by processes and tools. The Agile methodology encourages software engineering to work in teams, program in pairs, meet daily and interact with each other regularly as needs arise to solve problems.

    Working software over comprehensive documentation

    Founders of the Agile methodology were frustrated that the Waterfall method would require them to write hundreds of pages of technical documentation for applications that nobody would ever read. The Agile methodology does not discourage the documentation of code wholesale, but it does encourage development teams to minimize their wasted effort by only producing documentation that drives value, especially by writing tests for the system that document its behavior.

    Customer collaboration over contract negotiation

    The Waterfall method encourages a contract negotiation model where software development firms enter into fixed-price contracts with the entire scope of work negotiated upfront. Changing requirements to the scope of work is discouraged, as it means modifying the original contract. Agile software delivery favors a “time and materials” or non-fixed funding structure that helps align customer and developer incentives and promote quality.