05 Agile Development Part 2: Scrum Framework and Real-World Application
January 2026 (6528 Words, 37 Minutes)
1. Introduction: From Practices to Process
In Part 1, we explored the philosophical foundation of Agile development:
- Herbert Simon’s bounded rationality — why we can’t fully specify systems upfront
- The Agile Manifesto — four values and twelve principles
- Extreme Programming (XP) — technical practices like TDD, refactoring, and pair programming
- User Stories — capturing requirements from the user’s perspective
We also applied these concepts to our Road Profile Viewer project, writing user stories with acceptance criteria and learning how to track them using GitHub Issues.
But practices alone don’t make a project succeed. You also need a framework for organizing work: Who decides what to build next? How do you know when something is “done”? How do you improve over time?
In this lecture, we examine Scrum — the most widely adopted Agile framework. We’ll see how Scrum’s roles, events, and artifacts provide structure while maintaining Agile flexibility. Then we’ll apply Scrum to a concrete sprint for the Road Profile Viewer, and conclude with real-world evidence that Agile works even in the most demanding environments.
2. Learning Objectives
By the end of this lecture, you will be able to:
- Describe the three Scrum roles and their responsibilities (Product Owner, Development Team, Scrum Master)
- Explain the five Scrum events and their purpose (Sprint, Planning, Daily Scrum, Review, Retrospective)
- Distinguish the three Scrum artifacts (Product Backlog, Sprint Backlog, Product Increment)
- Plan a realistic sprint for a small team project, including goal, backlog, and timeline
- Recognize real-world Agile adoption including in highly regulated environments like the US Military
- Connect Scrum practices to testing — understanding how sprints integrate with TDD and CI
3. Scrum Framework
While XP provides technical practices, Scrum provides a management framework for organizing Agile work. Created by Ken Schwaber and Jeff Sutherland in the early 1990s (and first publicly presented at the OOPSLA conference in 1995), Scrum has become the most widely adopted Agile framework worldwide.
3.1 What Is Scrum?
The official Scrum Guide defines Scrum as:
“A lightweight framework that helps people, teams and organizations generate value through adaptive solutions for complex problems.”
Notice what Scrum is not: it’s not a methodology, not a process, not a set of rules to follow blindly. It’s a framework — a minimal structure that teams adapt to their specific context.
In a nutshell, Scrum works like this:
- A Product Owner orders the work for a complex problem into a Product Backlog
- The Scrum Team turns a selection of the work into an Increment of value during a Sprint
- The Scrum Team and its stakeholders inspect the results and adjust for the next Sprint
- Repeat
That’s it. Everything else in Scrum exists to make these four steps work effectively.
3.2 Scrum Theory: Empiricism and Lean Thinking
Scrum is founded on two intellectual traditions:
Empiricism — Knowledge comes from experience and making decisions based on what is observed, not what is predicted. This connects directly to Herbert Simon’s bounded rationality from Part 1: since we can’t fully predict complex systems, we must learn by doing.
Lean Thinking — Reduce waste and focus on the essentials. Every element in Scrum exists for a reason; if something doesn’t contribute value, eliminate it.
These foundations manifest in Scrum’s three pillars:
graph LR
subgraph Pillars["Three Pillars of Scrum"]
T[Transparency] --> I[Inspection]
I --> A[Adaptation]
end
| Pillar | Meaning | In Practice |
|---|---|---|
| Transparency | The work and process must be visible to those doing the work and receiving the work | Sprint boards, daily standups, public backlogs |
| Inspection | Frequently examine progress and artifacts to detect problems early | Sprint reviews, retrospectives, daily check-ins |
| Adaptation | When inspection reveals issues, adjust the process or product immediately | Backlog reprioritization, process improvements, scope negotiation |
The key insight: Inspection without transparency is misleading. Adaptation without inspection is pointless. All three pillars must work together.
3.3 The Five Scrum Values
The Scrum Guide emphasizes that successful Scrum depends on people “becoming more proficient in living five values”:
Commitment, Focus, Openness, Respect, and Courage
These aren’t just nice words on a poster. Each value serves a practical purpose:
- Commitment — The team commits to achieving sprint goals and supporting each other
- Focus — During a sprint, the team focuses on the sprint work, not distractions
- Openness — The team is transparent about work, challenges, and blockers
- Respect — Team members respect each other as capable professionals
- Courage — The team has courage to do the right thing, even when difficult
For your Road Profile Viewer project: When a teammate is struggling with a feature, respect means trusting they can solve it while openness means they’ll ask for help if needed. Courage means admitting “I don’t understand this requirement” rather than building the wrong thing.
3.4 The Structure: 3-5-3
Scrum defines a minimal but complete structure:
- 3 Accountabilities (roles): Product Owner, Developers, Scrum Master
- 5 Events: Sprint, Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective
- 3 Artifacts: Product Backlog, Sprint Backlog, Increment
Each artifact also has a commitment that provides focus:
- Product Backlog → Product Goal
- Sprint Backlog → Sprint Goal
- Increment → Definition of Done
Let’s examine each component in detail.
3.5 The Three Accountabilities
| Role | Responsibilities | NOT Responsible For |
|---|---|---|
| Product Owner |
|
|
| Development Team |
|
|
| Scrum Master |
|
|
3.6 The Five Events
Scrum defines five time-boxed events (ceremonies):
graph LR
subgraph Sprint["Sprint (1-4 weeks)"]
SP[Sprint Planning] --> DS[Daily Scrum]
DS --> DS
DS --> SR[Sprint Review]
SR --> RT[Retrospective]
end
RT --> SP2[Next Sprint Planning]
| Event | Duration | Purpose | Output |
|---|---|---|---|
| Sprint | 1-4 weeks (fixed) | Container for all other events; time to produce an increment | Potentially releasable product increment |
| Sprint Planning | 2-4 hours | Select work for the sprint; define sprint goal | Sprint Backlog and Sprint Goal |
| Daily Scrum | 15 minutes | Synchronize team; identify blockers; plan next 24 hours | Updated plan for the day |
| Sprint Review | 1-2 hours | Demonstrate completed work to stakeholders; gather feedback | Feedback for Product Backlog updates |
| Sprint Retrospective | 1-2 hours | Reflect on process; identify improvements | Action items for next sprint |
3.7 The Three Artifacts
| Artifact | Description | Owned By | Example |
|---|---|---|---|
| Product Backlog | Prioritized list of everything that might be needed in the product | Product Owner | All user stories, bugs, technical debt items |
| Sprint Backlog | Items selected from Product Backlog for current sprint + plan to deliver them | Development Team | Stories selected for Sprint 3 + breakdown into tasks |
| Product Increment | Sum of all completed Product Backlog items + all previous increments | Development Team | Working software with new features from current sprint |
3.8 The Sprint Cycle
The following diagram shows how all Scrum elements work together in a continuous cycle. Notice how feedback flows back into planning, creating a self-improving system:
Reading the cycle clockwise from the top:
- Planning Phase (blue): Sprint Planning selects items from the Product Backlog and creates the Sprint Backlog
- Execution Phase (green): Daily Scrums synchronize the team as they develop features
- Review Phase (purple): Completed work becomes a Product Increment, demonstrated in Sprint Review
- Improvement Phase (amber): Retrospective identifies process improvements that feed into the next Sprint
The cycle repeats continuously, with stakeholder feedback flowing back into the Product Backlog for future prioritization.
3.9 Velocity: How Teams Learn to Estimate
Velocity is a measure of how much work a team can complete in a single sprint. It’s typically expressed in story points — an abstract measure of effort rather than hours.
How velocity works:
- First sprint: The team estimates stories and selects what seems achievable
- After sprint: Count the points of completed stories (not started, not “almost done” — done)
- Next sprint: Use that number as a guide for how much to select
- Over time: Velocity stabilizes, making planning more predictable
Example for Road Profile Viewer:
| Sprint | Stories Attempted | Stories Completed | Velocity |
|---|---|---|---|
| 1 | 15 points | 10 points | 10 |
| 2 | 12 points | 11 points | 11 |
| 3 | 13 points | 12 points | 12 |
| 4 | 12 points | 12 points | 12 |
After 4 sprints, the team knows they can reliably complete ~12 points per sprint. This makes planning realistic.
Important: Velocity is a planning tool, not a performance metric. Comparing velocities between teams is meaningless — story point scales differ. Using velocity to pressure teams to “do more” destroys its value as an honest planning tool.
3.10 The Inviolable Sprint: Why Deadlines Are Fixed
A critical Scrum principle that surprises many newcomers:
Sprints are NEVER extended. If work isn’t done, it returns to the Product Backlog.
This seems harsh, but it serves essential purposes:
Why fixed sprints matter:
- Forces realistic planning — Teams learn what they can actually accomplish
- Creates predictable rhythm — Stakeholders know when to expect demos
- Prevents scope creep — No “just one more day” that becomes a week
- Exposes estimation problems early — Rather than hiding them with extensions
What happens when work isn’t completed:
graph LR
US[Unfinished Story] --> PB[Returns to Product Backlog]
PB --> PO[Product Owner Re-prioritizes]
PO --> NS[May be selected for next sprint]
PO --> L[Or may be deprioritized]
The team’s response should be:
- Reflect in the Retrospective: Why wasn’t it completed?
- Improve estimation for next sprint
- Consider breaking stories into smaller pieces
NOT: Work overtime to finish, extend the sprint, or mark incomplete work as “done.”
3.11 The Scrum Board: Making Work Visible
The Scrum Board (or Sprint Board) is a visual representation of work in the current sprint. Originally a physical whiteboard with sticky notes, it’s now often digital.
Typical columns:
Benefits of visual boards:
- Transparency: Anyone can see the sprint status at a glance
- Bottleneck detection: Items piling up in “In Review” signals a problem
- Team ownership: Anyone can move cards or add information
- Daily Scrum support: The board provides focus for the 15-minute meeting
Physical vs. Digital boards:
| Physical Board | Digital Board (Jira, GitHub Projects) |
|---|---|
| Highly visible in shared office space | Accessible to distributed teams |
| Tactile — satisfying to move cards | Automated metrics and burndown charts |
| No learning curve | Integration with CI/CD and version control |
| Requires co-location | Works across time zones |
For your Road Profile Viewer project, GitHub Projects provides an excellent free digital board that integrates directly with your Issues and Pull Requests.
3.12 Why Scrum Works: Empirical Evidence
After two decades of Scrum adoption, what do teams actually report? Studies and case studies consistently identify these benefits:
1. Manageable chunks
“The product is broken down into a set of manageable and understandable chunks that stakeholders can relate to.” — Sommerville (2015)
Rather than a monolithic “the software” being delivered after months of invisible work, stakeholders see tangible progress every sprint.
2. Unstable requirements don’t block progress
In traditional waterfall, changing requirements meant stopping to re-plan. In Scrum, change is simply reprioritization of the backlog — development continues without interruption.
3. Team visibility and morale
“The whole team has visibility of everything, and consequently team communication and morale are improved.”
No one is surprised by “that feature someone else was working on.” The Daily Scrum and shared board keep everyone informed.
4. Customer trust
“Customers see on-time delivery of increments and gain feedback on how the product works. They are not faced with last-minute surprises.”
Each sprint delivers working software. Problems are discovered early, not at final delivery.
5. Positive culture
“Trust between customers and developers is established, and a positive culture is created in which everyone expects the project to succeed.”
3.13 Distributed Scrum: Working Across Locations
Scrum was designed for co-located teams who could meet face-to-face daily. But modern software development often involves distributed teams across cities, countries, or continents.
Adaptations for distributed Scrum:
| Scrum Element | Co-located Approach | Distributed Adaptation |
|---|---|---|
| Daily Scrum | Stand-up meeting at team whiteboard | Video call or async Slack updates |
| Sprint Board | Physical whiteboard with sticky notes | GitHub Projects, Jira, or Linear |
| Pair Programming | Shared keyboard/monitor | VS Code Live Share, screen sharing |
| Sprint Planning | Meeting room with Product Owner | Video conference with shared screen |
| Informal communication | Hallway conversations | Slack channels, video calls |
Key requirements for distributed Scrum success:
- Scrum Master with the team — The SM should ideally be in the same location as most developers to understand daily challenges
- Product Owner visits — The PO should periodically visit the development team to build relationships and trust
- Overlap hours — Teams in different time zones need some shared working hours for synchronous communication
- Continuous Integration — Automated builds and tests so all team members see the current system state
- Common development environment — Docker, devcontainers, or standardized tooling so “works on my machine” isn’t an issue
3.14 Scaling Scrum: Multiple Teams
What happens when a project is too large for a single Scrum team (7±2 people)?
Multi-team Scrum introduces coordination challenges:
- Multiple teams need access to the same Product Backlog
- Teams must integrate their work without stepping on each other
- Dependencies between teams create potential blockers
Key scaling patterns:
1. Role Replication
Each team has its own Product Owner and Scrum Master. For large products, there may be a Chief Product Owner who coordinates across teams.
2. Product Architects
Each team nominates a technical representative. These architects meet regularly to design and evolve the overall system architecture, ensuring teams’ work integrates smoothly.
3. Release Alignment
All teams align their sprint dates so releases can be coordinated. At the end of each sprint, a demonstrable integrated system should exist.
4. Scrum of Scrums
A daily meeting where representatives from each team synchronize:
- What did your team accomplish yesterday?
- What will your team work on today?
- What blockers might affect other teams?
graph TD
T1[Team 1 Daily Scrum] --> SoS[Scrum of Scrums]
T2[Team 2 Daily Scrum] --> SoS
T3[Team 3 Daily Scrum] --> SoS
SoS --> COORD[Cross-team coordination]
Scaling frameworks:
For large enterprises, formal scaling frameworks exist:
- SAFe (Scaled Agile Framework) — Comprehensive but complex
- LeSS (Large-Scale Scrum) — Minimal additions to basic Scrum
- Nexus — From Scrum.org, designed for 3-9 teams
For your Road Profile Viewer project with 3 people, you won’t need these — but in industry, you’ll likely encounter them.
4. Example Sprint for Road Profile Viewer
Let’s see how a team might execute a sprint for the Road Profile Viewer project.
4.1 Sprint Goal
Sprint Goal: Enable users to select and upload road profiles with database persistence.
4.2 Sprint Backlog
| Story | Tasks | Status |
|---|---|---|
| Database Setup |
|
Done |
| Data Validation |
|
Done |
| Profile Selection |
|
In Progress |
| Profile Upload |
|
To Do |
4.3 Two-Week Sprint Timeline
Week 1:
- Day 1 (Monday): Sprint Planning (2 hours)
- Review Product Backlog
- Select stories for sprint
- Break stories into tasks
- Define Sprint Goal
- Days 2-5: Development + Daily Scrums (15 min each morning)
Week 2:
- Days 6-9: Development + Daily Scrums
- Day 10 (Friday AM): Sprint Review (1 hour)
- Demo completed features to stakeholders
- Gather feedback
- Day 10 (Friday PM): Sprint Retrospective (1 hour)
- What went well?
- What could improve?
- What will we try next sprint?
4.4 Sprint Board Visualization
Modern tools like Jira, Linear, or GitHub Projects provide digital sprint boards. For the Road Profile Viewer project, GitHub Projects would integrate well with your existing repository.
5. Real-World Evidence: US Military Agile Adoption
One common objection to Agile is: “That might work for web apps, but not for serious projects.” The US Military’s recent pivot to Agile directly contradicts this argument.
5.1 Why Military Software Is the Ultimate Stress Test
Before examining the military’s Agile adoption, let’s understand why this is significant. Military software systems represent perhaps the most challenging environment for any development methodology. Sommerville (2015) identifies six factors that make large systems difficult — military software has all of them:
| Challenge Factor | Description | Military Example |
|---|---|---|
| System of Systems | Multiple separate systems that must communicate and integrate | Aircraft, ground vehicles, command centers, satellites — all must share data |
| Brownfield Development | New software must integrate with existing legacy systems | Decades-old radar systems, communication protocols, database formats |
| Regulatory Constraints | External rules governing development, testing, and documentation | Security clearances, safety certifications, acquisition regulations |
| Prolonged Procurement | Long timelines from initial specification to deployment | Major weapon systems can take 10+ years from concept to fielding |
| Diverse Stakeholders | Many different users and decision-makers with competing priorities | Soldiers, commanders, contractors, Congress, allied nations |
| Life-Critical Systems | Software failures can result in loss of life | Weapon targeting, vehicle control, medical systems |
The traditional argument: These challenges require extensive upfront planning, detailed specifications, and rigorous phase-gate processes. Agile’s flexibility would introduce unacceptable risk.
The emerging reality: These challenges actually make Agile more valuable, not less. When requirements inevitably change (as they do in evolving threat environments), the ability to adapt quickly becomes a strategic advantage.
5.2 US Army Policy (March 2024)
In March 2024, the US Army announced a sweeping new policy mandating Agile software development practices across the entire organization.
Secretary of the Army Christine Wormuth:
“We’re learning from current conflicts — including in Ukraine — that the Army’s success on future battlefields will depend on our ability to rapidly update software and disseminate it to the operational force.”
The policy institutionalizes five major changes:
| Traditional Army Approach | New Agile Approach |
|---|---|
| Detailed, prescriptive requirements documents | Concise, high-level needs with continuous soldier involvement |
| Rigid acquisition strategies | Software Acquisition Pathway with modular contracting |
| Duplicative testing phases | Streamlined, continuous testing integrated with development |
| Development ends at deployment | Continuous improvement across the entire lifecycle |
| Scattered expertise | Digital Capabilities Contracting Center of Excellence |
5.3 Platform One DevSecOps
The US Air Force’s Platform One provides a cloud-native DevSecOps platform for military software. It represents a fundamental shift in how the military approaches software infrastructure.
What Platform One provides:
- Continuous deployment to production environments — not yearly releases, but updates in days or weeks
- Automated security testing in the CI/CD pipeline — security is built-in, not bolted-on
- Kubernetes-based container orchestration — the same technology running Google, Netflix, and Spotify
- Standardized development environments — any team can onboard quickly
- Authority to Operate (ATO) inheritance — pre-approved security configurations dramatically reduce compliance overhead
Why this is revolutionary:
Traditional military software procurement might look like:
- Write detailed requirements (6-12 months)
- Select contractor (6-12 months)
- Development (2-5 years)
- Security certification (6-18 months)
- Deployment
With Platform One and Agile practices:
- Continuous collaboration with users
- Sprint-based development with frequent releases
- Automated security testing on every commit
- Continuous deployment to pre-certified infrastructure
The result: Software that would have taken years to deploy now reaches soldiers in months or weeks.
5.4 The Ukraine Factor: Agile Under Fire
The 2022 Russian invasion of Ukraine has provided an unprecedented real-world test of software agility in warfare. Ukrainian forces have demonstrated:
- Rapid adaptation: Integrating commercial drones with military targeting systems in weeks
- Iterative improvement: Adjusting electronic warfare software based on daily battlefield feedback
- Citizen developer contributions: Civilian programmers contributing to military software projects
Secretary Wormuth’s quote directly references these lessons:
“We’re learning from current conflicts — including in Ukraine — that the Army’s success on future battlefields will depend on our ability to rapidly update software and disseminate it to the operational force.”
This isn’t abstract theory — it’s the observed reality of modern warfare, where software updates can be as important as ammunition resupply.
5.5 Implications for Software Engineering
If the US Military — one of the most regulated, life-critical, and security-conscious organizations on Earth — is adopting Agile practices, what does this mean for the software industry?
1. The “Agile doesn’t scale” myth is dead
Military systems are among the largest, most complex software projects on Earth. If Agile works there, the “it only works for small web apps” argument no longer holds.
2. Security and Agile are compatible
DevSecOps proves that rigorous security doesn’t require waterfall. Automated testing, continuous compliance monitoring, and security-by-design can coexist with rapid iteration.
3. Regulated industries will follow
Healthcare, finance, aerospace, automotive — these industries face similar pressures (though less extreme). The military’s successful adoption creates a template for other regulated domains.
4. The real question has changed
It’s no longer “Should we use Agile?” but “How do we adapt Agile to our specific constraints while maintaining its core benefits?”
The lesson for your career: Agile isn’t just for startups building mobile apps. It’s for any organization that needs to:
- Respond to changing requirements
- Deliver value incrementally
- Learn from user feedback
- Maintain high quality under pressure
When you interview at traditional enterprises and they say “we do waterfall because our domain requires it,” you can now point to the US Military as a counterexample.
6. Summary
| Concept | Key Point | Connection to Testing |
|---|---|---|
| Scrum Roles | Product Owner (what), Development Team (how), Scrum Master (process) | Team decides testing strategy; SM removes testing impediments |
| Scrum Events | Sprint, Planning, Daily, Review, Retrospective | Review demos tested features; Retro improves test practices |
| Scrum Artifacts | Product Backlog, Sprint Backlog, Increment | Increment must be "potentially releasable" — requires tested code |
| Sprint Planning | Select stories, define goal, break into tasks | Tasks include "write tests" for each feature |
| Military Adoption | Even highly regulated environments (US Army) are mandating Agile practices | DevSecOps integrates security testing into CI/CD pipeline |
6.1 Key Takeaways
- Scrum provides structure without sacrificing Agile flexibility — roles, events, and artifacts create predictability.
- Sprints create rhythm — time-boxed iterations with clear goals and accountability.
- The Product Owner owns “what”, the Development Team owns “how” — clear separation of concerns.
- Retrospectives drive improvement — the team continuously refines its process.
- Real-world evidence validates Agile — even the US Military is adopting these practices for mission-critical systems.
7. Reflection Questions
-
Role mapping: In your Road Profile Viewer team, who would serve as Product Owner? Scrum Master? How would you handle these roles with only 3 team members?
-
Sprint sizing: Your Road Profile Viewer team has 3 members and 3 weeks. Design a realistic sprint schedule. How long would your sprints be? Which events would you keep or modify?
-
Backlog prioritization: Given the 5 user stories from Part 1, in what order would you tackle them? What dependencies affect your ordering?
-
Daily Scrum value: Some teams find the Daily Scrum repetitive. What value does it provide? When might a team skip it?
-
Military case study: What surprised you about the US Army adopting Agile? How does this change your perception of Agile’s applicability to different domains?
-
Process adaptation: The Scrum Guide says “Scrum is a framework, not a methodology.” What does this mean for how you might adapt Scrum for a 3-person student team?
8. Further Reading
8.1 Books
- Ken Schwaber & Jeff Sutherland: The Scrum Guide — Free, authoritative, and only 13 pages
- Mike Cohn: Agile Estimating and Planning — Practical guide to sprint planning and estimation
- Henrik Kniberg: Scrum and XP from the Trenches — Free PDF with real-world Scrum implementation stories
8.2 Articles and Resources
- The Scrum Guide — The official, definitive Scrum reference
- US Army Agile Policy (March 2024) — Official announcement of military Agile adoption
- Platform One — US Air Force DevSecOps platform
8.3 Tools
- Jira — Enterprise-grade sprint management and backlog tracking
- Linear — Modern, developer-friendly project management
- GitHub Projects — Built-in project boards, integrated with your repository
- Trello — Simple, visual board for smaller teams
9. What’s Next
With Agile foundations (Part 1) and Scrum framework (Part 2) complete, you now have the tools to:
- Write effective user stories with acceptance criteria
- Track work using GitHub Issues and Projects
- Plan and execute sprints
- Apply XP practices (TDD, CI, pair programming) within a Scrum framework
In your Road Profile Viewer project, apply these concepts:
- Create a Product Backlog as GitHub Issues
- Plan a sprint with a clear goal
- Use Daily Standups (even async on Slack/Discord) to stay synchronized
- Hold a Sprint Review to demo your progress
- Run a Retrospective to identify improvements
The best way to learn Agile is to practice it.
Coming Up: Software Architecture
Agile tells us how to organize work. But what about organizing the system itself?
In Lecture 10: Software Architecture, we’ll explore:
- Architectural design decisions — how non-functional requirements shape system structure
- Multiple views of architecture — the 4+1 model for understanding complex systems
- Architectural patterns — MVC, layered architecture, and microservices as proven solutions
- Applying architecture to Road Profile Viewer — evolving our project for scalability
You’ve learned to deliver fast. Now learn to build systems that can grow.