Presentation is loading. Please wait.

Presentation is loading. Please wait.

Estimation - Software Metrics Managers frequently have to measure the productivity of software engineers.

Similar presentations


Presentation on theme: "Estimation - Software Metrics Managers frequently have to measure the productivity of software engineers."— Presentation transcript:

1 Estimation - Software Metrics Managers frequently have to measure the productivity of software engineers.

2 How is productivity measured? What is Productivity? Why are we trying to measure Productivity? What do these measures really mean?

3 Estimation - Software Metrics Estimates are needed for: project estimates time to completion cost manpower measure whether technological improvements are effective measure individual productivity for salary review

4 Estimation - Software Metrics Project estimation effects project scheduling!

5 Estimation is on-going -- Is progress being made? What happens if progress falls behind? What if "expenditures" are greater than estimates?

6 Estimation - Software Metrics TOTAL COST: (1) hardware + software + maintenance (2) travel and training * (3) effort costs??

7 Effort costs??? SE salaries Overhead support staff physical plant networking and communications benefits

8 Software Metrics Effort costs are approximately twice (2x) SE salaries So... Overhead is approximately equal to SE salaries!

9 Software Metrics Productivity = measuring some attribute of the software and dividing this by the total effort required for development.

10 Software Metrics Two types of measurements are available: Size-related and Function-related

11 Software Metrics SIZE-related = Direct Measures What are they? What about an SE project can we measure directly? cost effort LOC (lines of code) speed memory size errors

12 Software Metrics Function-related = Indirect Measures Examines overall/useful functionality over a period of time functionality quality complexity efficiency reliability maintainability

13 Software Metrics Software cost and effort estimation will never be an exact science

14 Software Metrics Too many variables human technical environmental political

15 Software Metrics No estimation technique will be entirely accurate. Estimates fed back into the project, alter the behavior being modeled

16 Size-oriented metrics KLOC (thous. lines of code) were developed with 24-person-months of effort at a cost of $168,000 values represent all software activities (analysis, design, code and test) not just coding

17 Size-oriented metrics pages of documentation developed 29 errors were encountered after software was released to the customer within the first year of operation 3 people worked on the development of the software

18 Size-oriented productivity and quality metrics: Productivity = KLOC/person-month Quality = error/KLOC Cost = $/KLOC Documentation = Pages doc./KLOC

19 Size-oriented productivity and quality metrics: Controversy: Why LOC as a key measure?

20 Size-oriented productivity and quality metrics: Pro: LOC are "artifact" of all software development project that can be easily counted. Con: LOC measures are programming language dependent. They penalize well-designed but shorter programs. They cannot easily accommodate non-procedural languages. Con: When used in estimation, LOC requires may be difficult to determine; planner must estimate the LOC long before analysis and design have been completed.

21 Function-related metrics Examples: number of user inputs number of user outputs number of user inquiries/interactions number of files number of external interfaces

22 Function-related metrics Relate to overall functionality of delivered software. Function points try to give a weight to these functionality measures. Each Function point (FP) is individually assessed for complexity and given a weight.

23 Function points EX. Weight of 3 for simple external inputs, Weight of 15 for complex internal files.

24 Function points FPs (function points) can create similar estimation formulas: productivity=FP/person-mth quality = error/FP cost = $/FP documentation=pages doc./FP

25 Alternative techniques: Unadjusted Function Point Count = UPC UPC = # of elements of a given type X weight This is further adjusted by a measure (a value) for overall project complexity.

26 But -- What counts as complexity?

27 Function points Final Function Count (FFC) FFC = UFC x project complexity factors These values can compare individuals on a single project or across projects.

28 Function Points are Controversial

29 Function Points Controversy Pro: FP is programming language independent making it ideal for applications using conventional and non- procedural languages based on data more likely to be known early in the evolution of the project attractive as an estimation approach

30 Function Points Controversy Con: method requires some "slight of hand" in that computation is based on subjective rather than objective data difficult to collect after-the-fact data to verify no direct physical meaning -- its just a number

31 But, any measuring tool Can easily be misused- With enough adjustment, you can get the numbers to say almost anything.

32 Estimation Accuracy Regardless of model Care must be exercised when using the results of cost estimation Often the case that external factors really drive the schedule

33 Estimation Accuracy Note: The OS/360 operating system was developed in 2 yrs because the hardware was going to be ready in 2 yrs


Download ppt "Estimation - Software Metrics Managers frequently have to measure the productivity of software engineers."

Similar presentations


Ads by Google