Sponsored by the U.S. Department of Defense © 2004 by Carnegie Mellon University page 1 Pittsburgh, PA 15213-3890 Integrating Domain Specific Modeling.

Slides:



Advertisements
Similar presentations
© Gerald Kotonya and Ian Sommerville Viewpoint-Oriented Requirements Methods.
Advertisements

OCTAVESM Process 4 Create Threat Profiles
S3-1 © 2001 Carnegie Mellon University OCTAVE SM Process 3 Identify Staff Knowledge Software Engineering Institute Carnegie Mellon University Pittsburgh,
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
S2-1 © 2001 Carnegie Mellon University OCTAVE SM Process 2 Identify Operational Area Management Knowledge Software Engineering Institute Carnegie Mellon.
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 2001 by Carnegie Mellon.
© 2001 by Carnegie Mellon University PPA-1 OCTAVE SM : Participants Briefing Software Engineering Institute Carnegie Mellon University Pittsburgh, PA
Copyright © 1997 Carnegie Mellon University Introduction to the Personal Software Process - Lecture 1 1 Introduction to the Personal Software Process Lecture.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
S5-1 © 2001 Carnegie Mellon University OCTAVE SM Process 5 Identify Key Components Software Engineering Institute Carnegie Mellon University Pittsburgh,
Software Testing and Quality Assurance
SE 470 Software Development Processes James Nowotarski 12 May 2003.
WM Software Process & Quality Generic Processes - Slide #1  P. Sorenson SPiCE Reference Model - how to read Chapter 5 Capability Levels (process.
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
Pittsburgh, PA Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense.
Software Testing and Quality Assurance: Introduction and Terminology
CMMI Overview Quality Frameworks.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Course Instructor: Aisha Azeem
Organizational Project Management Maturity: Roadmap to Success
Software Life Cycle Model
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.
NON-FUNCTIONAL PROPERTIES IN SOFTWARE PRODUCT LINES: A FRAMEWORK FOR DEVELOPING QUALITY-CENTRIC SOFTWARE PRODUCTS May Mahdi Noorian
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Domain-Specific Software Engineering Alex Adamec.
SEI´S Software Product Line Tenets Linda M. Northrop Software Engineering Institute IEEE Software July/August 2002.
Proceso kintamybių modeliavimas Modelling process variabilities Donatas Čiukšys.
February 2008 Professional Services. Agenda Professional Services Overview Data Services Overview Production Services Overview Summary.
Software Product Line Testing Part I : Introduction
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
1 Systems Analysis and Design in a Changing World, Fourth Edition.
Institut Experimentelles Software Engineering Fraunhofer IESE Klaus Schmid Relating Product Line Adoption Mode and Transition Process.
© 2001 by Carnegie Mellon University PSM-1 OCTAVE SM : Senior Management Briefing Software Engineering Institute Carnegie Mellon University Pittsburgh,
© 2001 Carnegie Mellon University S8A-1 OCTAVE SM Process 8 Develop Protection Strategy Workshop A: Protection Strategy Development Software Engineering.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
J. R. Burns, Texas Tech University Capability Maturity Model -- CMM n Developed by the Software Engineering Institute (SEI) in 1989 –SEI is a spinoff.
CMMi What is CMMi? Basic terms Levels Common Features Assessment process List of KPAs for each level.
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
QBASE Engineering © QBASE Engineering Sdn Bhd Measurement System Analysis – MSA Course Description Total Quality Management ( TQM) is being pursued by.
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
1 Knowledge & Knowledge Management “Knowledge is power” to “Sharing K is power” Yaseen Hayajneh, PhD.
Quality Concepts within CMM and PMI G.C.Reddy
R2PL, Pittsburgh November 10, 2005 Copyright © Fraunhofer IESE 2005 Identifying Domain-Specific Reusable Components from Existing OO Systems to Support.
Introducing Software Product Lines (SPL) Silvio Romero de Lemos Meira Eduardo Santana de Almeida
1 Introduction to Software Engineering Lecture 1.
The Role of Experience in Software Testing Practice Zahra Molaei Soheil Hedayatitezengi Comp 587 Prof. Lingard 1 of 21.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
Software Production ( ) First Semester 2011/2012 Dr. Samer Odeh Hanna (PhD)
 Copyright ProcessVelocity, LLP Slides intended for informational purposes only. CMM and Capability Maturity Model are registered in the U.S. Patent.
Active Components a Software Product Line Infrastructure Bas Geertsema Slinger Jansen Information and Computing Sciences University Utrecht VARI-ARCH Workshop.
Towards Multi-Paradigm Software Development Valentino Vranić Department of Computer Science and Engineering Faculty of Electrical Engineering.
Business Engineering Step-by-step procedures to design Notations that describe the design Heuristic solutions Measurable goals.
Sponsored by the U.S. Department of Defense © 2008 by Carnegie Mellon University page 1 Pittsburgh, PA The Implications of a Single Mobile Computing.
CERT Centers, Software Engineering Institute Carnegie Mellon University Pittsburgh, PA SEI is sponsored by the U.S. Department of Defense ©
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Pittsburgh, PA CMMI Acquisition Module - Page M5-1 CMMI ® Sponsored by the U.S. Department of Defense © 2005 by Carnegie Mellon University This.
Lectures 2 & 3: Software Process Models Neelam Gupta.
CMMI Overview Quality Frameworks. Slide 2 of 146 Outline Introduction High level overview of CMMI Questions and comments.
Systems Development Life Cycle
Introduction to Software Engineering Muhammad Nasir Agile Software Development(2)
S7-1 © 2001 Carnegie Mellon University OCTAVE SM Process 7 Conduct Risk Analysis Software Engineering Institute Carnegie Mellon University Pittsburgh,
DARE: Domain analysis and reuse environment Minwoo Hong William Frakes, Ruben Prieto-Diaz and Christopher Fox Annals of Software Engineering,
CMMI Overview Quality Frameworks.
CMMI Overview.
Systems Engineering Tool for Intelligent Transportation
SOFTWARE ENGINEERING CS-5337: Introduction
Presentation transcript:

Sponsored by the U.S. Department of Defense © 2004 by Carnegie Mellon University page 1 Pittsburgh, PA Integrating Domain Specific Modeling into the Production Method of a Software Product Line Gary Chastek John D. McGregor

© 2004 by Carnegie Mellon University page 2 Research Question How can product production be engineered to achieve the goals of a software product line?

© 2004 by Carnegie Mellon University page 3 Overview Brief introduction to product production in a software product line (SPL) Method engineering in a SPL Our use of domain-specific modeling (DSM) in product production SPL connections to domain modeling Summary

© 2004 by Carnegie Mellon University page 4 Software Product Line Development Organization Product Production Product 2 Product 3 Product 1 The focus of our work is on product production as a system that is engineered to have specified production qualities and predictable outputs. The goal is to reduce the risk to product line organizations by providing explicit techniques for strategizing and planning for product production. How can product development satisfy the organization’s goals for the software product line? Production Strategy What processes, models, and technologies can be used to ensure consistency across the core assets? Production Method Production Plan What does the product developer need to know to effectively utilize the core assets to develop products? Core Assets The core assets and product production system must be jointly engineered to achieve the organization’s goals for the software product line.

© 2004 by Carnegie Mellon University page 5 Goal-driven Method Engineering Method engineering is the systematic definition of software development methods. A method captures the processes, techniques, and models required to execute a software development effort. For example, an object-oriented software development method defines specific modeling notations, languages, and iterative processes that work together to support effective software development. Goal-driven means that method definition is driven by the specific goals to be achieved.

© 2004 by Carnegie Mellon University page 6 Method Engineering in a SPL The production method is derived from the production strategy and the production techniques are based on the specific product production goals For example if the production strategy includes the goal to enable domain knowledgeable individuals to build products the method -must support complete specification of a product using only domain vocabulary -must enable building a product automatically from that domain-based specification

© 2004 by Carnegie Mellon University page 7 Arcade Game Maker (AGM) Research SPL developed at Clemson 3 games (Brickles, Pong, and Bowling) 3 targets (PC, Wireless device, Customized) Third increment of AGM Customized “giveaways” Based on the domain expertise from the previous increments, used domain modeling approach Used MetaEdit+

© 2004 by Carnegie Mellon University page 8 DSM and SPLs Current connections: FODA developed at SEI Product Line Analysis based on feature modeling Understanding Relevant Domains (URD) is one of the 29 practice areas defined in the SEI SPL Framework URD used in the What to Build Pattern Our preliminary work using DSM in product production

© 2004 by Carnegie Mellon University page 9 Our Open Questions When is DSM the most appropriate technology for a software product line? When production goals relate to domain knowledgeable personnel? When the domain is sufficiently well specified? Are there explicit limitations when the method engineer should not choose DSM for the production method?

© 2004 by Carnegie Mellon University page 10 Summary Conclusion so far: SPLs should be engineered by explicitly setting product production goals considering product production early (before core asset design) focusing on domain knowledge merging these concerns Conjecture: SPLs might be better designed and implemented by domain modeling using a domain-specific language that supports an aspect-like mechanism for dealing with product variability