Description
Learn how to use an Agile approach to software development to create products that provide continuous value to customers. Students will be able to differentiate between Scrum, Kanban, and XP, create an environment that fosters high-performing teams, and manage iteration planning using Agile techniques by the end of this programme. Students will also be able to create a release plan for a Minimum Viable Product, create metrics that demonstrate project status, and effectively communicate progress both within and outside of the development team.
Syllabus:
Course 1: Foundations of Agile and Agile Frameworks
Why Agile?
- Explain the Agile Mindset and how it sets the tone for Being’ Agile versus just ‘Doing’ Agile
- Identify how the Agile Manifesto sets the foundation for all Agile Frameworks
- Compare Agile versus the more traditional Waterfall approach to product development
- Evaluate common misconceptions about Agile
Build and Evolve Agile Teams
- Recognize the characteristics of a high performing Agile Team
- Sustain and enable high performing teams
- Identify an Agile team’s core roles, optimal size, structure, and cross-functional skills
- Apply best practices of Agile Governance
Agile Frameworks
- Compare and contrast Scrum, Kanban, and XP
- Evaluate the unique characteristics of the Scrum framework and appropriate uses
- Evaluate the advantages of the Kanban Framework and its appropriate uses
- Evaluate the advantages of the XP Framework and its appropriate uses
Project: WorldVisitz Mobile App Agile Delivery Launch
In this project, students will act as Agile consultants to help WorldVisitz begin its Agile journey. Students will recommend and define an Agile delivery solution for WorldVisitz executives to replace the inefficient traditional product development processes that are currently in place. Students will prepare a presentation to persuade WorldVisitz leaders of the business value and rationale for implementing an Agile framework based on an assessment of the organisation. In addition, students will prepare an Agile onboarding presentation to help the team get started on their Agile journey.
Course 2: Delivering Value with Agile Planning and Prioritization
Agile Planning
- Describe the benefits of agile planning
- Explain the MVP concept and understand how it’s used in software development
- Construct a product roadmap
- Create user stories that describe product requirements
- Understand the difference between features, epics, and user stories
- Identify acceptance criteria for user stories
Prioritization
- Define the product backlog and explain why it exists
- Explain how each team role uses and interacts with the backlog
- Manage a backlog and organize it using progressive elaboration
- Identify and apply different prioritization techniques
- Prioritize a product backlog
Scoping
- Understand how to control the scope of user stories
- Refine the Definition of Done for user stories
- Estimate user stories
- Explain and apply various estimation techniques
- Apply ideal time to estimates
Release and Iteration Planning
- Explain the relationship between release and iteration planning
- Identify the outcomes of release and iteration planning
- Plan an MVP that delivers value incrementally by using techniques such as continuous integration and continuous delivery
- Explain and apply timeboxes
- Apply the Scrum framework to plan a release and a sprint
Project: Create an MVP Release Plan
In this project, students will devise a strategy for creating a software product for the Centers for Disease Control that will aid in the prevention of the spread of a deadly virus. Students will be given a set of criteria to follow in order to create a plan for the customer. The plan will include a vision, roadmap, user stories, and a release plan that outlines the bare minimum of features required to make the product successful while also aligning with business requirements for an MVP.
Course 3: Progress, Communication, and Organizational Agility
Agile Metrics
- Explain the importance of using metrics in Agile
- Differentiate between outputs and outcomes
- Calculate a Velocity
- Determine the Lead Time and Cycle Time
- Monitor the status of Work in Progress (WIP)
- Estimate when work should be completed
- Identify escaped defects and how to handle them appropriately
Measuring Progress and Impact
- Identify the different parts of the continuous improvement process that lead to a sustainable development level
- Differentiate between patterns and antipatterns of the continuous improvement process
- Effectively apply Agile thinking to reach sustainable development
- Run a retrospective to effectively identify what went well, what didn’t go well, and what can be improved
- Effectively prioritize the next steps to improve on the lessons learned and add it to the backlog
- Use the appropriate chart type to build an IR to communicate a specific metric
- Create a BVIR to effectively communicate project status
Identifying Risks
- Determine the impact risk would have on a project
- Effectively communicate how technical debt impacts a project
- Apply Agile techniques to mitigate technical debt effectively
- Identify failure patterns and implement mitigation strategies
- Use testing techniques early to keep an Agile project on schedule
Agile Communication
- Differentiate between metrics that should be shared internally vs. externally
- Create a BVIR to communicate project status to the relevant team/stakeholders effectively
- Correctly determine the status of the current in-progress project
- Effectively implement tools to communicate across remote teams
- Build a communication strategy for an internal team and for external parties
- Build trust using Agile techniques between team members to encourage transparency in communication
Project: Report Agile Project Status with a Big Visual Information Radiator
Students will learn how to plan, organise, monitor, and display project information at a glance in this project. Students will design a Big Visual Information Radiator (BVIR) that anyone involved in an Agile project can use to review project goals, work completion status, metrics, risks, and target completion date. Students will learn how to use techniques such as appropriate use of burn-up and burn-down charts, user storey prioritisation, risk identification, and velocity calculation. Students will also learn how to effectively communicate project status and key metrics to a corporation's senior management audience.