Contemporary Development Principles and Practices培训
Module 1: Traditional Development Approaches
1.1 Overview of Sequential, Predictive Development Approaches
Description of sequential, predictive ‘Waterfall’ approaches
Timeline of evolution of Waterfall approaches
1.2 Strawman Waterfall
Dr Winston Royce’s Waterfall model
Benefits of Waterfall for controlling projects
Royce’s “Inherent risks”
1.3 V-Model
Early verification and validation
Benefits of V-model
1.4 Incremental Models
Example of Rational Unified Process
Incremental delivery
Breaking down scope and managing risk
1.5 When to Use Waterfall
Defined process control
Module 2: Prince2 Overview
2.1 What is Prince2?
Definition and origins
Prince2 Certifications: Foundation, Practitioner, Agile
Benefits of Prince2
2.2 Prince2 Methodology
Roles – Project manager, customer, user, supplier, project board
Management Techniques – Project assurance, project support
Scope - Interaction with contracts and contractual management
Controlling Change – Risk, quality, and change management
2.3 Prince2 Process Model
Directing a project
Starting up a project
Initiating a project
Managing stage boundaries
Controlling a stage
Managing product delivery
Closing a project
Planning
Module 3: Agile Overview
3.1 Historical Overview
Timeline of evolution of ‘Agile’ ideas 90s to present
Early Agile approaches – Scrum, XP, DSDM
Agile Developments – Kanban, BDD, DevOps, Scaling
3.2 The Agile Manifesto
Background to creating the Manifesto
Agile Manifesto overview
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Module 4: Agile Principles
4.1 The 12 Agile Principles
Group discussion on each principle
4.2 Summary of Agile concepts
Iterative planning and development
Continuous improvement
Continuous learning
Collaboration and face-to-face communication
Collective accountability
Cross-functional teams
Module 5: Agile Project Management with Scrum
5.1 The Scrum Framework
Overview – Scrum Guide 2016
Scrum roles and responsibilities – Scrum Master, Product Owner, Team
Scrum events – Sprint, Sprint Planning, Review, Retrospective, Daily Scrum
Scrum artefacts – Product Backlog, Sprint Backlog, Product Increment
5.2 Agile Project Management Principles
Empirical Process Control
Iterative planning and reporting
Continuous Improvement and retrospection
Resource management and teams
Module 6: Software Testing
6.1 Testing Fundamentals
The Fundamental Test Process
Planning, Analysis & Design, Execution, Evaluation, Closure
Test levels – unit, integration, system, user acceptance
Test approaches – requirements-based, risk-based, experience-based
Test design techniques – white-box, black-box techniques
6.2 Agile Testing
Agile Testing Quadrants overview – test strategy, planning
Test-driven development
Test automation principles – test automation pyramid
6.3 Test Types
Technology-facing tests that guide development
Unit testing, TDD, smoke tests
Business-facing tests that guide development
Story tests, examples, acceptance testing
Business-facing tests that critique the product
Exploratory testing, Alpa/Beta testing, UAT
Technology-facing tests that critique the product
Performance testing, usability, quality attributes
Module 7: Traditional Business Analysis
7.1 What is Business Analysis?
Business analysis and the business analyst
Levels of business analysis – enterprise, project, operational
Business Analysis principles
7.2 IIBA BA Book of Knowledge – Knowledge Areas
Business Analysis Planning and Monitoring
Elicitation and Collaboration
Requirements Life Cycle Management
Strategy Analysis
Requirements Analysis and Design Definition
Solution Evaluation
Module 8: Agile Business Analysis
8.1 Agile Business Analysis Considerations
Iterative development
Cross-functional teams
Collaboration between business and technology areas
8.2 Behaviour-Driven Development Overview
Origins in TDD and recent developments
Definitions – BDD, ATDD, Specification by Example
8.3 BDD Activities
Focus on features that deliver business value
Derive features collaboratively
Keep options open
Use concrete examples to illustrate features
Write executable specifications
Create living documentation
8.4 Agile BA Techniques & Tools
Business value definition
Personas
Impact Mapping
Real options
User Stories and acceptance criteria
Relative estimation
Given-When-Then template
Tool support for BDD