470 likes | 651 Views
Software Project Management. Joint project planning & controlling project INFO 638 Glenn Booker. Joint Project Planning. Joint Project Planning (JPP) uses a goldfish-bowl approach to conducting early analysis of a project Its scope is typically to define the POS and/or PDS
E N D
Software Project Management Joint project planning & controlling project INFO 638 Glenn Booker Lecture #5
Joint Project Planning • Joint Project Planning (JPP) uses a goldfish-bowl approach to conducting early analysis of a project • Its scope is typically to define the POS and/or PDS • For software, this might include defining the system scope and key requirements, and/or developing high level system design Lecture #5
JPP vs. JAD • JPP is similar to Joint Application Design (or Joint Application Development) (JAD) • JPP is more general than JAD • JPP could be used for planning any kind of project • JAD is software-specific Lecture #5
Planning JPP • JPP needs to create an environment in which key decisions can be made about the project • Planning JPP is crucial to its success • It is critical that key people be required to attend a JPP session • Notice “required,” not “invited” • JPP doesn’t work unless the players are all present Lecture #5
JPP Attendees • All significant stakeholders in a project need to attend JPP • The tough part is identifying what ‘significant’ means • Attendees typically include: • Facilitator – an outsider whose role it to lead the JPP session • Typically have training in JPP, and are excellent negotiators Lecture #5
JPP Attendees • Project manager – whoever will lead the project is an obvious choice to attend • Technographer – a scribe who will record the results of the session • Might be proficient in tools for recording brainstorming sessions, prototyping a system, or other appropriate skills • Other key project people – such as a system architect, managers who will report to the project manager, etc. Lecture #5
JPP Attendees • Customer rep is often included • Resource managers, such as IT staff, HR, or other relevant support personnel • Project champion (aka sponsor) – whoever has been pushing to make the project happen, other than the manager • Process experts – to help make sure the project will follow sound processes • Anyone else you deem necessary! Lecture #5
JPP Logistics & Facilities • JPP needs to take place in an isolated environment, to help everyone focus on the same thing • Generally held offsite, such as a hotel or conference center • Typically allow a few days for the JPP, depending on the scope of the project and the goals of the session Lecture #5
JPP Equipment • JPP might use various tools to capture the results • MS Visio for process flowcharts • Axon or Mind Mapper for capture of brainstorming • These are in addition to the usual conference equipment – computer & projector, sticky notes, etc. Lecture #5
JPP Agenda • JPP needs to have a specific agenda defined before the session starts • The agenda must define what is expected to come out of the session • A completed POS, and/or • A completed PDS, and/or • A project plan, etc. Lecture #5
JPP Deliverables • More specific deliverables could include • WBS • Activity duration estimates • Resource requirements • Project network schedule (Pert) • Activity schedule (start/end dates) • Resource assignments Lecture #5
Project Proposal • The JPP might result in a project proposal, including • Background • Objective • Approach • Statement of work • Time & cost summary • Appendices Lecture #5
Monitoring Progress Lecture #5
Monitoring Progress • By now you have been able to create a detailed project plan, including task definitions, estimates of duration, & assignment and leveling of resources • Then the project actually starts • Now you need to monitor what really happens, and control the future of the project Lecture #5
An Aside • This is great stuff for control freaks • You get to define what people will do, when they’ll do it, and even tell them who is their boss • Now you get to decide if they are doing their job right, and what you’ll do if they aren’t • Isn’t this a great world? Lecture #5
Control and Risk • Controlling a project is closely linked to risk management • You want to minimize the risk that the project won’t finish successfully • Successfully generally means “on time and within budget” • To do so, you need measurements to help decide if the project is on track Lecture #5
Use Pictures • Graphics are key to presenting information well • Most senior managers don’t have time to read tons of words • A well thought out graphic will convey critical information quickly and with minimal explanation • If something’s wrong, need to address what corrective action will be taken Lecture #5
Controls • Without good controls, a project will wander like a 6-year-old on summer vacation • Controls allow us to • Track progress – what has been accomplished? • Detect variance – have we departed from the plan? • Take corrective action – fix it! Lecture #5
Balance Control and Risk • More controls on a project • Costs more for planning and tracking • Reduces risks and creativity • So a critical question for every project is “how many controls do I need?” • Need enough to know what’s going on, without micromanaging the project • The answer might change during the project Lecture #5
Balance Control and Risk • Too little control will increase project cost, because effort will be wasted • In theory there’s an ideal balance possible between control and risk • Also need to consider that the product quality will also be affected by the amount of control over its development process Lecture #5
Progress Reporting System • Some form of progress reporting system needs to be established • Want timely, complete, clear, and accurate status reported • Avoid adding too much to overhead to create the status reports • Results are readily available • Warns of problems with time to fix them Lecture #5
Types of Status Reports • Typically there are five kinds of status reports • Current period reports – report status during the current reporting period, e.g. this week’s status • Cumulative reports – report history of project from start to the present, or at least a significant amount of time • Good for finding trends Lecture #5
Types of Status Reports • Exception reports – are generated only when something is amiss • Summarizes what’s wrong, and what action is desired to fix it • Stoplight reports – aren’t really a separate kind of report • They add a simple red/yellow/green indicator of status – green is all happy, yellow is a problem that needs fixing, and red means project is out of control Lecture #5
Types of Status Reports • Variance reports – tell how far the project is ahead of, or behind the plan • Variances generally pertain to the schedule and/or costs, showing planned and actual values, and the difference between them • Present results from the current reporting period, and maybe one previous period • May be tabular data, or graphic Lecture #5
How & When Collect Data? • Status reports are critical to understanding a project, yet can also be a waste of time and/or interfere with getting the project done • Need to decide how often reporting is done • Academia tends to be monthly, most of industry is weekly or biweekly Lecture #5
How & When Collect Data? • Need to determine reporting period (what day is the start of the week?) • This often feeds a repeating process, e.g. • Reports are due Friday to your manager, • They report to their boss by Monday noon, • A collected report is issued on Tuesdays • Reports contain actual status to date, start and finish dates for tasks Lecture #5
How & When Collect Data? • Reports might also include • Projections of work remaining, • Percent completion of tasks, and • The amount of resources spent on each task (e.g. 12 hours on WBS task 1.3.2) Lecture #5
Variances • Variances are the difference between actual events and the project plan • Positive variances are often good • They mean you are ahead of schedule or under budget • But could mean the schedule has slipped, and little has been accomplished Lecture #5
Variances • Conversely, negative variances are generally bad • Behind schedule and/or over planned cost • Rarely, can mean more work has been done than planned Lecture #5
Displaying Status • There are three major ways to display the status of a project graphically • Gantt chart • Milestone trend chart • Cost schedule control chart Lecture #5
Gantt chart • We covered the Gantt chart in week 3 • It is probably the most commonly used tool to plan and track projects • To show progress, dark thinner bars are used to show how much work has been accomplished • This example is 30% complete Lecture #5
Milestone Trend Chart • The Milestone trend chart is a plot of how well specific events and decisions (milestones) were accomplished • The horizontal lines represent 1-3 standard deviations above and below the expected completion date of each milestone • Presumably you have historic data to determine the standard deviations Lecture #5
Milestone Trend Chart • Like monitoring a control chart, poor trends (especially downward) or odd leaps in the data are keys to identifying problems Lecture #5
3 2 1 On Schedule -1 -2 -3 1 2 3 4 5 6Project month Milestone Trend Chart Lecture #5
Cost Schedule Control • Cost schedule control refers to the system used by the many agencies called earned value or C/SCSC • We have already defined a project plan with tasks and resources • Each task therefore has some defined dollar value (its resources times their hourly rate) Lecture #5
Cost Schedule Control • To use Cost Schedule Control, we need to define when we get ‘credit’ for accomplishing each task • Only when the task is done • Half at the task start, and half at finish • Etc. • The total planned value of work done on the project typically forms a long S curve over time Lecture #5
Cost Schedule Control • The planned amount of work, in terms of its value, over time form a curve called Planned Value (PV) (formerly BCWS) • As the project happens, we record the actual costs incurred (AC) and how much work we really got done (EV) (formerly ACWP and BCWP) Lecture #5
Cost Schedule Control • We can find variances in terms of cost (related to whether we finish within budget) and schedule (will we finish on time) • At any time during the project: • Cost variance = AC - PV • Schedule variance = EV – PV • Recall that negative variances are bad Lecture #5
Cost Schedule Control • We can also define indices to tell us if we have a good trend in getting work done • Schedule performance index SPI = EV/PV • Cost performance index CPI = EV/AC • Indices >1 are good (got more work done than planned or budgeted) Lecture #5
Cost Schedule Control • So monitoring a project with cost schedule control generally means using • A plot of PV, AC, and EV versus time • Plots of cost and schedule variances • Cost and schedule performance indices • Based on these, look for negative variances and/or indices < one Lecture #5
Status Detail • The amount of detail in status reporting depends on the management level of its audience • First line managers generally want lots of detail • Project managers generally want to focus on problems they must resolve • Senior managers need a very brief synopsis of status Lecture #5
Status Meetings • Some form of meeting is often desired to • Share the current status of each part of the project • Look for collaboration opportunities • Make decisions about problems Lecture #5
Meeting Minutes • Record the actions and decisions in a meeting with minutes • Identify who was there • Identify what happened • Review previous action requests • Review old issues • Review new issues • Identify what new actions need to be followed up on, by whom, and when Lecture #5
Change Control • A change control process is needed to manage changes to the scope of a project • See this example from the FAA • The example cited was used for managing problems reported with an air traffic control system, but the basic principles are universal Lecture #5
Change Control • It describes the activities needed to analyze a problem, estimate how much work it is to resolve, determine its priority, fix it, and incorporate it into a system change with other problem fixes • The names of the organizations which perform each of the steps may vary wildly, but some sort of review board or change control board is typically used Lecture #5
Escalation • Escalation here means how a problem can be resolved • Little problems might be resolved by the project manager • Bigger problems might be resolved by getting additional resources from your organization • Huge problems might need cooperation from your customer to resolve Lecture #5