Agile Software Development
Learning Objectives
- List the tenants of the “Manifesto for Agile Software Development”
- Illustrate the cost of change for prescriptive process models and agile software development
- Compare agile software development to prescriptive process models
- Recognize the principles of agile software development
How to Complete this Lesson
Complete the following learning activities: (2.5–3 hours total)
- Read the “Manifesto for Agile Software Development” and Principles behind the Agile Manifesto (5 minutes)
- Watch What is Agile? (12 minutes)
- Read the following in Software Engineering and
(optionally) complete the reading guide:
- Chapter 3: Agile software development (90–120 minutes)
- Watch What is Agile Development? (5 minutes)
- Watch An Agile Case Study (6 minutes)
- Participate in the synchronous session during the class meeting time (optional)
- Complete the quiz (5–8 minutes)
- Work on the processes and ethics homework (30 minutes)
Due
As a reminder, the following is due this lesson:
Resources
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
- Karlskrona test
- Kelly Waters, “How Agile Are You? (Take This 42 Point Test),” All About Agile (blog), 21 January 2008
- Defense Innovation Board, “Detecting Agile BS,” 3 October 2018
Notes
Agile is not a single methodology, yet it is not uncommon for people to refer to it as such. This distinction is pedantic in the context of this course. Nevertheless, you should always ask for more information if a project uses “agile” because mixing and matching practices from different methods is often unsuccessful. It is best to follow an established agile method (Scrum, Extreme Programming (XP), Kanban, etc.) instead.