0
9.2kviews
What is Agile methodology? Explain it with the principles used acid give example of any one such software model.

Mumbai University > Computer Engineering > Sem6 > Software Engineering

Marks: 10M

Year: May 2015

1 Answer
4
347views

Agile Methodology

  • The Agile process, light-weight methods are People-based rather than plan-based methods.
  • The agile process forces the development team to focus on software itself rather than design and documentation.
  • The agile process believes in iterative method.
  • The aim of agile process is to deliver the working model of software quickly to the customer

    For example: Extreme programming is the best known of agile process.

Principles of agile methodology

  1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

  2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

  3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

  4. Business people and developers must work together daily throughout the project.

  5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

  6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

  7. Working software is the primary measure of progress.

  8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

  9. Continuous attention to technical excellence and good design enhances agility.

  10. Simplicity — the art of maximizing the amount of work not done — is essential.

  11. The best architectures, requirements, and designs emerge from self-organizing teams.

  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Example

Extreme Programming

Extreme programming (XP) is one of the best known agile process. The extreme programming approach was suggested by Kent Beck in 2000. Extreme programming is explained as follows

  • Customer specifies and priorities the system requirements. Customer becomes one of the important members of development team. The developer and customer together prepare a story-card in which customer needs are mentioned.
  • The developer team then aims to implement the scenarios in story-card.
  • After developing the story-card the development team break downs the total work in small tasks. The efforts and the estimated resources required for these tasks are estimated.
  • The customer priorities the stories for implementation. If the requirement changes then sometimes unimplemented stories have to be discarded. Then release the complete software in small and frequent releases.
  • For accommodating, new changes, new story-card must be developed.
  • Evaluate the system along with customer. Process is demonstrated by the following fig. Extreme programming release cycle

enter image description here

Please log in to add an answer.