CSC 395 – Software Engineering

Slides:



Advertisements
Similar presentations
Project Estimation: Metrics and Measurement
Advertisements

So far.. We have covered a) Requirements gathering: observation & interview. b) Requirements specification. c) Requirements validation. d) Design/paper.
Software Effort Estimation based on Use Case Points Chandrika Seenappa 30 th March 2015 Professor: Hossein Saiedian.
Project Risks and Feasibility Assessment Advanced Systems Analysis and Design.
Software project management (intro)
Ch8: Management of Software Engineering. 1 Management of software engineering  Traditional engineering practice is to define a project around the product.
1 COST ESTIMATION Basics, COCOMO, FP. 2 What is estimated? TIME MONEY TIME: –duration, chronological weeks, months, years –effort, person-month (man-month)
GPII-2A Planning a software project: Estimation & Measurement.
Planning and Estimating
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Informatics 43 – June 2, Some Announcements Discussion on Friday – review. Bring questions. 0.5% extra credit for submitting the EEE Course Evaluation.
Software Project Management
1 Cost Estimation CIS 375 Bruce R. Maxim UM-Dearborn.
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
Information System Economics Software Project Cost Estimation.
© The McGraw-Hill Companies, Software Project Management 4th Edition Software effort estimation Chapter 5.
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.
Lecture 4 Project Estimation CSCI – 3350 Software Engineering II Fall 2014 Bill Pine.
Chapter 6 : Software Metrics
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 23Slide 1 Chapter 23 Software Cost Estimation.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Effort estimation.
By K Gopal Reddy.  Metrics in software are of two types.direct and indirect.  Function points as indirect metrics.  Function points are used to measure.
9.1/84 PLANNING AND ESTIMATING. 9.2/84 Prologu e There is no easy solution to the difficulties of constructing a SW product, A large product takes time.
A Brief Introduction to COCOMO Hossein Saiedian EECS810: Software Engineering.
Quality Assurance vs. Quality Control Quality Assurance An overall management plan to guarantee the integrity of data (The “system”) Quality Control A.
Software cost estimation Predicting the resources required for a software development process 1.
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.
Cost Estimation What is estimated? –resources (humans, components, tools) –cost (person-months) –schedule (months) Why? –Personnel allocation –Contract.
Project Estimation Model By Deepika Chaudhary. Factors for estimation Initial estimates may have to be made on the basis of a high level user requirements.
Slide 9.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill,
Quality Software Project Management Software Size and Reuse Estimating.
© Pearson Education Limited 2004 OHT 9.1 Cadle and Yeates: Project Management for Information Systems, 4th edition IS estimating issues Unique projects.
SEG3300 A&B W2004R.L. Probert1 COCOMO Models Ognian Kabranov.
PLANNING AND ESTIMATING. Planning and Estimating Before starting to build software, it is essential to plan the entire development effort in detail Planning.
Slide 9.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 26Slide 1 Software cost estimation l Predicting the resources required for a software development.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
SFWR ENG 3KO4 Slide 1 Management of Software Engineering Chapter 8: Fundamentals of Software Engineering C. Ghezzi, M. Jazayeri, D. Mandrioli.
©Ian Sommerville, adapted by Werner Wild 2004Project Management Slide 1 Software cost estimation u Predicting the resources required for a software development.
Estimation using COCOMO
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
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.
Project, People, Processes and Products Project management skills – schedule, monitoring, risk management, … People management skills – delegation, mentoring,
Cost Estimation Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.
Project Planning. Overview Planning and the software process Estimating duration and cost Software project management plan components Software project.
1 Week 11 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
Chapter 5: Software effort estimation
Project Estimation. Planning Prerequisites The planning process requires the following inputs: –Required human effort (man-months) –Project duration (months)
INFSY 570 DR. R. OCKER Software Project Planning.
بشرا رجائی برآورد هزینه نرم افزار.
Reference: Object-Oriented and Classical Software Engineering Stephen R. Schach, Eighth Edition, WCB/McGraw-Hill, 2011 (CHAPTER 9) PLANNING AND ESTIMATING.
Estimation Questions How do you estimate? What are you going to estimate? Where do you start?
Project Estimation.
PLANNING AND ESTIMATING
Software Project Estimation
Constructive Cost Model
Software Development & Project Management
COCOMO Model Basic.
Personal Software Process Software Estimation
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.
COnstructive COst MOdel
Software Effort Estimation
COCOMO MODEL.
Presentation transcript:

CSC 395 – Software Engineering Lecture 33: Planning & Estimation -or- How Much for the Program using Windows

Estimating Duration & Cost Accurate estimations crucial Companies need to make $$$ Customers want reasonable & reliable prices Estimates depends on many, many variables Many are unpredictable (e.g., human factors) Programmers quit or “get hit by bus” Get freak Oct. snow storm that shuts down city Programmer pairs differ in effectiveness & productivity (up to 28x) General models impossible to create

Planning and Process Estimates improve as more details known Anyone confused by this point, give up

Planning and Process Properly engineered, estimate stays static as range shrinks Start of requirements, estimate is $1 million Likely actual cost is in $0.25M - $4M range After requirements, estimate stays $1 million Actual cost range shrunk to $0.5M - $2M After analysis, estimate still $1 million But cost range reduced to $0.67M - $1.5M This is also when contract is finalized!

Estimating Product’s End Size Several metrics commonly relied upon Use measurable quantities for simple calculations Computed early in life cycle for use writing contracts Includes “fudge factors” that can be tweaked Factor unique to each group and situation Tracking allows more precise estimates over time FFP for medium-sized data processing projects Function points used in many places

FFP Calculation Counts files (Fi), flows (Fl), & processes (Pr) Size (S) estimated as S = Fi + Fl + Pr Cost (C) estimated with S & efficiency factor b C = b  S

Function Points Metric Expressed in units of “function points” Calculated using several inputs: Number of inputs (Inp) Number of outputs (Out) Number of Inquiries (Inq) Count of master files (Maf) Interfaces in system (Inf) FP = 4 • Inp + 5 • Out + 4 • Inq + 10 • Maf + 7 • Inf

Complex FP Calculation Classify each of the individual components (e.g., each Inp, Out, Inq, Maf, Inf) Assign appropriate number of function points Sum is UFP (unadjusted function points)

Complex FP Calculation Compute DI (degree of influence) Sum of 14 factors ratings Each rating will be integer between 0 (“not present”) & 5 (“strong influence throughout”)

Complex FP Calculation Compute TCF (total complexity factor) TCF = 0.65 + 0.01  DI FP (number of function points) is: FP = UFP  TCF

Analysis of Metrics Amazingly, FP often calculated correctly Moreover, cost-per function point meaningful! Maintenance can cause inaccuracies Major changes possible without changing Fi, Fl, Pr, Inp, Out, Inq, Maf, Inf

Cost Estimation Techniques Expert judgment by analogy Compare target product to completed products Provides a WASG (wild *** scientific guess) Studies show large groups eerily accurate Bottom-up approach Split into smaller components (e.g., classes) Estimate costs for each component Algorithmic cost estimation models Most commonly used approach

COCOMO Set of estimation models developed in 1981 Updated in 1995 for modern development tools Both contain 3 models differing in complexity Original design consists of three models: Macro-estimation model for whole product Intermediate COCOMO Micro-estimation model examining product details

Intermediate COCOMO Estimate product length in KDSI Estimate of 1000s of source instructions Select development mode Development mode determines coefficients used Size Innovation Deadline Environment Organic Small Little Not tight Stable Semi-detached Medium Embedded Large Greater Tight Complex interfaces a b Organic 3.2 1.05 Semi-detached 3.0 1.12 Embedded 2.8 1.20

Intermediate COCOMO Compute development (nominal) effort Effort computed as person-months Effort = a ´ (KDSI)b Compute C (effort adjustment factor) Equals the product of up to 15 cost-drivers Development time (in person-months) is: Effort ´ C

COCOMO Cost Drivers

Using COCOMO Revision (COCOMO II) calculated similarly But much, much more complex Estimated time then used to compute: Development costs & schedules Phase and activity distributions Maintenance costs after delivery Ultimately based upon initial size estimate End result only as good as initial estimate

For Next Lecture Consider maintenance of code Ultimately where the real money is made or lost Where majority of time in project is spent But least interesting for software engineering Much determined by decisions in development