Lecture Slides
Fifteen lecture decks, one for each chapter of Object Oriented Development and Agile Practices. Each deck follows its chapter and companion section by section, so you can teach a chapter in as many sittings as you like. Pick a chapter below; each card gives the number of slides in the deck.
Part I: Foundations and Object-Oriented Principles
145 slides. Orientation and readiness, why working programs resist change, system assumptions versus class responsibilities.
183 slides. Invariants, encapsulation, defensive copies, cohesion and coupling, UML class modelling.
149 slides. Uncertainty and feedback loops, Scrum and Kanban, user stories, INVEST, the Definition of Done.
159 slides. Vision and scope, capacity planning, tasks and tests, Arrange-Act-Assert, Git hygiene, a first CI pipeline.
152 slides. Change pressures, code smells and static analysis, Single Responsibility, Open/Closed, Liskov Substitution.
126 slides. Interface Segregation, Dependency Inversion, constructor injection, composition roots.
Part II: Testing, Creation and Behavioural Patterns
144 slides. Red-Green-Refactor, the Clock abstraction, test doubles, Mockito, fault experiments.
118 slides. Factory Method, Abstract Factory, Builder, the legacy directory adapter, Decorator order, dependency injection.
108 slides. Strategy, State and its transition table, Observer, Command and execution-time evaluation.
Part III: Architecture, Packages and Legacy Systems
128 slides. Layers and the permitted-dependency matrix, ports and adapters, the package principles (CCP, CRP, REP, ADP, SDP, SAP), instability, ADR-010.
112 slides. The escape route, seams, characterisation tests, suspected defects, Extract Method and Extract Class.
Part IV: Flow Metrics, Delivery and AI Assistance
102 slides. Measurement contracts, velocity and throughput, burn-down and burn-up, lead and cycle time, CR-12 impact analysis.
120 slides. Boundary and contract tests, end-to-end journeys, the five-stage pipeline, feature flags, rollback.
129 slides. Change review, triage, decision records, handover and traceability checks, retrospectives, contribution evidence.
117 slides. The six-step workflow, work orders, claim-by-claim review, failure modes, privacy, dependencies and records.
Using a deck
- Navigate: the arrow keys or the space bar move between slides.
- Present: press F for fullscreen.
- Print or export: decks format to one slide per page in landscape orientation, so Ctrl with P gives a handout or a PDF.
Related
The chapter text each deck follows.
The code, tests and model answers the decks quote.
The learning outcomes and the chapter-by-chapter progression are on the Curriculum and topics page.
Chapter 1: Developing Software That Can Change
Object Oriented Development and Agile Practices (SE506)
Chapter 2: Object-Oriented Development Beyond Syntax
Object Oriented Development and Agile Practices (SE506)
Chapter 3: Agile Development and the Nature of Change
Object Oriented Development and Agile Practices (SE506)
Chapter 4: From Requirements to an Iteration
Object Oriented Development and Agile Practices (SE506)
Chapter 5: Responsibilities, Extension, and Substitutability
Object Oriented Development and Agile Practices (SE506)
Chapter 6: Interfaces, Dependencies, and Composition
Object Oriented Development and Agile Practices (SE506)
Chapter 7: Testing as a Design Practice
Object Oriented Development and Agile Practices (SE506)
Chapter 8: Creating and Connecting Objects
Object Oriented Development and Agile Practices (SE506)
Chapter 9: Designing Changing Behaviour
Object Oriented Development and Agile Practices (SE506)
Chapter 10: From Classes to Application Structure
Object Oriented Development and Agile Practices (SE506)
Chapter 11: Refactoring and Legacy Code
Object Oriented Development and Agile Practices (SE506)
Chapter 12: Measuring Progress, Flow and Technical Health
Object Oriented Development and Agile Practices (SE506)
Chapter 13: Integration, Delivery and Feedback
Object Oriented Development and Agile Practices (SE506)
Chapter 14: Responding to Change and Handing Over
Object Oriented Development and Agile Practices (SE506)
Chapter 15: AI as a Software Engineering Assistant
Object Oriented Development and Agile Practices (SE506)