Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 1 Product Lines – Tools and Architecture – Session 1.

Slides:



Advertisements
Similar presentations
Object-Oriented Application Frameworks Much of the cost and effort stems from the continuous re- discovery and re-invention of core concepts and components.
Advertisements

Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 12, Software Life Cycle.
Applying the SOA RA Utah Public Safety ESB Project Utah Department of Technology Services April 10, 2008 Prepared by Robert Woolley.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
Software Reuse SEII-Lecture 28
Chapter 2 The Software Process
Data Model driven applications using CASE Data Models as the nucleus of software development in a Computer Aided Software Engineering environment.
Smart Grid - Cyber Security Small Rural Electric George Gamble Black & Veatch
IBM Business Consulting Services © Copyright IBM Corporation 2006 Unified Process March 27, 2006 Chris Armstrong.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
[ §4 : 1 ] 4. Requirements Processes II Overview 4.1Fundamentals 4.2Elicitation 4.3Specification 4.4Verification 4.5Validation Software Requirements Specification.
Software Product Line Engineering Andrew Burmester SE 4110 Section 2 4/14/11.
Software Product Line Architectures (SPLA) Nipun Shah
1 Requirements Elicitation Slinger Jansen. 2  1. Motivation  2. Requirements  3. Continuous RE  4. The RE Framework  7. Fundamentals of Goal Orientation.
The Re-engineering and Reuse of Software
Problems with reuse – Increased maintenance costs; lack of tool support; not-invented- here syndrome; creating, maintaining, and using a component library.
This chapter is extracted from Sommerville’s slides. Text book chapter
Developing Enterprise Architecture
Chapter : Software Process
DYNAMICS CRM AS AN xRM DEVELOPMENT PLATFORM Jim Novak Solution Architect Celedon Partners, LLC
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
® IBM Software Group © IBM Corporation IBM Information Server Understand - Information Analyzer.
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
Architecture Evaluation Evaluation Factors Evaluation by the designer Every time the designer makes a key design decision or completes a design milestone,
Business Systems Development SDLC and introduction to the Microsoft Solutions Framework Team and Process Models.
Integrating Security Design Into The Software Development Process For E-Commerce Systems By: M.T. Chan, L.F. Kwok (City University of Hong Kong)
Computer Systems & Architecture Lesson Software Architecture in the Future.
Introduction to MDA (Model Driven Architecture) CYT.
ETICS2 All Hands Meeting VEGA GmbH INFSOM-RI Uwe Mueller-Wilm Palermo, Oct ETICS Service Management Framework Business Objectives and “Best.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Design engineering Vilnius The goal of design engineering is to produce a model that exhibits: firmness – a program should not have bugs that inhibit.
OOPSLA workshop on Domain-Specific Visual Languages 1 Juha-Pekka Tolvanen, Steven Kelly, Jeff Gray, Kalle Lyytinen.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
INRIA - LaBRICharles Consel Jan-06 1 Domain-Specific Software Engineering Charles Consel Phoenix Research Group LaBRI /INRIA-Futurs January 2006.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
S&I Integration with NIEM (DRAFT) Standards Development Support June 8, 2011.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
Experiences from Representing Software Architecture in a Large Industrial Project Using Model Driven Development Andres Mattsson 1 Björn Lundell 2 Brian.
CSC480 Software Engineering Lecture 10 September 25, 2002.
1 / x CMMI Technical Solution Rob Vanden Meersche Dieter Van den Bulcke.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
National Cybersecurity Center of Excellence Increasing the deployment and use of standards-based security technologies Mid-Atlantic Federal Lab Consortium.
OOPSLA workshop on Domain-Specific Visual Languages 1 Juha-Pekka Tolvanen, Steven Kelly, Jeff Gray, Kalle Lyytinen.
Metadata By N.Gopinath AP/CSE Metadata and it’s role in the lifecycle. The collection, maintenance, and deployment of metadata Metadata and tool integration.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Dr. Ir. Yeffry Handoko Putra
TK2023 Object-Oriented Software Engineering
Pragmatics 4 Hours.
CIM Modeling for E&U - (Short Version)
The Open Group Architecture Framework (TOGAF)
Model-Driven Analysis Frameworks for Embedded Systems
Working Group 2 Evaluating national policies
Constructing MDA-based Application Using Rational XDE for .NET
Middleware, Services, etc.
EA Framework TOGAF is a framework - a detailed method and a set of supporting tools - for developing an enterprise architecture.
Chapter 13 Logical Architecture.
Software Architecture & Design
Presentation transcript:

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 1 Product Lines – Tools and Architecture – Session 1

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 2 Product Lines – Tools and Architecture – Session 1 To what extent can we expect the FLOSS world to be interested un variability modeling tools at the product level ? More interested at the user level (not for pure coders). Why ? Low trust on tools, as many modeling tools (open source) are immature or incomplete. Is that going to change in the future, once the tools become mature ? Nowaday, expensive propietary tools. Worlds (PL variability tools vs. comunities): 1- Wild open source community - not interested. 2- FLOSS community producing modeling tools should be interested 3- Industrial embedded development is much more organized and disciplined than "wild FLOSS" - coming from HW development, where reuse and modeling are natural. Interested. 4- When tools are part of the product, requirements from user point of view. The user defines the product, and gets more control on the product. Visual approach to the service definition. High interest.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 3 Product Lines – Tools and Architecture – Session 1 Is it possible to establish an open source community around variability modelling tools ? Interest is there, but needs to address the right people. Interest on configuration tools, release etc. Should we start from a community that shares interest on future architectures ? Start from policy makers ? Key point, linking the architects with similar visions in communities. If the discussion is too theoretical we should link tools with common architecture views, and in a practical and tangible way.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 4 Product Lines – Tools and Architecture – Session 1 Common architecture views will provide the baseline to use SPL tools against specific platforms. Linking tools with specific platforms is important. There are always architects, even if not called that way. Pros and cons for SPL tools in this context: CON: In some cases there is no clear separation between platform and application, PRO:...although plug-in schemas are predominant (meaning some level of abstraction). PRO: Trend, to have a thin platform layer, just for the plugin framework. CON: Less distinction between domain and middleware applications. Same architecture for infrastructure and domain software. Specific to embedded systems, two conflicting trends: CON: Low trust on code generation PRO: Support for modeling as natural activity PRO: As complexity grows, more abstraction required.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 5 Product Lines – Tools and Architecture – Session 1 Back to generic considerations: PRO: FLOSS should help to generate more trust on code, as it is transparent CON: Barrier, additional costs on modeling and source code generator maintenance. CON: Yet another barrier, companies don't want to support SPL tools that are open source (not the core business) PRO:...but buying a proprietary tool is another risk (married to the provider roadmap etc). CON: Backtracking (retrofitting the SPL) is another barrier (psichological in many cases). CON: More barriers, as using a tool for a long time creates issues as it gets outdated. Difficult to change legacy code and artifacts to a new tool. Economic issue of changing from tool to tool. PRO:...except in FLOSS cases ? (e.g. Topcased Airbus or tools with active and long lasting communities) PRO: a meta-model tool enforcing the architecture would be beneficial (Debian communty checks enforcement with special community-made tools) CON:...but has a con, resistance to modeling tools in general. It would be good to run a detailed diagnosis on pros and cons, to know better the situation.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 6 Product Lines – Tools and Architecture – Session 1 Tools seem appropiate at the user level (domain oriented) For users producing services and middleware (transversal across domain like UPnP and OSGi). Delivering services have topics not relevant at middleware level. MD approach - transforming at 2 levels. Two levels, people working on the application level, others at the infrastructure levels. In the architecture, where do we split application and infrastructure ? Which one is more relevant ? Do they need different tools ? In OSIRIS, 60% of code generated with a simple service from MOSKIKT (modeling) tailored to the specific application domain. ATL for M2M and MOFScript for M2Text. If split, we can make changes in one level (middleware) without affecting application layers. Different targets meaning different communities and possibly architectures. Some willing to invest more than others (application level,more).

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 7 Product Lines – Tools and Architecture – Session 1 Variability modeling: Is it a good idea to have separate languages for modeling variability or is it better to combine traditional models ? How to visualize variability and dependencies ? Alternatives: Tree views, UML with OCL,... Dependant on the users of the tools. Middleware could be done with UML (technical views) and users with tree views (application oriented). MoSiS proposes both approaches: metamodel as standard core and tools supporting separate models - Metacase proposing and integrated approach.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 8 Product Lines – Tools and Architecture – Session 1 How to deal with Trade-off analysis in RT embedded systems ? Trade-off analysis in RT embedded, taking in account non-functional constraints of the application in variability resolution time - related to enforcement tools. Guided choices - user resolves functional, system enforces non functional. Quality attributes - another view, transparency attributes of FLOSS is the best quality attribute ? No documentation, issue.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 9 Product Lines – Tools and Architecture – Session 2

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 10 Product Lines – Tools and Architecture – Session 1 Topic 1: SPL to Software Service Lines ?  An important part of the software in recent mobile phones is coming from outside. However, mobile phones (and smart devices) are not linked to the service business.  Controlling the variability in services, focusing in tools.  Service Lines. Blurred distinction between service and product.  Big players on the move Hans Petter / Jesús / Joseba / Jeajoon.

Frank van der Linden, Björn Lundell, Jesús Bermejo April 2, 2008, Dagstuhl-Seminar 08142/1 11 Product Lines – Tools and Architecture – Session 1 Topic 2: SPL in the wild.  External and open assets in a PL.  Decentralized structures, no core asset " internal team".  Convergence in architecture.  Product becomes a moving target.  The core of the issue is the shift of control to trust. Frank / Anders / Bjorn