Академический Документы
Профессиональный Документы
Культура Документы
Project Management
Based on Chapter 5 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8th Ed., Addison-Wesley, 2006 and on Ch5 PPT presentation from http://www.software-engin.com/
September 17, 2007
Outline
Introduction.
Software project management is aimed to ensure that the software is delivered on time, within budget and schedule constraints, and satisfies the requirements of the client Management of software projects is different from other types of management because:
Software is not tangible Software processes are relatively new and still under trial Larger software projects are usually one-off projects Computer technology evolves very rapidly
.Introduction
Management activities: Writing proposals Planning the project Scheduling the project Estimating the cost of the project Monitoring and reviewing the projects progress Selecting, hiring, and evaluating personnel Writing reports and giving presentations
Project Planning
A project plan should be drawn at the start of the project. This plan drives the project and needs to be continuously adjusted The role of the project manager is to anticipate possible problems and be prepared with solutions for these problems Other plans that need be developed: Quality plan Validation and verification plan Configuration management plan Maintenance plan Staff development plan
.Project Planning..
Esta bl ish the proj ect co nstrai nts Make in iti al a ssessme nts of the p ro je ct p arameters De fi ne proj ect mi le ston es an d del i verab le s w hile proj ect has not b een compl eted o r ca ncel led loop Draw up p ro je ct sch edu le Ini ti ate acti vi tie s accordi ng to sche dul e Wai t ( fo r a whi l e ) Re vi ew proj ect progress Re vi se estima te s of p ro je ct p arameters Up date th e proj ect sched ul e Re -n egoti ate proj ect co nstrai nts and d el iverabl es if ( prob le ms arise )then Ini ti ate tech ni cal re vi ew an d possi bl e revi sion end if end loop
..Project Planning.
Project Planning
Milestone = end-point of a specific, distinct software process activity or task (for each milestone a report should be presented to the management) Deliverable = project result delivered to the client In order to establish milestones the phases of the software process need be divided in basic activities/tasks. Example for requirements engineering [Fig. 5.3, SE-8]
ACT IVITIES
Feasibility study
Prototype development
Design study
Feasibility report
Architectural design
Project Scheduling
Software managers: Divide the project in activities/tasks Estimate time and resources needed to finish the project Allocate resources to tasks Try to employ efficiently all the project personnel Minimize dependencies between tasks and teams Prepare contingency plans Rely on experience and intuition
.Project Scheduling..
Identify activities
Software requirements
10
..Project Scheduling.
11
Project Scheduling
.Project Scheduling..
4/ 7 / 03 s tart
10 d ays T5
13
T8 19/ 9 /0 3
Fi n is h
..Project Scheduling.
4/ 7 T4 T1 T2
M1 T7 T3 M5 T8 M3 M2 T6 T5 M4 T9 M7 T1 0 M6 T1 1 M8
14
T1 2 Fi n is h
Project Scheduling
Fred
T4 T8 T11 T12
Jane
T1 T3 T9
Anne
T2 T6 T10
Jim Mary
15
T7 T5
Risk Management.
Risk = some adverse circumstance that may happen and affect negatively the project, the product, and/or the business Categories of risk: Project risks Product risks Business risks Risk management means anticipating risks and preparing plans to reduce their effect
16
.Risk Management
Risk Staff turnover Management change Hardware unavailability Requirements change Specification delays Size underestimate CASE tool underperformance T echnology change Product competition
17
..Risk Management..
Risk identification
Risk analysis
Risk planning
Risk monitoring
Risk assessment
18
Risk Management.
19
.Risk Management
low (< 10%) Low (10-25%) Moderate (25-50%) High (50-75%) Very high (> 75%)
20
..Risk Management..
Risk planning means preparing a strategy to deal with each of the risks identified Classes of strategies: Avoidance strategies: the probability of the risk
will be diminished Minimization strategies: the effect of the risk will be reduced Contingency strategies: plans for the worst case scenarios
21
Risk Management.
Strategy Prepare a briefing document for senior management showing how the project is making a very important contribution to the goals of the business. Alert customer of potential difficulties and the possibility of delays, investigate buying-in components. Reorganise team so that there is more overlap of work and people therefore understand each others jobs. Replace potentially defective components with boughtin components of known reliabilit y.
Strategy Derive traceabili ty information to assess requirements change impact, maximise information hiding in the design. Prepare a briefing document for senior management showing how the project is making a very important contribution to the goals of the business. Investigate the possibilit y of buying a higherperformance database. Investigate buying in components, investigate use of a program generator
22
.Risk Management
Take into consideration risk factors Discuss key risks at each management project
progress meeting
23