Agile Software Development
Reading
Sommerville, Chapter 3
Objectives
- Know the Agile Manifesto
- Analyze the Principles of the Agile Manifesto
- Understand how Extreme Programming uses incremental planning, small releases, simple designs, refactoring, test-first development, pair programming, collective ownership, on-site customer, continuous integration, and sustainable pace for software development
- Understand the process, activities, roles, and tools of the Scrum Process
Notes
Read using the following as a guide:
- State the four tenets of the Agile Manifesto.
- Read and consider the Pro’s and Con’s of each Principle of the Agile Manifesto.
- Define each of the following aspects of Extreme Programming:
- Incremental planning
- Small releases
- Simple designs
- Refactoring
- Test-first development
- Pair programming
- Collective ownership
- On-site customer
- Continuous integration
- Sustainable pace
- Describe each of the following associated with the Scrum Process
- Product Owner
- Scrum Master
- Scrum Development Team
- Sprint Planning Meeting
- Daily Scrum Meeting
- PBI Refinement Meeting
- Sprint Review
- Sprint Retrospective
- Product Backlog Item (PBI)
- Sprint Task
- Sprint Backlog
- Sprint Burndown Chart
Resources
Measuring Agile
Agile is not an excuse to ignore formal software project management. The following tests can be used to determine if an organization is embracing agile principles or merely buzzwords:
- Joe Little, “The Nokia Test,” Agile & Business (blog), 2 December 2007. Online: http://agileconsortium.blogspot.com/2007/12/nokia-test.html
- Karlskrona test: http://mayberg.se/learning/karlskrona-test
- Kelly Waters, “How Agile Are You? (Take This 42 Point Test),” All About Agile (blog), 21 January 2008. Online: https://www.101ways.com/how-agile-are-you-take-this-42-point-test/