003defa96eb06759aa668c66c5d06520.ppt
- Количество слайдов: 17
HRL Model-Driven Product-Lines for Embedded Software and for Supply-Chain Companies Tali Yatzkar-Haham (tali@il. ibm. com) Julia Rubin, Mila Keren, Shiri Kremer-Davidson, Dolev Dotan, Itay Maman, Ofir Brukner April, 2009 Model Driven Engineering Technologies IBM Haifa Research Lab © 2009 IBM Corporation
HRL Software & System Product Line Engineering Companies are developing product lines - families of manufactured products Embedded Software is becoming increasingly large and complex Need to be customized to variety of physical devices, protocols, environments, languages 10 Nokia 2008 models Digital Printers Product Line 59 Printers Ford Models 2009 http//: autos. yahoo. com/ford/ However, today's software development tools mostly focus on individual products 2 © 2009 IBM Corporation
HRL What companies are doing today? § Today's tools mostly focus on individual products § Companies solutions: Clone-and-own – For each new product, make a copy of a similar product and modify – Leads to expensive duplication, divergence and merging – Very difficult to manage and maintain One-size-fits-all – For each new product, add internal code variability for product diversity – Leads to large and complex code – Very difficult to manage and maintain Development & maintenance of a product line using current tools become extremely complex 3 © 2009 IBM Corporation
HRL Software Product Line Engineering § A product line represents a family of manufactured products § A product line model explicitly captures the commonality and variability of a product line artifacts and their relations Software product lines refers to engineering techniques for creating a portfolio of similar software systems from a shared set of software assets Software Product Line Engineering makes it possible to § create software for different products § use variability to customize the software to each different product 4 © 2009 IBM Corporation
HRL PLE - Benefits Predictive versus opportunistic software reuse § Using software product line techniques, companies such as Nokia, GM, Phillips can improve time-to-market, engineering costs, portfolio size and defect rates by factors of 3 to 50 § Reduction of maintenance effort – Propagation of error corrections to all products § Better coping with evolution – Adding a new feature to the platform allows adding it to any derived product § Better predictability – for the time and effort required to introduce a new product § Increase automation using model-driven development 5 © 2009 IBM Corporation
HRL CE Case - Digital Printer Platform (Product Line) 59 Printers 6 6 © 2009 IBM Corporation
HRL Model Driven Development Environment for Software Product Lines § Supports component based modeling § Supports software product line development variability – Alternative & optional components, connections and interfaces § Based on a standard modeling framework (UML) and on the Rational toolset – UML Profile § Takes advantage of existing IBM Rational tooling capabilities: – – Editors Validation framework Transformation framework More… § With tooling to automate transformations from PL model to product models and build scripts 7 © 2009 IBM Corporation
HRL Architecture of the Main Printer Component in RSA Variability Support 8 © 2009 IBM Corporation
HRL Alternative variation point 9 Variability Support: 15 alternative connections © 2009 IBM Corporation
HRL From Product Line Model to Products Product Line Model Components + Variability Digital Printer Platform Run Validation Update, Add New Features Configuration Product SCX-4321 Model Product MJC-8700 Model Transformation 10 Transformation Product SCX-4321 Build Scripts Any other printer… Product MJC-8700 Build Scripts © 2009 IBM Corporation
HRL PL for Supply Chains Companies – So. C Case § It is uneconomic for either the semiconductor manufacturer or their customers to develop all the necessary software § Ecosystem of suppliers is developing for feature-specific services § A supply chain is a network that starts with raw material, transforms them into intermediate goods, and then into final product delivered to customers. § Each participant consumes products from one or more upstream suppliers, adds value, and supplies the results to downstream consumer 11 © 2009 IBM Corporation
HRL Supply Chain Scenario 1 C er Su pp lie r S 1 ed r ive l De to m sto u c Supplier S 2 De pli Sup liv e 3 er S re d to cu st om er C 2 Suppliers’ components In-house components 12 © 2009 IBM Corporation
HRL Supply Chain Use-Cases § Partial configuration of component’s variability options – – Can be delivered to different customers in a different form A customer can further configure the component A customer shouldn’t be aware of the options that are available to others Support configuration through a feature model tool Support product line of product lines This was achieved using staged configuration, with multiple transformations 13 © 2009 IBM Corporation
HRL Supply Chain Use-Cases § Selecting and gluing together components that are parts of the same product, but are provided by different suppliers, and thus have different implementation styles – Different component technology, different interfaces, different style to pass parameters Architectural Model 14 Supplier variability Generated customer model © 2009 IBM Corporation
HRL Technical - Glue Specification Screen Sots 15 © 2009 IBM Corporation
HRL Summary § Facilitate management and reuse of software components § Incorporate product line variability and support for mass customization § Support for component integration in supply-chain scenario § Increase automation using model-driven development 10 Nokia 2008 models Digital Printers Product Line 59 Printers 16 Ford Models 2009 http//: autos. yahoo. com/ford/ © 2009 IBM Corporation
HRL Thank You! Questions? 17 © 2009 IBM Corporation
003defa96eb06759aa668c66c5d06520.ppt