Managing Agile Development Projects with HP PPM Center and HP quality Center. IT management needs to implement effective and flexible controls throughout the whole organisation. Without such controls and visibility, it is impossible to reduce project schedule and budget overruns, reduce the risks and achieve true business agility.
Managing Agile Development Projects with HP PPM Center and HP quality Center. IT management needs to implement effective and flexible controls throughout the whole organisation. Without such controls and visibility, it is impossible to reduce project schedule and budget overruns, reduce the risks and achieve true business agility.
Managing Agile Development Projects with HP PPM Center and HP quality Center. IT management needs to implement effective and flexible controls throughout the whole organisation. Without such controls and visibility, it is impossible to reduce project schedule and budget overruns, reduce the risks and achieve true business agility.
White paper 2 Executive summary Agile frameworks are rapidly gaining popularity among software developers in organisations of all types and sizes. But with the promise of faster development and better software quality comes an still greater challenge supporting dozens of fast-paced projects without losing track of the big picture aligning IT with business objectives to increase business outcomes. With multiple development projects both Agile and waterfall underway or under consideration at any given time, how do you keep your IT team from getting overcommitted, over budget and overwhelmed? Step one is to gain complete visibility into all your operational and strategic activities, and determine which ones will deliver the best business results. Whether your organisation is predominantly Agile or is working in a hybrid mode of both Agile and traditional life-cycle methods, IT management needs to implement effective and flexible controls throughout the whole organisation. Understanding project milestones, deliverables, resource and budget requirements and keeping track of the project health and quality indicators allow IT management to bring order to chaos. Without such controls and visibility, it is impossible to reduce project schedule and budget overruns, reduce the risks and achieve true business agility. This paper discusses how HP Project and Portfolio Management (PPM) Center and HP Quality Center (QC) software can give you the information you need to make better business decisions, lower the cost of running both your Agile and traditional development projects, increase collaboration between business and IT and improve application quality. We will highlight the core elements of Agile development methodologies and explore how Agile development can be aligned with the basic principles of project and portfolio management to make sure that IT objectives meet the companys business goals. The HP Solution for Managing Agile Projects HP Software provides an integrated platform for planning, staffing and monitoring Agile development projects, as well as managing application quality. HP PPM Center offers a consolidated view of all IT activities so that management has better visibility into the portfolio, more effective controls, greater flexibility in applying automated processes and better-defined quality standards. With the HP solution, your project and portfolio management system can give your organisation visibility into everything that is being worked on including project health data, non-project work, resource allocations and cost information. This integrated solution gives you the unique ability to aggregate both Agile and waterfall projects and see the critical interdependencies among projects for example whether the resource demands of an operational project or other activity might prevent you from undertaking a proposed project. This capability enables you to manage and prioritise the collected work so you can ensure that the right people are working on the right tasks at the right time. You can capture all the details about all current work so every decision is supported by hard data. Once an Agile project is underway, the high-level key project information is passed to HP Quality Center which can help break down the Product Vision and Epic-level requirements into more specific deliverables the User Stories. HP Quality Center which is tightly integrated with HP PPM Center combines the elements of requirements management, release planning and quality management into one scalable, Web-based solution that is ideally suited to manage the process of creating, organising and prioritising the User Stories. HP Quality Center helps capture User Stories and stores them in a centralised global repository that is accessible to all team members. Any changes to the User Stories are immediately known to the whole team, making iteration planning easier and more accurate. HP Quality Center then helps trace the User Stories throughout the testing process to make sure that teams are focusing their effort on the right areas and are fixing the defects that affect the most critical business functionality. Software engineering with Agile methodology is a team effort, and HP PPM Center and HP Quality Center are specifically designed for collaborative engineering throughout the development cycle planning, design, testing, editing, change management and ongoing maintenance. They are closely integrated to allow data to flow seamlessly between stages and to enable control points and reporting at any point in the life-cycle. Together, these solutions are exceptionally capable of supporting both Agile and traditional IT projects. They enable you to align business goals with technical resources, help you enhance the business outcomes of IT projects, and are comprehensive and flexible enough to deliver true business agility without the added weight of rigid, bureaucratic processes project teams will object to adopting. 3 Figure 1: Agile methods focus on delivering working software features with acceptable quality in short iterations, each containing steps for project planning, requirements analysis, design, coding, testing and documentation 1 2 3 4 5 6 7 8 9 10 11 12 13 Product Owner The Team Sprint Review Daily Scrum Meeting Scrum Master Potentially Shippable Product Sprint Retrospective Sprint Sprint Planning Meeting Product Backlog No Changes (in Duration or Deliverable) Diagram Source: GoodAgileIntroduction to Scrum for Managers and Executives Main Principles of Agile Development There is no single Agile method, but rather a set of at least 14 broadly recognised methods centered around a number of common principles: rapid release cycles, value-driven development, team collaboration, continuous planning and improvement, and customer involvement. Instead of extensive upfront investment and planning, Agile methods focus on delivering working software features with acceptable quality in short time-boxes or iterations that typically last one to six weeks. Each iteration includes all of the tasks necessary to release the mini-increment of new functionality planning, requirements analysis, design, coding, testing and documentation. At the end of each iteration, the team re-evaluates project priorities. Agile methods emphasise real-time communication and empower people to collaborate and make decisions together quickly and effectively. Most Agile teams are cross-functional and include all the people necessary to build the software. All Agile methods value continuous evolution of both the project and the software, are lightweight and inherently adaptable. Scrum: Overview, Basic Concepts and Jargon For the purpose of this paper, we will use the example, concepts and jargon of a single, and perhaps the most popular Agile development method Scrum. Scrum is a simple but powerful framework for development teams and customers to continuously monitor project progress and quality and use the feedback to surface problems, adapt the processes and adjust the project scope. Scrum is deeply rooted in collaboration and provides a high degree of clarity and transparency for all stakeholders the development team, customers, product owners, management and others. Despite its rebellious nature, the basic phases of a Scrum development process are not that dissimilar from those used in any other type of project. Project managers, product managers and project sponsors plan, define and initiate the development project, the development team executes the plan, and together they monitor and control the results. However, traditional development methods define a single sequence of initiation, investigation, design, coding and testing for each project, while Agile development projects rely on multiple fixed-length iterations, each including planning, development and assessment phases. In the Scrum development method, the Product Owner owns the Vision a high-level strategic idea for the product, its intended uses and the value that it would provide for a specific customer base. The Vision contains input from customers, end-users, executives, sales, support, and other external and internal stakeholders. The Product Owner organises the Vision into a single list of project proposals that needs to be evaluated and prioritised based on the business value and risk. This prioritised list of requested features and functionality is referred to as the Product Backlog. The next step is to break down the large ambiguous features or Epics into smaller, well-defined User Stories that can be easily consumed by the development teams in the next iteration, or Sprint. Sprint is a fixed period of development time which typically takes between one and four weeks. Before each Sprint, the team selects which User Stories from the Product Backlog it will commit to, and creates a Task-level plan for how they will deliver the results. 4 For each Task, the team estimates the required time commitment and compares it with the total available development hours to make sure that they do not over-commit for this Sprint. The commitment level and the due dates do not change during the Sprint. The team meets daily to discuss Sprint progress, list tasks that have been completed and need to be accomplished in the next day, and report any roadblocks. The ScrumMaster keeps track of these meetings and monitors the daily progress. The team also updates several simple charts: The Sprint Backlog lists all current tasks and the hours remaining for completing each one The Burndown Chart totals the number of hours remaining for all tasks The Task Board shows all tasks that are in-progress. The goal for each Sprint is to deliver all the functionality the team has promised to deliver and to produce a complete piece of product functionality that has been designed, developed and tested with acceptable level of quality. At the end of each Sprint, the Product Owner, ScrumMaster and the team review the finished product, discuss the development process, and incorporate the feedback into the Product Backlog and future Sprints. Strategic Planning for Your Agile Projects with HP PPM Center software Agile frameworks emerged as an alternative to extensive project planning. However, before any new Agile project can begin, or still be considered, IT management needs to gain a complete view of everything that is going on in IT proposed projects, application changes, strategic initiatives, services provided and all relevant operational activities in order to make realistic resource and time commitments and to select the projects that best align with the companys business objectives. You also need to continuously monitor project health to respond to fast-changing portfolio needs quickly. Unlike approaches that offer only time-reporting systems and project scheduling tools, HP PPM Center offers top-down planning capabilities that are tightly coupled with bottom-up details of the project execution. HP PPM Center integrates project and portfolio management, programme management and other key functions with all relevant operational activities, to enable that you have up-to-the minute visibility into your total IT workload. To help make strategic decisions on which Agile projects will be given the green light, HP PPM Center gives you the portfolio or investment planning tools to analyse the trade-offs among various investment alternatives. This creates virtually unlimited scenario- based planning capabilities and gives you the ability to forecast the financial and technical impacts of changes. With HP PPM Center you can clearly see what resources and capabilities are available at any given time for your fast-paced Agile development projects. Building a Product Vision: Initiating a Project Proposal To initiate an Agile project, the Product/Application Owner creates the high-level Project Vision and submits it as a project proposal within HP PPM Center. Based on the project details and supporting business case that are included in the proposal, the Portfolio Manager can begin the process of evaluating it against other initiatives proposed or in-flight and make a decisions on whether the project will be funded. HP PPM Center lets business and IT stakeholders collaboratively govern the whole IT portfolio with multiple levels of input, review and approval. From proposal initiation, justification and review to project initiation, execution, deployment and benefits realisation, HP PPM Center uses automatic, real-time updates and a clear and flexible process to keep all stakeholders involved. To streamline the process of submitting the project proposal, the Product/Application Owner can draw on the powerful and flexible workflow engine within HP PPM Center. HP PPM Center facilitates the process of gathering input from all stakeholders, routes the proposal through required approval stages and consolidates all supporting materials in a central location, transforming the high-level Product Vision into a detailed project proposal. Creating a Product Roadmap: Managing Agile IT Projects Once the proposal is approved, it becomes an IT project. At this stage, a high-level Product Vision is broken down into several Epics specific definitions of the products features and functionality that span multiple releases. An Epic is a big enough slice of product functionality to have its own plan, resource estimates and milestones. The Product/Application Owner can initiate an IT project for each Epic, in order to plan and track its phases, deliverables and tasks. Only as multiple Epics stem from a single vision, multiple IT projects can be linked to the same proposal, which contains all the supporting information, background and value propositions. 5 Figure 2: HP PPM Center acts as the central point of control for managing and continuously assessing the health of the project The HP PPM Center Project Management module provides a Web-based platform for project collaboration among team members and stakeholders with real-time visibility into resources, processes, status and inter-project dependencies. Agile Product/Application Owners and team members can plan and schedule Sprints, create preliminary staffing plans and track project status, health and deliverables through the HP PPM Center Project Management dashboards. Throughout the duration of the project, the Project Management module can act as the central location for managing and continuously assessing the health of the project. HP PPM Center also offers bi-directional integration with Microsoft Project. Managing User Stories with HP Quality Center One of the most important concepts in all Agile development methodologies is the notion of value-driven User Stories. Instead of trying to find a product idea that will satisfy many kinds of different customers, Agile Product/Application Owners attempt to connect each product feature with its intended user and focus on the value that it provides for this user. A User Story could be a product requirement, an internal deliverable, or any other type of a container for related tasks. All User Stories must be small enough to be completed within a single Sprint. The integrated solution from HP allows for User Stories to be derived directly from the Product Vision and Epic details that were captured during the planning phase of the Agile project. HP Quality Center is a collaborative, Web-based solution that can help Agile teams organise and manage the User Stories in a central repository. The HP Quality Center Requirements Management module contains customisable hierarchical fields for capturing the User Story and its attributes: name, description, fit criteria, owner, estimated efforts and all related tasks. All User Stories are typically stored in order of priority and referred to as Product Backlog. To plan the next Sprint, the development team selects the top User Stories from the Product Backlog and adds them to the next cycle. HP Quality Center supports the concepts of release and cycle management as integrated parts of the Application Quality Management process. With HP Quality Center, you can see not only detailed descriptions of each Sprint, but also complete statistics on the User Stories that are included in this Sprint, test plans associated with it, and detailed quality information. In most Agile methods, User Stories are further broken down into Tasks the actionable work items that get assigned to individual team members. HP Quality Center allows for tracking and managing of Tasks as part of its Requirements Management module. Tasks are defined as a requirement type, and the process of creating, refining and completing the Tasks is governed by the customisable workflow within HP Quality Center. For example, when the Task is first added, it is assigned a draft status. After the definition has been completed and the ScrumMaster has added the effort estimate, the Task status changes to defined. As soon as the Task is assigned an owner, its status changes to in progress, and finally when the Task is finished, its status is set to completed. 6 Figure 3: Through tight integration between HP PPM Center and HP Quality Center, key Agile project information is accessible to all team members, allowing for greater visibility and control at every stage of the development process Create Proposal Evaluate Proposal Approve Proposal funding Create Project Define Project WBS Summary resource assignment at Sprint level HP PPM Center Epic-level requirements HP Quality Center Total Story points added in QC Break Epic-level requirements into User Stories and Tasks Manage the Backlog of User Stories and Tasks Assign User Stories and Tasks to Sprints Execute and update Tasks during Sprints Burndown Charts and other reporting Each User Story typically includes the high-level preliminary estimate of engineering hours required to complete it. After the Sprint has started, these numbers can be refined based on the more accurate, Task-level estimates. All time estimates in HP Quality Center can be aggregated to the Sprint or release level, enabling the Agile development teams to make more accurate commitments for each cycle. The same aggregated view can be used by the ScrumMaster to monitor the progress of Sprints and releases. Integrated, customisable graphs and reports in HP Quality Center allow the Agile teams to quickly view the essential graphs, such as the Backlog and the Burndown charts. Managing quality in Agile projects with HP Quality Center HP Quality Center provides a Web-based, integrated system for automated software quality testing and management throughout a wide range of application environments. It provides the visibility needed to validate both functionality and automated business processes and identifies bottlenecks in production that hamper business outcomes. HP Quality Center enables Agile teams to engage in application testing still before the development process is complete, thereby providing the ability to accelerate release schedules while maintaining a high-level of quality. HP Quality Center is an effective tool for Agile QA because it is specifically designed to facilitate the type of collaboration and cross-pollination that is key to Agile software engineering. To learn more about HP Quality Center and its support for Agile quality methods, download the Managing Quality in Agile Projects with HP Quality Center white paper. Building a Quality Center of Excellence The idea of establishing a Center of Excellence (CoE) for managing the quality of Agile applications may first sound illogical to an organisation focused on quick and nimble development. The truth however is that managing quality as a shared service can actually help you achieve better business results faster and with less process overhead. HP Center Management for Quality Center is built on HP PPM and Quality Center software and provides pre-packaged content and workflows to automate key processes for quality management and enables best practices for project collaboration as well as project and resource management. HP Center Management for Quality Center provides a single dashboard view for application owners to create, manage and track both Agile and traditional development projects. This view improves the project delivery process and helps you properly assign resources to tasks and manage them efficiently based on the business criticality of each project. HP Center Management for Quality Center also helps enforce best practices by enabling the shared CoE to define a QA project template that can be reused by different Agile projects. With a Quality Center CoE, you can simultaneously track the quality of multiple Agile projects, gain real-time visibility into requirements, tests and defects, aggregate results and reporting throughout multiple HP Quality Center instances and projects and improve your organisations quality practices. 7 Figure 4: HP Quality Center allows for tracking and managing of Agile project Tasks as part of its Requirements Management module First Level contains Backlogs and Cycles Multi-Backlog handling for enabling Scrum-of-Scrum All items are assigned to a specific target Release and Cycle Aggregated Effort per level for Estimates, Actuals and Remaining and Percentage Completed Summary There is no question that Agile methodologies are here to stay. They are gaining traction in large business development organisations and are being successfully used to build mission-critical financial, healthcare and government software systems. But it would be a mistake to assume that implementing Agile techniques removes the need for organisation portfolio management, demand, resource and budget planning and project management. On the contrary, with so many Agile development projects being proposed and already underway in any organisation, IT management needs still greater visibility into all IT projects, a way to manage and prioritise IT investments, flexible controls over the release processes and solid compliance objectives. The strength of HP PPM Center is in enabling collaborative decision making that complements the basic Agile principle of individuals and interactions over processes and tools. It works especially well throughout geographies, with Web-based collaboration and the free flow of information among project stakeholders and different teams. This helps support the offshore outsourcing models for IT development projects. Together, HP PPM Center and HP Quality Center help you focus on optimising business outcomes instead of only running individual Agile projects. Using the integrated HP solution, companies can achieve the true alignment between business and IT that leads to a transformation in business results. Sources: Focus on Value: How to create value-driven user stories by Chris Sterling http://www.scrumalliance.org/articles/89-focus- on-value Glossary of Scrum Terms by Victor Szalvay http://www.scrumalliance.org/articles/39- glossary-of-scrum-terms GoodAgile Introduction to Scrum for Managers and Executives www.goodagile.com Technology for better business outcomes To learn more, visit www.hp.com/go/ppm Copyright 2009 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein. 4AA2-4193EEW, January 2009