Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 551 Estimation Fall 2005 1 December 2005. QSE Lambda Protocol Prospectus Measurable Operational Value Prototyping or Modeling sQFD Schedule, Staffing,

Similar presentations


Presentation on theme: "CS 551 Estimation Fall 2005 1 December 2005. QSE Lambda Protocol Prospectus Measurable Operational Value Prototyping or Modeling sQFD Schedule, Staffing,"— Presentation transcript:

1 CS 551 Estimation Fall 2005 1 December 2005

2 QSE Lambda Protocol Prospectus Measurable Operational Value Prototyping or Modeling sQFD Schedule, Staffing, Quality Estimates ICED-T Trade-off Analysis

3 Requirements Specification Spec 1.Project Title, Revision Number and Author 2.Scope and Purpose of the system 3.Measurable Operational Value 4.Description 5.Feature List including ICED T and Simplified QFD analysis 6.Interfaces 7.Constraints 8.Change Log and Expected Changes 9.Responses to the unexpected 10.Measurements 11.Glossary 12.References

4 Specification for Development Plan Project Feature List Development Process Size Estimates Staff Estimates Schedule Estimates Organization Gantt Chart

5 Sizing Software Projects Effort = (productivity) (size) c Staff months Lines of Code or Function Points 500

6 Lines of Code LOC= Line of Code SLOC = Source Line of Code NCSLOC = New or Changed Source of Lines of Code

7 Function Points Bell Laboratories data Capers Jones data Productivity (Function points / staff month) Productivity= f(Size)

8 Bernstein’s rule of thumb Productivity per staff-month: 50 NCSLOC for OS code (or real-time system) 250 NCSLOC for intermediary applications (high risk, on-line) 500 NCSLOC for normal applications (low risk, on-line) 10,000 NCSLOC for reused code Reuse note: Sometimes, reusing code that does not provide the exact functionality needed can be achieved by reformatting input/output. This decreases performance but dramatically shortens development time.

9 Software Development Productivity for Industry Average Transaction Projects Characteristic Software Development Productivity (SLOC/WM) Classical rates130 - 195 Evolutionary approaches 244 - 325 New embedded flight software 17 – 105

10 Bernstein’s Trends in Software Expansion Small Scale Reuse 1990 Subsec Time Sharing 1995 Object Oriented Programming 1960 Machine Instructions 1965 Macro Assembler 1970 High Level Language 1975 Database Manager 1980 On-line 1985 Prototyping 2000 Large Scale Reuse 1 10 100 1000 3 15 30 37.5 47 75 81 113 142 475 638 Regression Testing 4GL Order of Magnitude Every Twenty Years Expansion Factor Technology Change

11 Function Point Analysis Can use early in project (data from requirements) Substantial data supports the methodology Software Shop and Project characteristics are accounted for in the Adjusted Function Points Technology and Project Methodology dependent Technology changes negate history until the new relative improvement is established Still have to estimate other elements of the project Could be done by converting UFPs to LOC for a specific language (technology) and then using an algorithmic tool such as COCOMO or SLIM.

12 Adjusted Function Points Accounting for Physical System Characteristics Characteristic Rated by System User 0-5 based on “degree of influence” 3 is average Unadjusted Function Points (UFP) Unadjusted Function Points (UFP) General System Characteristics (GSC) General System Characteristics (GSC) X = Adjusted Function Points (AFP) Adjusted Function Points (AFP) AFP = UFP (0.65 +.01*GSC), note GSC = VAF= TDI 1.Data Communications 2.Distributed Data/Processing 3.Performance Objectives 4.Heavily Used Configuration 5.Transaction Rate 6.On-Line Data Entry 7.End-User Efficiency 8.On-Line Update 9.Complex Processing 10.Reusability 11.Conversion/Installation Ease 12.Operational Ease 13.Multiple Site Use 14.Facilitate Change

13 Computing Function Points

14 External Inputs – One updates two files External Inputs (EI) - when data crosses the boundary from outside to inside. This data may come from a data input screen or another application.

15 External Interface Table For example, EIs that reference or update 2 File Types Referenced (FTR’s) and has 7 data elements would be assigned a ranking of average and associated rating of 4. File Type References (FTR’s) are the sum of Internal Logical Files referenced or updated and External Interface Files referenced.

16 External Output from 2 Internal Files External Outputs (EO) – when data passes across the boundary from inside to outside.

17 External Inquiry drawing from 2 ILFs External Inquiry (EQ) - an elementary process with both input and output components that result in data retrieval from one or more internal logical files and external interface files. The input process does not update Internal Logical File, and there is no derived data.

18 EO and EQ Table mapped to Values

19 Computing Function Points

20 Internal Logical Files Internal Logical Files (ILF’s) - a user identifiable group of logically related data that resides entirely within the applications boundary and is maintained through external inputs.

21 External Interface Files External Interface Files (EIF’s) - a user identifiable group of logically related data that is used for reference purposes only. The data resides entirely outside the application and is maintained by another application. The external interface file is an internal logical file for another application.

22 Proposed System Check Status Create Order Shipment Notice Inventory Assign Inventory to Order Inventory Assigned New Inventory for Held Orders Assign Order to Truck Truckload Report Shipping Invoices Order Update Order Display Problem Resolution Dispatch Accounting Management Reports Customer Check Credit & Completion Users Catalog Orders Order Creation Credit Check Inventory Assignment Held Order Processing Completion Dispatch Support Problem Resolution Management Reporting OA&M

23 Case Study: Web Front End

24 GSC Example: Web Front End

25 Software Costing Cost Development using FPA Estimate Requirements Engineering (1/3 of implementation Design (1/5 of implementation) Testing (1/4 of implementation Documentation & Training 7.6

26 Function Points Evaluated AdvantagesDisadvantages Standards are established and reviewed frequently. Technology, platform, and language independent. Largely a manual process primarily for transaction systems. Backfiring, FP derived from SLOC, is inaccurate and misleading. Results are logical. Estimates are from the user’s perspective. Accurate counting requires in- depth knowledge of standards and extensive training. Estimates from requirements through full life-cycle. Variations exist that are not standardized. Exhibit 6 - 10: Function Point Advantages and Disadvantages

27 The COCOMO model Effort = a(NCSLOC/1000) b Embedded systems: a=3.6 b=1.2 Semi-detached: a=3.0 b=1.12 Application: a=2.4 b=1.05

28 COCOM II Effort = A(size) b П EM(i) b = B + 0.01+∑SF(j); SF(j) are 5 scale factors EM(i) : 17 cost drivers See: http://sunset.usc.edu/research/COCOMOII

29 Time Staff-month T theoretical 75% * T theoretical Impossible design Linear increase Boehm: “A project can not be done in less than 75% of theoretical time” T theoretical = 2.5 * 3 √staff-month


Download ppt "CS 551 Estimation Fall 2005 1 December 2005. QSE Lambda Protocol Prospectus Measurable Operational Value Prototyping or Modeling sQFD Schedule, Staffing,"

Similar presentations


Ads by Google