1 Product Lines 2: Escaping from the Oral Culture CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute November 2, 2004.

Slides:



Advertisements
Similar presentations
Using reference models to drive business transformation in the HE sector Dr Samia Oussena Thames Valley University.
Advertisements

CESG, Fall 2011, 5 th November 2011 Stuart Fowell, SciSys Device Virtualisation and Electronic Data Sheets.
CIS 376 Bruce R. Maxim UM-Dearborn
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
Unit 2. Software Lifecycle
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
1 Product Lines 1: Commonality Analysis CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute November 1, 2004.
Product Line Engineering CS 415, Software Engineering II Mark Ardis, Rose-Hulman Institute March 11, 2003.
Software Reuse Building software from reusable components Objectives
SwE 434. Rational Quality Manager Rational Quality Manager is a collaborative, Web-based tool that offers comprehensive test planning, test construction,
1 SWE Introduction to Software Engineering Lecture 5.
Formal Methods: Industrial Use CS 415, Software Engineering II Mark Ardis, Rose-Hulman Institute March 21, 2003.
L ECTURE 2 S OFTWARE P ROCESSES 1. O BJECTIVES To describe outline process models for requirements engineering, software development, testing and evolution.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Introduction to Software Testing
UML and Object Oriented Concepts
Chapter 9 – Software Evolution and Maintenance
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Chapter 2 The process Process, Methods, and Tools
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
Chapter 2 소프트웨어공학 Software Engineering 임현승 강원대학교
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 1 Software and Software Engineering Discussion of the Software Product.
Lecture 3 Software Engineering Models (Cont.)
MERCURY BUSINESS PROCESS TESTING. AGENDA  Objective  What is Business Process Testing  Business Components  Defining Requirements  Creation of Business.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
The Industrial Revolution From England to America.
HRL © 2009 IBM Corporation Model-Driven Product-Lines for Embedded Software and for Supply-Chain Companies Tali Yatzkar-Haham Julia Rubin,
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
ANKITHA CHOWDARY GARAPATI
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
Software Product-Line Engineering: A Family- Based Software Development Process: Introduction David Weiss
OOPSLA workshop on Domain-Specific Visual Languages 1 Juha-Pekka Tolvanen, Steven Kelly, Jeff Gray, Kalle Lyytinen.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering) Jing Ai 10/28/2003.
Software Engineering Introduction.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
College of Computer Science, SCU Computer English Lecture 1 Computer Science Yang Ning 1/46.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Bellringer Make a list of rules that apply to teenagers who work. Make a list of rules that apply to teenagers who work. Age, conditions, dress code, etc…
Software Engineering, 8th edition. Chapter 4 1 Courtesy: ©Ian Sommerville 2006 FEB 13 th, 2009 Lecture # 5 Software Processes.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
March 2004 At A Glance The AutoFDS provides a web- based interface to acquire, generate, and distribute products, using the GMSEC Reference Architecture.
Integrated Modeling Environment System Engineering Seminar Johnny Medina / Code 531 Chris Stone / Code 531 / Constellation Software Engineering.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
What is a Revolution? A revolution is a sudden, complete or marked change in something.
Chapter 11: National and Regional Growth Section 1: Early Industry and Inventions.
Eli Whitney Eli Whitney was the inventor of the cotton gin and a pioneer in the mass production of cotton. Whitney was born in Westboro, Massachusetts.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Washington, D.C., U.S.A May Some concepts of systems architectures Industrialization of statistics and software architecture Study cases.
Cloud-Based Process Planning for CNC Code Generation
Introduction to Design Patterns
Software Processes.
Programming languages and software development
Introduction to Software Testing
Introduction To software engineering
Systems Engineering for Mission-Driven Modeling
A Growing Economy Ch. 11 Lesson 1
Presented By: Darlene Banta
Software and Software Engineering
Re- engineeniering.
SOFTWARE DEVELOPMENT LIFE CYCLE
Presentation transcript:

1 Product Lines 2: Escaping from the Oral Culture CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute November 2, 2004

2 Outline Economics of product lines Implementing product lines Oral culture

3 Economics of Families Current Practice Number of Family Members Cumulative Cost Product Line Approach

4 Application Environment Product Line Engineering Model Domain Engineering Application Engineering Applications Feedback

5 Domain Engineering Application Environment Domain Analysis Domain Model Domain Implementation Analysis Document, Application Modeling Language Tools, Process

6 Application Engineering ApplicationApplication Environment Application Requirements

7 Application Environment Product Line Engineering Model Domain Engineering Application Engineering Applications Feedback

8 Eli Whitney Born December 8, 1765 Raised on a farm in rural Massachusetts Attended Yale College What did Whitney do in 1793?

9 The Cotton Gin Whitney invented the cotton gin in 1793 Southern planters refused to pay royalties on patent  The gin was easy to manufacture  Southern legislatures conspired against Whitney Whitney’s company was out of business by 1797 What did Whitney do in 1798?

10 Flintlock Components

11 Whitney’s Gamble on Automation Whitney offered to make 10,000 muskets in 2 years No other manufacturer had ever made more than a few hundred muskets Automation was needed to improve the efficiency of the locksmiths Whitney invented milling machines to produce interchangeable parts Demonstrated for Congress in 1802

12 Putnam Machine Company, 1875

13 Configuration Control Software that enables changes in switch configuration while the switch is operating  Ensures that requested configurations are valid and safe  Reconfigures  Example: Remove a Protocol Handler (PH) from service and replace it with a spare New switching technology requires new configuration controllers  New unit types for new functionality of lower COGS

14 Commonality Analysis of Configuration Control 1 staff-year effort over 6 months by 6 experts Produced a Commonality Analysis  Definitions: rational vocabulary  Commonalities: reusable algorithms  Variabilities: relationships between devices  Parameters of Variation: enumerated types Reviewed by organization

15 Building Technology for Configuration Control 2 staff-years effort over 12 months by 3 experts Languages -- capture generic algorithms and parameters Translators -- translate to executable code Interface to legacy system Graphical editor

16 SMALL-D Configuration Control Architecture SMALL-V SMALL-R Domain Engineering Environment Application Engineering Environment VFSM C Data Application RAD

17 Configuration Control Development Environment Application Engineer Domain Engineer Application Specific Configuration Control Reusable Assets Application Data Application Environment Interface RAD C Code Knowledge Base

18 RAD Tool

19 Reusable Assets Validations -- generic algorithms for every unit type Realizations -- generic algorithms for every unit type Relationships  data that is used to drive the generic algorithms  design information shared across development

20 Applications Project 1 (1994)  re-engineering project to demonstrate feasibility  replaced existing code and demonstrated in lab Project 2 (1996)  shadow project to demonstrate performance  duplicated work of another team and compared results Project 3 ( )  first real application  reworked domain analysis as work progressed Project 4 (1999)  production use

21 Interval Reduction on 5ESS Projects

22 Oral Culture

23 Problems of Oral Culture No History (Goody and Watt)  Story changes with each telling  Evolution breeds decay No abstraction (Luria)  Insistence on reasoning in terms of ground elements  Refusal to extend arguments to abstractions

24 From Orality to Literacy Write it down Identify abstractions Construct languages Create in the new languages

25 Power of Written Language Generic algorithms of Configuration Control  Translated to flowcharts and English for review  Executed in simulator for further review  Translated to VFSM for execution Commonality Analysis of Configuration Control  Starting point for DECC implementation  Starting point for 4 other designs