Knowledge Engineering in Software Product Lines

Size: px
Start display at page:

Download "Knowledge Engineering in Software Product Lines"

Transcription

1 Knowledge Engineering in Software Product Lines Michael Schlick 1 and Andreas Hein 2 Abstract. A software product-line is a collection of products sharing a common set of that address the specific needs of a given business area [1]. The PRAISE project [2], partly funded by the European Commission under ESPRIT contract and pursued by Thomson-CSF/LCR (France), Robert Bosch GmbH (Germany), and the European Software Institute (Spain), has investigated product-line realisation and its assessment in industrial settings. A part of the project was dedicated to the validation and consolidation of proposed product-line technologies in real-scale industrial experiments. This paper presents an extract of the experimental results found by Bosch. The Bosch experiment has been located in the Car Periphery Supervision (CPS) domain. The focus during analysis was on feasibility of variability modelling with FODA [3]. The experiment has shown that the FODA model does not provide the necessary expressiveness to represent the different types of crosslinks that are obligatory to describe the domain. Therefore an extension was made to overcome this drawback. Moreover, it became clear that a lot of issues concerning the configuration of FODA models are far from being applicable. Here a solid theoretical foundation is needed first. This paper presents some basic findings. 1 INTRODUCTION During the last decade, product-line architectures have become increasingly important for companies that want to capitalise on their domain expertise by systematic reuse on a large scale. They divide software development into two distinct life cycles, one for domain and the other for application engineering [4]. The purpose of domain engineering is to model the commonality and variability between its members. Reusable assets are produced by domain engineering and then specialised during application engineering to derive final products. Requirements traceability has been recognised as being essential to reuse. Application engineering profits from traceability because the engineers understand why a system was built the way it was, and because they can better assess the impact of design modifications. Traceability is even more important for domain engineering where many decisions must be understood to be able to later derive applications from a common architecture and build components for reuse. The ESPRIT project PRAISE [2] addresses product-line engineering with a special focus on validation of methodological support for domain engineering. Commonality in a domain is represented by, whereas variability must be treated separately. FODA [3] explicitly addresses variability modelling and enables developers to see where variations occur and which decisions have to be made to create a special product. But existing FODA descriptions are not adequate for use in an 1 2 Robert Bosch GmbH, Corporate Research and Development FV/SLD, P.O. Box , D Frankfurt am Main michael.schlick@de.bosch.com Robert Bosch GmbH, Corporate Research and Development FV/SLD, P.O. Box , D Frankfurt am Main andreas.hein1@de.bosch.com industrial environment. Within PRAISE, two real-scale experiments have been performed to validate and consolidate product-line methodologies. One focus of the Bosch experiment has been on feasibility and validation of variability modelling as introduced by FODA. It has shown that the existing concepts are insufficient for applying them to real-world engineering tasks. This paper describes the necessary feature model extensions as well as the demands on tools that are to support the feature model configuration process. The Bosch experiment has been settled in the Car Periphery Supervision (CPS) domain. Actually several business units in the automotive equipment sector produce and develop applications that extensively use information about objects located in the car s periphery. A number of sensors detect obstacles and provide the data needed for further evaluation. Depending on the required measurements, different sensor technologies, namely radar or ultrasonic sensors, can be used. Other types of sensor data are not included in the domain definition at present, although they might be of interest to the domain in the future. Applications that supervise the car periphery offer services such as Backing Aid, Blind Spot Detection, Pre-Crash Sensing and Adaptive Cruise Control. Today these applications are built as separate systems with the consequence that each one needs its own set of sensors, controller hardware and, last but not least, software architecture and basic sensor-control services. Sensor applications overlap in terms of their on object location information. Due to the fact that only a restricted number of sensors can be positioned on the vehicle, e. g. in the bumper, shared usage of sensor signals will be inevitable in the near future. Moreover, a reduction of the number of sensors needed does of course reduce the total price of a system. A precondition for sensor sharing is that all participating applications have a common software infrastructure. This infrastructure will be shaped by the architecture of the Car Periphery Supervision domain. All applications in the CPS domain evaluate sensor data, while simultaneously performing diagnosis and consistency checks. The corresponding services can be characterised by a common architecture with parameterisation or instantiation of its generic parts. The architecture s implementation should provide a platform electronic control unit as an expandable basis for the instantiation of multiple, possibly co-operating, applications in the future. In the following, related work is presented first. Then the software product line approach is introduced, and an overview of the corresponding process and the different tasks is provided. After that we describe the expressiveness needed for a knowledge representation system that is to support product line engineering. The required reasoning is stated explicitly. Next, our actual work is presented. Finally, the major points are summarised in the conclusion chapter. 8

2 2 RELATED WORK The feature-oriented concept of the FODA method [3] places special emphasis on the identification and concise representation of commonality and variability in a domain. A feature is understood as a prominent or distinctive user-visible aspect, quality or characteristic of a software system or systems. Features can be related to another by several types of links. Together the form the feature tree which is used to parameterise all other models. Use case modelling has been used as a high-level functional description from the viewpoint of application families in the Reuse-Driven Software Engineering Business (RSEB) [5]. The approach introduces the notions of variation points and variants into use cases and analysis types. FeatuRSEB [6] and FODAcom [7] contribute to domain analysis in that they relate variability management in feature and use case modelling. Our work draws on these approaches and extends them with procedures and experiences from our experiment. Requirements templates, as in FODAcom, are one main point within our work. We are using them for derivation starting from feature configurations. An approach of applying feature modelling for controlling code generation is described by [8]. Over and above this, we are trying to apply feature modelling to software design generation. In [9] an approach is described that goes even beyond focusing on pure product lines or product families towards building product populations. Our application domain can be situated in between these two categories. 3 DOMAIN ANALYSIS ASSETS analysis assets are a prerequisite for coping with the complexity of software systems in the long run. Especially they are the starting point for the derivation of new products from existing knowledge. Information of the models on the product level is generalised on the domain level in a way that enables developers to see where variations occur and which decisions have to be made to create a special product. As multiple products and the domain level are involved, traceability is of major concern. Traces must be established from the product models to the domain models, and between the different models of each level. Furthermore, relationships between the elements within one model may have special semantics, such as consists of, alternative, etc. These model-specific relationships must also be adequately represented. analysis for CPS primarily consists of completing the, context, and feature models. The model focuses on the commonalities between domain products, the context model defines the interfaces to other domains, while the feature model captures variability within the domain. One goal of domain analysis is to build an abstract model that can be used as a starting point for the derivation of specific product variants. The feature model is predestined to play this role, as it captures the decisions that have to be made to determine the individual characteristics of a system. Application derivation begins with eliminating the domain variability step by step by instantiating a subset of all potential. Hence we get a complete specification of one single product variant. The overall construction process of the and the feature model, depicted in Figure 1, starts with modelling for every single product used to create the domain. Product may also include variability when they specify multiple variants. A requirement addresses variability through. Each requirement that contains can be seen as a requirement template. These templates are further refined by specifying parameter types and values. The combined texts and parameter definitions of the product or the domain form a unit, the model. The parameter definitions section essentially binds the that state commonality and that state variability. Derivation Documentation Usage New product New product values Requirements Model Features Variabilities Commonalities dictionary links to wherever a domain word is introduced Figure 1. Building reusable domain assets In the next step, all product are abstracted to build the of the domain. At this point a common domain language emerges. Subsequently, a domain dictionary that defines the vocabulary used by experts and needed to understand the domain and related products and domains is maintained during all phases of the product-line development process. To be able to understand where the abstractions come from, documentation links are established between corresponding elements on the application and domain levels. feature modelling usually begins after some modelling. The text structure and are used to get an initial feature model that is then refined. The results from a feature modelling phase are carried back to the model. This domain analysis cycle continues until the set of product is sufficiently complete. An open question is where to stop analysis and where to begin architecture modelling. Features are modelled as nodes of a tree. Basically each node corresponds to a parameter. So the feature tree describes the different possible values that can be assigned to each particular parameter. Besides the basic tree structure we must introduce additional links between the nodes of the feature model. These links are necessary to express additional constraints between the different of the tree. The particular constraints must be Level Application Level 9

3 documented so that it is possible to comprehend why, e. g., one feature requires or excludes another. Traceability links are established from each domain requirement to the it contains, and from the to the corresponding nodes of the feature tree. During the derivation process these links in turn are used to generate product specifications by navigating from the nodes of the feature model via the to the. After domain analysis is complete, the results (i. e. the models) must be validated through application derivation. It should be possible to satisfactorily specify of the products that have been used as the basis for the domain models. It is unlikely that the derivation will produce exact copies of the product models. Depending on the techniques employed, the text of a derived product is more or less similar to the text in the domain. The associated document contains selected values for all that have been covered during derivation. In order to completely derive an application, all variability must be resolved to final values. Nevertheless, variable products can be derived through partial derivation which leaves some selections open. In summary, feature modelling based on the FODA method is advantageous in several ways: Control over variability. All variants of applications in the domain and their relationships are represented in a comprehensive and understandable form. Reuse of. Generation of specifications can be partially automated by the use of templates instantiated with different variants. Configuration support. As are linked to modelling of later development phases, application derivation through selection of variants combinations can be used to support configuration right up to product code. [10] Sales support. Sales representatives have a high-level means to discuss product trade-offs with customers. Support for new development. When a new product is to be developed, feature modelling simplifies the analysis of how it differs from existing ones. 4 BASIC KNOWLEDGE ENTITIES FOR PRODUCT-LINE ENGINEERING Three modelling primitives are used to describe the different and their relations within the tree structure of the feature model; aggregation/decomposition, generalisation/ specialisation, and parameterisation. Aggregation is the abstraction of a collection of units, decomposition its refinement into the constituent units. Generalisation is the abstraction of the commonalities among a collection of units into a new conceptual unit, specialisation its refinement by incorporating distinguishing details. Finally, parameterisation is a development technique to adapt generic components in many different ways by replacing the of a component with values. In addition, two composition links enable specific relationships between that are not yet covered. Applicability of these links is restricted to optional and alternative. The first one is the requires-relationship indicating that a certain feature can only be selected if the feature it is connected with is selected, too. This semantics can be further refined by specifying an alternatives-relationship between the required. The second type of link is the excludes-relationship meaning that not both of the related can be selected in the same configuration. Nevertheless, the Bosch experiment has shown that extensions of FODA are needed to represent the complexity of interconnections in the CPS domain. These extensions mainly are concerned with links that enable integrated modelling of several tree structures. However, the extended model has to introduce graph structuring. FODA already broke the single tree structure by introducing undirected constraints between. But the required graph structures must additionally offer the possibility to distinguish between directed and undirected crosslinks, so that the directed relationships can be used to prevent automatic selection of all connected to a common feature during application derivation. Of course, directed and undirected links must not connect the same at the same time. f4 f2 f5 f10 f6 f1 f11 Figure 2. Sample feature tree Figure 2 shows an example of an extended feature model. The feature tree consists of 11. On the top level, f1 is decomposed into a mandatory feature f2 and an optional feature f3. F2 consists of the mandatory leaf f4 and f5 and the optional compound feature f6. The optional feature f3 is specialised by three exclusive alternatives f7, f8, and f9. In the first structure, f6 acts as an optional compound feature consisting of the two mandatory f10 and f11. In the second structure, f6 is a root node (like f1 in the first structure). It plays the role of a mandatory alternative with the two exclusive specialisations f7 and f8. Application derivation is supposed to be mainly performed along the primary structure. For this reason, only the secondary structure employs directed links for alternative representation. In this way the selection of f7 or f8 does not automatically cause the selection of f6. To represent product line and feature models, we therefore need the following expressiveness: Generic. It should be possible to define a generic feature in the domain model that can be instantiated several times if more than one instance of that feature is needed in the derived application model. Feature attributes. For defining a feature in more detail it must be possible to describe its properties by attributes. Specialisation / Is-A links. Alternatives can be represented by specialisation of a feature, assuming that the different sub- are disjunctive. Has Parts /Is-Part-Of links. To represent mandatory and optional sub- we must represent part-whole relations. Moreover, it must be possible to define a cardinality for these links. The cardinality is restricted to the interval [0 1]. f7 f3 f8 f9 10

4 Documentation links. To be able to explain the choices it must be possible to link the feature descriptions to a documentation text. Hence, to represent we basically need two hierarchies; taxonomy and partonomy. If we want to provide multiple tree structures, we have to support multiple inheritance. It must be pointed out that multiple inheritance is not indispensable. It can be replaced via expressive constraints. Nevertheless, there is a high risk for combinatorial explosion. The different tools for software engineering and management that are available on the market do not support the product line idea. Existing tools do not provide a knowledge representation that supports the reuse of nor do they support the reasoning that is necessary for application derivation. Our experiment has shown that applying the software product line approach to a real-world problem is not possible if appropriate tools are missing. This is especially due to the following characteristics of our problem: A high degree of variability with respect to lines of code. A high amount of secondary links within the feature model. Within the PRAISE project we spent a lot of time on modelling the domain and. Especially we tried to encapsulate the variability and to reduce the number of secondary links by adequate representation, but we could not achieve a significant improvement. Consequently, a high degree of variability and a substantial amount of constraints between the single variants seem to be typical for embedded real time software products and especially for sensor fusion projects. Nevertheless, we think that the product line approach is the appropriate technology to build the software for those sensor fusion products. So we have to find a better way to represent and reason about our domain models. Knowledge based systems and especially configuration systems may be a solution to overcome the shortcomings of the management tools. 5 REASONING FOR APPLICATION DERIVATION One possibility to handle the application derivation problem would be to use a configuration system for the knowledge representation and the needed reasoning. Due to the hierarchical structure of our problem, the hierarchical structure of our model, hierarchy oriented configuration techniques can be applied. One shell that does provide the necessary modelling means is Konwerk [11]. There the different configuration objects can be modelled within a taxonomy and a partonomy. Moreover, Konwerk offers constraints to model the parts of the secondary structure that cannot be represented in hierarchies due to their restriction to simple inheritance. Furthermore, Konwerk provides the necessary reasoning services for deriving the product from the domain model. These reasoning services can be described as a navigation in the different hierarchies, called structure-oriented configuration, combined with additional constraint propagation. An important issue is that the system can compute whether the configuration is finished, hence whether a complete description of a product has been made. This capability is based on the fact that in Konwerk it is assumed that an instance of a configuration object has finally to be an instance of a leaf or concrete concept of the taxonomy. Based on the elementary reasoning services a configuration strategy can be defined that steers the configuration process. Konwerk like some other configuration systems uses a frame language as underlying knowledge representation formalism [12]. The problem about those configuration systems is that they are based on the closed world assumption; they assume that the knowledge they reason about is complete with respect to the problem. This assumption is not suitable for our problem. Within software product line domain engineering we cannot build models that are complete for all parts of our problem. E. g., in the CPS domain we have complete knowledge about the and of the sensor technology, but we cannot model complete knowledge about the human machine interface of CPS products, because this knowledge is very customer-specific. It must be possible to represent and to reason about incompleteness, and it must be possible to provide a mixed reasoning. During derivation it must be possible to configure a text and check its completeness with respect to the given knowledge base. Furthermore, it must be possible to compute the parts that have to be further specialised by additional. In the next enhancement of the domain knowledge base, the relevance of these additional for further projects can then be checked, and they can be integrated into the domain model. One possibility to overcome the shortcoming of the closed-world assumption is to introduce the explicit notation of concrete and abstract. If during derivation we have created an instance of an abstract feature that could not be further specialised by an instance of a concrete feature, we know that this feature is still incomplete and has to be further specialised independently of the domain model. In this case, variability is represented by under-specification. Another possibility would be to employ a knowledge representation formalism that is able to reason under the open world assumption, e. g. description logics. Configuration systems can be build in description logics [13]. Furthermore, it is possible to provide reasoning under different assumptions about the world in description logics. Nevertheless, it must be proven that a description logics approach is not oversized. 6 FUTURE WORK Based on the 4+1 View Model of Architecture [14] we are currently modelling the CPS domain architecture using UML [15]. Like in modelling we have to represent variability. Furthermore we must guarantee the traceability from the feature model to the different parts of the architecture. Again we lack sufficient tool support as even the underlying knowledge representation and reasoning have not been described yet. Nevertheless, the problems seem to be similar. Based on our experience with OMOS [16] we think that it is appropriate to model variability in logical architectures using inheritance, and to apply structure-oriented configuration methods for application derivation. In the next step we are going to describe the overall expressiveness and reasoning services that are needed for the software product line approach, so that we will finally be able to identify a corresponding knowledge representation formalism. Consequently we must find an adequate tool that we can integrate into our tool chain as basic knowledge representation and reasoning mechanism. Our goal is to compute the effort needed to build a product already while defining its. One possibility to 11

5 achieve this is to use the type of configuration problem (routine, innovative, or creative configuration) [17] as an indicator for the complexity of the software engineering task. 7 CONCLUSION We have shown that for applying the software product line approach, and for domain analysis in particular, strong tool support is needed. Current tools are not sufficient as they lack basic knowledge representation and reasoning capacities. We have proposed appropriate knowledge representation and configuration systems to fill this gap. Finally, systems that can deal with incomplete knowledge have been considered especially useful. ACKNOWLEDGEMENTS We would like to thank our colleagues from the Robert Bosch GmbH business units for their contribution to models realisation, and our PRAISE project partners Thomson-CSF/LCR, and ESI for the technical discussions. REFERENCES [1] European Software Institute: Product-line architectures and technologies to manage them. ESI-1998-RECORD-ED1, [2] ESPRIT Project 28651: PRAISE Product-line Realisation and Assessment in Industrial Settings. IT RTD Project Programme, 1998, Reuse/Praise/. [3] Kang, Kyo C., Cohen, Sholom G., Hess, James A., Novak, William E., and Peterson, A. Spencer: Feature-Oriented Analysis (FODA). Feasibility Study. Technical Report CMU/SEI-90-TR-21, Carnegie Mellon University, Software Engineering Institute, [4] Lalanda, P.: Specific Software Architecture. CEC deliverable P28651-D2.1, Esprit project PRAISE, Projects/Reuse/Praise/. December [5] Jacobson, I., Griss, M., and Jonsson, P.: Software reuse architecture, process and organization for business success. Addison Wesley Longman, 1997, ISBN [6] Griss, M. L., Favaro, J., and d Alessandro, M.: Integrating feature modeling with the RSEB. Proceedings of the 5th International Conference on Software Reuse (ICSR 98), IEEE Computer Society Press, Victoria BC, Canada, June 2-5, 1998, ISBN [7] Vici, Alessandro Dionisi, Argentieri, Nicola, Mansour, Azza, d Alessandro, Massimo, and Favaro, John: FODAcom: An Experience with Analysis in the Italian Telecom Industry. Proceedings of the 5th International Conference on Requirements Engineering (ICRE 98), IEEE Computer Society Press, Victoria BC, Canada, June 2-5, 1998, ISBN [8] Czarnecki, K., and Eisenecker, Ulrich W.: Synthesizing objects. In: Proceedings of the 13th European Conference on Object- Oriented Programming (ECOOP 99), Springer, [9] Van Ommering, R.: Beyond Product Families: Building a Product Population. In Proceedings of the Third International Workshop on Software Architectures for Product Families (IWSAPF-3), Universidad de Las Palmas de Gran Canaria, Spain, March [10] Weiss, David M., and Lai, Chi Tau Robert: Software Product- Line Engineering. A Family-Based Software Development Process. Addison-Wesley, [11] Günter, A.: Wissensbasiertes Konfigurieren, infix, Sankt Augustin, Germany 1995 [12] Cunis, R.: Das 3-stufige Frame-Repräsentationsschema - eine mehrdimensional modulare Basis für die Entwicklung von Expertensystemkernen. Infix, St. Augustin, Germany [13] McGuinness, D., and Wright, J.: An Industrial-Strength Description Logic-Based Configuration Platform. In IEEE Intelligent Systems, July/August 1998, pp [14] Kruchten, P.: The 4+1 view model of architecture. In: IEEE Software 12 (6), November 1995, pp [15] Egyed, A.: Integrating architectural views in UML. Technical Report USC/CSE-99-TR-514, University of Southern California, Center for Software Engineering, [16] Hermsen, W., and Neumann, K. J. : Application of the Object- Oriented Modeling Concept OMOS for Signal Conditioning of Vehicle Control Units SAE International Congress and Exposition. Detroit/U.S.A., [17] Gero, J.: Design Prototyps: A Knowledge Representation Scheme for Design. AI Magazine, 11(4), 1990, pp [18] Lalanda, P.: Product-line Software Architecture. CEC deliverable P28651-D2.2, Esprit project PRAISE, Reuse/Praise/. March [19] Vinga-Martins, R., and Süßlin, S.: Requirements traceability. CEC deliverable P28651-D2.3, Esprit project PRAISE, March [20] Hein, A., MacGregor, J., Schlick, M., and Vinga-Martins, R.: Lessons Learned. CEC Deliverable P28651-D3.4, Esprit Project PRAISE, Reuse/Praise/. March [21] Vinga-Martins, R.: Requirements traceability for product-lines. Workshop on Object Technology for Product-line Architectures, ECOOP 99, [22] Hein, A., Schlick, M., and Vinga-Martins, R.: Applying feature models in industrial settings. To Appear In: Proceedings of the First Software Product Line Conference, August , 2000, Denver, Colorado. 12

Generic Modeling using UML extensions for variability

Generic Modeling using UML extensions for variability Generic Modeling using UML extensions for variability Intershop Research Intershop, Jena Matthias Clauß Software Engineering Group Dresden University of Technology M.Clauss@intershop.com September 14,

More information

Feature-Oriented Domain Analysis (FODA) Feasibility Study

Feature-Oriented Domain Analysis (FODA) Feasibility Study Feature-Oriented Domain Analysis (FODA) Feasibility Study Kyo C. Kang, Sholom G. Cohen, James A. Hess, William E. Novak, A. Spencer Peterson November 1990 Quick recap of DE terms Application: A system

More information

Modeling variability with UML

Modeling variability with UML Modeling variability with UML Matthias Clauß Intershop Research Software Engineering Group Intershop, Jena Dresden University of Technology Matthias.Clauss@gmx.de Keywords: product families, domain modeling,

More information

A Lightweight Language for Software Product Lines Architecture Description

A Lightweight Language for Software Product Lines Architecture Description A Lightweight Language for Software Product Lines Architecture Description Eduardo Silva, Ana Luisa Medeiros, Everton Cavalcante, Thais Batista DIMAp Department of Informatics and Applied Mathematics UFRN

More information

MODELLING COMPOSITIONS OF MODULAR EMBEDDED SOFTWARE PRODUCT LINES

MODELLING COMPOSITIONS OF MODULAR EMBEDDED SOFTWARE PRODUCT LINES MODELLING COMPOSITIONS OF MODULAR EMBEDDED SOFTWARE PRODUCT LINES Wolfgang Friess AUDI AG wolfgang.friess@audi.de Julio Sincero University Erlangen-Nuernberg sincero@informatik.uni-erlangen.de Wolfgang

More information

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Arnon Sturm Department of Information Systems Engineering Ben-Gurion University of the Negev, Beer Sheva 84105, Israel

More information

Style-specific techniques to design product-line architectures

Style-specific techniques to design product-line architectures Style-specific techniques to design product-line architectures Philippe Lalanda Thomson-CSF Corporate Research Laboratory Phone: 33 1 69 33 92 90 Email: lalanda@thomson-lcr.fr Domaine de Corbeville 91404

More information

Integrating Domain Specific Modeling into the Production Method of a Software Product Line

Integrating Domain Specific Modeling into the Production Method of a Software Product Line Integrating Domain Specific Modeling into the Production Method of a Software Product Line Gary J. Chastek Software Engineering Institute John D. McGregor Clemson University Introduction This paper describes

More information

Software Architecture Recovery based on Dynamic Analysis

Software Architecture Recovery based on Dynamic Analysis Software Architecture Recovery based on Dynamic Analysis Aline Vasconcelos 1,2, Cláudia Werner 1 1 COPPE/UFRJ System Engineering and Computer Science Program P.O. Box 68511 ZIP 21945-970 Rio de Janeiro

More information

Quality-Driven Architecture Design Method

Quality-Driven Architecture Design Method Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper

More information

Domain Engineering And Variability In The Reuse-Driven Software Engineering Business.

Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. OBM 7 -draft 09/02/00 1 Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. Martin L. Griss, Laboratory Scientist, Hewlett-Packard Laboratories, Palo Alto, CA. Effective

More information

Domain-Driven Development with Ontologies and Aspects

Domain-Driven Development with Ontologies and Aspects Domain-Driven Development with Ontologies and Aspects Submitted for Domain-Specific Modeling workshop at OOPSLA 2005 Latest version of this paper can be downloaded from http://phruby.com Pavel Hruby Microsoft

More information

An Integrated Model for Requirements Structuring and Architecture Design

An Integrated Model for Requirements Structuring and Architecture Design AWRE 2002 19 An Integrated Model for Requirements Structuring and Architecture Design Abstract Juha Savolainen, Tuomo Vehkomäki Nokia Research Center {Juha.Savolainen Tuomo.Vehkomäki}@nokia.com Mike Mannion

More information

Information Hiding and Aspect-Oriented Modeling

Information Hiding and Aspect-Oriented Modeling Information Hiding and Aspect-Oriented Modeling Wisam Al Abed and Jörg Kienzle School of Computer Science, McGill University Montreal, QC H3A2A7, Canada Wisam.Alabed@mail.mcgill.ca, Joerg.Kienzle@mcgill.ca

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

An Approach to Software Component Specification

An Approach to Software Component Specification Page 1 of 5 An Approach to Software Component Specification Jun Han Peninsula School of Computing and Information Technology Monash University, Melbourne, Australia Abstract. Current models for software

More information

Model Diversity and Variability

Model Diversity and Variability Model Diversity and Variability T he large number of possible vehicle functions is now a fundamental characteristic of the automotive industry. Of all the Mercedes Benz C class cars manufactured in 2006

More information

Comparative Analysis of Architectural Views Based on UML

Comparative Analysis of Architectural Views Based on UML Electronic Notes in Theoretical Computer Science 65 No. 4 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 12 pages Comparative Analysis of Architectural Views Based on UML Lyrene Fernandes

More information

Overview of Sentence Order Reference Document Development Process

Overview of Sentence Order Reference Document Development Process Overview of Sentence Order Reference Document Development Process Scott Came Justice Integration Solutions, Inc. September 14, 2004 Purpose The purpose of this document is to outline the process/methodology

More information

1 Executive Overview The Benefits and Objectives of BPDM

1 Executive Overview The Benefits and Objectives of BPDM 1 Executive Overview The Benefits and Objectives of BPDM This is an excerpt from the Final Submission BPDM document posted to OMG members on November 13 th 2006. The full version of the specification will

More information

Usually software system variants, developed by Clone-and-own approach, form

Usually software system variants, developed by Clone-and-own approach, form ABSTRACT Usually software system variants, developed by Clone-and-own approach, form a starting point for building Software Product Line. To migrate software systems which are deemed similar to a product

More information

Category Theory in Ontology Research: Concrete Gain from an Abstract Approach

Category Theory in Ontology Research: Concrete Gain from an Abstract Approach Category Theory in Ontology Research: Concrete Gain from an Abstract Approach Markus Krötzsch Pascal Hitzler Marc Ehrig York Sure Institute AIFB, University of Karlsruhe, Germany; {mak,hitzler,ehrig,sure}@aifb.uni-karlsruhe.de

More information

JOURNAL OF OBJECT TECHNOLOGY Online at Published by ETH Zurich, Chair of Software Engineering. JOT, 2002

JOURNAL OF OBJECT TECHNOLOGY Online at  Published by ETH Zurich, Chair of Software Engineering. JOT, 2002 JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering. JOT, 2002 Vol. 1, No. 2, July-August 2002 Representing Design Patterns and Frameworks in UML Towards

More information

1 Version management tools as a basis for integrating Product Derivation and Software Product Families

1 Version management tools as a basis for integrating Product Derivation and Software Product Families 1 Version management tools as a basis for integrating Product Derivation and Software Product Families Jilles van Gurp, Christian Prehofer Nokia Research Center, Software and Application Technology Lab

More information

Svamp An Integrated Approach to Modeling Functional and Quality Variability

Svamp An Integrated Approach to Modeling Functional and Quality Variability Svamp An Integrated Approach to Modeling Functional and Quality Variability Mikko Raatikainen, Eila Niemelä, Varvana Myllärniemi, Tomi Männistö Helsinki University of Technology (TKK), VTT Technical Research

More information

Carrying Ideas from Knowledge-Based Configuration to Software Product Lines. Tiihonen, Juha Tapani.

Carrying Ideas from Knowledge-Based Configuration to Software Product Lines. Tiihonen, Juha Tapani. https://helda.helsinki.fi Carrying Ideas from Knowledge-Based Configuration to Software Product Lines Tiihonen, Juha Tapani Springer International Publishing AG 2016-05 Tiihonen, J T, Raatikainen, M, Myllärniemi,

More information

An Ontological Approach to Domain Engineering

An Ontological Approach to Domain Engineering An Ontological Approach to Domain Engineering Richard de Almeida Falbo, Giancarlo Guizzardi, Katia Cristina Duarte International Conference on Software Engineering and Knowledge Engineering, SEKE 02 Taehoon

More information

Pattern-Oriented Development with Rational Rose

Pattern-Oriented Development with Rational Rose Pattern-Oriented Development with Rational Rose Professor Peter Forbrig, Department of Computer Science, University of Rostock, Germany; Dr. Ralf Laemmel, Department of Information Management and Software

More information

Rapid Prototyping with APICES

Rapid Prototyping with APICES Rapid Prototyping with APICES Ansgar Bredenfeld GMD Institute for System Design Technology D-53754 Sankt Augustin, Germany bredenfeld@gmd.de http://set.gmd.de/apices APICES is a tool for very rapid development

More information

Product Line Evolution Using Source Packages

Product Line Evolution Using Source Packages Product Line Evolution Using Source Packages Arie van Deursen Merijn de Jonge CWI P.O. Box 94079, 1090 GB Amsterdam, The Netherlands http://www.cwi.nl/ {arie,mdejonge} Abstract We present a language-independent

More information

Definition and Documentation of Software Architectures David M. Weiss, David Lorge Parnas. Abstract

Definition and Documentation of Software Architectures David M. Weiss, David Lorge Parnas. Abstract Definition and Documentation of Software Architectures David M. Weiss, David Lorge Parnas Abstract This paper discusses the work of the software architect by describing a software architect s concerns

More information

Towards the integration of security patterns in UML Component-based Applications

Towards the integration of security patterns in UML Component-based Applications Towards the integration of security patterns in UML Component-based Applications Anas Motii 1, Brahim Hamid 2, Agnès Lanusse 1, Jean-Michel Bruel 2 1 CEA, LIST, Laboratory of Model Driven Engineering for

More information

VICCI. DeltaEcore. A Model-Based Delta Language Generation Framework. Christoph Seidl Ina Schaefer Uwe Aßmann

VICCI. DeltaEcore. A Model-Based Delta Language Generation Framework. Christoph Seidl Ina Schaefer Uwe Aßmann VICCI Visual and Interactive Cyber-Physical Systems Control and Integration DeltaEcore A Model-Based Delta Language Generation Framework Christoph Seidl Ina Schaefer Uwe Aßmann TurtleBot Driver: A Software

More information

Tracing Software Product Line Variability From Problem to Solution Space

Tracing Software Product Line Variability From Problem to Solution Space Tracing Software Product Line Variability From Problem to Solution KATHRIN BERG, JUDITH BISHOP University of Pretoria and DIRK MUTHIG Fraunhofer IESE The management of variability plays an important role

More information

Run-Time Variability in Domain Engineering for Post-Deployment of User-Centric Software Functional Completion

Run-Time Variability in Domain Engineering for Post-Deployment of User-Centric Software Functional Completion Run-Time Variability in Domain Engineering for Post-Deployment of User-Centric Software Functional Completion 1st Year Ph.D. Report November 2003 Alexandre Manuel Tavares Bragança Alexandre.Braganca@i2s.pt

More information

Minsoo Ryu. College of Information and Communications Hanyang University.

Minsoo Ryu. College of Information and Communications Hanyang University. Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based

More information

Software Reuse and Component-Based Software Engineering

Software Reuse and Component-Based Software Engineering Software Reuse and Component-Based Software Engineering Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Software Reuse Components CBSE (Component-Based Software Engineering) Domain Engineering

More information

Modeling Variability for Object-Oriented Product Lines

Modeling Variability for Object-Oriented Product Lines Modeling Variability for Object-Oriented Product Lines Matthias Riebisch, Detlef Streitferdt, Ilian Pashov Technical University Ilmenau, Max-Planck-Ring 14, 98684 Ilmenau, Germany {matthias.riebisch detlef.streitferdt

More information

Chapter 8: Enhanced ER Model

Chapter 8: Enhanced ER Model Chapter 8: Enhanced ER Model Subclasses, Superclasses, and Inheritance Specialization and Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Modeling of UNION

More information

efmea RAISING EFFICIENCY OF FMEA BY MATRIX-BASED FUNCTION AND FAILURE NETWORKS

efmea RAISING EFFICIENCY OF FMEA BY MATRIX-BASED FUNCTION AND FAILURE NETWORKS efmea RAISING EFFICIENCY OF FMEA BY MATRIX-BASED FUNCTION AND FAILURE NETWORKS Maik Maurer Technische Universität München, Product Development, Boltzmannstr. 15, 85748 Garching, Germany. Email: maik.maurer@pe.mw.tum.de

More information

Rose/Architect: a tool to visualize architecture

Rose/Architect: a tool to visualize architecture Rose/Architect: a tool to visualize architecture Alexander Egyed University of Southern California Center for Software Engineering Los Angeles, CA 90089-0781, USA aegyed@sunset.usc.edu Philippe B. Kruchten

More information

Towards Better Support for Pattern-Oriented Software Development

Towards Better Support for Pattern-Oriented Software Development Towards Better Support for Pattern-Oriented Software Development Dietrich Travkin Software Engineering Research Group, Heinz Nixdorf Institute & Department of Computer Science, University of Paderborn,

More information

Object Design II: Design Patterns

Object Design II: Design Patterns Object-Oriented Software Engineering Using UML, Patterns, and Java Object Design II: Design Patterns Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen A Game: Get-15 The game

More information

Software Language Engineering of Architectural Viewpoints

Software Language Engineering of Architectural Viewpoints Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr

More information

Integrating Quality Modeling with Feature Modeling in Software Product Lines

Integrating Quality Modeling with Feature Modeling in Software Product Lines Integrating Quality ing with ing in Software Product Lines Joerg Bartholdt Corporate Technology CT SE 2 Siemens AG 8739 Munich, Germany joerg.bartholdt@siemens.com Marcel Medak Computer Science Dept. Aalen

More information

Requirements Engineering for Enterprise Systems

Requirements Engineering for Enterprise Systems Association for Information Systems AIS Electronic Library (AISeL) AMCIS 2001 Proceedings Americas Conference on Information Systems (AMCIS) December 2001 Requirements Engineering for Enterprise Systems

More information

Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures

Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures Dietmar Schreiner 1,2 and Karl M. Göschka 1 1 Vienna University of Technology Institute of Information

More information

A customizable approach to full lifecycle variability management

A customizable approach to full lifecycle variability management Science of Computer Programming 53 (2004) 259 284 www.elsevier.com/locate/scico A customizable approach to full lifecycle variability management Klaus Schmid, Isabel John Fraunhofer Institute for Experimental

More information

TITUS A Graphical Design Methodology for Embedded Automotive Software

TITUS A Graphical Design Methodology for Embedded Automotive Software TITUS A Graphical Design Methodology for Embedded Automotive Software Ulrich Freund, Alexander Burst, ETAS GmbH Stuttgart Abstract Vehicle body electronic software has reached a level of complexity and

More information

Mapping Software Product Line Features to Unmanned Aerial Vehicle Models

Mapping Software Product Line Features to Unmanned Aerial Vehicle Models Mapping Software Product Line Features to Unmanned Aerial Vehicle Models Vanderson H. Fragal, Edson A. Oliveira Junior, Itana M. S. Gimenes Informatics Department State University of Maringá Maringá-PR,

More information

Test requirements in networked systems

Test requirements in networked systems Test requirements in networked systems Jürgen Klüser, Vector Informatik GmbH The use of CAN with J1939 or CANopen based higher layers leads to cost efficient and flexible solutions, but together with a

More information

HyperFrame - A Framework for Hypermedia Authoring

HyperFrame - A Framework for Hypermedia Authoring HyperFrame - A Framework for Hypermedia Authoring S. Crespo, M. F. Fontoura, C. J. P. Lucena, D. Schwabe Pontificia Universidade Católica do Rio de Janeiro - Departamento de Informática Universidade do

More information

Data Points Structure Explanatory Documentation

Data Points Structure Explanatory Documentation Data Points Structure Explanatory Documentation Version: 0.2 (Public Draft) Publication date: 2009-12-08 Abstract This document contains a description of an approach for the explicit, consistent and coherent

More information

Introduction to the RAMI 4.0 Toolbox

Introduction to the RAMI 4.0 Toolbox Introduction to the RAMI 4.0 Toolbox Author: Christoph Binder Version: 0.1 Date: 2017-06-08 Josef Ressel Center for User-Centric Smart Grid Privacy, Security and Control Salzburg University of Applied

More information

View-Based Modeling of Function Nets

View-Based Modeling of Function Nets View-Based Modeling of Function Nets Hans Grönniger 1, Jochen Hartmann 2, Holger Krahn 1, Stefan Kriebel 2, and Bernhard Rumpe 1 1 Institut für Software Systems Engineering, TU Braunschweig, Germany 2

More information

Analyzing the Product Line Adequacy of Existing Components

Analyzing the Product Line Adequacy of Existing Components Analyzing the Product Line Adequacy of Existing Components Jens Knodel and Dirk Muthig Fraunhofer Institute for Experimental Software Engineering (IESE), Fraunhofer-Platz 1, D-67663 Kaiserslautern, Germany

More information

A Tutorial on Agent Based Software Engineering

A Tutorial on Agent Based Software Engineering A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far A Tutorial on Agent Based Software Engineering Qun Zhou December, 2002 Abstract Agent oriented software

More information

Design of a UML profile for feature diagrams and its tooling implementation

Design of a UML profile for feature diagrams and its tooling implementation Design of a UML profile for feature diagrams and its tooling implementation Thibaut Possompès, Christophe Dony, Marianne Huchard, Chouki Tibermacine IBM France PSSC Montpellier Montpellier, France thibaut.possompes@fr.ibm.com

More information

Paper III. *The PLUSS Toolkit Extending Telelogic DOORS and IBM-Rational Rose to Support Product Line Use Case Modeling

Paper III. *The PLUSS Toolkit Extending Telelogic DOORS and IBM-Rational Rose to Support Product Line Use Case Modeling Paper III *The PLU Toolkit Extending Telelogic DOOR and IB-Rational Rose to upport Product Line Use Case odeling agnus Eriksson 1, Henrik orast 2, Jürgen Börstler 3 and Kjell Borg 1 1 Land ystems Hägglunds

More information

MeDUSA Method for Designing UML2-based Embedded System Software Architectures

MeDUSA Method for Designing UML2-based Embedded System Software Architectures MeDUSA Method for Designing UML2-based Embedded System Software Architectures Alexander Nyßen 1, Horst Lichter 1, Jan Suchotzki 2, Lukas Kurmann 3 1 Introduction MeDUSA (Method for Designing UML2-based

More information

Product Derivation through Domain-Specific Modeling: Collected Experiences

Product Derivation through Domain-Specific Modeling: Collected Experiences Product Derivation through Domain-Specific Modeling: Collected Experiences Risto Pohjonen, Juha-Pekka Tolvanen MetaCase, Ylistönmäentie 31 FIN-40500 Jyväskylä, Finland rise, jpt@metacase.com http://www.metacase.com

More information

A Meta-Model for Composition Techniques in Object-Oriented Software Development

A Meta-Model for Composition Techniques in Object-Oriented Software Development A Meta-Model for Composition Techniques in Object-Oriented Software Development Bedir Tekinerdogan Department of Computer Science University of Twente P.O. Box 217, 7500 AE Enschede, The Netherlands E-Mail:

More information

Model Driven Development of Component Centric Applications

Model Driven Development of Component Centric Applications Model Driven Development of Component Centric Applications Andreas Heberle (entory AG), Rainer Neumann (PTV AG) Abstract. The development of applications has to be as efficient as possible. The Model Driven

More information

Using a Configurator for Modelling and Configuring Software Product Lines based on Feature Models

Using a Configurator for Modelling and Configuring Software Product Lines based on Feature Models Using a Configurator for Modelling and Configuring Software Product Lines based on Feature Models Timo Asikainen, Tomi Männistö, and Timo Soininen Helsinki University of Technology, Software Business and

More information

A Product Line Architecture for Web Applications

A Product Line Architecture for Web Applications A Product Line Architecture for Web Applications L. Balzerani, D. Di Ruscio, A. Pierantonio Dipartimento di Informatica Università degli Studi di L Aquila I 67100 L Aquila, Italy {balzerani, diruscio,

More information

A Model Transformation from Misuse Cases to Secure Tropos

A Model Transformation from Misuse Cases to Secure Tropos A Model Transformation from Misuse Cases to Secure Tropos Naved Ahmed 1, Raimundas Matulevičius 1, and Haralambos Mouratidis 2 1 Institute of Computer Science, University of Tartu, Estonia {naved,rma}@ut.ee

More information

Software Component Relationships. Stephen H. Edwards. Department of Computer Science. Virginia Polytechnic Institute and State University

Software Component Relationships. Stephen H. Edwards. Department of Computer Science. Virginia Polytechnic Institute and State University Software Component Relationships Stephen H. Edwards Department of Computer Science Virginia Polytechnic Institute and State University 660 McBryde Hall Blacksburg, VA 24061-0106 Tel: (540)-231-7537 Email:

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS 1. Explain iterative waterfall and spiral model for software life cycle and various activities

More information

Evaluation of Commercial Web Engineering Processes

Evaluation of Commercial Web Engineering Processes Evaluation of Commercial Web Engineering Processes Andrew McDonald and Ray Welland Department of Computing Science, University of Glasgow, Glasgow, Scotland. G12 8QQ. {andrew, ray}@dcs.gla.ac.uk, http://www.dcs.gla.ac.uk/

More information

Safety Case Composition Using Contracts - Refinements based on Feedback from an Industrial Case Study

Safety Case Composition Using Contracts - Refinements based on Feedback from an Industrial Case Study Safety Case Composition Using Contracts - Refinements based on Feedback from an Industrial Case Study Jane Fenn and Richard Hawkins BAE SYSTEMS, Brough, UK Phil Williams General Dynamics (United Kingdom)

More information

Component-Based Software Engineering TIP

Component-Based Software Engineering TIP Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.

More information

Architecture-Based Problem Frames Constructing for Software Reuse

Architecture-Based Problem Frames Constructing for Software Reuse Architecture-Based Problem Frames Constructing for Software Reuse CHU Wang +86-536-8268409 chuw1119 @ 163.com QIAN Depei LIU Chuda ABSTRACT Reusability is not universal property of program codes. The problem

More information

Towards Formalization of ARD+ Conceptual Design and Refinement Method

Towards Formalization of ARD+ Conceptual Design and Refinement Method Proceedings of the Twenty-First International FLAIRS Conference (2008) Towards Formalization of ARD+ Conceptual Design and Refinement Method Grzegorz J. Nalepa and Igor Wojnicki Institute of Automatics,

More information

AUTOMATED GENERATION OF VIRTUAL DRIVING SCENARIOS FROM TEST DRIVE DATA

AUTOMATED GENERATION OF VIRTUAL DRIVING SCENARIOS FROM TEST DRIVE DATA F2014-ACD-014 AUTOMATED GENERATION OF VIRTUAL DRIVING SCENARIOS FROM TEST DRIVE DATA 1 Roy Bours (*), 1 Martijn Tideman, 2 Ulrich Lages, 2 Roman Katz, 2 Martin Spencer 1 TASS International, Rijswijk, The

More information

COrDeT Cannes : Use of domain engineering process to develop reusable architectures and building-blocks

COrDeT Cannes : Use of domain engineering process to develop reusable architectures and building-blocks COrDeT Cannes : Use of domain engineering process to develop reusable architectures and building-blocks G. Garcia 1, X. Olive 1, A. Pasetti 2, O. Rohlik 2, T. Vardanega 3, A.-I. Rodríguez-Rodríguez 4 A.

More information

Towards Process-based Composition of Activities for Collecting Data in Supply Chains

Towards Process-based Composition of Activities for Collecting Data in Supply Chains Towards Process-based Composition of Activities for Collecting Data in Supply Chains Gregor Grambow, Nicolas Mundbrod, Vivian Steller and Manfred Reichert Institute of Databases and Information Systems

More information

Tool Support for Traceable Product Evolution

Tool Support for Traceable Product Evolution Tool Support for Traceable Product Evolution P. Lago, E. Niemelä, H. Van Vliet Vrije Universiteit, Amsterdam, The Netherlands, [patricia hans]@cs.vu.nl VTT Technical Research Centre of Finland, Oulu, eila.niemela@vtt.fi

More information

Chapter 2 Overview of the Design Methodology

Chapter 2 Overview of the Design Methodology Chapter 2 Overview of the Design Methodology This chapter presents an overview of the design methodology which is developed in this thesis, by identifying global abstraction levels at which a distributed

More information

DOMAIN ENGINEERING OF COMPONENTS

DOMAIN ENGINEERING OF COMPONENTS 4-02-55 INFORMATION MANAGEMENT: STRATEGY, SYSTEMS, AND TECHNOLOGIES DOMAIN ENGINEERING OF COMPONENTS Carma McClure INSIDE Definition of Components; Component-Based Development; Reuse Processes; Domain

More information

PPOOA, An Architectural Style for Real Time Systems

PPOOA, An Architectural Style for Real Time Systems PPOOA, An Architectural Style for Real Time Systems José Luis Fernández Sánchez Industrial Engineering School Universidad Politécnica de Madrid e-mail: fernandezjl@acm.org September 2004 PPOOA-WP-01_2004.pdf

More information

VISO: A Shared, Formal Knowledge Base as a Foundation for Semi-automatic InfoVis Systems

VISO: A Shared, Formal Knowledge Base as a Foundation for Semi-automatic InfoVis Systems VISO: A Shared, Formal Knowledge Base as a Foundation for Semi-automatic InfoVis Systems Jan Polowinski Martin Voigt Technische Universität DresdenTechnische Universität Dresden 01062 Dresden, Germany

More information

Vocabulary-Driven Enterprise Architecture Development Guidelines for DoDAF AV-2: Design and Development of the Integrated Dictionary

Vocabulary-Driven Enterprise Architecture Development Guidelines for DoDAF AV-2: Design and Development of the Integrated Dictionary Vocabulary-Driven Enterprise Architecture Development Guidelines for DoDAF AV-2: Design and Development of the Integrated Dictionary December 17, 2009 Version History Version Publication Date Author Description

More information

ISO compliant verification of functional requirements in the model-based software development process

ISO compliant verification of functional requirements in the model-based software development process requirements in the model-based software development process Hans J. Holberg SVP Marketing & Sales, BTC Embedded Systems AG An der Schmiede 4, 26135 Oldenburg, Germany hans.j.holberg@btc-es.de Dr. Udo

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

The FOOM Method Modeling Software Product Lines in Industrial Settings

The FOOM Method Modeling Software Product Lines in Industrial Settings The FOOM Method Modeling Software Product Lines in Industrial Settings Abstract Samuel A. Ajila, Ph.D., MIEEE Systems & Computer Engineering Carleton University, 25 Colonel By Drive Ottawa, Ontario, KS

More information

Design Metrics for Object-Oriented Software Systems

Design Metrics for Object-Oriented Software Systems ECOOP 95 Quantitative Methods Workshop Aarhus, August 995 Design Metrics for Object-Oriented Software Systems PORTUGAL Design Metrics for Object-Oriented Software Systems Page 2 PRESENTATION OUTLINE This

More information

Constraints in Feature Algebra

Constraints in Feature Algebra Constraints in Feature Algebra Andreas Zelend Institut für Informatik, Universität Augsburg, Germany zelend@informatik.uni-augsburg.de Abstract. Feature Algebra captures the commonalities of feature oriented

More information

Fault tolerant TTCAN networks

Fault tolerant TTCAN networks Fault tolerant TTCAN networks B. MŸller, T. FŸhrer, F. Hartwich, R. Hugel, H. Weiler, Robert Bosch GmbH TTCAN is a time triggered layer using the CAN protocol to communicate in a time triggered fashion.

More information

UML-Based Conceptual Modeling of Pattern-Bases

UML-Based Conceptual Modeling of Pattern-Bases UML-Based Conceptual Modeling of Pattern-Bases Stefano Rizzi DEIS - University of Bologna Viale Risorgimento, 2 40136 Bologna - Italy srizzi@deis.unibo.it Abstract. The concept of pattern, meant as an

More information

Software Architectures

Software Architectures Software Architectures Richard N. Taylor Information and Computer Science University of California, Irvine Irvine, California 92697-3425 taylor@ics.uci.edu http://www.ics.uci.edu/~taylor +1-949-824-6429

More information

An Information Model for High-Integrity Real Time Systems

An Information Model for High-Integrity Real Time Systems An Information Model for High-Integrity Real Time Systems Alek Radjenovic, Richard Paige, Philippa Conmy, Malcolm Wallace, and John McDermid High-Integrity Systems Group, Department of Computer Science,

More information

ArchFeature: A Modeling Environment Integrating Features into Product Line Architecture

ArchFeature: A Modeling Environment Integrating Features into Product Line Architecture ArchFeature: A Modeling Environment Integrating Features into Product Line Architecture Gharib Gharibi and Yongjie Zheng School of Computing and Engineering, University of Missouri-Kansas City, Kansas

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

More information

Briefing Paper: developing the DOI Namespace

Briefing Paper: developing the DOI Namespace 010123-DOI-NS-paper.doc 1 Briefing Paper: developing the DOI Namespace This briefing paper describes a project that has been commissioned by the IDF for completion during the first half of 2001. The paper

More information

THE ADAPTABILITY CHALLENGE FOR EMBEDDED CONTROL SYSTEM SOFTWARE.

THE ADAPTABILITY CHALLENGE FOR EMBEDDED CONTROL SYSTEM SOFTWARE. THE ADAPTABILITY CHALLENGE FOR EMBEDDED CONTROL SYSTEM SOFTWARE V. Cechticky 1, A. Pasetti 1,2, W. Schaufelberger 1 1 Institut für Automatik, ETH-Zürich, Physikstr. 3, Zürich, CH-8092 2 P&P Software GmbH,

More information

Conceptual Data Modeling by David Haertzen

Conceptual Data Modeling by David Haertzen Conceptual Data Modeling by David Haertzen All rights reserved. Reproduction in whole or part prohibited except by written permission. Product and company names mentioned herein may be trademarks of their

More information

Feature-Oriented Domain Analysis (FODA) Feasibility Study

Feature-Oriented Domain Analysis (FODA) Feasibility Study Technical Report CMU/SEI-90-TR-21 ESD-90-TR-222 Feature-Oriented Domain Analysis (FODA) Feasibility Study Kyo C. Kang Sholom G. Cohen James A. Hess William E. Novak A. Spencer Peterson November 1990 Technical

More information

Timeline Variability. The Variability of Binding Time of Variation Points. Eelco Dolstra Gert Florijn Eelco Visser

Timeline Variability. The Variability of Binding Time of Variation Points. Eelco Dolstra Gert Florijn Eelco Visser Timeline Variability The Variability of Binding Time of Variation Points Eelco Dolstra Gert Florijn Eelco Visser Technical Report UU-CS-2003-052 Institute of Information and Computing Sciences Utrecht

More information

Separating Product Variance and Domain Concepts in the Specification of Software Product Lines

Separating Product Variance and Domain Concepts in the Specification of Software Product Lines Separating Product Variance and Domain Concepts in the Specification of Software Product Lines Pertti Kellomäki Software Systems Laboratory, Tampere University of Technology P.O. Box 553, FIN-33101 Tampere,

More information