COURSE 4935 | 2-DAY SESSION
Agile Project Management for VersionOne Users
Course Outline
I. Why Agile? Why VersionOne?
Many managers or teams make the decision to adopt agile methodologies as a software development and project management method without much additional clear direction. In this section we define agile software development and review the history of agile methodologies. We also learn about where VersionOne fits into the process and how VersionOne can help you successfully implement or transition to agile.
- A. History of Agile
- B. The Agile Family of Methods
- C. Defining the Agile Process
- D. VersionOne Overview
Exercise 1 - Servant Leader
Learn the benefits of having an empowered team by working together in teams of two and attempting to reach a fairly lofty goal, with your instructor’s guidance. Reverse the roles, cut the time in half and see just how easy it really is.
II. Backlog Fundamentals
One of the critical success factors in an agile world is maintaining a well defined, ranked product backlog. Here you will explore how to write effective backlog items and make them part of a working backlog.
- A. INVEST Attributes of a good backlog item
- B. Three parts of a backlog item (The 3 C’s)
- C. Backlog item estimation and sizing
- D. Adding backlog items to the VersionOne tool and ranking them
Exercise 2 - Conceive Produce Add and Prioritize Backlog Items
Learn to write clear and concise backlog items. Brainstorm ideas for backlog items you would like to add to your product backlog. Add the items to your product backlog within VersionOne. Prioritize and sort the items within the VersionOne product backlog grid.
III. Backlog Organization Feature Groups
Many organizations have large scale projects that could contain hundreds of backlog items and defects. Learn to take advantage of feature groups within the VersionOne application as a method to sort backlog items and defects into functional groupings thus affording a way to make them easier to organize, rank, and report on.
- A. Defining a feature group
- B. View examples of effective categorization using feature groups
- C. Understand reporting based on feature group classifications
Exercise 3 - Create and Add Feature Groups within VersionOne
Use the VersionOne application to create various feature groups. Discover the three different methods of building relationships between backlog items and feature groups. Learn to manage and assign feature groups using the feature group column from within the application grid.
IV. Backlog Item and Defect Templates
All too often when creating software incrementally you come across specific backlog items that you would like to perform in every sprint. VersionOne provides a backlog item and defect template to eliminate duplication of effort when tasks and tests of a similar nature are performed.
- A. Define good candidates for a backlog item or defect template
- B. Demonstrate how templates work within the VersionOne application
- C. Establish ground rules for when to consider building and using a template
Exercise 4 - Create and Use a Backlog Item Template
Use the VersionOne application to build a backlog item template. Plan the backlog item including various tasks and tests that should be associated with the backlog item. Save the template and generate an actual backlog item from the template.
V. Epics (Very Large Backlog Items)
In many cases when planning for a product release some backlog items are just too large to place in a single sprint. These backlog items are referred to as epics. Epics are then broken down into reasonable sized backlog items that can become consumable in one sprint. The newly broken down backlog items remain children of the large backlog item and maintain a parent child relationship.
- A. Identify good candidate backlog items that need to be broken down into greater detail
- B. Breakdown the parent backlog items into child backlog items that are more easily managed
- C. Demonstrate how new child backlog items can span sprints, releases, and/ or teams
- D. Demonstrate the VersionOne system functionality that allows for backlog items to be broken down into consumable child backlog items
- E. Locate the newly broken down children on the product backlog
Exercise 5 - Breakdown Epic Backlog Item and Generate Child Backlog Items
Select a large backlog item from the predefined system data by sorting on the estimate column. Using the breakdown epic functionality within the application, breakdown a parent backlog item into multiple child backlog items. Check for the new child backlog items in the product backlog. View the parent child relationship on the epics tab within VersionOne.
VI. Managing Requests and Issues
Many teams rely on internal and external requests to help the product owner generate the backlog items necessary in order to facilitate the request making it into a sprint. Agile practices also focus on complete visibility into the entire project. In many cases, this also includes blocking impediments or issues a team may face. The VersionOne application allows for these to be entered, tracked and associated with backlog items.
- A. Learn to manage both internal and external requests using the VersionOne application
- B. The product owner can then create related backlog items to facilitate getting the work on the backlog
- C. The requestor can track progress of the related backlog items using the requestor tool
- D. Examples of applicable issues are presented
- E. Issues are defined and entered into the VersionOne application
- F. Issues are associated with one or many backlog items
Exercise 6 - Manage Requests and Issues within VersionOne
Working in teams, you will enter requests into the VersionOne application. You will learn how to view and approve or reject requests. You will also generate a backlog item from a request and display the relationship between the two. Next you will enter issues into the VersionOne application. You will then associate the issues with one or a group of backlog items they affect.
VII. Release Planning and Team Scheduling
Even in an agile environment, it is critical to organize into functional teams and for those teams to have the ability to put a stake in the ground for a projected release. This session teaches the logic and importance behind release planning and scheduling and shows how team organization and release scheduling should be an intricate part of the agile process.
- A. Define functional teams within the VersionOne application
- B. Assign backlog items to be worked on by a specific team within the tool
- C. Schedule multiple releases within the VersionOne application
- D. Assign backlog items to a release within the application
- E. Demonstrate release forecasting and show the value in tracking releases
- F. Difference between functional teams and member groups in VersionOne
Exercise 7 - Release Planning and Team Scheduling
Working in teams, you’ll practice what you just learned. Begin by creating multiple teams within the application and giving each team a name. Practice using various methods to assign backlog items to a specific team. Insert multiple releases into your project tree. Assign backlog items to the releases you just created. Assign an end date to each of your releases. Use the release forecasting tool to see how it is affected when you modify the number of backlog items to work on.
VIII. Sprints and Sprint Planning
Sprints are central to effectively create time buckets which backlog items can be placed in to be delivered before a certain end date. Once a team velocity is established, they can also be used as a forecasting method to better predict when work that is lower in the backlog might be created. In this session you will learn what a sprint really is, the four steps to affective sprint planning, and the meetings that take place at the beginning of any sprint. You will also focus on estimation and how it ties in to this portion of the work.
- A. Learn the definition of a sprint and what actions take place during one
- B. Discover who should attend each portion of sprint planning and how this meeting can be made most useful to all team members involved
- C. Review the four steps that are critical to successful sprint planning
- D. Study backlog items and learn affective estimation techniques
- E. Manage dependencies between backlog items within the VersionOne application
- F. Insert sprints into a project
- G. Breakdown backlog items into smaller individual tasks
- H. Associate ownership of the backlog items and tasks to one or multiple team members
- I. Review resource allocation and workload
- J. Review outstanding issues and commit to the work scheduled for completion in the sprint
Exercise 8 Part 1 Planning your First Sprint
Using a team scenario from the instructor, work from the backlog and estimate each backlog item. Decide how many backlog items can fit into your sprint. The product owner should present the backlog to the team and allow them to ask questions. The product owner defines acceptance criteria for each backlog item. Developers break backlog items into tasks with estimates in hours.
Exercise 8 Part 2 Sprint Planning Meeting
Add two new sprints to your project in VersionOne. Move backlog items into each sprint making certain that you maintain a consistent velocity. Create a dependency between two backlog items within VersionOne. Move those backlog items around and watch for the dependency notification based on the dependency status.
IX. Sprint Execution
Once the planning is complete, the sprinting begins! The sprint is typically a 2-4 week cycle where specified work is completed. During this session, you will learn to use the VersionOne application to manage your day-to-day process needs.
- A. Learn to track effort and burn down estimates at the task level
- B. Master the daily standup and see the value in this short meeting
- C. Use the virtual taskboard to track daily progress of tasks throughout the sprint
- D. View the sprint from a team perspective and track/monitor the progress of the team
- E. Enter and record hours of effort and learn to manage your workload
Exercise 9 Part 1 The Daily Standup
Participate in a daily standup meeting. Learn the three pertinent questions and who should be in attendance at this meeting. See the value of this meeting through this instructor-led exercise.
Exercise 9 Part 2 Managing the Virtual Task and Test Boards
In this exercise, you will view the taskboard associated with the current sprint. Use the pencil icon within the application to enter amount of work left to do for several tasks. Use the same icon to assign multiple owners to various tasks. Use drag and drop functionality to change task status. Experiment with the test board and view test coverage. View and experiment with the daily standup dashboard and highlight owner functionality.
X. Review, Demo, and Close a Sprint
At the end of each sprint, it is necessary to have a formalized meeting to review what work was completed, demonstrate completed functionality to the customer, and close out the current sprint prior to beginning a new one.
- A. Review work in the current sprint using the VersionOne application
- B. Demonstrate functionality by working your way down the completed items list
- C. Close, move, or split any unresolved work
- D. Close the current sprint and activate the new one
Exercise 10 Review, Demo, and Close Sprint
Working in teams, review the current sprint in your current system. Resolve any unresolved backlog items. Close the current sprint and activate the new upcoming sprint.
XI. Retrospectives
Just as a daily standup gives the team the pulse of the day prior’s events, the retrospective is intended to review all activity from the sprint you are about to close. The VersionOne enterprise application allows for a way to keep track of retrospectives and associate related backlog items or issues.
- A. Learn why retrospectives are an important part of the agile team process
- B. Review a sample retrospective agenda and openly discuss which items should be included
- C. Explore the concept of SAMOLO
- D. Review the most common retrospective pointers and pitfalls
Exercise 11 Conduct a Sample Retrospective
Take an opportunity to review what you have learned in this course and conduct a sample retrospective as a group. Explore things that went well and things that could have gone better.
XII. My Home Dashboard and Reporting
Day-to-day workload and project-based reporting can be found by accessing the My Home Dashboard within the VersionOne application. The VersionOne application also hosts over 60 canned reports as well as the ability to create custom reporting using the API. This section focuses on how to manage the dashboard as well as the most commonly used reports.
- A. Manage day-to-day work using the My Home Dashboard
- B. Manage views into your projects using the project dashboard
- C. Explore the most commonly utilized agile reports within the VersionOne application
- D. Learn where to go for more information with regard to the product as a whole
- E. Learn more about the VersionOne reporting API interface
- F. Explore the VersionOne community site
- G. Answer any questions with regard to agile software development using VersionOne
Demonstration
Demonstrate how to customize the My Home page and review the reports section. Demonstrate how to query and display the most commonly used agile reports.