SE201 · Chapter 3 · Annotated SlidesAgile Software Engineering
Original
Overview

Agile Software Engineering

Extreme Programming and its practices (user stories, test-first development, pair programming, refactoring, continuous integration), Scrum terminology, roles, sprints and the product backlog, and agile project management.

How to read this page

Every original slide is shown unchanged. Yellow marks on a slide point to a numbered note: hover or tap a mark to jump to its note, and hover a note to see its marks. Questions tagged Past exam appeared on a real paper; Prediction questions are likely angles, not confirmed. Pick an answer to each question: a wrong pick tells you why it is wrong, so you can try again.

All 37 slides
  1. 1 Software Engineering
  2. 2 Course Learning Outcome
  3. 3 Agile software engineering
  4. 4 Extreme Programming (XP)
  5. 5 Extreme Programming Practices
  6. 6 Widely adopted XP practices
  7. 7 A ‘prescribing medication’ story
  8. 8 Examples of task cards for prescribing medication
  9. 9 Widely adopted XP practices
  10. 10 Widely adopted XP practices
  11. 11 Test case description for dose checking
  12. 12 Widely adopted XP practices
  13. 13 Widely adopted XP practices
  14. 14 Slide 14
  15. 15 Scrum
  16. 16 What is Scrum?
  17. 17 Scrum Terminology (a)
  18. 18 Scrum Terminology (b)
  19. 19 Key roles in Scrum
  20. 20 Key roles in Scrum
  21. 21 Scrum and sprints
  22. 22 Scrum Process Flow
  23. 23 Scrum Sprint Cycle
  24. 24 Key Scrum practices
  25. 25 Product backlogs
  26. 26 Examples of product backlog items (PBIs)
  27. 27 Product Backlog Item States
  28. 28 Product Backlog Activities
  29. 29 Sprint Activities
  30. 30 Managing External Interactions
  31. 31 Managing External Interactions
  32. 32 Project management
  33. 33 Project Management Responsibilities
  34. 34 The Continuum of Life Cycles
  35. 35 Summary
  36. 36 Summary
  37. 37 Summary
Slide 1 / 37

Software Engineering

Slide 1: Software Engineering
Slide 2 / 37

Course Learning Outcome

Slide 2: Course Learning Outcome
Slide 3 / 37

Agile software engineering

Slide 3: Agile software engineering
Slide 4 / 37

Extreme Programming (XP)

Slide 4: Extreme Programming (XP)

Notes

  1. XP: an influential agile method taking good practice to the "extreme": very frequent releases, small increments.

Slide 5 / 37

Extreme Programming Practices

Slide 5: Extreme Programming Practices
Slide 6 / 37

Widely adopted XP practices

Slide 6: Widely adopted XP practices
Slide 7 / 37

A ‘prescribing medication’ story

Slide 7: A ‘prescribing medication’ story

Notes

  1. User stories: short scenarios from the user’s view; broken into task cards that are estimated.

Slide 8 / 37

Examples of task cards for prescribing medication

Slide 8: Examples of task cards for prescribing medication
Slide 9 / 37

Widely adopted XP practices

Slide 9: Widely adopted XP practices
Slide 10 / 37

Widely adopted XP practices

Slide 10: Widely adopted XP practices

Notes

  1. Test-first (TDD): write the test before the code; tests are automated and run on every build.

Exam angle

PredictionQ1

In XP, tests are written:

Slide 11 / 37

Test case description for dose checking

Slide 11: Test case description for dose checking
Slide 12 / 37

Widely adopted XP practices

Slide 12: Widely adopted XP practices

Notes

  1. Refactoring: improve structure without changing behaviour. Pair programming: two developers at one computer, roles swap.

Exam angle

PredictionQ1

Improving code structure without changing what it does is:

Slide 13 / 37

Widely adopted XP practices

Slide 13: Widely adopted XP practices
Slide 14 / 37

Slide 14

Slide 14: Slide 14
Slide 15 / 37

Scrum

Slide 15: Scrum
Slide 16 / 37

What is Scrum?

Slide 16: What is Scrum?
Slide 17 / 37

Scrum Terminology (a)

Slide 17: Scrum Terminology (a)

Notes

  1. Scrum terms: product backlog, sprint backlog, sprint (2–4 weeks), daily scrum, velocity, potentially shippable increment.

Slide 18 / 37

Scrum Terminology (b)

Slide 18: Scrum Terminology (b)
Slide 19 / 37

Key roles in Scrum

Slide 19: Key roles in Scrum

Notes

  1. Roles: Product Owner (owns and prioritizes the backlog), Scrum Master (coach, removes impediments), Development Team (self-organizing).

  2. Trap The Scrum Master is NOT a traditional project manager; the Product Owner prioritizes.

Exam angle

PredictionQ1

Who prioritizes the product backlog?

PredictionQ2

Who removes impediments for the team?

Slide 20 / 37

Key roles in Scrum

Slide 20: Key roles in Scrum
Slide 21 / 37

Scrum and sprints

Slide 21: Scrum and sprints

Notes

  1. Sprint: a fixed time-box producing a potentially shippable increment. Sprint planning → daily scrums → review → retrospective.

Exam angle

PredictionQ1

The daily scrum is a short meeting where the team:

Slide 22 / 37

Scrum Process Flow

Slide 22: Scrum Process Flow
Slide 23 / 37

Scrum Sprint Cycle

Slide 23: Scrum Sprint Cycle
Slide 24 / 37

Key Scrum practices

Slide 24: Key Scrum practices
Slide 25 / 37

Product backlogs

Slide 25: Product backlogs

Notes

  1. Product backlog: a prioritized list of items (features, bugs, tech work) to do.

Slide 26 / 37

Examples of product backlog items (PBIs)

Slide 26: Examples of product backlog items (PBIs)
Slide 27 / 37

Product Backlog Item States

Slide 27: Product Backlog Item States
Slide 28 / 37

Product Backlog Activities

Slide 28: Product Backlog Activities
Slide 29 / 37

Sprint Activities

Slide 29: Sprint Activities
Slide 30 / 37

Managing External Interactions

Slide 30: Managing External Interactions
Slide 31 / 37

Managing External Interactions

Slide 31: Managing External Interactions
Slide 32 / 37

Project management

Slide 32: Project management
Slide 33 / 37

Project Management Responsibilities

Slide 33: Project Management Responsibilities

Notes

  1. Agile PM: the team estimates and commits; the Scrum Master facilitates; transparency through boards and burndown charts.

Slide 34 / 37

The Continuum of Life Cycles

Slide 34: The Continuum of Life Cycles
Slide 35 / 37

Summary

Slide 35: Summary
Slide 36 / 37

Summary

Slide 36: Summary
Slide 37 / 37

Summary

Slide 37: Summary