I.Introduction to Agile Development
- What is Agile Development?
- Characteristics of Agile Methods
- Iterative and Incremental
- Adaptive planning
- Evolutionary design and architecture
- Rapid response to change
- Flexibility
- Benefits of using Agile Methods
- Risk reduction
- Accommodating change
- Earlier production of business value
- Progress Tracking
- Communication
- The Agile Manifesto
- Twelve Agile Development
Principles
- Popular Agile Methodologies
- Extreme Programming
- Scrum
- Crystal Methodologies
- Agile Modeling
- Others
- Is the Unified Process (UP)
Agile?
II.Overview of Extreme Programming
- XP Values
- Principles
- Practices
- Roles
III.The Customer In Extreme Programming
- Importance of the Customer Role
- Customer Rights and
Responsibilities.
- Advantages of having an On-Site
Customer
- Working without an On-Site
Customer.
IV.Managing Agile Teams
- Manager Responsibilities
- Best Practices
V.Adopting Agile
- Common Developer Objections
- Common Management Objections
- Overcoming Obstacles
The above sections describe the current one-day class. The
testing practices used in agile methodologies are discussed in
module II, along with the other classes. To provide a greater
emphasis on testing, the following module will be added. This will
be drawn from material covered in the one-week class. This module
would be placed between modules III and IV in the above outline.
Testing in Agile Methodologies.
- Importance of Unit-Testing.
- How Unit Testing improves development.
- Unit Testing tools
- Using Customer Tests
- Importance of test automation.
- Reporting test results - Big Visible Charts.
- Comparison to testing in waterfall-based methodologies.