prepared by: hadeel el-genedy software architecture course pre-masters studies computer science...
TRANSCRIPT
P R E PA R E D BY:
Hadeel El-Genedy
S O F T WA R E A R C H I T E C T U R E C O U R S EP R E - M A S T E R S S T U D I E S
C O M P U T E R S C I E N C E D E PA RT M E N TC A I R O U N I V E R S I T Y
Software Product Line
1. Introduct ion
2. What i s So f tware Produc t L ine
3. Sof tware Produc t L ine Concept s
4. Bind ing T imes
5. Purpose o f So f tware Produc t L ine
6. Moving Towards So f tware Produc t L ine
7. Benefi ts
Agenda
1. Introduction
2. What i s So f tware Produc t L ine
3. So f tware Produc t L ine Concep ts
4. Bind ing T imes
5. Purpose o f So f tware Produc t L ine
6. Moving Towards So f tware Produc t L ine
7. Benefi ts
Where are we?
Improved Efficiency
and Productivit
y
Business and Software Power
Software as the bottom line for any organization
Business Goals
High Quality
Quick time to market
Market Dominance
Low Cost Production
Low Cost Maintenance
Mass Customization
Solution?
Improve ProcessTechnology InnovationSoftware Reuse
1. In t roduc t i on
2. What is Software Product Line
3. Purpose o f So f tware Produc t L ine
4. Sof tware Produc t L ine Concepts
5. Bind ing T imes
6. Mov ing Towards So f tware Produc t L ine
7. Benefi ts
Where are we?
Definition
“a set of software-intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are development from a common set of core assets in a prescribed way”
SPL Versus Reuse Strategy
1. In t roduc t i on
2. W ha t i s S o f twa re Produc t L i ne
3. Software Product Line Concepts
4. Bi nd i ng T i mes
5. Purpos e o f S o f twa re Produc t L i ne
6. Mov i ng Towa rds S o f twa re Produc t L i ne
7. Benefi ts
Where are we?
Concepts
ProductionSoftware Asset Inputs
Product Decisions
Product Outputs
1. I n t r o d u c t i o n
2. W h a t i s S o f t w a r e P r o d u c t L i n e
3. S o f t w a r e P r o d u c t L i n e C o n c e p t s
4. Binding Times
5. Purpose of Software Product Line
6. M o v i n g To w a r d s S o f t w a r e P r o d u c t L i n e
7. B e n e fi t s
Where are we?
What is a binding time?
Time to which a product decision is made. Source Reuse time Development time Static code instantiation time Build time Package time Customer customizations Install time Startup time Runtime
Multiple Binding Times
Product Outputs
Production
Product Decisions
Asset Inputs
Partially Instantiated Assets
Production
Product Decisions
First Binding Time Second Binding Time
Production Characteristics
Automation
Periodi-city
Roles
1. I n t r odu c t i on
2. Wh at i s So f twar e Pr odu c t L in e
3. So f twar e Pr odu c t L in e C on ce p t s
4. B in d in g T ime s
5. Purpose of Software Product Line
6. M ov in g Towar ds So f twar e Pr odu c t L in e
7. B en efi t s
Where are we?
Objective Of SPL
Capitalize on Commonality
Manage Variation
1. In t roduc t ion
2. What i s So f tware Produc t L ine
3. Sof tware Produc t L ine Concepts
4. Bind ing T imes
5. Purpose o f So f tware Produc t L ine
6. Moving Towards Software Product Line
7. Benefi ts
Where are we?
The Transition
Become Informed
Assess the situation
Build the team
Find the quick wins
1. In t roduc t ion
2. What i s So f tware Produc t L ine
3. So f tware Produc t L ine Concep ts
4. Bind ing T imes
5. Purpose o f So f tware Produc t L ine
6. Moving Towards So f tware Produc t L ine
7. Benefi ts
Where are we?
Benefits
Mass ProductionMass CustomizationEnhance Software engineer productivityScalability
Conventional
Software Product Line
Light Weight Software Product Line
Total Number of Products
Tota
l E
ng
ineeri
ng
E
ffort
THE END
Questions