Training Agenda:
- Agile Product Management
- Value-Driven Development
- Scrum Theory & Empiricism
- The Scrum Framework
- Product Backlog Management
- Releases
Training Agenda:
Exercise: Who has the problem? Defining the user or customer
Exercise: Select a problem candidate
Exercise: Root cause analysis for isolating and defining a specific problem
Group exercise: Rapid ideation
Exercise: Revisiting your user persona and choosing the solution
Exercise: Modeling a testing cycle and group critique
Exercise: Walking through the iteration
Exercise: Preparing for scalability challenges and transitioning from discovery to delivery
Part 1: Agile Review in Five Minutes
Part 2: User Stories then, User Stories now
Part 3: User Story Overview
Part 4: User Personas
Team Exercise: Teams will practice writing stories using the Roles identified from the User Persona exercise. As a group, acceptance criteria will be written, simulating a backlog grooming session.
Team Exercise: Teams will create User Personas to understand the concept and identify details that make them unique
Team Exercise: Individually the group will write an example of a Spike, Non-Functional requirement, and a Defect. Focusing on what makes them unique and how best to document the details for development.
Part 5: Levels of Planning
Team Exercise: Teams will create a list of features, focusing on the evolution of an application and ways in which to build upon a feature over time.
Part 6: Getting hands-on: User stories in practice
During this workshop section of the course, the group will spend time practicing application of user stories as they will back at work after class. Workshop participants will critique stories that have been given to them, learning what to look for when grooming stories (size, unclear, dependencies).
Team Exercise: Teams will create Epics for the features identified in the previous exercise, focusing on how to break down the work into valuable slices.
Team Exercise: The group will be given a sample process map, they will break the process into stories that remain independent and valuable, even if the value varies.
Team Exercise: Teams will write stories that relate to the Epics written in the previous exercise. Focusing on the INVEST strategy of story writing and using group feedback to further refine.
Part 7: Prep and Support of Sprints
Part 8: Application Workshop
Team Exercise: Individually, the group will get to focus on real-world examples, getting feedback from the group intermittently, similar to a series of grooming sessions. Ideally bringing these stories back to their own projects.
Part 9: Retrospective
Part 1: Product Owner Core Competencies
Part 2: Goal Setting and Planning
Part 3: Understanding Customers and Users
Part 4: Validating Product Assumptions
Part 5: Working the Product Backlog
Part 6: Scrum Theory
Part 7: Scrum Teams
Part 8: Scrum events and activities
Part 9: Artifacts and commitments
Section I. Review of Requirements Development with Use Cases
Use cases are one of the best approaches for developing requirements. In this section of the workshop, we will review key definitions and terms, overview a requirements management framework, and review how use cases fit into the development life cycle. We’ll refresh your knowledge of how to find requirements from use cases, and we’ll conclude with a discussion of use cases and Agile methods.
Practice Session
With your instructor, revisit key concepts of requirements engineering and then review poorly written requirements to discover characteristics of effective requirements. Work with your team to review and analyze several use cases and then extract possible requirements from those sample use cases.
Section II. IT Project Initiation and Use Cases
To exploit the full advantages of use cases, seasoned analysts plan for them from the very beginning of each project. This section explores project initiation and its relationship to use cases, particularly how to identify and capture them early in the project life cycle. In particular, you'll review whether use cases are appropriate for a specific project. You'll strengthen your understanding of the connection between project scope and use cases. We'll conclude this module with an exploration of other methods for identifying the use cases that comprise a system, and a chance for you to practice constructing a use case diagram.
Practice Session
Examine a hypothetical but realistic business and one of its emergent projects. You'll work in a small group to practice determining whether the use case approach is appropriate, identifying the use cases using the actor/goal identification method, and writing user stories and use case briefs for the case project. You will also practice diagramming the actors and the use cases.
Section III. Documenting Requirements with Use Cases
At some point, we must document the use cases and requirements discovered during the requirements elicitation process. This section of the workshop focuses on how to apply the knowledge you already have to writing better use cases. It also examines more complex aspects of uses cases, including includes and extends relationships and use case linking on larger systems.
Practice Session
You'll work with your team to write a fully dressed use case for our case project, including a preamble, the main success scenario, and the extension scenarios. You'll also have a chance to write an included (or sub-function) use case and an extension use case.
Section IV. Improving Use Case Quality
As with most aspects of system development, the quality of downstream work products (design elements, test plans, etc.) depends directly upon the quality of the use cases. During this part of the workshop, we will apply standards for quality to our use cases and requirements and look at some proven ways to prevent common problems. We'll also explore how to derive maximum benefit from reviews throughout the life cycle.
Practice Session
Your team will review another team's use case using a quality checklist. You'll then have the opportunity to refine your own team's use case based on feedback from another team.
Section V. Use Cases and Other Requirements
Merely writing use cases is not sufficient for capturing all project requirements. While desired user functionality yields a major set of project requirements, experienced analysts know there are also non-functional aspects of the desired system that must be identified and captured. In this section, we will examine ways to derive other typical requirements from use cases and how to identify constraints on the solution design. In addition, we'll explore how use cases not only trace back to one or more business requirements, but also how they trace forward through the development life cycle to design and testing.
Practice Session
Your team will work together to derive and capture non-functional requirements from the use case your team has already refined. Then your instructor will work with the class to develop and document traceability between the requirements and the use cases for our course project.
Section VI. Use Cases and Testing
One of the most powerful aspects of the use case approach is its improvement in test procedure development. Well-written use cases directly impact the outcome of the very portion of the life cycle most likely to suffer when time is of the essence. Here, we'll look at how use cases can help identify test cases early in the life cycle. Next, we'll examine an example use case and its associated test plan side-by-side. Finally, we'll discuss how use of automated tools can reduce not only testing time, but also the time required to produce the test procedures.
Demonstration
Your instructor will demonstrate the use of a popular automated use case documentation tool and will then use it to develop a partial set of test procedures for our case project.
Section VII. Use Cases and Design Elements
Once we have the use cases developed, we can use them as a basis for discovering the elements needed for the design and development of the solution. In this section, we'll learn how to find typical design elements such as screens, messages, and dialog boxes, creating another layer of detail (sometimes called a "system use case").
Practice Session
With your team, you'll analyze the use case you've already written to identify and specify required design elements. With your instructor, prototype an interface design for a use case from our case project and use it to validate the requirements.
Gain an overall understanding of why effective focus on dealing with change is important.
Learn why mindset change is needed and how the Agile Manifesto is the shift needed.
Where Lean and Kanban fit in the Agile spectrum which leads to the Scrum framework and XP practices.
Identifying high performance in teams and different kinds of organizational teams, including distributed ones.
Learn where Scrum came from and the key roles on a Scrum team.
Understanding the Agile planning approach, key ways to convey project vision, and the use of user roles and personas.
Understanding the use of stories and approaches to defining story maps and story splitting.
Writing good acceptance criteria and using them for story decomposition. Understanding technical stories and technical debt in support of Development teams. Using various prioritization approaches and risk management approaches.
How traditional estimation can go wrong and the relative estimation approach used in Agile, including estimation approaches such as Poker Planning and Affinity Estimation. How story estimation can lead to release planning.
The Product Owner roles in Sprint Planning, Daily Meetings, Sprint Reviews, and the Sprint Retrospective.
A look at three key scaling approaches: Scrum of Scrums, SAFe, and LeSS.