Ernest Cachia University of Malta Reuse revisited plus
- Slides: 19
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 CSA 404)
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 CSM 203 could be reviewed at this point)
The Benefits of Reuse (in theory) • • Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 3 of part 1 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
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)
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 5 of part 1 The Benefits of Reuse (in practice - example 2) • 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)
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)
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)
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! Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 8 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) Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 9 of part 1
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)
Main Reuse Model Types 1 Reuse level models (a post-mortem static analysis - “How much has been reused? ”) 2 Reuse leverage models (a post-mortem comparative analysis - “How has reuse improved a given activity? ”) 3 Reuse economic models (a predicative estimate composed of a combination of 3 basic approaches) … see slide 14 Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 11 of part 1
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 12 of part 1 Reuse Level • • Very popular (widespread use) Easy to relate to Easy and quick to calculate Widely adopted industry standard metric Reuse % = Reused software Total software x 100% Note that the above is meaningless without a “count object” definition
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 Leverage = Productivity with reuse Productivity without reuse E. g. If RL for ORGa is 1. 35 this means that ORGa has increased its productivity by 35%
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.
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 reapplied 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
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.
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
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.
Ernest Cachia University of Malta “Reuse revisited plus …” Slide No. 19 of part 1 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. Internal items External items Main item 15 LOC Item C 20 LOC Item D 10 LOC Item A 25 LOC Item B 30 LOC Item E 25 LOC
- Ernest cachia
- Luana micallef
- Ernest cachia
- Straight line motion revisited homework
- Random sampling over joins revisited
- Fiona cachia
- Contoh refine teknologi ramah lingkungan
- 3 benefits of recycling
- Reduce examples
- Objective of reduce reuse recycle
- Respect recycle
- Frekuensi reuse
- Advantages of reuse
- Make a poster reduce reuse recycle
- Reuse distance
- Advantages and disadvantages of dialyzer reuse
- Frequency reuse distance formula
- Bee green recycling
- Water o water
- Host target development in software engineering