SlideShare une entreprise Scribd logo
1  sur  34
1
Requirements Engineering for Product
Lines
2
Introduction
• The interest in software product lines emerged from the field of
software reuse when developers realized that they could obtain much
greater reuse benefits by reusing software architectures instead of
reusing individual software components
3
Software Reuse
• Software reuse has been a goal in software engineering since
1968
• Goal is to maximize productivity, minimize cost of
developing software and to improve profits for the software
vendors
• This has been an research area in software engineering
4
Software Reuse Manifestos
• Code reuse
• Mathematical libraries
• Design reuse
• Requirements reuse
• Knowledge reuse
• Product line approach
5
Software Family of Systems
• Parnas referred to a collection of systems that share
common characteristics as a family of systems. It is worth
considering the development of a family of systems when
there is more to be gained by analyzing the systems
collectively rather than separately – that is, when the
systems have more features in common than features that
distinguish them
6
Software Product Lines
• A software product line consists of a family of software systems that
have some common functionality and some variable functionality
• To take advantage of the common functionality, reusable assets are
developed
7
Software Product Lines
• Reusable assets include: requirements, designs, components, and so
on
• These reusable assets can be reused by different members of the
family
8
Software Product Lines
• The software industry is increasingly recognizing the strategic
importance of software product lines
• Product lines are not new and they have been used in ancient era also
• Egyptian pyramids are an example of product lines
9
Airline Product Lines
• A modern example of product lines comes from the airline industry,
with the European Airbus A-318, A-319, A-320, A-321 airplanes,
which share common product features, including jet engines,
navigation equipment, and communication equipment
10
Software Product Lines
• The traditional mode of software development is to develop single
systems - that is, to develop each system individually
• For software product lines, the development approach is broadened
to consider a family of software systems
11
Software Product Lines
• A software product line is also referred to as a software product
family, a family of systems, or an application domain
• The terms used most in the early days of this field were domain
analysis and domain engineering
12
Software Product Lines
• The architectures developed for application domains were referred to
as domain-specific software architectures
13
Software Development Approach for Product Lines
• This approach involves analyzing what features (functional
requirements) of the software family are common, what features are
optional, and what features are optional, and what features are
alternatives
14
Software Development Approach for Product Lines
• After the feature analysis, the goal is to design a software
architecture for the product line, which has common
components (required by all members of the family),
optional components (required by only some members of
the family), and variant components (different versions of
which are required by different members of the family)
15
Software Development Approach for Product Lines
• To model and design families of systems, the analysis and design
families of systems, the analysis and design concepts for single-
product systems need to be extended to support software product
lines
16
Clements and Northrop
• “A set of software intensive systems sharing a common, managed set
of features that satisfy the specific needs of a particular market
segment or mission and that are developed from a common set of
core assets in a prescribed way”
17
Activities in Software Product Lines
• Modeling commonality and variability is an important activity in
developing software product line
• There have been a number of product line techniques
18
Early Product Line Approaches
• Family-Oriented Abstraction, Specification, and Translation
• Work at Software Engineering Institute
• Work at Software Productivity Consortium
• Evolutionary Development Life Cycle
19
Variability in Software Product Lines
• Variability in a software product line can be modeled at the software
requirements level and at the software design level
• The most widely used approach for modeling variability in
requirements is through feature modeling
20
The Concept of a Feature
• Features are an important concept in software product lines because
they represent reusable requirements or characteristics of a product
line
• The concept of a feature is quite intuitive and applies to all product
lines, not just software product lines
21
Example of a Product Line
• A vehicle is a product line
• Common features
• Alternative features
• Optional features
22
Feature Modeling
• The FODA (feature-oriented domain analysis method uses features,
which are organized into a feature tree. Features may be mandatory,
optional, or mutually exclusive
• Other product line methods also used features
23
Common Features
• Common features are those features that must be provided by every
member of the software product line
• They are also referred to as mandatory, necessary, or kernel features
24
Optional Features
• Optional features are those features that need to be provided by only
some members of the product line
• Optional features can assume that common features are provided
and so can depend on the presence of the common features
25
Alternative Features
• Two or more features may be alternatives to each other, where only
one of them can be provided in any given member of the software
product line
• Thus the features are mutually exclusive
26
Feature Groups
• Related features can be grouped into feature groups, which place a
constraint on how the features are used by a given member of the
software product line
27
Mutually Exclusive Features
• A feature can be an alternative – that is, one of a group of mutually
exclusive features. In some product families, one of the alternatives
must always be chosen for a given product family member
28
Mutually Exclusive Features
• In other cases, however, selecting one of the alternatives is optional
for a given family member
• A zero-or-one-of feature group handles the case in which selecting
one of the alternatives is optional
29
Exactly-One-Of Features
• In an exactly-one-of- feature group, a feature must always be selected
from the group. Unlike the mutually exclusive case, the option of not
selecting a feature does not exist
• This group is also known as one-and-only-one-of feature group
30
Exactly-One-Of Features
• It is possible for such a feature group to have a default feature and to
have a prerequisite
• The feature group must contain at least two features, one of which
could be a default feature
31
At-Least-One-Of Features
• In an at-least-one-of group, one or more optional features can be
selected from the group, but at least one feature must be selected
• It is also possible for this feature group to have a default feature and
to have a prerequisite
32
At-Least-One-Of Features
• The feature group must contain at least two features, one of which
could be a default feature
33
Zero-or-More-Of Features
• At first, a zero-or-more-of feature group might seem unnecessary,
since zero or more of means that all features in the group are optional
and there are no constraints on feature selection from within the
group
34
Zero-or-More-Of Features
• However, sometimes it is useful to group optional features
together because of dependency
• For example, all features in the group depend on another
feature or feature group
• There is usually no default feature in this case

Contenu connexe

Similaire à Requirements engineering for product lines

JIRA System Admin Traning
JIRA System Admin Traning JIRA System Admin Traning
JIRA System Admin Traning Cprime
 
Fsd_216490316162_216490316168_216490316176.pptx.pptx
Fsd_216490316162_216490316168_216490316176.pptx.pptxFsd_216490316162_216490316168_216490316176.pptx.pptx
Fsd_216490316162_216490316168_216490316176.pptx.pptxmakwanajatin1
 
Software Engineering Lec 8-design-
Software Engineering Lec 8-design-Software Engineering Lec 8-design-
Software Engineering Lec 8-design-Taymoor Nazmy
 
Software product line
Software product lineSoftware product line
Software product lineHimanshu
 
Software vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfSoftware vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfavishekpradhan24
 
Software process models
Software process modelsSoftware process models
Software process modelsMalik WaQas
 
2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).pptabhishekgoyal29250
 
2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models.pptTanuYadav844527
 
Software architecture3
Software architecture3Software architecture3
Software architecture3Ahmad Zee
 
Open Product Lines - Frank van der Linden, Philips
Open Product Lines - Frank van der Linden, PhilipsOpen Product Lines - Frank van der Linden, Philips
Open Product Lines - Frank van der Linden, Philipsmfrancis
 
340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdfkrishnaraj714229
 
Project Life Cycle and Effort Estimation
Project Life Cycle andEffort EstimationProject Life Cycle andEffort Estimation
Project Life Cycle and Effort Estimationssuserb7c8b8
 
Introduction and life cycle models
Introduction and life cycle modelsIntroduction and life cycle models
Introduction and life cycle modelsthemobiforest
 
Chapter 7 Development StrategiesInformation Technology Project Management .pptx
Chapter 7 Development StrategiesInformation Technology Project Management  .pptxChapter 7 Development StrategiesInformation Technology Project Management  .pptx
Chapter 7 Development StrategiesInformation Technology Project Management .pptxAxmedMaxamuudYoonis
 
Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Sudarshan Dhondaley
 
chapter07-120827115403-phpapp01.pdf
chapter07-120827115403-phpapp01.pdfchapter07-120827115403-phpapp01.pdf
chapter07-120827115403-phpapp01.pdfAxmedMaxamuud6
 

Similaire à Requirements engineering for product lines (20)

JIRA System Admin Traning
JIRA System Admin Traning JIRA System Admin Traning
JIRA System Admin Traning
 
Fsd_216490316162_216490316168_216490316176.pptx.pptx
Fsd_216490316162_216490316168_216490316176.pptx.pptxFsd_216490316162_216490316168_216490316176.pptx.pptx
Fsd_216490316162_216490316168_216490316176.pptx.pptx
 
Lecture 5
Lecture 5 Lecture 5
Lecture 5
 
Software Engineering Lec 8-design-
Software Engineering Lec 8-design-Software Engineering Lec 8-design-
Software Engineering Lec 8-design-
 
Software product line
Software product lineSoftware product line
Software product line
 
Software vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfSoftware vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdf
 
Software process models
Software process modelsSoftware process models
Software process models
 
system development life cycle
system development life cyclesystem development life cycle
system development life cycle
 
2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models (1).ppt
 
2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt
2.Basic Introduction of SDLC Phases and explanation of SDLC Models.ppt
 
Software architecture3
Software architecture3Software architecture3
Software architecture3
 
Component level design
Component   level designComponent   level design
Component level design
 
Open Product Lines - Frank van der Linden, Philips
Open Product Lines - Frank van der Linden, PhilipsOpen Product Lines - Frank van der Linden, Philips
Open Product Lines - Frank van der Linden, Philips
 
340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf
 
Project Life Cycle and Effort Estimation
Project Life Cycle andEffort EstimationProject Life Cycle andEffort Estimation
Project Life Cycle and Effort Estimation
 
Introduction and life cycle models
Introduction and life cycle modelsIntroduction and life cycle models
Introduction and life cycle models
 
S.E Lec #1.pptx
S.E Lec #1.pptxS.E Lec #1.pptx
S.E Lec #1.pptx
 
Chapter 7 Development StrategiesInformation Technology Project Management .pptx
Chapter 7 Development StrategiesInformation Technology Project Management  .pptxChapter 7 Development StrategiesInformation Technology Project Management  .pptx
Chapter 7 Development StrategiesInformation Technology Project Management .pptx
 
Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5
 
chapter07-120827115403-phpapp01.pdf
chapter07-120827115403-phpapp01.pdfchapter07-120827115403-phpapp01.pdf
chapter07-120827115403-phpapp01.pdf
 

Plus de Syed Zaid Irshad

Plus de Syed Zaid Irshad (20)

Operating System.pdf
Operating System.pdfOperating System.pdf
Operating System.pdf
 
DBMS_Lab_Manual_&_Solution
DBMS_Lab_Manual_&_SolutionDBMS_Lab_Manual_&_Solution
DBMS_Lab_Manual_&_Solution
 
Data Structure and Algorithms.pptx
Data Structure and Algorithms.pptxData Structure and Algorithms.pptx
Data Structure and Algorithms.pptx
 
Design and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptxDesign and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptx
 
Professional Issues in Computing
Professional Issues in ComputingProfessional Issues in Computing
Professional Issues in Computing
 
Reduce course notes class xi
Reduce course notes class xiReduce course notes class xi
Reduce course notes class xi
 
Reduce course notes class xii
Reduce course notes class xiiReduce course notes class xii
Reduce course notes class xii
 
Introduction to Database
Introduction to DatabaseIntroduction to Database
Introduction to Database
 
C Language
C LanguageC Language
C Language
 
Flowchart
FlowchartFlowchart
Flowchart
 
Algorithm Pseudo
Algorithm PseudoAlgorithm Pseudo
Algorithm Pseudo
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
ICS 2nd Year Book Introduction
ICS 2nd Year Book IntroductionICS 2nd Year Book Introduction
ICS 2nd Year Book Introduction
 
Security, Copyright and the Law
Security, Copyright and the LawSecurity, Copyright and the Law
Security, Copyright and the Law
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
 
Data Communication
Data CommunicationData Communication
Data Communication
 
Information Networks
Information NetworksInformation Networks
Information Networks
 
Basic Concept of Information Technology
Basic Concept of Information TechnologyBasic Concept of Information Technology
Basic Concept of Information Technology
 
Introduction to ICS 1st Year Book
Introduction to ICS 1st Year BookIntroduction to ICS 1st Year Book
Introduction to ICS 1st Year Book
 
Using the set operators
Using the set operatorsUsing the set operators
Using the set operators
 

Dernier

Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...RajaP95
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 

Dernier (20)

Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 

Requirements engineering for product lines

  • 2. 2 Introduction • The interest in software product lines emerged from the field of software reuse when developers realized that they could obtain much greater reuse benefits by reusing software architectures instead of reusing individual software components
  • 3. 3 Software Reuse • Software reuse has been a goal in software engineering since 1968 • Goal is to maximize productivity, minimize cost of developing software and to improve profits for the software vendors • This has been an research area in software engineering
  • 4. 4 Software Reuse Manifestos • Code reuse • Mathematical libraries • Design reuse • Requirements reuse • Knowledge reuse • Product line approach
  • 5. 5 Software Family of Systems • Parnas referred to a collection of systems that share common characteristics as a family of systems. It is worth considering the development of a family of systems when there is more to be gained by analyzing the systems collectively rather than separately – that is, when the systems have more features in common than features that distinguish them
  • 6. 6 Software Product Lines • A software product line consists of a family of software systems that have some common functionality and some variable functionality • To take advantage of the common functionality, reusable assets are developed
  • 7. 7 Software Product Lines • Reusable assets include: requirements, designs, components, and so on • These reusable assets can be reused by different members of the family
  • 8. 8 Software Product Lines • The software industry is increasingly recognizing the strategic importance of software product lines • Product lines are not new and they have been used in ancient era also • Egyptian pyramids are an example of product lines
  • 9. 9 Airline Product Lines • A modern example of product lines comes from the airline industry, with the European Airbus A-318, A-319, A-320, A-321 airplanes, which share common product features, including jet engines, navigation equipment, and communication equipment
  • 10. 10 Software Product Lines • The traditional mode of software development is to develop single systems - that is, to develop each system individually • For software product lines, the development approach is broadened to consider a family of software systems
  • 11. 11 Software Product Lines • A software product line is also referred to as a software product family, a family of systems, or an application domain • The terms used most in the early days of this field were domain analysis and domain engineering
  • 12. 12 Software Product Lines • The architectures developed for application domains were referred to as domain-specific software architectures
  • 13. 13 Software Development Approach for Product Lines • This approach involves analyzing what features (functional requirements) of the software family are common, what features are optional, and what features are optional, and what features are alternatives
  • 14. 14 Software Development Approach for Product Lines • After the feature analysis, the goal is to design a software architecture for the product line, which has common components (required by all members of the family), optional components (required by only some members of the family), and variant components (different versions of which are required by different members of the family)
  • 15. 15 Software Development Approach for Product Lines • To model and design families of systems, the analysis and design families of systems, the analysis and design concepts for single- product systems need to be extended to support software product lines
  • 16. 16 Clements and Northrop • “A set of software intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way”
  • 17. 17 Activities in Software Product Lines • Modeling commonality and variability is an important activity in developing software product line • There have been a number of product line techniques
  • 18. 18 Early Product Line Approaches • Family-Oriented Abstraction, Specification, and Translation • Work at Software Engineering Institute • Work at Software Productivity Consortium • Evolutionary Development Life Cycle
  • 19. 19 Variability in Software Product Lines • Variability in a software product line can be modeled at the software requirements level and at the software design level • The most widely used approach for modeling variability in requirements is through feature modeling
  • 20. 20 The Concept of a Feature • Features are an important concept in software product lines because they represent reusable requirements or characteristics of a product line • The concept of a feature is quite intuitive and applies to all product lines, not just software product lines
  • 21. 21 Example of a Product Line • A vehicle is a product line • Common features • Alternative features • Optional features
  • 22. 22 Feature Modeling • The FODA (feature-oriented domain analysis method uses features, which are organized into a feature tree. Features may be mandatory, optional, or mutually exclusive • Other product line methods also used features
  • 23. 23 Common Features • Common features are those features that must be provided by every member of the software product line • They are also referred to as mandatory, necessary, or kernel features
  • 24. 24 Optional Features • Optional features are those features that need to be provided by only some members of the product line • Optional features can assume that common features are provided and so can depend on the presence of the common features
  • 25. 25 Alternative Features • Two or more features may be alternatives to each other, where only one of them can be provided in any given member of the software product line • Thus the features are mutually exclusive
  • 26. 26 Feature Groups • Related features can be grouped into feature groups, which place a constraint on how the features are used by a given member of the software product line
  • 27. 27 Mutually Exclusive Features • A feature can be an alternative – that is, one of a group of mutually exclusive features. In some product families, one of the alternatives must always be chosen for a given product family member
  • 28. 28 Mutually Exclusive Features • In other cases, however, selecting one of the alternatives is optional for a given family member • A zero-or-one-of feature group handles the case in which selecting one of the alternatives is optional
  • 29. 29 Exactly-One-Of Features • In an exactly-one-of- feature group, a feature must always be selected from the group. Unlike the mutually exclusive case, the option of not selecting a feature does not exist • This group is also known as one-and-only-one-of feature group
  • 30. 30 Exactly-One-Of Features • It is possible for such a feature group to have a default feature and to have a prerequisite • The feature group must contain at least two features, one of which could be a default feature
  • 31. 31 At-Least-One-Of Features • In an at-least-one-of group, one or more optional features can be selected from the group, but at least one feature must be selected • It is also possible for this feature group to have a default feature and to have a prerequisite
  • 32. 32 At-Least-One-Of Features • The feature group must contain at least two features, one of which could be a default feature
  • 33. 33 Zero-or-More-Of Features • At first, a zero-or-more-of feature group might seem unnecessary, since zero or more of means that all features in the group are optional and there are no constraints on feature selection from within the group
  • 34. 34 Zero-or-More-Of Features • However, sometimes it is useful to group optional features together because of dependency • For example, all features in the group depend on another feature or feature group • There is usually no default feature in this case