Download presentation
Presentation is loading. Please wait.
2
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 1 - Title Slide Reuse Revisited A reminder of basic software reuse gauging techniques and additional topics. Ernest Cachia (As part of CSA404)
3
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 2 of part 1 Let’s Remember … Banker’s “coarse” estimate of reuse percentage and reuse leverage Poulin-Caruso’s estimate of: –reuse cost avoidance –reuse value added –additional development cost –a project’s return on investment value Balda-Gustafson’s effort cost estimate based on the COnstruction COst MOdel (COCOMO) (Selected slides from CSM203 could be reviewed at this point)
4
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 3 of part 1 The Benefits of Reuse (in theory) Lower development costs Higher product quality Higher production rate Reduced development process time Lower failure/defect risk Lower personnel training costs Easier (clearer and cleaner) maintenance Enhanced interoperability
5
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 4 of part 1 The Benefits of Reuse (in practice - example 1) Nippon Electric Company (NEC) Basic reuse of 17% translated to … Productivity: +6.7 times (over 1 year) +10.4 times (over 7 years) Software quality: +2.8 times (over 1 year) +8.5 times (over 7 years) Domain(s): Basic and communication switching systems (1996 data)
6
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 5 of part 1 Toshiba Corporation Basic reuse of 60% translated to … Defect reduction: 28% (over 1 year) Software quality: +4.3 times (over 1 year) Domain(s): Control and communication systems (1992 data) The Benefits of Reuse (in practice - example 2)
7
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 6 of part 1 The Benefits of Reuse (in practice - example 3) DEC Basic reuse of 50-80% translated to … Productivity: +3-5 times (over 1 year) Software quality: +2.3 times (over 1 year) Domain(s): Computer control systems (1994 data)
8
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 7 of part 1 The Benefits of Reuse (in practice - example 4) Hewlett-Packard (HP) Basic reuse of 70% translated to … Defect reduction: 50% (avg. over 2 projects) Productivity: +45% (avg. over 2 projects) Timeliness:+43% (avg. over 2 projects) Domain(s): Basic and computer peripheral control systems (1995 data)
9
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 8 of part 1 The Benefits of Reuse (in practice - example 5) Raytheon Corporation Basic reuse of 60% translated to … Productivity: +50% (over 2 COBOL projects) Defect reduction: 44% (over 2 COBOL projects) Domain(s): Large-scale information systems (1980 data) - One of the very first “sightings” of commercial reuse… then hailed as a major trend for the future but not quite ripe for its time!
10
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 9 of part 1 The Benefits of Reuse (in practice - example 6) Software Architecture & Engineering, Inc. (SAE) Basic reuse of 80-90% translated to … Productivity: +54% (over 3 “C” projects) Defect reduction: +39% (over 3 “C” projects) Domain(s): Distributed software applications (1992 data)
11
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 10 of part 1 The Benefits of Reuse (in practice - in general) Study of 75 Ada projects in 15 firms (30+ MLOC in all): Software quality (all aspects) increased by an average of 10 times in relation to just 10-18% reuse levels. (1991-92 data) Study of 9 major software producing companies practising reuse: Defect reduction:58% Project cost: 84% Timeliness:+70% (all over 1 year 1994-95)
12
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 11 of part 1 Main Reuse Model Types 1Reuse level models (a post-mortem static analysis - “How much has been reused?”) 2Reuse leverage models (a post-mortem comparative analysis - “How has reuse improved a given activity?”) 3Reuse economic models (a predicative estimate composed of a combination of 3 basic approaches) … see slide 14
13
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 12 of part 1 Very popular (widespread use) Easy to relate to Easy and quick to calculate Widely adopted industry standard metric Reused software Reuse % = x 100% Total software Note that the above is meaningless without a “count object” definition Reuse Level
14
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 13 of part 1 Reuse Leverage Not as popular as the reuse level metric It is a comparative metric Easy and quick to calculate Based on productivity Productivity with reuse Leverage = Productivity without reuse E. g. If R L for ORG a is 1.35 this means that ORG a has increased its productivity by 35%
15
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 14 of part 1 Reuse Economic Models Cost Avoidance (CA - estimate - “How much money will be saved?”) Return On Investment (ROI - estimate - “Will money be saved in the long-run?”) Cost-Benefit (C-B - estimate - “Should reuse be considered at all?”) … see cost and benefit breakdown tables on separate handouts.
16
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 15 of part 1 Frakes-Terry Reuse Level Metric More detailed then the Banker metric Specifically targeted at C (but can be re- applied with basic assumptions) The basic “reusable object”, referred to as an item, is generally considered to be a function (as in C) Differentiates between internal and external reuse
17
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 16 of part 1 Frakes-Terry Definitions The main definitions: ETL (External Threshold Level) - The number of times an external item must be invoked before considering an invocation as reuse. ITL (Internal Threshold Level) - Same as ETL but for an internal item. EU (External Usage) - Usage of items over and above ETL. IU (Internal Usage) - Usage of items over and above ITL. T (Total) - Total number of items in system both internal and external.
18
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 17 of part 1 Assumptions for the Frakes-Terry approach No internal reuse (this is usually the case as items generated by a team are taken to be items included in application development and not reused). Therefore: ITL and it follows that IU 0 Any invocation of external items is taken to be reuse. Therefore: ETL 0
19
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 18 of part 1 Frakes-Terry Reuse Level Relationships Internal reuse level = IU / T External reuse level = EU / T Total reuse level = (IU + EU) / T Values range from 0 (i.e. no reuse) to 1 (i.e. system made up solely of reused items) Please note that the actual size of an “item” in the Frakes-Terry approach should always be taken into account. A complexity weighting should be used within the metric if straightforward LOC is not used.
20
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 19 of part 1 External itemsInternal items Frakes-Terry Example The actual example will be discussed during lecture sessions. However, the initial conditions/assumptions of the example are shown on this slide. Main item 15 LOC Item A 25 LOC Item B 30 LOC Item C 20 LOC Item E 25 LOC Item D 10 LOC
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.