Rocky Mountain Software Symposium
May 5 - 7, 2006 - Denver, CO
View the event details here ».
Agile software development trainer, consultant and coach
Mike Cohn is the founder of Mountain Goat Software, a process and project management consultancy and training firm. He is the author of User Stories Applied for Agile Software Development and Agile Estimating and Planning, as well as books on Java and C++ programming. With more than 20 years of experience, Mike has previously been a technology executive in companies of various sizes, from startup to Fortune 40. A frequent magazine contributor and conference speaker, Mike is a founding member of the AgileAlliance, and serves on its board of directors. He can be reached at firstname.lastname@example.org.
The technique of expressing requirements as user stories is one of the most broadly applicable techniques introduced by Extreme Programming. User stories are an effective approach on all time constrained projects, not just those using XP.
In this class we will look at how to identify and write good user stories. The class will describe the six attributes all good stories must exhibit and present thirteen guidelines for writing better stories. We will explore how user role modeling can help when gathering a project’s initial stories. This class will be equally suited for programmers, testers, managers and even customers and analysts who are interested in applying these agile techniques to their projects.
Estimating and planning are key skills. A good plan helps both the organization and the developers working on the project. In this session you’ll learn how an easy and effective approach to estimating and planning that can help you create more realistic plans.
Planning is important for all projects, even for projects using agile processes such as XP, Scrum, or Feature-Driven Development. Unfortunately, we’ve all seen so many worthless plans that we’d like to throw them away altogether. The good news is that it is possible to create a project plan that looks forward six to nine months that can be accurate and useful. In this class we will look at why traditional plans fail but why planning is still necessary even on agile projects. We will look at various approaches to estimating including unit-less points and ideal time. The class will describe four techniques for deriving estimates as well as when and how to re-estimate. We will look at techniques to create a plan that dramatically improves the project’s chances of on-time completion. Also discussed will be using velocity to track progress against the plan. This class will be equally suited for managers, programmers, testers, or anyone involved in estimating or planning a project.
There is a myth that agile projects do not need project management and that they cannot be estimated and planned. In this session we will dispel those rumors and learn why the job of the agile project manager is to do more than just buy pizza and get out of the way.
In this session you will learn why a self-organizing team will always outperform a team managed through command-and-control, how to tell when a project is on track, and how and when to make an adaptive action to get it back on track. This session will describe the four types of agile teams and the appropriate project management style for each type. You will learn how to move a team quickly from the Telling phase, through the Selling phase, and into true agility. You will also learn how to achieve unified commitment on your team through powerful focusing tools such as the product vision box, the one-page product data sheet, and elevator statement.
Almost all of us have worked on too many projects that have failed because of economic reasons rather than technical reasons. Just as the technical team is required to estimate the effort that will go into a project, a marketing or product management team should estimate the benefits of doing the project. Benefits can come in the form of additional sales, increased customer retention, increased operating efficiencies, and so on.
In this session we will look at return on investment (ROI) as well as traditional discounted cash flow methods such as net present value (NPV), and discounted payback period. We will also look at newer approaches such as economic value added (EVA).
The math is easy, the concepts are powerful. You will return home with practical knowledge about how to apply these straight-forward techniques to prioritizing and selecting projects.
Projects struggle for many reasons—overly aggressive deadlines, unproven technologies, scope creep, team dynamics, communication problems, and inter-team coordination are just some of the reasons. If not given attention, these problems can ultimately cause a project to fail entirely. However, if you act early and in the right way, most struggling projects can be turned around.
In this class we will look at how to determine what is causing a project to fail and then at what to do about it. You will learn how which remedies to consider in which situations and how to determine the appropriateness of each. Also covered will be advice on communicating the project correction plan to executives or project sponsors who may still think the project is on track. The class offers practical advice from the presenter’s years of experience in assessing both successful and unsuccessful projects.