SlideShare a Scribd company logo
Dr. Himanshu Hora
SRMS College of Engg. & Tech., Bareilly
INDIA
Definition
A set of software-intensive system sharing a
common, managed set of features that satisfy the
specific needs of particular market segment or
mission and that are developed from a common set
of core assets in a prescribed way.
Introduction
 A product line consists of :
 multiple systems, which have the same architecture and
share common core assets
 variability among systems
 The three main goals of a software product line are
to reduce cost, improve delivery time, and improve
quality
 It is a family of products designed to take
advantage of their common aspects and predicted
variabilities
Introduction Contd..
Market strategy/
Application domain
Architecture
Components
concern to
share an
are built from
is satisfied by
used to structure
Products
CORE
ASSETS
Product lines
take economic advantage of commonality
bound variability
Things which Make Software
Product Line Work
 Reuse of followings:
 Requirements
 Architectural design
 Elements
 Modeling and analysis
 Testing
 Project planning
 Processes, methods and tools
 People
 Exemplar systems
 Defect elimination
Scoping
 A product’s line scope is statement about what
systems an organization is willing to build as a
part of its line
 Represents the organization’s best prediction
about what products it will be asked to build in
future
 Lack of commonalities can be a problem in
defining the scope
Architectures for Product Lines
 A product line architecture captures the
architectures of many related products
simultaneously
 Generally employs explicit variation points in the
architecture indicating where design decisions
may diverge from product to product
 A product line architect needs to consider 3 things:
 Identifying variation points
 Supporting variation points
 Evaluating the architecture for product line suitability
Identifying Variation Points
• Variations discovered during requirement process :
 Features, user interface, qualities, and target markets
• Variations points discovered during architecture design
process :
 Either options for implementing the variations identified
during requirement process or normal variations during design
Supporting Variation Points
 Inclusion or omission of elements
 Inclusion of different number of replicated
elements
 Selection of versions of elements that have the
same interface but different behavioral or quality
attribute characteristics
Evaluating the Architecture for
Product Line
 Architecture is evaluated for its robustness and
generality
 Evaluation process focuses on :
 What to evaluate
 How to evaluate
 When to evaluate
Adoption Strategies
 Top-down :
 Manager orders to that the organization will use the
product line approach
 Bottom-up :
 Designers and developers begin to share resources and
develop generic core assets
Product Line Growth Models
 Proactive product line :
 Organization defines the family using comprehensive
definition of scope by taking advantages in the
application area
 Reactive product line :
 Organization builds the next member or member of
product family from earlier products
Evolving a Product Line
 As time passes, the product line must evolve
Sources driving the product line evolution :
 External sources :
 Externally created element may be added to the product
line
 Internal sources :
 New functions may be added to the product and product
line may be updated
Benefits
 Reduced Cost
 Improved Time to Market
 Flexible Staffing and Productivity
 Increased Predictability
 Higher Quality
Thank You
Dr. Himanshu Hora
SRMS College of Engg. & Tech., Bareilly
INDIA

More Related Content

What's hot

Software Engineering Assignment
Software Engineering AssignmentSoftware Engineering Assignment
Software Engineering Assignment
Sohaib Latif
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
Anuja Arosha
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)
Simran Kaur
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
Er. Shiva K. Shrestha
 
Design patterns ppt
Design patterns pptDesign patterns ppt
Design patterns ppt
Aman Jain
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
Dr Reeja S R
 
Waterfall model ppt final
Waterfall model ppt  finalWaterfall model ppt  final
Waterfall model ppt final
shiva krishna
 
component based development model
component based development modelcomponent based development model
component based development model
Muneeba Qamar
 
Software Development Process
Software Development ProcessSoftware Development Process
Software Development Process
Amira Elsayed Ismail
 
Software Architecture: Design Decisions
Software Architecture: Design DecisionsSoftware Architecture: Design Decisions
Software Architecture: Design Decisions
Henry Muccini
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
JAINAM KAPADIYA
 
Software Architecture vs design
Software Architecture vs design Software Architecture vs design
Software Architecture vs design
Arslan Anwar
 
4+1 view model
4+1 view model4+1 view model
4+1 view model
Shobana Chokkalingam
 
Project control and process instrumentation
Project control and process instrumentationProject control and process instrumentation
Project control and process instrumentation
Kuppusamy P
 
Software Testing
Software TestingSoftware Testing
Software Testing
Ecaterina Moraru (Valica)
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
Pratik Tandel
 
Coupling , Cohesion and there Types
Coupling , Cohesion and there TypesCoupling , Cohesion and there Types
Coupling , Cohesion and there Types
Munaam Munawar
 
Architectural views
Architectural viewsArchitectural views
Architectural views
Saleem Khan
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
Ivano Malavolta
 
Sdlc
SdlcSdlc

What's hot (20)

Software Engineering Assignment
Software Engineering AssignmentSoftware Engineering Assignment
Software Engineering Assignment
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Design patterns ppt
Design patterns pptDesign patterns ppt
Design patterns ppt
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
 
Waterfall model ppt final
Waterfall model ppt  finalWaterfall model ppt  final
Waterfall model ppt final
 
component based development model
component based development modelcomponent based development model
component based development model
 
Software Development Process
Software Development ProcessSoftware Development Process
Software Development Process
 
Software Architecture: Design Decisions
Software Architecture: Design DecisionsSoftware Architecture: Design Decisions
Software Architecture: Design Decisions
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
 
Software Architecture vs design
Software Architecture vs design Software Architecture vs design
Software Architecture vs design
 
4+1 view model
4+1 view model4+1 view model
4+1 view model
 
Project control and process instrumentation
Project control and process instrumentationProject control and process instrumentation
Project control and process instrumentation
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Coupling , Cohesion and there Types
Coupling , Cohesion and there TypesCoupling , Cohesion and there Types
Coupling , Cohesion and there Types
 
Architectural views
Architectural viewsArchitectural views
Architectural views
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
 
Sdlc
SdlcSdlc
Sdlc
 

Viewers also liked

Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architecture
Himanshu
 
Cost Benefit Analysis Method
Cost Benefit Analysis MethodCost Benefit Analysis Method
Cost Benefit Analysis Method
Himanshu
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
Himanshu
 
Building systems from off the shelf components
Building systems from off the shelf componentsBuilding systems from off the shelf components
Building systems from off the shelf components
Himanshu
 
Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categories
Himanshu
 
Abc
AbcAbc
Business analysis in data warehousing
Business analysis in data warehousingBusiness analysis in data warehousing
Business analysis in data warehousing
Himanshu
 
Saam
SaamSaam
Saam
Himanshu
 
Importance of software architecture
Importance of software architectureImportance of software architecture
Importance of software architecture
Himanshu
 
ATAM
ATAMATAM
ATAM
Himanshu
 

Viewers also liked (10)

Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architecture
 
Cost Benefit Analysis Method
Cost Benefit Analysis MethodCost Benefit Analysis Method
Cost Benefit Analysis Method
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
 
Building systems from off the shelf components
Building systems from off the shelf componentsBuilding systems from off the shelf components
Building systems from off the shelf components
 
Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categories
 
Abc
AbcAbc
Abc
 
Business analysis in data warehousing
Business analysis in data warehousingBusiness analysis in data warehousing
Business analysis in data warehousing
 
Saam
SaamSaam
Saam
 
Importance of software architecture
Importance of software architectureImportance of software architecture
Importance of software architecture
 
ATAM
ATAMATAM
ATAM
 

Similar to Software Product Line

Unit2 2
Unit2 2Unit2 2
Unit2 2
sush-sushma
 
PLA and the SC 2002-04-15
PLA and the SC 2002-04-15PLA and the SC 2002-04-15
PLA and the SC 2002-04-15
Jay van Zyl
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
Raghu Kiran
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
Ivano Malavolta
 
About pellustro - The cloud-based platform for assessments
About pellustro - The cloud-based platform for assessmentsAbout pellustro - The cloud-based platform for assessments
About pellustro - The cloud-based platform for assessments
Element22
 
Quality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar PresentationQuality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar Presentation
Orange Slides
 
Rational Unified Process(Rup)
Rational Unified Process(Rup)Rational Unified Process(Rup)
Rational Unified Process(Rup)
pawanonline83
 
Agile architecture made real
Agile architecture made realAgile architecture made real
Agile architecture made real
Alexis Hui
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component
Saransh Garg
 
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptxvnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
Krishna20539
 
Managing Requirements As An Asset
Managing Requirements As An AssetManaging Requirements As An Asset
Managing Requirements As An Asset
Jolene_Eichorn
 
Sda 6
Sda   6Sda   6
Balanced Agile Approach
Balanced Agile Approach Balanced Agile Approach
Balanced Agile Approach
Cary Xie
 
Week 4- Software Process models (Cont..).pptx
Week 4- Software Process models (Cont..).pptxWeek 4- Software Process models (Cont..).pptx
Week 4- Software Process models (Cont..).pptx
syedusama54
 
Essay questions
Essay questionsEssay questions
Essay questions
charles ogolla
 
Unit 2
Unit 2Unit 2
Aim crisp handout
Aim crisp handoutAim crisp handout
Aim crisp handout
Surya Maddiboina
 
unit 4.ppt
unit 4.pptunit 4.ppt
unit 4.ppt
Benjamin Bugri
 
System Development Life_IntroductionCycle.pdf
System Development Life_IntroductionCycle.pdfSystem Development Life_IntroductionCycle.pdf
System Development Life_IntroductionCycle.pdf
pncitechnologies
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development process
Ivano Malavolta
 

Similar to Software Product Line (20)

Unit2 2
Unit2 2Unit2 2
Unit2 2
 
PLA and the SC 2002-04-15
PLA and the SC 2002-04-15PLA and the SC 2002-04-15
PLA and the SC 2002-04-15
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 
About pellustro - The cloud-based platform for assessments
About pellustro - The cloud-based platform for assessmentsAbout pellustro - The cloud-based platform for assessments
About pellustro - The cloud-based platform for assessments
 
Quality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar PresentationQuality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar Presentation
 
Rational Unified Process(Rup)
Rational Unified Process(Rup)Rational Unified Process(Rup)
Rational Unified Process(Rup)
 
Agile architecture made real
Agile architecture made realAgile architecture made real
Agile architecture made real
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component
 
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptxvnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
 
Managing Requirements As An Asset
Managing Requirements As An AssetManaging Requirements As An Asset
Managing Requirements As An Asset
 
Sda 6
Sda   6Sda   6
Sda 6
 
Balanced Agile Approach
Balanced Agile Approach Balanced Agile Approach
Balanced Agile Approach
 
Week 4- Software Process models (Cont..).pptx
Week 4- Software Process models (Cont..).pptxWeek 4- Software Process models (Cont..).pptx
Week 4- Software Process models (Cont..).pptx
 
Essay questions
Essay questionsEssay questions
Essay questions
 
Unit 2
Unit 2Unit 2
Unit 2
 
Aim crisp handout
Aim crisp handoutAim crisp handout
Aim crisp handout
 
unit 4.ppt
unit 4.pptunit 4.ppt
unit 4.ppt
 
System Development Life_IntroductionCycle.pdf
System Development Life_IntroductionCycle.pdfSystem Development Life_IntroductionCycle.pdf
System Development Life_IntroductionCycle.pdf
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development process
 

More from Himanshu

Structural patterns
Structural patternsStructural patterns
Structural patterns
Himanshu
 
Shared information systems
Shared information systemsShared information systems
Shared information systems
Himanshu
 
Saam
SaamSaam
Saam
Himanshu
 
Design Pattern
Design PatternDesign Pattern
Design Pattern
Himanshu
 
Creational pattern
Creational patternCreational pattern
Creational pattern
Himanshu
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
Himanshu
 
Reliability and its principals
Reliability and its principalsReliability and its principals
Reliability and its principals
Himanshu
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testing
Himanshu
 
White box black box & gray box testing
White box black box & gray box testingWhite box black box & gray box testing
White box black box & gray box testing
Himanshu
 
Pareto analysis
Pareto analysisPareto analysis
Pareto analysis
Himanshu
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
Himanshu
 
Crud and jad
Crud and jadCrud and jad
Crud and jad
Himanshu
 
Junit and cactus
Junit and cactusJunit and cactus
Junit and cactus
Himanshu
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testing
Himanshu
 
Testing a data warehouses
Testing a data warehousesTesting a data warehouses
Testing a data warehouses
Himanshu
 
Software testing tools and its taxonomy
Software testing tools and its taxonomySoftware testing tools and its taxonomy
Software testing tools and its taxonomy
Himanshu
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering process
Himanshu
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth model
Himanshu
 
Software reliability tools and common software errors
Software reliability tools and common software errorsSoftware reliability tools and common software errors
Software reliability tools and common software errors
Himanshu
 
Regression and performance testing
Regression and performance testingRegression and performance testing
Regression and performance testing
Himanshu
 

More from Himanshu (20)

Structural patterns
Structural patternsStructural patterns
Structural patterns
 
Shared information systems
Shared information systemsShared information systems
Shared information systems
 
Saam
SaamSaam
Saam
 
Design Pattern
Design PatternDesign Pattern
Design Pattern
 
Creational pattern
Creational patternCreational pattern
Creational pattern
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
 
Reliability and its principals
Reliability and its principalsReliability and its principals
Reliability and its principals
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testing
 
White box black box & gray box testing
White box black box & gray box testingWhite box black box & gray box testing
White box black box & gray box testing
 
Pareto analysis
Pareto analysisPareto analysis
Pareto analysis
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Crud and jad
Crud and jadCrud and jad
Crud and jad
 
Junit and cactus
Junit and cactusJunit and cactus
Junit and cactus
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testing
 
Testing a data warehouses
Testing a data warehousesTesting a data warehouses
Testing a data warehouses
 
Software testing tools and its taxonomy
Software testing tools and its taxonomySoftware testing tools and its taxonomy
Software testing tools and its taxonomy
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering process
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth model
 
Software reliability tools and common software errors
Software reliability tools and common software errorsSoftware reliability tools and common software errors
Software reliability tools and common software errors
 
Regression and performance testing
Regression and performance testingRegression and performance testing
Regression and performance testing
 

Recently uploaded

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 

Recently uploaded (20)

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 

Software Product Line

  • 1. Dr. Himanshu Hora SRMS College of Engg. & Tech., Bareilly INDIA
  • 2. Definition A set of software-intensive system sharing a common, managed set of features that satisfy the specific needs of particular market segment or mission and that are developed from a common set of core assets in a prescribed way.
  • 3. Introduction  A product line consists of :  multiple systems, which have the same architecture and share common core assets  variability among systems  The three main goals of a software product line are to reduce cost, improve delivery time, and improve quality  It is a family of products designed to take advantage of their common aspects and predicted variabilities
  • 4. Introduction Contd.. Market strategy/ Application domain Architecture Components concern to share an are built from is satisfied by used to structure Products CORE ASSETS Product lines take economic advantage of commonality bound variability
  • 5. Things which Make Software Product Line Work  Reuse of followings:  Requirements  Architectural design  Elements  Modeling and analysis  Testing  Project planning  Processes, methods and tools  People  Exemplar systems  Defect elimination
  • 6. Scoping  A product’s line scope is statement about what systems an organization is willing to build as a part of its line  Represents the organization’s best prediction about what products it will be asked to build in future  Lack of commonalities can be a problem in defining the scope
  • 7. Architectures for Product Lines  A product line architecture captures the architectures of many related products simultaneously  Generally employs explicit variation points in the architecture indicating where design decisions may diverge from product to product  A product line architect needs to consider 3 things:  Identifying variation points  Supporting variation points  Evaluating the architecture for product line suitability
  • 8. Identifying Variation Points • Variations discovered during requirement process :  Features, user interface, qualities, and target markets • Variations points discovered during architecture design process :  Either options for implementing the variations identified during requirement process or normal variations during design
  • 9. Supporting Variation Points  Inclusion or omission of elements  Inclusion of different number of replicated elements  Selection of versions of elements that have the same interface but different behavioral or quality attribute characteristics
  • 10. Evaluating the Architecture for Product Line  Architecture is evaluated for its robustness and generality  Evaluation process focuses on :  What to evaluate  How to evaluate  When to evaluate
  • 11. Adoption Strategies  Top-down :  Manager orders to that the organization will use the product line approach  Bottom-up :  Designers and developers begin to share resources and develop generic core assets
  • 12. Product Line Growth Models  Proactive product line :  Organization defines the family using comprehensive definition of scope by taking advantages in the application area  Reactive product line :  Organization builds the next member or member of product family from earlier products
  • 13. Evolving a Product Line  As time passes, the product line must evolve Sources driving the product line evolution :  External sources :  Externally created element may be added to the product line  Internal sources :  New functions may be added to the product and product line may be updated
  • 14. Benefits  Reduced Cost  Improved Time to Market  Flexible Staffing and Productivity  Increased Predictability  Higher Quality
  • 15. Thank You Dr. Himanshu Hora SRMS College of Engg. & Tech., Bareilly INDIA