230 likes | 494 Views
Project Management. Project Management Activities Project Scheduling Cost Estimation. Project Management Activities. Project acquisition Project planning Resource assessment Risk and option analysis Cost estimation Project scheduling Work breakdown structure Effort distribution
E N D
Project Management • Project Management Activities • Project Scheduling • Cost Estimation
Project Management Activities • Project acquisition • Project planning • Resource assessment • Risk and option analysis • Cost estimation • Project scheduling • Work breakdown structure • Effort distribution • Resource assignment • Project tracking and control • Reporting
Project Resources • People • Required skills • Availability • Duration of tasks • Start date • Hardware and software tools • Description • Availability • Duration of use • Delivery date
Risk Analysis What is a risk? • Risk impact: the loss associated with the event • Risk probability: the likelihood that the event will occur • Risk control: the degree to which we can change the outcome Risk exposure = (risk probability) x (risk impact)
Top Ten Project Risks • Staff deficiencies • Unrealistic schedules and budgets • Developing the wrong functions • Developing the wrong interface • Over-engineering • Changing requirements • Externally developed items • Externally performed tasks • Performance problems • Assumptions on technology
Activity Major work unit Start date End date Consumes resources Results in work products (and milestones) Project function Continue throughout the project Not bound to specific phases Define Work Breakdown Structure Step 1 Step 2 Activity 1 Activity 2 Activity 3 Phase 1 Step 1 Step 2 Activity 1 Activity 2 Task 1 Task 2 Task 3 Project Phase 2 Step 1 Step 2 Phase N
Schedule Activities • Almost all activities depend on the completion of some other activities • Many activities can be performed in parallel • Organisation necessary to balance work-load, costs, and duration • PERT chart (activity network/task graph) • Critical path • Project Time-line (Gantt chart) • Resource table
PERT Charts Program Evaluation and Review Technique • Graph • Nodes = activities/tasks and estimated duration • Edges = dependencies • Compute • Slack time = available time - estimated duration • Critical path A path is critical when it contains an activity that, if delayed, will cause a delay of the whole project.
Gantt charts • A Gantt chart is used to graphically present the start and end dates of each software engineering task • One axis shows time. • The other axis shows the activities that will be performed. • The black bars are the top-level tasks. • The white bars are subtasks • The diamonds are milestones: • Important deadline dates, at which specific events may occur
Approach Decompose problem Check for experiences/ data on sub problems Make qualified estimations (Make at least two independent estimates) Problems: What are good measures? Do the estimates affect the result? Does the type of software affect the result? Does the project environment affect the result? ... Cost Estimation • Use empirical and historical data • Algorithmic cost modelling • COCOMO (based on LOC) • FP (based on function points)
COCOMO • Constructive Cost Modelling [Boehm 81] • Based on publicly available historical data of 63 TRW projects • Basic assumptions: • Requirements change only slightly during the project • There is good project management • The historical data is representative • Assigning more resources to the project does NOT result in linear decreasing development time
a b c d 2.4 1.05 2.5 0.38 3.0 1.12 2.5 0.35 3.6 1.20 2.5 0.32 Basic Model Effort = a (KDSI)b Schedule = c (Effort)d • KDSI = Kilo Delivered Source Instructions ( LOC - comments) • The a, b, c, and d factors vary depending on the type of project • Effort is measured in PM (Person Months = 152h of work) • Schedule is the Development Timemeasured in Months Organic In-house IS, Development in a familiar environment Semi-detached Between OM- and EM projects Embedded • Large and inexperienced teams, many constraints Boehm, Software Engineering Economics, Prentice-Hall, 1981.
COCOMO Summary • Works quite well in practice • Needs KLOC as input • Problems: • Estimating KLOC in early project stages • Comparison of projects using different LOC counts • Outdated metrics base (70s) • Solutions: • Cross-check using an other estimation technique • Standardised LOC counts • Continuous model calibration • COCOMO II is a recent new version
COCOMO II • Goal: To develop a software cost and schedule estimation model tuned to the life cycle practices of the 1990’s and 2000’s • 3 Models • Application Composition: prototyping to resolve high-risk user interface issues, 2 environment drivers, 0 process drivers, Sizing in Object Points • Early Design Model: to explore alternative architectures and concepts,7 environment drivers, 5 process drivers, Sizing in Function Points or SLOC • Post Architecture Model: development has begun, 17 environment drivers, 5 process drivers, Sizing in Function Points or SLOC
Environment: product, platform, people, project factors Process: constraint, risk/architecture, team, maturity factors Effort and schedule in COCOMO 2 ( ) Process Scale Factors [ ] ( ) Process Scale Factors Effort Application Composition Model Effort = NOP/productivity • NOP = OP * [(100 -%reuse)/100] • Productivity = NOP/man-months, 5 productivity levels depending on the 2 environment drivers (table 3.12 course book) Early Design and Post-architecture Model ö æ Environment [ ] ÷ ç = Effort Size ÷ ç Multipliers è ø ( ) = Schedule Multiplier
COCOMO II Model Stages 4x Overestimated 2x Early Design (13 parameters) 1.5x 1.25x Relative Size Range x 0.8x Post-Architecture (23 parameters) 0.67x Underestimated 0.5x Applications Composition (3 parameters) Detail 0.25x Product Rqts. Design Accepted Design Concept of Spec. Spec. Software Spec. Operation Product Detail Devel. Plans Feasibility Design Design and Test and Rqts. Phases and Milestones
COCOMO II summary • COCOMO II • allow for spiral model instead of waterfall model only • Size of project can be listed as object points, function points or source lines of code (SLOC) • The environmental multipliers are calculated from seventeen cost drivers better suited for today's methods • Calibration is difficult, but can improve accuracy by a factor of five
Function Points • Function Point Analysis (FPA) measures the size of a software product in terms of the functionality it delivers to the users. A.J. Albrecht 1979 • What the software must do from the user’s perspective • Irrespective of software construction • Based on five function types: • Inputs • Outputs • Inquiries • Logic Files • Interfaces
Project scope Project schedule Project team organization Technical description of system Project standards and procedures Quality assurance plan Configuration management plan Documentation plan Data management plan Resource management plan Test plan Training plan Security plan Risk management plan Maintenance plan Project plan contents
Difficulties and Risks in Project Management • Accurately estimating costs is a constant challenge • It is very difficult to measure progress and meet deadlines • It is difficult to deal with lack of human resources or technology needed to successfully run a project • Communicating effectively in a large project is hard • It is hard to obtain agreement and commitment from others