SlideShare a Scribd company logo
1 of 23
Download to read offline
12th CENTRAL & EASTERN EUROPEAN
SOFTWARE ENGINEERING CONFERENCE IN RUSSIA
October 28 - 29, Moscow
Anton S. Khritankov
Industrializing Software Product Line
Development for Small Companies
MIPT
Antiplagiat
Basic idea
 Several products for
specific market
 Similar but different
 Want to reuse (multiuse)
shared parts
28.10.2016
Industrializing Software Product Line
Development for Small Companies2
Divide products into features
 Divide functionality into
features
 If features intersect – that’s
a new sub-feature
 Describe products as sets
of features
28.10.2016
Industrializing Software Product Line
Development for Small Companies3
Implementation
 Extensible reference
architecture
 Separate implementation of
features
 Assemble products from
features
28.10.2016
Industrializing Software Product Line
Development for Small Companies4
Software Product Line Engineering (SPLE)
Software product line (SPL) is
 a group of related but different products
 targeting specific needs within a selected market
 sharing common, managed set of features
 developed from core assets in a predefined way
28.10.2016
Industrializing Software Product Line
Development for Small Companies5
Developing products from core assets
28.10.2016
Industrializing Software Product Line
Development for Small Companies6
Economics of software product lines
28.10.2016
Industrializing Software Product Line
Development for Small Companies7
Variability model
28.10.2016
Industrializing Software Product Line
Development for Small Companies8
Requirements management
28.10.2016
Industrializing Software Product Line
Development for Small Companies9
Asset reuse
28.10.2016
Industrializing Software Product Line
Development for Small Companies10
Product configuration (1/3)
28.10.2016
Industrializing Software Product Line
Development for Small Companies11
Product configuration (2/3)
28.10.2016
Industrializing Software Product Line
Development for Small Companies12
Product configuration (3/3
28.10.2016
Industrializing Software Product Line
Development for Small Companies13
Case Study: Antiplagiat SPL
 Internet-scale SaaS and on-premises
 Family of plagiarism checking products for
 Educational institutions
 Research organizations
 Personal use
28.10.2016
Industrializing Software Product Line
Development for Small Companies14
Motivation for change
Problems Opportunities
 Unmaintainable code
 Ad-hoc product
management and
communication
 And prevent in the future
Leverage similarities
 increase development
productivity
 increase quality
 decrease time to market
 lessen support burden
28.10.2016
Industrializing Software Product Line
Development for Small Companies15
Example features
Feature Description Used in
Static website
(abstract)
Display supplementary information about the site, news,
on-line help depending on the configuration
Except when
API-only
Admin area Site admin can create, delete, edit user accounts and
change user password, search for users with filtering and
sorting. A site admin can log in as a user.
Except when
ExternalAuth.
University
admin
Site admin can create, edit and delete tags. Site admin can
assign tags to professors andTAs.
Site admin can assign and edit student IDs
AP.University
User profile User can log in and log out with username and password.
User can view his profile and contact support.
AP.User,
AP.University, …
28.10.2016
Industrializing Software Product Line
Development for Small Companies16
Product line management process
28.10.2016
Industrializing Software Product Line
Development for Small Companies17
Lessons learned
 Obtain and maintain sponsorship and support
28.10.2016
Industrializing Software Product Line
Development for Small Companies18
Lessons learned
 Obtain and maintain sponsorship and support
 Expect initial costs
28.10.2016
Industrializing Software Product Line
Development for Small Companies19
Lessons learned
 Obtain and maintain sponsorship and support
 Expect initial costs
 Refactoring
 Process tailoring
 Training
28.10.2016
Industrializing Software Product Line
Development for Small Companies20
Lessons learned
 Obtain and maintain sponsorship and support
 Expect initial costs
 Refactoring
 Process tailoring
 Training
 Start small and travel light
28.10.2016
Industrializing Software Product Line
Development for Small Companies21
Lessons learned
 Obtain and maintain sponsorship and support
 Expect initial costs
 Refactoring
 Process tailoring
 Training
 Start small and travel light
 Architecture is an important investment
28.10.2016
Industrializing Software Product Line
Development for Small Companies22
Industrializing Software Product Line
Development for Small Companies
 Architectural considerations
 Implementation best practices
 Proactive and reactive SPLE
 Variability management
 Configuration management
 Connecting to DevOps or SAFe
28.10.2016
Industrializing Software Product Line
Development for Small Companies23
Anton Khritankov
anton.khritankov@acm.org

More Related Content

What's hot

User-Driven Development Framework
User-Driven Development FrameworkUser-Driven Development Framework
User-Driven Development FrameworkMack McKinney
 
Introduction to BEA
Introduction to BEAIntroduction to BEA
Introduction to BEAGem WeBlog
 
A Review of Feature Model Position in the Software Product Line and Its Extra...
A Review of Feature Model Position in the Software Product Line and Its Extra...A Review of Feature Model Position in the Software Product Line and Its Extra...
A Review of Feature Model Position in the Software Product Line and Its Extra...CSCJournals
 
Reconstructing Software Architecture
Reconstructing Software ArchitectureReconstructing Software Architecture
Reconstructing Software ArchitectureHimanshu
 
An Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion TechniqueAn Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion TechniqueIJEACS
 
SDLC Models in Software Engineering
SDLC Models in Software EngineeringSDLC Models in Software Engineering
SDLC Models in Software EngineeringBilal Bhatti
 
Something super epic...
Something super epic...Something super epic...
Something super epic...Rabah Rahil
 
Constructing Enterprise Applications
Constructing Enterprise  ApplicationsConstructing Enterprise  Applications
Constructing Enterprise ApplicationsGem WeBlog
 
W J L A B S R E M I T V2
W J  L A B S  R E M I T V2W J  L A B S  R E M I T V2
W J L A B S R E M I T V2chickerino
 
Digite Enterprise - Integrate ALM for Corporate IT
Digite Enterprise - Integrate ALM for Corporate ITDigite Enterprise - Integrate ALM for Corporate IT
Digite Enterprise - Integrate ALM for Corporate ITMahesh Singh
 
SofTech AU2010
SofTech AU2010SofTech AU2010
SofTech AU2010ekelley26
 
SPM Cursus introductie
SPM Cursus introductieSPM Cursus introductie
SPM Cursus introductieGarm Lucassen
 
Defining and Aligning Requirements using System Architect and DOORS
Defining and Aligning Requirements using System Architect and DOORSDefining and Aligning Requirements using System Architect and DOORS
Defining and Aligning Requirements using System Architect and DOORSPaul W. Johnson
 
Software engineering
Software engineeringSoftware engineering
Software engineeringrenukarenuka9
 

What's hot (20)

User-Driven Development Framework
User-Driven Development FrameworkUser-Driven Development Framework
User-Driven Development Framework
 
Introduction to BEA
Introduction to BEAIntroduction to BEA
Introduction to BEA
 
Bea introduction
Bea introductionBea introduction
Bea introduction
 
A Review of Feature Model Position in the Software Product Line and Its Extra...
A Review of Feature Model Position in the Software Product Line and Its Extra...A Review of Feature Model Position in the Software Product Line and Its Extra...
A Review of Feature Model Position in the Software Product Line and Its Extra...
 
Reconstructing Software Architecture
Reconstructing Software ArchitectureReconstructing Software Architecture
Reconstructing Software Architecture
 
Complementing Agile SDLC with Agile Architecture
Complementing Agile SDLC with Agile ArchitectureComplementing Agile SDLC with Agile Architecture
Complementing Agile SDLC with Agile Architecture
 
An Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion TechniqueAn Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
 
SDLC Models in Software Engineering
SDLC Models in Software EngineeringSDLC Models in Software Engineering
SDLC Models in Software Engineering
 
Something super epic...
Something super epic...Something super epic...
Something super epic...
 
Constructing Enterprise Applications
Constructing Enterprise  ApplicationsConstructing Enterprise  Applications
Constructing Enterprise Applications
 
W J L A B S R E M I T V2
W J  L A B S  R E M I T V2W J  L A B S  R E M I T V2
W J L A B S R E M I T V2
 
Digite Enterprise - Integrate ALM for Corporate IT
Digite Enterprise - Integrate ALM for Corporate ITDigite Enterprise - Integrate ALM for Corporate IT
Digite Enterprise - Integrate ALM for Corporate IT
 
TOGAF 9 Architecture Partitioning
TOGAF 9  Architecture PartitioningTOGAF 9  Architecture Partitioning
TOGAF 9 Architecture Partitioning
 
SofTech AU2010
SofTech AU2010SofTech AU2010
SofTech AU2010
 
Syifaa Care Apps
Syifaa Care AppsSyifaa Care Apps
Syifaa Care Apps
 
Syifaa care apps
Syifaa care appsSyifaa care apps
Syifaa care apps
 
SPM Cursus introductie
SPM Cursus introductieSPM Cursus introductie
SPM Cursus introductie
 
Defining and Aligning Requirements using System Architect and DOORS
Defining and Aligning Requirements using System Architect and DOORSDefining and Aligning Requirements using System Architect and DOORS
Defining and Aligning Requirements using System Architect and DOORS
 
EA foundations (views + repository)
EA foundations (views + repository)EA foundations (views + repository)
EA foundations (views + repository)
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 

Viewers also liked

SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...
SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...
SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...Edson Oliveira Junior
 
Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...Simon Urli
 
Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...
Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...
Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...CS, NcState
 
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Heiko Koziolek
 
Software product line testing in practice
Software product line testing in practiceSoftware product line testing in practice
Software product line testing in practiceJohan Hoberg
 
7 - Architetture Software - Software product line
7 - Architetture Software - Software product line7 - Architetture Software - Software product line
7 - Architetture Software - Software product lineMajong DevJfu
 

Viewers also liked (6)

SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...
SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...
SMartyParser: an XMI Parser for UML-based Software Product Line Variability M...
 
Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...
 
Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...
Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...
Promise 2011: "Are Change Metrics Good Predictors for an Evolving Software Pr...
 
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
 
Software product line testing in practice
Software product line testing in practiceSoftware product line testing in practice
Software product line testing in practice
 
7 - Architetture Software - Software product line
7 - Architetture Software - Software product line7 - Architetture Software - Software product line
7 - Architetture Software - Software product line
 

Similar to Industrializing Software Product Line Development for Small Companies (short version)

Wso2 building-an-api-strategy-using-an-enterprise-api-marketplace
Wso2 building-an-api-strategy-using-an-enterprise-api-marketplaceWso2 building-an-api-strategy-using-an-enterprise-api-marketplace
Wso2 building-an-api-strategy-using-an-enterprise-api-marketplaceTanjina Prema
 
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »Smile I.T is open
 
Category Based Application Engine
Category Based Application EngineCategory Based Application Engine
Category Based Application EngineAM Publications
 
Meet Magento 2015 Utrecht - ElasticSearch - Smile
Meet Magento 2015 Utrecht - ElasticSearch - SmileMeet Magento 2015 Utrecht - ElasticSearch - Smile
Meet Magento 2015 Utrecht - ElasticSearch - SmileSmile I.T is open
 
Innovation at scale - Key drivers and pitfalls to building API driven agile b...
Innovation at scale - Key drivers and pitfalls to building API driven agile b...Innovation at scale - Key drivers and pitfalls to building API driven agile b...
Innovation at scale - Key drivers and pitfalls to building API driven agile b...Mifan Careem
 
Mule version-crowd highlights
Mule version-crowd highlightsMule version-crowd highlights
Mule version-crowd highlightsD.Rajesh Kumar
 
Tracxn research coding tools startup landscape, july 2016
Tracxn research coding tools startup landscape, july 2016Tracxn research coding tools startup landscape, july 2016
Tracxn research coding tools startup landscape, july 2016Tracxn
 
Chapter 2(1) system development life .ppt
Chapter 2(1) system development life .pptChapter 2(1) system development life .ppt
Chapter 2(1) system development life .pptDoaaRezk5
 
Mit APIs auf der Überholspur zur produktorientierten Organisation
Mit APIs auf der Überholspur zur produktorientierten OrganisationMit APIs auf der Überholspur zur produktorientierten Organisation
Mit APIs auf der Überholspur zur produktorientierten OrganisationFabian Hardt
 
Era of APIs: Why do we need an API strategy?
Era of APIs: Why do we need an API strategy?Era of APIs: Why do we need an API strategy?
Era of APIs: Why do we need an API strategy?Bala Iyer
 
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »Smile I.T is open
 
Confessions of-a-gadget-holic
Confessions of-a-gadget-holicConfessions of-a-gadget-holic
Confessions of-a-gadget-holicTyrell Perera
 
Red Hat Israel Meetup 2019 - Agile Integration
Red Hat Israel Meetup 2019 - Agile IntegrationRed Hat Israel Meetup 2019 - Agile Integration
Red Hat Israel Meetup 2019 - Agile IntegrationYaakov Preiger
 
How to Build Enterprise AI Products by IBM Product Manager
How to Build Enterprise AI Products by IBM Product ManagerHow to Build Enterprise AI Products by IBM Product Manager
How to Build Enterprise AI Products by IBM Product ManagerProduct School
 
Subject Matter ExpertWorkbench
Subject Matter ExpertWorkbenchSubject Matter ExpertWorkbench
Subject Matter ExpertWorkbenchPankesh Patel
 
BI Reporting Application Comparison
BI Reporting Application ComparisonBI Reporting Application Comparison
BI Reporting Application ComparisonScott Mitchell
 

Similar to Industrializing Software Product Line Development for Small Companies (short version) (20)

Wso2 building-an-api-strategy-using-an-enterprise-api-marketplace
Wso2 building-an-api-strategy-using-an-enterprise-api-marketplaceWso2 building-an-api-strategy-using-an-enterprise-api-marketplace
Wso2 building-an-api-strategy-using-an-enterprise-api-marketplace
 
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
 
Bridging the Gap
Bridging the GapBridging the Gap
Bridging the Gap
 
Category Based Application Engine
Category Based Application EngineCategory Based Application Engine
Category Based Application Engine
 
Meet Magento 2015 Utrecht - ElasticSearch - Smile
Meet Magento 2015 Utrecht - ElasticSearch - SmileMeet Magento 2015 Utrecht - ElasticSearch - Smile
Meet Magento 2015 Utrecht - ElasticSearch - Smile
 
Innovation at scale - Key drivers and pitfalls to building API driven agile b...
Innovation at scale - Key drivers and pitfalls to building API driven agile b...Innovation at scale - Key drivers and pitfalls to building API driven agile b...
Innovation at scale - Key drivers and pitfalls to building API driven agile b...
 
Mule version-crowd highlights
Mule version-crowd highlightsMule version-crowd highlights
Mule version-crowd highlights
 
Tracxn research coding tools startup landscape, july 2016
Tracxn research coding tools startup landscape, july 2016Tracxn research coding tools startup landscape, july 2016
Tracxn research coding tools startup landscape, july 2016
 
Chapter 2(1) system development life .ppt
Chapter 2(1) system development life .pptChapter 2(1) system development life .ppt
Chapter 2(1) system development life .ppt
 
Unit 2
Unit 2Unit 2
Unit 2
 
Mit APIs auf der Überholspur zur produktorientierten Organisation
Mit APIs auf der Überholspur zur produktorientierten OrganisationMit APIs auf der Überholspur zur produktorientierten Organisation
Mit APIs auf der Überholspur zur produktorientierten Organisation
 
ERP vs SAP (Difference)
ERP vs SAP (Difference)ERP vs SAP (Difference)
ERP vs SAP (Difference)
 
Era of APIs: Why do we need an API strategy?
Era of APIs: Why do we need an API strategy?Era of APIs: Why do we need an API strategy?
Era of APIs: Why do we need an API strategy?
 
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
 
Confessions of-a-gadget-holic
Confessions of-a-gadget-holicConfessions of-a-gadget-holic
Confessions of-a-gadget-holic
 
Red Hat Israel Meetup 2019 - Agile Integration
Red Hat Israel Meetup 2019 - Agile IntegrationRed Hat Israel Meetup 2019 - Agile Integration
Red Hat Israel Meetup 2019 - Agile Integration
 
How to Build Enterprise AI Products by IBM Product Manager
How to Build Enterprise AI Products by IBM Product ManagerHow to Build Enterprise AI Products by IBM Product Manager
How to Build Enterprise AI Products by IBM Product Manager
 
Subject Matter ExpertWorkbench
Subject Matter ExpertWorkbenchSubject Matter ExpertWorkbench
Subject Matter ExpertWorkbench
 
Sharing Knowladge - Mendix.pptx
Sharing Knowladge - Mendix.pptxSharing Knowladge - Mendix.pptx
Sharing Knowladge - Mendix.pptx
 
BI Reporting Application Comparison
BI Reporting Application ComparisonBI Reporting Application Comparison
BI Reporting Application Comparison
 

Recently uploaded

Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 

Recently uploaded (20)

Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 

Industrializing Software Product Line Development for Small Companies (short version)

  • 1. 12th CENTRAL & EASTERN EUROPEAN SOFTWARE ENGINEERING CONFERENCE IN RUSSIA October 28 - 29, Moscow Anton S. Khritankov Industrializing Software Product Line Development for Small Companies MIPT Antiplagiat
  • 2. Basic idea  Several products for specific market  Similar but different  Want to reuse (multiuse) shared parts 28.10.2016 Industrializing Software Product Line Development for Small Companies2
  • 3. Divide products into features  Divide functionality into features  If features intersect – that’s a new sub-feature  Describe products as sets of features 28.10.2016 Industrializing Software Product Line Development for Small Companies3
  • 4. Implementation  Extensible reference architecture  Separate implementation of features  Assemble products from features 28.10.2016 Industrializing Software Product Line Development for Small Companies4
  • 5. Software Product Line Engineering (SPLE) Software product line (SPL) is  a group of related but different products  targeting specific needs within a selected market  sharing common, managed set of features  developed from core assets in a predefined way 28.10.2016 Industrializing Software Product Line Development for Small Companies5
  • 6. Developing products from core assets 28.10.2016 Industrializing Software Product Line Development for Small Companies6
  • 7. Economics of software product lines 28.10.2016 Industrializing Software Product Line Development for Small Companies7
  • 8. Variability model 28.10.2016 Industrializing Software Product Line Development for Small Companies8
  • 9. Requirements management 28.10.2016 Industrializing Software Product Line Development for Small Companies9
  • 10. Asset reuse 28.10.2016 Industrializing Software Product Line Development for Small Companies10
  • 11. Product configuration (1/3) 28.10.2016 Industrializing Software Product Line Development for Small Companies11
  • 12. Product configuration (2/3) 28.10.2016 Industrializing Software Product Line Development for Small Companies12
  • 13. Product configuration (3/3 28.10.2016 Industrializing Software Product Line Development for Small Companies13
  • 14. Case Study: Antiplagiat SPL  Internet-scale SaaS and on-premises  Family of plagiarism checking products for  Educational institutions  Research organizations  Personal use 28.10.2016 Industrializing Software Product Line Development for Small Companies14
  • 15. Motivation for change Problems Opportunities  Unmaintainable code  Ad-hoc product management and communication  And prevent in the future Leverage similarities  increase development productivity  increase quality  decrease time to market  lessen support burden 28.10.2016 Industrializing Software Product Line Development for Small Companies15
  • 16. Example features Feature Description Used in Static website (abstract) Display supplementary information about the site, news, on-line help depending on the configuration Except when API-only Admin area Site admin can create, delete, edit user accounts and change user password, search for users with filtering and sorting. A site admin can log in as a user. Except when ExternalAuth. University admin Site admin can create, edit and delete tags. Site admin can assign tags to professors andTAs. Site admin can assign and edit student IDs AP.University User profile User can log in and log out with username and password. User can view his profile and contact support. AP.User, AP.University, … 28.10.2016 Industrializing Software Product Line Development for Small Companies16
  • 17. Product line management process 28.10.2016 Industrializing Software Product Line Development for Small Companies17
  • 18. Lessons learned  Obtain and maintain sponsorship and support 28.10.2016 Industrializing Software Product Line Development for Small Companies18
  • 19. Lessons learned  Obtain and maintain sponsorship and support  Expect initial costs 28.10.2016 Industrializing Software Product Line Development for Small Companies19
  • 20. Lessons learned  Obtain and maintain sponsorship and support  Expect initial costs  Refactoring  Process tailoring  Training 28.10.2016 Industrializing Software Product Line Development for Small Companies20
  • 21. Lessons learned  Obtain and maintain sponsorship and support  Expect initial costs  Refactoring  Process tailoring  Training  Start small and travel light 28.10.2016 Industrializing Software Product Line Development for Small Companies21
  • 22. Lessons learned  Obtain and maintain sponsorship and support  Expect initial costs  Refactoring  Process tailoring  Training  Start small and travel light  Architecture is an important investment 28.10.2016 Industrializing Software Product Line Development for Small Companies22
  • 23. Industrializing Software Product Line Development for Small Companies  Architectural considerations  Implementation best practices  Proactive and reactive SPLE  Variability management  Configuration management  Connecting to DevOps or SAFe 28.10.2016 Industrializing Software Product Line Development for Small Companies23 Anton Khritankov anton.khritankov@acm.org