Software Engineering Software Project Planning. Objectives 1.To introduce project planning. 2.To examine the stages of project planning: scoping, estimation,

Slides:



Advertisements
Similar presentations
Estimation for Software Projects
Advertisements

PERENCANAAN PROYEK PERANGKAT LUNAK Nur Cahyo Wibowo, S.Kom, M.Kom.
Metrics. A Good Manager Measures measurement What do we use as a basis? size? size? function? function? project metrics process metrics process product.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 26 Estimation for Software Projects
PROJECT TIME MANAGEMENT. IMPORTANCE Average time overrun on unsuccessful IT projects was 222 % of the original estimation CHAOS Report It was reduced.
Chapter 5 Software Project Planning
Developed by Reneta Barneva, SUNY Fredonia Software Project Planning.
Software Project Planning CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 12, 2002.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
SOFTWARE PROJECT PLANNING
Software Project Planning Infsy 570 Dr. R. Ocker.
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
Software Engineering 2 Chapter 26: Estimate
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 Project Planning CIS 375 Bruce R. Maxim UM-Dearborn.
Project Planning Instructor: Dr. Jerry Gao. Project Planning Jerry Gao, Ph.D. Jan Software Scope - Obtaining Information Necessary for Scope -
Software Engineering: A Practitioner’s Approach
Software Engineering Project Planning James Gain
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
MODULE PLANNING &ESTIMATION.
1 COSC 4406 Software Engineering COSC 4406 Software Engineering Haibin Zhu, Ph.D. Dept. of Computer Science and mathematics, Nipissing University, 100.
Software Project Management
Software Estimation and Function Point Analysis Presented by Craig Myers MBA 731 November 12, 2007.
Chapter 6 : Software Metrics
Software Project Management Lecture # 7. What are we studying today? Chapter 24 - Project Scheduling  Effort distribution  Defining task set for the.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Lecture 17: Chapter 26 Estimation for Software Projects Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman.
1 Chapter 23 Estimation for Software Projects. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 Chapter 5 Software Project Planning. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for controlling,
Developed by Reneta Barneva, SUNY Fredonia Software Project Planning.
Project Planning and Estimation
Software Engineering Lecture 5 Software Project Planning 1.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Estimation for Software Projects 1. Software Project Planning 2 The overall goal of project planning is to establish a pragmatic strategy for controlling,
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Engineering (CSI 321) Project Planning & Estimation 1.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 Software Project Planning Software project planning encompasses five major activities –Estimation, scheduling, risk analysis, quality management planning,
Software Engineering Lecture 5: Project Planning.
Project Management Why do projects fail? Technical Reasons
Chapter 23 Estimation Software Engineering: A Practitioner’s Approach 6 th Edition Roger S. Pressman.
Software Project Management
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
CIS 4251 / CIS 5930 SOFTWARE DEVELOPMENT Fall 1999 Sept. 1, 1999 Marge Holtsinger.
Software Project Planning. Software Engineering Estimation Estimation The SPM begins with a set of activities that are collectively called Project planning.
INFSY 570 DR. R. OCKER Software Project Planning.
بشرا رجائی برآورد هزینه نرم افزار.
Software cost and effort estimation will never be an exact science. Estimation is very difficult to do, but is often needed Too many variables can affect.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
Chapter-7 ESTIMATION FOR SOFTWARE PROJECTS
Chapter 33 Estimation for Software Projects
Chapter 5 Software Project Planning
Chapter 3 Project Management
For University Use Only
Estimation for Software Projects
Software Engineering (CSI 321)
Software Project Sizing and Cost Estimation
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Project Estimation
REKAYASA PERANGKAT LUNAK
Software Project Planning &
Chapter 33 Estimation for Software Projects
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Project Management
Chapter 26 Estimation for Software Projects.
SOFTWARE ESTIMATION 1. Estimation for Software Projects -Project planning -Scope and feasibility -Project resources -Estimation of project cost and effort.
Presentation transcript:

Software Engineering Software Project Planning

Objectives 1.To introduce project planning. 2.To examine the stages of project planning: scoping, estimation, risk analysis and scheduling. 3.To focus on the tools available to a project planner.

Software Project Planning lThe overall goal of project planning is to establish a pragmatic strategy for controlling, tracking, and monitoring a complex technical project. lMust deal with:  Project complexity: has a strong effect but is heavily influenced by past practitioner experience.  Project size: as size increases the interdependency of elements also grows. Watch out for scope creep (when customers change requirements mid-cycle).  The degree of structural uncertainty: the degree to which requirements are solidified and the ease of functional decomposition. lThe purpose of project planning is to ensure that the end result is completed on time, within budget, and exhibits quality!

Steps in Project Planning lScope—understand the problem and the work that must be done. lEstimation—how much effort? how much time? lRisk—what can go wrong? how can we avoid it? what can we do about it? lSchedule—how do we allocate resources along the timeline? what are the milestones? lControl strategy—how do we control quality? how do we control change? Software Project Plan Project Scope Estimates Risks Schedule Control strategy

Scope lA bounded description of the data and control, function, performance, constraints, interfaces and reliability sufficient to determine project feasibility and create an initial plan. lScoping Techniques:  Preliminary meeting or interview  FAST (Facilitated Application Specification Technique) lUnderstanding Scope:  customers needs  business context  project boundaries  customer’s motivation  likely paths for change  “Even when you understand, nothing is guaranteed!”

Estimating Resources lHuman Resources:  Select skills required (both position and specialty, e.g. database software engineer). Requires an effort estimate. lReusable Software Resources:  Off-the-shelf components (existing software acquired from 3 rd party with no modification required)  Full-experience components (previous project code is similar and team members have full experience in this application area)  Partial-experience components (existing project code is related but requires substantial modification and team has limited experience in the application area)  New components (must be built from scratch for this project) lEnvironmental Resources:  The hardware and software tools required to develop the project. Planner needs to provide a time window for booking these resources.

Estimating Cost and Effort lProject scope must be explicitly defined. If not, the project may be infeasible. lTask and/or functional decomposition is necessary. lHistorical measures (metrics) are very helpful. lTriangulation: At least two different techniques should be used. lRemember that uncertainty is inherent in early estimates. lTechniques: 1.Delay estimation until late in the project (not advisable) 2.Base estimates on similar projects that have already been completed. 3.Use relatively simple decomposition techniques (LOC or FP). 4.Use one or more empirical models for software cost.

Example: CAD Software lStatement of Software Scope:  The CAD software will accept 2D and 3D geometric data from an engineer through a user interface that exhibits good HCI. All geometric data will be maintained in a database. Design analysis modules will be developed to produce the required output, which will be displayed on a variety of graphics devices. The software will interact with peripheral devices including a mouse, digitizer, laser printer and plotter. lFunctional Decomposition:  User interface and control facilities (UICF)  Two-dimensional geometric analysis (2DGA)  Three-dimensional geometric analysis (3DGA)  Database management (DBM)  Computer graphics display facilities (CGDF)  Peripheral control function (PCF)  Design analysis modules (DAM)

Example: LOC 1.Three LOC estimates (optimistic, most likely, pessimistic ) are developed for each function. 2.Each final function estimate is: 3.Use historical data for projects of this type (LOC/pm and R/LOC) to obtain effort and cost estimates. lExample:  avg. productivity = 620 LOC/pm (pm = person month). Based on burdened labour rate of R8000 pm, avg. cost = 13 R/LOC.  Total estimated project cost = R Total estimated effort = 54 person months. FunctionUICF2DGA3DGADBMCGDFPCFDAMTotal KLOC

Example: FP lSimilarly, FP estimates can be derived. lUnlike LOC, concentrate on information domain rather than software functions. lUseful as a triangulating measure. lExample:   avg. productivity for systems of this type = 6.5 FP/pm. Based on a burdened labour rate of R8000, R/FP = R1230.  Total estimated cost = R461000, total estimated effort = 58 pm.

Process-Based Estimation lThe SE Process is decomposed into a small set of tasks and cross referenced against the functions. Planner estimates the effort (in person months) required to accomplish each task for a particular function. lCreating a task matrix: l application functions framework activities Effort required to accomplish each framework activity for each application function

Example: Process-Based Estimation ActivityCCPlanRisk Anal. Anal.DesignCodeTestCETotal Function UICF n/a8.4 2DGA n/a7.35 3DGA n/a8.5 CGDF n/a6.0 DBM n/a5.75 PCF n/a4.25 DAM n/a5.0 Total n/a46 CC = customer communication, CE = customer evaluation

Empirical Estimation Models lUse empirically derived formulae to predict effort as a function of LOC or FP. Do not need your own historical data. lStructure:  where A, B, C are empirical constants, E is effort in person months and ev is the estimation variable (LOC or FP). lSome Examples: lThese models yield different results. Estimation models must be calibrated for specific applications. Best if they have been sourced from many projects.

Triangulating lDo not expect that all estimates will agree within a percent or two. If estimates are within a twenty percent band, they can be reconciled into a single figure. lBut, if agreement between estimates is poor:  The scope of the project is not adequately understood or has been misunderstood by the planner.  Productivity data used for problem-based estimation techniques is inappropriate for the application, obsolete or has been misapplied. lPlanner must determine the cause of deviation and then reconcile the estimates.