IASE-Lect-6,7 Agile Software Development
IASE-Lect-6,7 Agile Software Development
Software Engineering
Dr Annushree Bablani
Introduction
Yielding …
1. Our highest priority is to satisfy the customer through early and continuous delivery
of valuable software.
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.
Agility Principles
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.
Human Factors
● XP Planning
○ Begins with the creation of “user stories”
○ Agile team assesses each story and assigns a cost
○ Stories are grouped to for a deliverable increment
○ A commitment is made on delivery date
○ After the first increment “project velocity” is used to help define
subsequent delivery dates for other increments
The XP Process
● XP Design
○ Follows the KIS principle
○ Encourage the use of CRC cards (class-responsibility collaborator)
(will discuss later)
○ For difficult design problems, suggests the creation of “spike
solutions”—a design prototype
○ Encourages “refactoring”—an iterative refinement of the internal
program design
■ Refactoring is the process of changing a software system in such a
way that it does not alter the external behavior of the code yet
improves the internal structure
The XP Process
● XP Coding
○ Recommends the construction of a unit test for a story before
coding commences
○ Encourages “pair programming”
● XP Testing
○ All unit tests are executed daily
○ “Acceptance tests” are defined by the customer and executed to
assess customer visible functionality
■ “Fixing small problems every few hours takes less time than fixing
huge problems just before the deadline.”
Industrial XP
1. Readiness assessment
2. Project community
3. Project chartering
4. Test-driven management
5. Retrospectives
6. Continuous learning
For further knowledge on IXP, visit http://industrialxp.org.
OTHER AGILE PROCESS MODELS