Software Engineering (2160701)

BE | Semester-6   Summer-2019 | 10-05-2019

Q4) (B)

Explain Agile Development in detail

Agility

·       Agility is ability to move quickly and easily.

·       It is a property consisting of quickness, lightness, & ease of movement;

·       The ability to create and respond to change in order to profit in a turbulent global business environment

·       The ability to quickly reprioritize use of resources when requirements, technology, and knowledge shift

·       A very fast response to sudden market changes and emerging threats by intensive customer interaction

·       Use of evolutionary, incremental, and iterative delivery to converge on an optimal customer solution

Agile Process

·       Agile software process addresses few assumptions

o   Difficulty in predicting changes of requirements and customer priorities.

o   For many types of software; design and construction are interleaved (mixed).

o   Analysis, design, construction and testing are not as predictable as we might like.

·       An agile process must be adaptable

·       Requires customer feedback

Agility Principles

·       Highest priority is to satisfy the customer through early & continuous delivery if software

·       Welcome changing requirements

·       Deliver working software frequently

·       Business people and developers must work together

·       Build projects around motivated individuals

·       Emphasize face-to-face conversation

·       Working software is the measure of progress

·       Continuous attention to technical excellence and good design

·       Simplicity – the art of maximizing the amount of work done

·       The best designs emerge from self-organizing teams

·       The team tunes and adjusts its behavior to become more effective