Software Reuse; Caught between strategic importance and practical
Transcript of Software Reuse; Caught between strategic importance and practical
![Page 1: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/1.jpg)
Software Reuse; Caught between strategic importanceand practical feasibility
by Gerrit Muller Embedded Systems Institutee-mail: [email protected]
www.gaudisite.nl
AbstractWorldwide the belief is shared that software reuse is needed to cope with theever increasing amount of software. Software reuse is one part of addressingthe amount of software, which is often overhyped and underestimated. Reuseof software is discussed via 8 statements, addressing: the need for reuse, thetechnical and organizational challenges, integration issues, evolution, reuse ofknow how, focus on the bussiness and customer and validation.
Distribution
This article or presentation is written as part of the Gaudí project. The Gaudí projectphilosophy is to improve by obtaining frequent feedback. Frequent feedback is pursued by anopen creation process. This document is published as intermediate or nearly mature versionto get feedback. Further distribution is allowed as long as the document remains completeand unchanged.
21st February 2008status: conceptversion: 1.0
features
performance expectations
number of products
release cycle time years months
feature interaction
complexity
amount of software
new methods new tools
new standards integration effort
hardware performance
reuse openness interoperability
reliability
trends consequences solutions
new software technology
![Page 2: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/2.jpg)
Why reuse: many valid objectives
+ reduced time to market + reduced cost per function + improved quality + improved reliability + easier diversity management + employees only have to understand one base system + improved predictability + larger purchasing power + means to consolidate knowledge + increase added value + enables parallel developments of multiple products + free feature propagation
Software Reuse; Caught between strategic importance and practical feasibility2 Gerrit Muller
version: 1.021st February 2008
SWRwhyReuse
![Page 3: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/3.jpg)
Experiences with reuse, from counterproductive to effective
good reduced time to market reduced investment reduced (shared) maintenance cost improved quality improved reliability easier diversity management understanding of one base system improved predictability larger purchasing power means to consolidate knowledge increase added value enables parallel developments free feature propagation
bad longer time to market
high investments lots of maintenance
poor quality poor reliability
diversity is opposed lot of know how required
predictable too late dependability
knowledge dilution lack of market focus
interference but integration required
Software Reuse; Caught between strategic importance and practical feasibility3 Gerrit Muller
version: 1.021st February 2008
SWRexperiences
![Page 4: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/4.jpg)
Succesful examples of reuse
homogeneous domain
hardware dominated
limited scope
cath lab MRI television waferstepper
car airplane shaver television
audio codec compression library streaming library
Software Reuse; Caught between strategic importance and practical feasibility4 Gerrit Muller
version: 1.021st February 2008
SWRsuccessful
![Page 5: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/5.jpg)
Limits of successful reuse
poor/slow response on paradigm shifts
TV: LCD screens cath lab: image based acquisition control
struggle with integration/convergence with other domains
TV: digital networks and media cath lab: US imaging, MRI
software maintenance, configurations, integration, release
MRI: integration and test wafersteppers: number of configurations
how to innovate?
Software Reuse; Caught between strategic importance and practical feasibility5 Gerrit Muller
version: 1.021st February 2008
SWRlimits
![Page 6: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/6.jpg)
Reuse statements
customer diversity market dynamics product diversity reuse shared
proven functionality
1 Reuse of software modules is needed
2 The technical and
reuse sharing
conflicting interests
overdesign or under performance
complicated supplier customer
relationships
3 organizational challenge are underestimated
integrating concepts: performance, resource management, exception handling, etcetera
4 Components are the easy part, integration is difficult
Software Reuse; Caught between strategic importance and practical feasibility6 Gerrit Muller
version: 1.021st February 2008
SWRstatements
![Page 7: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/7.jpg)
Reuse statements continued
5 Reuse of know how or people instead of
implementation i s more effective
6 The p latform must evolve continuously
7 Focus on business bottomline and customer not on reuse
8. Use before reuse
dynamic market changing applications
served by
up to date products
based on
evolving platform
rapid changing technology
(Moore!) using
specification
design
implementation
validation
verification
people
know how
Software Reuse; Caught between strategic importance and practical feasibility7 Gerrit Muller
version: 1.021st February 2008
SWRstatementsContinued
![Page 8: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/8.jpg)
1. Reuse is needed
Software Reuse; Caught between strategic importance and practical feasibility8 Gerrit Muller
version: 1.021st February 2008
![Page 9: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/9.jpg)
Reuse is needed ... as part of the solution
features
performance expectations
number of products
release cycle time years months
feature interaction
complexity
amount of software
new methods new tools
new standards integration effort
hardware performance
reuse openness interoperability
reliability
trends consequences solutions
new software technology
Software Reuse; Caught between strategic importance and practical feasibility9 Gerrit Muller
version: 1.021st February 2008SWRreuseNeeded
![Page 10: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/10.jpg)
2. Technical challenge
Software Reuse; Caught between strategic importance and practical feasibility10 Gerrit Muller
version: 1.021st February 2008
![Page 11: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/11.jpg)
The danger of being generic: bloating
after refactoring
specific implementations
without a priori re-use generic design from
scratch
lots of if-then-else
lots of configuration options
lots of stubs
lots of best guess defaults
over-generic class
lots of config over- rides
lots of config over- rides
lots of config over- rides
toolbox side
client side
in retrospect common (duplicated) code
"Real-life" example: redesigned Tool super-class and descendants, ca 1994
Software Reuse; Caught between strategic importance and practical feasibility11 Gerrit Muller
version: 1.021st February 2008
GDbloatingVisualized
![Page 12: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/12.jpg)
Exploring bloating
overhead
value
legenda
core function
poor
des
ign
("ho
w")
poor
spe
cific
atio
n ("
wha
t")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
genericity configurability provisions for
future
support for unused legacy code
Software Reuse; Caught between strategic importance and practical feasibility12 Gerrit Muller
version: 1.021st February 2008
EASRTbloating
![Page 13: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/13.jpg)
Bloating causes more bloating
overhead
value
legenda
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
decomposition overhead poor
design poor spec
dogmatic rules
support for unused legacy code
genericity configurability provisions for
Software Reuse; Caught between strategic importance and practical feasibility13 Gerrit Muller
version: 1.021st February 2008
EASRTbloatingCausesBloating
![Page 14: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/14.jpg)
causes even more bloating...
overhead
value
legenda
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
core functionality
genericity configurability provisions for
future
support for unused legacy code
poor
des
ign
("ho
w")
dogm
atic
rule
s fo
r ins
tanc
e fin
e gr
ain
CO
M in
terfa
ces
poor
spe
cific
atio
n ("
wha
t")
decomposition overhead poor
design poor spec
dogmatic rules
support for unused legacy code
genericity configurability provisions for
performance, resource optimization
poor design
poor spec
dogmatic rules
support for unused legacy code
genericity configurability provisions for
Bloating causes performance and resource problems.
Solution: special measures: memory pools, shortcuts, ...
Software Reuse; Caught between strategic importance and practical feasibility14 Gerrit Muller
version: 1.021st February 2008
EASRTbloatingCausesBloatingMore
![Page 15: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/15.jpg)
3. Organizational challenge
Software Reuse; Caught between strategic importance and practical feasibility15 Gerrit Muller
version: 1.021st February 2008
![Page 16: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/16.jpg)
Conventional operational organization
portfolio
operational manager
family
operational manager
project leader
(single product)
project leader
(subsystem)
developers
portfolio architect
family architect
product architect
subsystem architect
marketing manager
family
marketing manager
product manager
entire portfolio
product family
single product
subsystem
module
operational technical commercial
Software Reuse; Caught between strategic importance and practical feasibility16 Gerrit Muller
version: 1.021st February 2008
PCPoperationalOrganization
![Page 17: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/17.jpg)
Modified operational organization
portfolio
operational manager
family
operational manager
project leader
(single product)
project leader
(subsystem)
subsystem developers
entire portfolio
product family
single product
sub- system
module
operational
project leader platform
project leader
(component)
component developers
marketing manager
family
marketing manager
product manager
commercial
portfolio architect
family architect
product architect
subsystem architect
technical
platform architect
component architect
platform manager
component manager
platform
component
Software Reuse; Caught between strategic importance and practical feasibility17 Gerrit Muller
version: 1.021st February 2008
GDoperationalOrganization
![Page 18: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/18.jpg)
Reuse causes coupling
product creation
family creation
product creation
platform creation
policies priorities
deliverables
budgets constraints
deliverables
customer
customer
conflicting interests
Software Reuse; Caught between strategic importance and practical feasibility18 Gerrit Muller
version: 1.021st February 2008
SWRorganizationalCoupling
![Page 19: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/19.jpg)
4. Integration
Software Reuse; Caught between strategic importance and practical feasibility19 Gerrit Muller
version: 1.021st February 2008
![Page 20: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/20.jpg)
Decomposition is easy, integration is difficult
Decomposition is "easy"
Integration is difficult
Software Reuse; Caught between strategic importance and practical feasibility20 Gerrit Muller
version: 1.021st February 2008
LWAdecompositionAndIntegration
![Page 21: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/21.jpg)
Nasty surprises show up during integration
component 1
component 4
component 3
component 2
integration and test
scheduled closing date
delay
Do you have any design issues for the design meeting?
The default answer is: No.
realized closing date
During integration numerous problems become visible
Software Reuse; Caught between strategic importance and practical feasibility21 Gerrit Muller
version: 1.021st February 2008
MSintegration
![Page 22: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/22.jpg)
Architectural mismatch
tuner tuner MPEG MPEG
Duplication
Architectural mismatch : wrappers, translators, conflicting controls
Poor performance; additional resource usage
additional code and complexity,
no added value
UI UI
non problem Problems Architecture Reuse
Software Reuse; Caught between strategic importance and practical feasibility22 Gerrit Muller
version: 1.021st February 2008ARmergeProblems
![Page 23: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/23.jpg)
Integrating concepts
resource usage
perfor- mance
exception handling
device abstraction
pipeline
start up shut down
persistence
IQ
tuner frame- buffer MPEG DSP CPU RAM
drivers scheduler OS
etc
audio video TXT file-
system networking etc.
view play browse
storage
acquisition compress encoding
display de- compress
decoding 2. construction
decomposition
3. allocation
1. functional decomposition
4. infrastructure
5. choice of integrating
concepts
safety
security
Software Reuse; Caught between strategic importance and practical feasibility23 Gerrit Muller
version: 1.021st February 2008
SWRintegratingConcepts
![Page 24: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/24.jpg)
Platform block diagram
Architecture guidelines
Base Product
Hardware Abstraction Infrastructure services
Application Toolboxes
Application Services
Test environment
Development support
services
Product 1 specifics
Product 2 specifics
Product n specifics
Hardware
Software Reuse; Caught between strategic importance and practical feasibility24 Gerrit Muller
version: 1.021st February 2008SWRblockDiagram
![Page 25: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/25.jpg)
Platform types
Architecture guidelines
Base Product
Infrastructure services
Application Toolboxes
Application Services
Test environment
Development support
services
Product 1 specifics
Product 2 specifics
Product n specifics
Architecture guidelines
Base Product
Infrastructure services
Application Toolboxes
Application Services
Test environment
Development support
services
Product 1 specifics
Product 2 specifics
Product n specifics
Architecture guidelines
Base Product
Infrastructure services
Application Toolboxes
Application Services
Test environment
Development support
services
Product 1 specifics
Product 2 specifics
Product n specifics
Hardware Abstraction
Hardware
Hardware Abstraction
Hardware
Hardware Abstraction
Hardware
integration level
system
component
prep
arat
ion
leve
l
subsystem
"platform"
module
syst
em
com
pone
nt
subs
yste
m
"pla
tform
"
mod
ule
"Delegated" integration
Shared integration
A
B
C
A B
C
Software Reuse; Caught between strategic importance and practical feasibility25 Gerrit Muller
version: 1.021st February 2008SWRplatformTypes
![Page 26: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/26.jpg)
5. Reuse of know how and people
Software Reuse; Caught between strategic importance and practical feasibility26 Gerrit Muller
version: 1.021st February 2008
![Page 27: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/27.jpg)
Reuse in CAFCR perspective
Customer What
Customer How
Product What
Product How
What does Customer need in Product and Why ?
C ustomer objectives
A pplication F unctional C onceptual R ealization
rate of change
Understanding spec design implemen- tation
"easy" reuse costly reuse
Software Reuse; Caught between strategic importance and practical feasibility27 Gerrit Muller
version: 1.021st February 2008
SWRrateOfChangeCAFCR
![Page 28: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/28.jpg)
6. Evolution
Software Reuse; Caught between strategic importance and practical feasibility28 Gerrit Muller
version: 1.021st February 2008
![Page 29: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/29.jpg)
The platform in a dynamic world
Architecture
Platform
Dynamic Market
Fast changing Technology
How stable is a platform or an architecture?
Components
Software Reuse; Caught between strategic importance and practical feasibility29 Gerrit Muller
version: 1.021st February 2008
LWAplatformStability
![Page 30: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/30.jpg)
Platform evolution (Easyvision 1991-1996)
1991
1992
1994
1991
1994
Last changed in:
Growth
Change
3 rd generation components are mature, active maintenance needed. Growth and change continues, some "old" components become obsolete
1992
1996
Software Reuse; Caught between strategic importance and practical feasibility30 Gerrit Muller
version: 1.021st February 2008
LWAplatformEvolution
![Page 31: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/31.jpg)
7. Focus on business bottomline and customer
Software Reuse; Caught between strategic importance and practical feasibility31 Gerrit Muller
version: 1.021st February 2008
![Page 32: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/32.jpg)
Simplified process view
policy and planning
customer
Philips business
valu
e
PCP
customer oriented process (sales, service, production)
people and technology management process
Software Reuse; Caught between strategic importance and practical feasibility32 Gerrit Muller
version: 1.021st February 2008
ISADprocessDecomposition
![Page 33: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/33.jpg)
Modified Process Decomposition
policy and planning
customer
Philips business
value
PCP
customer oriented process (sales, service, production)
people and technology management process
create generic components
Software Reuse; Caught between strategic importance and practical feasibility33 Gerrit Muller
version: 1.021st February 2008
SWRprocessDecompositionFamily
![Page 34: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/34.jpg)
Financial Viewpoint on Process Decomposition
policy and planning
customer
Philips business
value
PCP
customer oriented process (sales, service, production)
people and technology management process
create generic components
management
tomorrow's cashflow
strategic asset
generation
assets
cashflow generation
Software Reuse; Caught between strategic importance and practical feasibility34 Gerrit Muller
version: 1.021st February 2008
SWRprocessDecompositionFamilyByValue
![Page 35: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/35.jpg)
Feedback flow: loss of customer understanding!
policy and planning
Philips business
value
people and technology management process
create generic components
PCP
feed
- ba
ck
customer
customer oriented process (sales, service, production)
Software Reuse; Caught between strategic importance and practical feasibility35 Gerrit Muller
version: 1.021st February 2008
SWRprocessDecompositionFamilyPlusFlow
![Page 36: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/36.jpg)
Models for reuse
lead customer
carrier product
platform
technology push
good direct feedback
too specific?
generic? no feedback
bad
advanced demanding
innovate for specific customer refactor to extract generics
innovate for specific product refactor to extract generics
innovate in generic platform integrate in products
innovate in research laboratory transfer to product development
Software Reuse; Caught between strategic importance and practical feasibility36 Gerrit Muller
version: 1.021st February 2008
SWRreuseModels
![Page 37: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/37.jpg)
8. Use before reuse
Software Reuse; Caught between strategic importance and practical feasibility37 Gerrit Muller
version: 1.021st February 2008
![Page 38: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/38.jpg)
Feedback
3 months 25 months
Start
Target
stepsize: elapsed time:
Software Reuse; Caught between strategic importance and practical feasibility38 Gerrit Muller
version: 1.021st February 2008LWAfeedbackLarge
![Page 39: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/39.jpg)
Feedback (2)
3 months 25 months
2 months 12 months
Start Start
Target Target
stepsize: elapsed time
Software Reuse; Caught between strategic importance and practical feasibility39 Gerrit Muller
version: 1.021st February 2008
LWAfeedbackMedium
![Page 40: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/40.jpg)
Feedback (3)
3 months 25 months
2 months 12 months
1 month 8 months
Start Start Start
Target Target Target
stepsize: elapsed time
Small feedback cycles result in Faster Time to Market
Software Reuse; Caught between strategic importance and practical feasibility40 Gerrit Muller
version: 1.021st February 2008LWAfeedbackSmall
![Page 41: Software Reuse; Caught between strategic importance and practical](https://reader031.fdocuments.in/reader031/viewer/2022020704/61fb4f4a2e268c58cd5ca5fb/html5/thumbnails/41.jpg)
Use = Validate before Reuse
Does it satisfy the needs?
Does it fit in the constraints?
Does it fit in the design?
Is the quality sufficient? multiplication of problems or multiplication of benefits
architectural match no bloating
cost price effort
performance functionality user interface
Software Reuse; Caught between strategic importance and practical feasibility41 Gerrit Muller
version: 1.021st February 2008
SWRuseBeforeReuse