Software Project Management Conclude Adaptive Project Framework INFO 638 Glenn Booker INFO 638 Lecture #9 1 Client Checkpoint A key feature of APF is that is requires customer input throughout the life cycle Combined with short iterations, this makes problems readily identifiable, and often easily corrected INFO 638 Lecture #9 2 Client Checkpoint The Client Checkpoint focuses on two major activities Review of the quality of work done in the existing cycle Need planned and actual functionality added to the system in this cycle Adjust schedule for the next cycle accordingly Need the Scope Bank INFO 638 Lecture #9 3 Client Checkpoint Key questions to answer are: What was planned to have been accomplished during this cycle? What was actually accomplished? Is its quality up to expectations? Is the scope of this version still valid? Are changes needed to the project scope? Is the development team working well? What was learned from this cycle? INFO 638 Lecture #9 4 Client Checkpoint Planning for the next cycle needs to be updated as needed Define the scope of Functionality completed in previous cycles Functionality not completed, or poor quality, from previous cycles Functionality planned for this and near term future cycles INFO 638 Lecture #9 5 Client Checkpoint From this, the outputs should be Updated list of functionality to be developed, and already developed Changes to priorities of functionality, if needed Duration of the next cycle On larger projects, changes in scope might require contractual updates INFO 638 Lecture #9 6 Go back to Cycle Plan phase After the client checkpoint, loop back to the cycle plan phase, until this version of the product has been completed Notice that we didn’t do detailed planning during the client checkpoint for this reason – it’s followed by the planning phase Stop loop when done with Version INFO 638 Lecture #9 7 Post-Version Review Recall that a Version of the product is the result of many cycles Once a Version is completed, it is a deliverable product to the customer (plus its manuals and documentation) The Post-Version Review is done upon completion of each Version INFO 638 Lecture #9 8 Post-Version Review There are three activities in the Post-Version Review Determine if the project has met its business objectives Was the error rate reduced, or customer base expanded, or whatever objectives were defined for this project met? INFO 638 Lecture #9 9 Post-Version Review Review lessons learned Look for improvements based on the lessons learned from the previous cycle Are there issues involving the team or customer interface that need resolution? Look for APF process improvements Identify ways to make the APF work better for your organization and industry This is a built-in quality improvement process INFO 638 Lecture #9 10 That’s APF! That concludes the core activities in the Adaptive Project Framework The phases were Version Scope, Cycle Plan, Cycle Build, Client Checkpoint, and Post-Version Review Now we’ll look at APF variations INFO 638 Lecture #9 11 APF Variations APF is designed to evolve during a project by Adjusting the number of cycles Adjusting the length of cycles Adjusting the priorities of functions Adjusting the scope of functions at each client checkpoint But there are other uses of APF INFO 638 Lecture #9 12 Proof of Concept APF can be used for quick proof-ofconcept projects Goal is to gather enough evidence to make the business case for the project Might involve prototyping, feasibility studies, describing use cases, storyboarding, or any other technique needed to show the project’s idea is worth pursuing INFO 638 Lecture #9 13 Revising Version Plan As a project goes through the first few cycles, you may discover the overall scope is flat out wrong In such cases, might need to restart the project from scratch, or at least make radical changes to the scope and WBS Even killing the project might be needed INFO 638 Lecture #9 14 Extreme Project Management Extreme Project Management (xPM) is similar to APF, but is better suited to projects with poorly defined goals You don’t know what the objective is It isn’t the same as Extreme Programming (XP), which is part of the Agile family of development methods INFO 638 Lecture #9 15 Extreme Projects Extreme projects are generally fast, innovative, and ill defined High speed – must be developed quickly High change – must respond to fast changes in the project requirements High uncertainty – must be able to handle rapid and unexpected changes in project direction and focus INFO 638 Lecture #9 16 Extreme Project Management xPM consists of four phases which are contrived to spell out INSPIRE INitiate SPeculate Incubate REview The goal is to work with the client to determine the project’s goal INFO 638 Lecture #9 17 INitiate xPM works with an unknown number of short (1-4 week) cycles The Initiate phase focuses on establishing the project boundaries Define the project goal (or what’s known of it) Prepare a POS Establish project overall time box and cost limits INFO 638 Lecture #9 18 INitiate Establish number and length of cycles (and expect them to change) Establish project priorities Scope, cost, quality, time, available resources – which are most fixed? INFO 638 Lecture #9 19 SPeculate The Speculate-Incubate-Review phases are repeated for each cycle until the project objective is understood The Speculate phase fishes for ideas about how to approach defining the problem Yes, it sounds like a lot of brainstorming INFO 638 Lecture #9 20 SPeculate Speculate phase consists of Define general structure of the project Define Conditions of Satisfaction (COS) to be met by the project’s objective Describe scenarios that fulfill the COS Prioritize requirements Identify what the first cycle will produce Determine how the project will decide to proceed further or not INFO 638 Lecture #9 21 Incubate The Incubate phase is the working part of the xPM approach Explore and discover more about the project, based on the planning outlined in the Speculate phase Assign resources for activities Establish cycle plan Work together to produce deliverables INFO 638 Lecture #9 22 REview The Review phase analyzes the results of this cycle, and decides the approach for the next cycle, if any What did we learn from this cycle? What new ideas should we act upon? What should we do in the next cycle? INFO 638 Lecture #9 23 REview So the activities in this phase include Apply learning from previous cycle Adjust project goal if needed Reprioritize requirements if needed Make go/no-go decision for next cycle Then, if continuing the project, go back to the Speculate phase INFO 638 Lecture #9 24 xPM vs. APF xPM and APF have a lot in common The main differences are xPM has unknown project goals xPM has more variability in project scope, budget, and time xPM has more variability in cycle duration and number of cycles INFO 638 Lecture #9 25 xPM vs. APF xPM is wildly open to changes, and therefore has more risk of not producing anything than APF or TPM In exchange for that risk, it most openly encourages creativity and new ideas INFO 638 Lecture #9 26