Project Planning and Estimation

Slides:



Advertisements
Similar presentations
Estimation for Software Projects
Advertisements

Metrics. A Good Manager Measures measurement What do we use as a basis? size? size? function? function? project metrics process metrics process product.
Chapter 26 Estimation for Software Projects
Intro to Estimating Part Art, Part Science. TED Video Response Tali Sharot: The optimism bias 1.What does this talk have to do with Software Project Management?
Developed by Reneta Barneva, SUNY Fredonia Software Project Planning.
Software project management (intro)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
SOFTWARE PROJECT PLANNING
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
Software Engineering 2 Chapter 26: Estimate
1 Project Planning CIS 375 Bruce R. Maxim UM-Dearborn.
Software Engineering: A Practitioner’s Approach
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Lecture 22 Instructor Paulo Alencar.
COCOMO Models Ognian Kabranov SEG3300 A&B W2004 R.L. Probert.
Software Project Management
Chapter 6 : Software Metrics
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.
Software Engineering SM ? 1. Outline of this presentation What is SM The Need for SM Type of SM Size Oriented Metric Function Oriented Metric 218/10/2015.
1 Estimation Function Point Analysis December 5, 2006.
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
Cost Estimation. Problem Our ability to realistically plan and schedule projects depends on our ability to estimate project costs and development efforts.
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.
Cost Estimation What is estimated? –resources (humans, components, tools) –cost (person-months) –schedule (months) Why? –Personnel allocation –Contract.
SEG3300 A&B W2004R.L. Probert1 COCOMO Models Ognian Kabranov.
Software Project Estimation IMRAN ASHRAF
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.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Effort Estimation In WBS,one can estimate effort (micro-level) but needed to know: –Size of the deliverable –Productivity of resource in producing that.
Software Engineering (CSI 321) Project Planning & Estimation 1.
540f07cost12oct41 Reviews Postmortem u Surprises? u Use white background on slides u Do not zip files on CD u Team leader should introduce team members.
1 Software Project Planning Software project planning encompasses five major activities –Estimation, scheduling, risk analysis, quality management planning,
Software Engineering Lecture 5: Project Planning.
FUNCTION POINT ANALYSIS & ESTIMATION
Chapter 23 Estimation Software Engineering: A Practitioner’s Approach 6 th Edition Roger S. Pressman.
Intro to Estimating Part Art, Part Science. Importance of Good Estimates Time (Realistic Deadlines) most software projects are late because the time was.
Software Project Management
CIS 4251 / CIS 5930 SOFTWARE DEVELOPMENT Fall 1999 Sept. 1, 1999 Marge Holtsinger.
Software project management 3rd Umer khalid Lecturer University of Lahore Sargodha campus.
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.
Cost9b 1 Living with Function Points Bernstein and Lubashevsky Text pp
Estimation Questions How do you estimate? What are you going to estimate? Where do you start?
Cost23 1 Question of the Day u Which of the following things measure the “size” of the project in terms of the functionality that has to be provided in.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
THE FAMU-CIS ALUMNI SYSTEM
Chapter-7 ESTIMATION FOR SOFTWARE PROJECTS
Chapter 33 Estimation for Software Projects
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
Software Project Planning &
Function Point.
Chapter 5: Software effort estimation- part 2
Software Metrics “How do we measure the software?”
Activities During SPP Size Estimation
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
COCOMO Models.
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,
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.
COCOMO MODEL.
Presentation transcript:

Project Planning and Estimation

Project Planning Software project management begins with a set of activities called project planning which involves proper estimation of time, schedule, work and resources.

Project Planning When: need for software has already been established; stakeholders are on-board; coding is ready to begin What: project planning spans five major activities—estimation, scheduling, risk analysis, quality management planning, and change management planning Who: software project managers, with information from stakeholders and engineers

Objectives of planning Framework that will help in the estimation of cost , time and schedule Define the best case and worst case scenarios so that project outcomes can be bounded.

Task set for project planning 1. Establish project scope 2.Determine feasibility 3.Analyze risks 4,Define required resources human resource needed , software resources, environmental resources 5. Estimate cost and effort decompose the problem, use estimation techniques 6.Develop project schedule

Software project scope and feasibility The first step in planning is establishing project scope Software scope describes the functions and features that are to be delivered. It is a narrative description of scope is developed after communicating with stakeholders Function ( cost,schedule) and performance(response time,processing time) is to be measured Once scope is defined we go to step 2

Feasibility Can we build a software to meet this scope Is project technically feasible Financial feasibility Time Resources

RESOURCES Three categories of software engineering resources are 1.people (location , skills and number) 2. reusable software components(off shelf components, full experience component ,partial experience component and new component) c.Environmental resources ( hardware and software tools needed ) Offshelf: existing s/w that can be acquired from a 3rd party Full Experience : s/w that is already developed for past projects Partial experience: s/w that is already developed for past projects but needs some modification to be used for the current project New component: build from scratch

Estimation requires… experience access to good historical information

Reliability of estimates is affected by… Project complexity Project size Degree of structural uncertainty Availability of historical information

Options for estimation Delay estimation until late in the project (not feasible) Base estimation based on previous similar projects Use simple decomposition techniques to generate cost and effort estimation Decomposition technique adopt a divide and conquer technique. For each decomposition the cost and effort estimation is done. Use one or more empirical models for estimation

Estimation techniques Problem-based Estimation LOC Function – Point Process-based Estimation COCOMO

Loc based estimation Cost per LOC = burdened rate /LOC produced per PM Project Cost = Cost per LOC * LOCE Project Effort = Project Cost/ burdened labor rate

Assuming that your organization produces 620 LOC/PM with a burdened labor rate of 8000BD/PM, estimate the cost and the effort required to build the software using LOC-based estimation technique. LOC(e)=30000

Function Point Use measure of functionality Derived directly from 5 information domain characteristics - User Input = distinct data input by user - User Output = reports, screens, error messages - User Inquiries = on-line input results in generation of immediate software response - Files = Logical grouping of data that may be one part of large database or separate file - External interfaces = all machine readable interfaces used to transmit information to another system

Information Domain Value Count Simple Average Complex FP Count External Inputs 12 3 4 6 36 External Outputs 8 5 7 32 External Inquiries 10 30 Internal Logical Files 15 21 External Interface Files 40 TOTAL 159

Factor Backup and Recovery 5 Data communications 4 Distributed processing Performance critical Existing operating environment Online data entry Input transaction over multiple screens 3 ILFs updated online Information Domain Values Complex Internal Processing Complex Code designed for Reuse Conversion/installation in design Multiple installations Application designed for change

FPE = count total*[0.65 + 0.01 * ∑Fi) Project Effort = FPE / average productivity on FP Project Cost = Project Effort * burdened rate

SafeHome User Interaction Function User Password Zone Setting Test Sensor Sensors SafeHome User Interaction Function User Password Zone Setting Zone Inquiry Messages User Sensor Inquiry Sensor Status Panic Button Activate/Deactivate Activate/Deactivate Monitoring & Response Subsystem Password, Sensors… Alarm alert System Configuration Data

Security Monitoring System Test Sensor Sensors Security Monitoring System Password Zone Setting User Zone Inquiry Messages User Sensor Inquiry Sensor Status Panic Button Activate/Deactivate Activate/Deactivate Monitoring & Response Subsystem Alarm alert Password, Sensors… Password, Sensors… User Data System Configuration Data

External Input : orginates from user and represents control information External Output : its derived from application and provides information to user.it can be reports, screens,error messages External Inquiries:Its is a online input that result in the generation of some software response. Internal logical file : File that resides within system boundary External interface file : it resides external to application

One ILF (system configuration file) 2 external outputs 3 External inputs Password panic button and activate/deactivate 2 external inquiries zone inquiry and sensor inquiry One ILF (system configuration file) 2 external outputs messages and sensor status Four EIF’s test sensor zone setting activate/deactivate alarm alert

Information Domain Value Count Simple Average Complex FP Count External Inputs 3 4 6 9 External Outputs 2 5 7 8 External Inquiries Internal Logical Files 1 10 15 External Interface Files 20 TOTAL 50 Past Projects show a burdened labor rate of P8000/PM Average productivity is 9FP/pm Assume average complexity value Total adjustment value is estimated to be 49

FPE = count total*[0.65 + 0.01 * ∑Fi) Project Effort = FPE / average productivity on FP Project Cost = Project Effort * burdened rate

COCOMO II (Constructive cost model) uses object points, using counts of the number of - screens - reports - components that is needed to build the application Each object instance is classified into one of the three complexity levels (simple, medium or difficult)

Object Type Complexity Weight Simple Medium Difficult Screen 1 2 3 Report 5 8 3GL Component 10 Developer’s Experience Very low Low Nominal High Very High Development Environment maturity/ capability PROD 4 7 13 25 50

NOP = (object points) * ((100 - %reuse)/100) PROD =NOP / person-month Estimated Effort = NOP/PROD Estimated Cost = Estimated Effort * Burdened rate

Developer’s Experience Very low Low Nominal High Very High Development Environment maturity/ capability PROD 4 7 13 25 50

Use the COCOMO II model to estimate the effort required to build software for a simple ATM that produces 12 screens, 10 reports, and will require approximately 80 software components Past projects show a burdened rate of 9000BD/pm Assume nominal complexity and nominal developer/environment maturity

Tasks You are working for a software company ABC software and SBI Bank has granted a project to computerise its operations. The Manager for SBI Mr Ahmed has been involved in deciding the various aspects of the project. You are appointed by ABC software to manage the project and there are a team of 20 people working with you.The bank employs 20 people and has 100 account holders Who are the stake holders for the project. Which are the different team organisations? Which one would you choose and why?

You are the project manager for a company that buids software for house hold robots.You are contacted to build a software for a robot that mows the lawn for a homeowner.Write a statement of scope that describes the software.If you are unfamiliar about robots do a little research on robots before starting.State your assumptions about what hardware is needed.

UseCOCOMO model to estimate the effort needed to build a software for a simple ATM machine that produce 12 screens , 10 reports and 80 software components.Assume average complexity and average developer /envt maturity.

Developer’s Experience Very low Low Nominal High Very High Development Environment maturity/ capability PROD 4 7 13 25 50

Comment on the statement “It seems odd the cost and schedule estimates to be developed during software project planning-before detailed analysis and design is conducted?why