Software Product Lines

Slides:



Advertisements
Similar presentations
Introduction to Product Family Engineering. 11 Oct 2002 Ver 2.0 ©Copyright 2002 Vortex System Concepts 2 Product Family Engineering Overview Project Engineering.
Advertisements

CMMI Course Introduction CMMI course Module 0.
S3-1 © 2001 Carnegie Mellon University OCTAVE SM Process 3 Identify Staff Knowledge Software Engineering Institute Carnegie Mellon University Pittsburgh,
A presentation from June 20, 2000 Jim Brosseau The ‘How-To’ of Software Process Improvement.
Ch 3 System Development Environment
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
Chapter 22 Product Line Engineering Week 1 CIS 673.
Personnel and Transfer Management (PTM). FOR PERSONNEL BEING TRANSFERRED Lack of automation in the transfer process leads to inefficiency Stress on the.
Stepan Potiyenko ISS Sr.SW Developer.
IT ARCHITECTURE © Holmes Miller BUILDING METAPHOR 3CUSTOMER’S CONCERN Has vision about building that will meet needs and desires 3ARCHITECT’S CONCERN.
Requirements Analysis INCOSE Systems Engineering Boot Camp
F29IF2 : Databases & Information Systems Lachlan M. MacKinnon The Domain of Information Systems Databases & Information Systems Lachlan M. MacKinnon.
©2011 Rolls-Royce plc The information in this document is the property of Rolls-Royce plc and may not be copied or communicated to a third party, or used.
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
1 Software Product Lines Re-using Architectural Assets - continued from CSSE CSSE 477 Software Architecture Week 7, Day 2, including Ch 14 in Bass’s.
Materials Management BUS 3 – 141 Quality and Specification Leveraging Technical Excellence Week of Aug 31, 2010.
Tom Hollander Solution Architect Solutions Development Centre Microsoft Australia ARC308.
Microsoft Confidential2 6 Key Message: VS 2010 can help you reuse existing assets, increasing the ROI of those assets by enabling you to bring.
CHAPTER 9: LEARNING OUTCOMES
CISB444 - Strategic Information Systems Planning
System Engineering Instructor: Dr. Jerry Gao. System Engineering Jerry Gao, Ph.D. Jan System Engineering Hierarchy - System Modeling - Information.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Sylnovie Merchant, Ph.D MIS 210 Fall 2004 Lecture 1: The Systems Analyst Project Management MIS 210 Information Systems I.
Chapter 2- Software Process Lecture 4. Software Engineering We have specified the problem domain – industrial strength software – Besides delivering the.
Course Instructor: Aisha Azeem
Software Product Lines Krishna Anusha, Eturi. Introduction: A software product line is a set of software systems developed by a company that share a common.
Product Line Approaches in Software Engineering April 29, 2013 Sophia Wu.
NON-FUNCTIONAL PROPERTIES IN SOFTWARE PRODUCT LINES: A FRAMEWORK FOR DEVELOPING QUALITY-CENTRIC SOFTWARE PRODUCTS May Mahdi Noorian
Architecture and Software Product Lines A software architecture represents a significant investment of time and effort, usually by senior talent. So it.
Computer Systems & Architecture Lesson Software Product Lines.
Opportunities & Implications for Turkish Organisations & Projects
Operations Management
Problems with reuse – Increased maintenance costs; lack of tool support; not-invented- here syndrome; creating, maintaining, and using a component library.
SEI´S Software Product Line Tenets Linda M. Northrop Software Engineering Institute IEEE Software July/August 2002.
CPSC 871 John D. McGregor Module 5 Session 2 Software Product Lines.
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2004 Session 6 Lecture # 5 – October 12, 2004.
Software Engineering Chapter 12 The Generic Iteration Workflow Fall 2000.
Twelfth Lecture Hour 10:30 – 11:20 am, Saturday, September 15 Software Management Disciplines Project Organization and Responsibilities (from Part III,
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
The Software Product Line Architectures
SOFTWARE REUSABILITY AJAYINDER SINGH CSC What is Software Reuse Software reuse is the process of implementing or updating software systems using.
SOFTWARE SYSTEMS DEVELOPMENT 4: System Design. Simplified view on software product development process 2 Product Planning System Design Project Planning.
10/16/2015Bahill1 Organizational Innovation and Deployment Causal Analysis and Resolution 5 Optimizing 4 Quantitatively Managed 3 Defined 2 Managed Continuous.
© Mahindra Satyam 2009 Decision Analysis and Resolution QMS Training.
MERCURY BUSINESS PROCESS TESTING. AGENDA  Objective  What is Business Process Testing  Business Components  Defining Requirements  Creation of Business.
PREPARED BY: Hadeel El-Genedy SOFTWARE ARCHITECTURE COURSE PRE-MASTERS STUDIES COMPUTER SCIENCE DEPARTMENT CAIRO UNIVERSITY Software Product Line.
Introducing Software Product Lines (SPL) Silvio Romero de Lemos Meira Eduardo Santana de Almeida
Software Reusability An efficient way in Software Development By Tejaswi Peesapati
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
Systems Analysis and Design in a Changing World, Fourth Edition
© 2005 IBM Corporation IBM Business-Centric SOA Event SOA on your terms and our expertise Operational Efficiency Achieved through People and SOA Martin.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
System Administration for the Enterprise W.L. Garner and L.J. Hawk North American Performance Group, Inc.
SPE-RFI-R : FEB.1999 : NUL-ITD-Iwata 2-01 Needs for Software Development Model Hiromichi Iwata Information Technologies.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
An organizational structure is a mostly hierarchical concept of subordination of entities that collaborate and contribute to serve one common aim... Organizational.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Archiving & Enterprise Content Management from Infocrew Solutions Pvt.Ltd.
ELECTRONIC SERVICES & TOOLS Strategic Plan
IT323 - Software Engineering 2 1 Tutorial 4.  List the main benefits of software reuse 2.
July 2003 At A Glance The GMSEC provides efficient and enabling GSFC mission services and products for the next decade. Benefits Establishes a Single Strategic.
Product Line Architecture. Systems Systems often come in families: basic, regular, professional, enterprise,… Can we share components? Is architecture.
Pragmatics 4 Hours.
Software Product Lines
Chapter 25: Architecture and Product Lines
Andy Nolan1, Silvia Abrahão2 Paul Clements3,
Software Architecture in Practice
Metrics for process and Projects
Software Engineering Practices
CSSE 477 Software Architecture
Presentation transcript:

Software Product Lines Kadir Kuz

Topics What is a Software Product Line? SPL vs Traditional Software Reuse Basic SPL Concepts Production SPL Process and Organization SPL Component Development and System Integration Benefits Costs and Potential Risks

What is a Software Product Line? A software product line is a set of software-intensive systems sharing a common, managed set of futures 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.

The product line is a product suite sharing a common, managed set of features that satisfy specific needs of a selected domain. pertain to Domain Architecture Components is satisfied by share an Products guides development of are built from 3 4

Traditional Software Reuse reuse library with components, modules and algorihtms takes longer to find the desired functionality SPL reuse is planned, enabled and enforced

The Key Concepts Sotware asset inputs Decision Model and product decisions Production mechanism and process Software product outputs

Production Automation Periodicity Roles assets decisions products

SPL Process and Organization

Development Department

Business Units

Domain Engineering Unit

SPL Component Development & System Integration

Organizational Benefits Improved Poductivity (up to 10x) Decreased time to market (up to 10x) Decreased cost (up to %60) Decreased labor needs(up to 10x fewer software developers) Increased quality (up to 10x fewer defects)

Benefits of Software Product Lines Individuals Who Benefit -CEO -COO -Architect -Core Asset Developer -Technical Manager -Marketer -Customer -End User

Technical Manager increased predictability well-established roles and responsibilities efficient production

Software Product Developer higher morale greater job satisfaction Can focus on truly unique aspects of products Easier software Integration Fewer schedule delays Has time to learn new technology is a part of a team, building products with an established quality record and reputation

Costs and Potential Risks Core Assets Costs Architecture Must support variation inherent in the PL Software components Must be designed to be general without a loss of performance; must build in support for variation points Project plans Must be generic or be made extensible to accommodate product variations people Must involve training and expertise centered around the assets and procedures associated with the PL Test plans, Test cases Must consider the variation points and multiple instances of the PL Business case and market analysis Must adress a family of software products, not just one product

FAQ What is the difference between a domain and product line? Is not the product line practice just another name for component based development/domain engineering?

SPLC 2007

Thanks for your listening, Any Questions?