Reuse revisited
This presentation is the property of its rightful owner.
Sponsored Links
1 / 19

Reuse Revisited PowerPoint PPT Presentation


  • 134 Views
  • Uploaded on
  • Presentation posted in: General

Reuse Revisited. A reminder of basic software reuse gauging techniques and additional topics. Ernest Cachia (As part of CSA404). Let’s Remember …. Banker’s “coarse” estimate of reuse percentage and reuse leverage Poulin-Caruso’s estimate of: reuse cost avoidance reuse value added

Download Presentation

Reuse Revisited

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Reuse revisited

Reuse Revisited

A reminder of basic software reuse gauging techniques and additional topics.

Ernest Cachia

(As part of CSA404)


Let s remember

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)


The benefits of reuse in theory

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


The benefits of reuse in practice example 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)


The benefits of reuse in practice example 2

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)


The benefits of reuse in practice example 3

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)


The benefits of reuse in practice example 4

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

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!


The benefits of reuse in practice example 6

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)


The benefits of reuse in practice in general

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

    Main Reuse Model Types

    • Reuse level models (a post-mortem static analysis - “How much has been reused?”)

    • Reuse leverage models (a post-mortem comparative analysis - “How has reuse improved a given activity?”)

    • Reuse economic models (a predicative estimate composed of a combination of 3 basic approaches) … see slide 14


    Reuse level

    Reuse Level

    • 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 leverage

    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 RL for ORGa is 1.35 this means that ORGa has increased its productivity by 35%


    Reuse economic models

    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.


    Frakes terry reuse level metric

    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


    Frakes terry definitions

    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.


    Assumptions for the frakes terry approach

    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


    Frakes terry reuse level relationships

    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.


    Frakes terry example

    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


  • Login