A Lightweight Language for Software Product Lines Architecture Description
|
|
- Jerome Pearson
- 5 years ago
- Views:
Transcription
1 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 Federal University of Rio Grande do Norte Natal, Brazil Abstract. The architecture description of a software product line (SPL) is essential to make it clear how the architecture realizes the feature model and to represent both the domain and application engineering architectural artefacts. However, most architecture description languages (ADLs) for SPL have limited support regarding variability management and they do not express the relationship between features and the architecture, besides the lack of tools for graphical and textual modelling and a non-clear separation between the domain and application engineering activities. In order to overcome these deficiencies, this paper presents LightPL-ACME, an ADL whose main goal is to be a simple, lightweight language for the SPL architecture description, and enable the association between the architectural specification and the artefacts involved in the SPL development process, including the relationship with the feature model and the representation of both domain and application engineering elements. Keywords: Software product lines architectures, Architecture description languages, ACME, LightPL-ACME 1 Introduction Software product lines (SPLs) [1] consist of an approach for deriving applications that shares a specific set of common features (commonalities) and have variabilities that distinguish the specific applications, thus supporting the development of a product family. The SPL development process follows two main activities: (i) domain engineering, which aims to systematize the gathering, organization, and storage of reusable and consistent information in the form of artefacts, thus exploring similarities while preserving the ability to build different products, and; (ii) application engineering, which aims to specify and customize different products from the artefacts generated by the domain engineering activity. The architectural description is one of the activities involved in the development of an SPL that enables to anticipate important decisions regarding the system design and represent architectural characteristics of the SPL. In the software architecture context, architecture description languages (ADLs) [2] provide
2 2 Silva et al. abstractions for representing architectures through components, connectors, and configurations. Components represent software functionalities, connectors are communication elements, and configurations describe the relationship between components and connectors. Although there are some ADLs for describing SPL architectures [3 5], most of them have limited support regarding the management of variabilities since they only focus on documenting SPL concepts (similarities and variabilities) and architectural elements rather than the relationship and traceability between the variabilities represented in the feature model and the architecture of an SPL. Moreover, these ADLs do not express the relationship between features and the architecture and suffer from the following limitations: (i) high verbosity that makes the architectural description confusing and difficult to understand; (ii) complexity for instantiating products; (iii) lack of tools for graphical and textual modeling; and (iv) lack of a clear separation between the domain and application engineering activities in the SPL development process. In this context, this paper presents LightPL-ACME, an ADL that aims to provide a lightweight strategy for describing architectures of SPLs in order to overcome the abovementioned limitations. We have chosen the ACME ADL [6] as basis of the proposed ADL since ACME provides generic structures to cope with a wide range of systems and includes a language based on first-order predicate logic called Armani [7], which is used to design architectural constraints. The main features of LightPL-ACME are: (i) semantic enrichment of ACME elements originally used to specify the SPL architecture, the so-called base architecture; (ii) elements designed to enable the definition of the referenced architecture, which is a base architecture whose elements refer to the features of the SPL; and (iii) products instantiation, which is based on the architectural description of the SPL and the referenced architecture. In this paper, we illustrate the main elements of the LightPL-ACME ADL with the GingaForAll [8] SPL for Ginga [9], the middleware adopted by the Brazilian Digital Television System (SBTVD). This paper is structured as follows. Section 2 describes the basic concepts regarding SPLs and provides an overview about the ACME/Armani ADL. Section 3 presents LightPL-ACME and its application for describing the GingaForAll SPL. Section 4 presents the LightPL-ACME Studio tool. Section 5 presents related work. Finally, Section 6 contains final remarks and future works. 2 Background 2.1 Software product lines Software product lines (SPLs) [1] enable the creation of a family (or product line) of similar products by using a common software infrastructure to mount and configure parts designed to be reused among products and following two main activities, namely domain engineering and application engineering [11]. The construction of a software product, also called instantiation or derivation,
3 A Lightweight Language for SPL Architecture Description 3 is made from a configuration of core assets, which consists of an arrangement of the software artefacts that implement the product. In the SPL development, the members of a family have a basic set of common functionalities and associated variants that individualize each one of these members. Typically, similarities and variabilities among products of a family are modelled in terms of features, which are concepts that may be a requirement, a function, or a non-functional feature [1]. Features are organized in feature models, which that represent similarities, variabilities, and constraints related to the variations between features and their relationships. In general, feature models have a tree structure in which features are represented by nodes of the tree and the variations between features are represented by edges and feature groups, so that the hierarchical organization of the diagram describes the key concept from more general to more specific concepts as they descend the tree. Furthermore, features can be [10]: (i) mandatory, i.e. the feature must be included in a product; (ii) optional, i.e. the feature may or may not be included if the feature from which it derives is selected; (iii) inclusive-or, i.e. among the set of related features at least one of them must be selected, and; (iv) alternative, i.e. among the set of related features exactly one of them must be selected. 2.2 ACME/Armani ACME [6] is a generic ADL that provides a basis for developing new domainspecific ADLs. A system is described in ACME by seven basic elements: Component, Connector, System, Attachment, Port, Role, and Representation. Components are computational entities that can have multiple interfaces called Ports. The ports of a component are bound to the ports of other components through Connectors, which can have multiple interfaces called Roles. Systems are abstractions that represent configurations of components and connectors including a set of Component elements, a set of Connector elements, and a set of Attachment elements that describe the topology of the system in terms of Port Role associations. Representations are alternative architecture views of an element or more detailed decompositions of a given element (component, connector, port or role). Furthermore, architectural elements can be annotated in order to represent behavioral and non-functional properties by using Property elements. Properties have the form of <name, type, value> triples and can be used in any of the ACME elements. ACME also enables to define architectural styles in order to increase reuse and expressiveness, which is done through the Type and Family elements. In ACME, an architectural style defines a family of systems, through Family element, in terms of a structural organization pattern that contains a vocabulary of element types and a set of constraints that indicate how these elements can be combined, and the Type element is used to define a vocabulary of abstract types of ACME elements. In turn, Armani [7] is an ACME extension and consists of a predicate language based on first-order logic used to express architectural constraints over ACME elements. Such constraints are defined in terms of invariants, design constraints that must be fulfilled, and heuristics, design constraints that may or may not be fulfilled.
4 4 Silva et al. 3 LightPL-ACME LightPL-ACME is an ADL proposed as an ACME extension that aims to provide a lightweight, simple language for SPL architecture description, so that it is possible to associate such description with the artefacts related to the domain engineering and application engineering activities in the SPL development process. It supports the separation of these SPL activities by creating specific abstractions for features (related to the domain engineering activity) and products (related to the application engineering activity). Moreover, LightPL-ACME was designed envisioning the representation of the architecture and its relationship with the features. The following subsections present the main elements of the LightPL-ACME ADL. 3.1 ProductLine, Feature, and Product elements The ProductLine element has similar characteristics to the ACME Family element, which is semantically and syntactically enriched in order to represent the SPL, thus enabling the user to describe its specific elements, such as features and products. Within the ProductLine element, the Feature element is defined to represent the features that compose the SPL and is specified by the definition of an identifier and an associated type related to the types of features that may occur in an SPL: (i) Mandatory, which represents mandatory features; (ii) Optional, which represents optional features; (iii) Alternative, which represents alternative features, and; (iv) InclusiveOr, which represents inclusive-or features. Additionally, the extends mechanism provided by ACME enables to establish an inheritance relationship between two features. Fig. 1 illustrates the definition of the Demultiplexer, Hardware, and Software features for the GingaCC ProductLine element and its corresponding feature model. The Demultiplexer feature is mandatory (line 3), and the Hardware and Software features are alternative and derived from the Demultiplexer feature (lines 4 and 5). Fig. 1. Features and product description in a ProductLine element and its corresponding depiction as a feature model. In order to complement the description of the features in an SPL, LightPL- ACME provides Armani [7] functions for specifying constraints between Feature
5 A Lightweight Language for SPL Architecture Description 5 elements in a ProductLine element, namely the requires (for dependency) and excludes (for mutual exclusion) functions, which receive as parameters the identifiers of the Feature elements included in the relationship. Finally, the Product element corresponds to the concept of products that can be generated by an SPL. The specification of this element consists of an identifier regarding the product that is being specified and a set of identifiers regarding the Feature elements that compose this product. The inclusion of Feature elements also occurs by hierarchy, so that the inclusion of a Feature element in a Product element includes all of its direct dependencies, which take place through the inheritance relationship. 3.2 Referenced architectures In LightPL-ACME, referenced architectures are artefacts related to the system architecture and consist of a description of the base architecture that is enriched with references to the Feature elements previously described in a ProductLine element. This notion of referenced architectures in terms of mapping architectural elements to features is part of the well-known concept of configuration knowledge [11], which represents all available information used to support the product derivation process and includes this mapping between SPL artefacts and features. In LightPL-ACME, the mapping mechanism between architectural elements and features in order to compose the referenced architecture is made by using the keyword MappedTo followed by a set of Feature elements and can be added to the specification most of the conventional ACME elements after their names. In order to make Feature elements (that represent the features) accessible in the referenced architecture, it is necessary that the System element that represents the complete system has been adhered to the architectural style described by a ProductLine element. Fig. 2 illustrates the mapping between the base architecture and the GingaForAll SPL architectural description in order to compose the referenced architecture, which is represented by the GingaFull System that adheres to the GingaForAll ProductLine. It is important to highlight that all features described in the ProductLine element associated with the referenced architecture must be mapped to at least one element of the architecture, otherwise the architecture does not fulfill the ProductLine. However, there may be architectural elements that are not being mapped to Feature elements and then they can be interpreted as implementation-specific elements. 4 LightPL-ACME Studio LightPL-ACME Studio 1 [12] is a tool developed as an Eclipse IDE plug-in that was designed to assist the SPL development and support the textual specification and graphical representation of architectures described in LightPL-ACME. 1 The LightPL-ACME Studio tool is available as free download from:
6 6 Silva et al. Fig. 2. Mapping to the referenced architecture in LightPL-ACME. The tool enables to specify architectural descriptions, create and edit LightPLACME elements (e.g. ProductLine), and represent referenced architectures, besides maintaining an automatic correspondence between textual and graphic descriptions. Fig. 3 illustrates a partial textual description of the GingaForAll SPL in LightPL-ACME and its corresponding graphical representation in the LightPL-ACME Studio tool. Fig. 3. Partial textual description of the GingaForAll ProductLine (left) and its corresponding graphical representation. Furthermore, LightPL-ACME Studio also enables to define the mapping between elements in the base architecture and features of the SPL by accessing the properties of the architectural element and choosing the features to which such element will be mapped, as exemplified in Fig Related Work In this section we present some proposals of the literature regarding ADLs to SPL architectural description. In ADLARS [3] the relationship between features and the architectural description is explicitly done through conditional expressions, so that a Component Template specifies the collection of possible component
7 A Lightweight Language for SPL Architecture Description 7 Fig. 4. Mapping from the Ginga CommonCore component in the base architecture to the Ginga feature in the LightPL-ACME Studio tool. configurations and associates these components to the features. xadl 2.0 [4] specifies the architecture using XML (extensible Markup Language) schemas, but this ADL does not define specific elements for representing SPL architectures, thus hampering the identification of the variation points and their relation with the system architecture. In turn, PL-AspectualACME [5] represents variabilities by purely using the conventional ACME abstractions. It combines Representation elements for identifying product variations and Port elements for representing the mechanism of variability selection, features are described as Component Type elements, and the type of a feature (mandatory, optional or alternative) is defined through properties. Unlike LightPL-ACME, none of the abovementioned languages addresses an explicit separation between the domain engineering and application engineering activities and has the concept and representation of the referenced architecture. Moreover, xadl 2.0 and PL-AspectualACME architectural descriptions tend to be verbose, whereas LightPL-ACME provides a simple, lightweight way for describing SPL architectures. Furthermore, LightPL-ACME enables the description of any sort of system since the proposed ADL is a general-purpose language, unlike ADLARS, which is a specific language for embedded systems. 6 Final Remarks This paper presented LightPL-ACME, a simple, lightweight ADL for describing SPL architectures that introduces three essential elements (ProductLine, Feature, and Product) in order to reduce the verbosity and complexity in the description of SPL concepts and enrich elements present in the ACME ADL for SPL description and enable the description of the referenced architecture, a key concept that denotes a base architecture with references to the features described in the SPL. Finally, the LightPL-ACME strategy promotes a clear separation between the domain engineering and application engineering activities that are involved in the SPL development process. and maintains characteristics related to generality, simplicity, expressiveness, and extensibility inherited from ACME by using the existing abstractions of this ADL and avoiding the addition of many new abstractions. The proposed language has also an associated tool called LightPL-
8 8 Silva et al. ACME Studio, which provides textual and graphical support for representing SPL architectures specified in this ADL. LightPL-ACME was evaluated by a controlled experiment with a real-world case study, the GingaForAll SPL, as available at lightplacmestudio/experiments.php. In this experiment, it was possible to observe that LightPL-ACME is able to express important elements of an SPL (such as features and the products that can be generated from them) in a simple, lightweight, clear, and objective way. As directions to future work, we intend to use the LightPL-ACME ADL within a model-driven development strategy in order to automatically generate customized source code from product models and also check the correlation between the source code and the architectural model. References 1. Clements, P., Northrop, L.: Software product lines: Practices and patterns. Addison-Wesley, USA (2001) 2. Medvidovic, N., Taylor, R. N.: A classification and comparison framework for software architecture description languages. IEEE Trans. on Software Engineering 26(1), pp (2000) 3. Bashroush, R. et al.: ADLARS: An architecture description language for software product lines. In: 29th Annual IEEE/NASA Software Engineering Workshop, pp , IEEE Computer Society, USA (2005) 4. Dashofy, E. M. et al.: A highly-extensible, XML-based architecture description language. In: 2001 Working IEEE/IFIP Conf. on Software Architecture, pp , IEEE Computer Society, USA (2001) 5. Barbosa, E. A. et al.: PL-AspectualACME: An aspect-oriented architectural description language for software product lines. In: Crnkovic, I. et al. (eds.) 5th European Conf. on Software Architecture. LNCS, vol. 6903, pp , Springer- Verlag, Germany (2011) 6. Garlan, D. et al.: ACME: An architecture description interchange language. In: 1997 Conf. of the Centre for Advanced Studies on Collaborative Research, pp , IBM Press (1997) 7. Monroe, R.: Capturing software architecture expertise with Armani. Technical report, School of Computer Science, Carnegie Mellon University, USA (1998) 8. Saraiva, D. et al.: Architecting a model-driven aspect-oriented product line for a digital TV middleware: A refactoring experience. In: Ali Babar, M., Gorton, I. (eds.) 4th European Conf. on Software Architecture. LNCS, vol. 6285, pp , Springer-Verlag, Germany (2010) 9. Ginga Middleware: Kang, K. C. et al.: Feature-oriented domain analysis (FODA) feasibility study. Technical report, Software Engineering Institute, Carnegie Mellon University, USA (1990) 11. Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, tools, and applications. ACM Press/Addison-Wesley, USA (2000) 12. LightPL-ACME Studio: Batista, T. et al.: Aspectual connectors: Supporting the seamless integration of aspects and ADLs. In: XX Brazilian Symposium on Software Engineering, pp , SBC, Brazil (2006)
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 informationArchFeature: 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 informationMapping 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 informationQuantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study
Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Jadson Santos Department of Informatics and Applied Mathematics Federal University of Rio Grande do Norte, UFRN Natal,
More informationModeling 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 informationDescribing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?
Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090
More informationComparative 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 informationUC Irvine UC Irvine Previously Published Works
UC Irvine UC Irvine Previously Published Works Title Differencing and merging within an evolving product line architecture Permalink https://escholarship.org/uc/item/0k73r951 Authors Chen, Ping H Critchlow,
More informationMODELLING 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 information1 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 informationVariability Implementation Techniques for Platforms and Services (Interim)
Engineering Virtual Domain-Specific Service Platforms Specific Targeted Research Project: FP7-ICT-2009-5 / 257483 Variability Implementation Techniques for Platforms and Services (Interim) Abstract Creating
More informationGuiding 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 informationSoftware 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 informationSynthesizing 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 informationGeneric 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 informationUnit 1 Introduction to Software Engineering
Unit 1 Introduction to Software Engineering João M. Fernandes Universidade do Minho Portugal Contents 1. Software Engineering 2. Software Requirements 3. Software Design 2/50 Software Engineering Engineering
More informationSoberIT Software Business and Engineering Institute. SoberIT Software Business and Engineering Institute. Contents
Architecture Description Languages (ADLs): Introduction, Koala, UML as an ADL T-76.150 Software Architecture Timo Asikainen Contents Brief motivation for ADLs General features of ADLs Koala UML as an ADL
More informationBridging Missions and Architecture in Software-intensive Systems-of-Systems
Bridging Missions and Architecture in Software-intensive Systems-of-Systems Eduardo Silva, Everton Cavalcante, Thais Batista Department of Informatics and Applied Mathematics Federal University of Rio
More informationReconciling the Needs of Architectural Description with Object-Modeling Notations
To Appear: Science of Computer Programming Journal, Special UML Edition, Elsevier Science, ~2001. Reconciling the Needs of Architectural Description with Object-Modeling Notations David Garlan, Shang-Wen
More informationCapturing Design Expertise in Customized Software Architecture Design Environments
Capturing Design Expertise in Customized Software Architecture Design Environments Robert T. Monroe School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213 Abstract: Software architecture
More informationOn the Integration of the Feature Model and PL-AOVGraph
On the Integration of the Feature Model and PL-AOVGraph Lidiane Santos Computer Science Department Federal University of Rio Grande do Norte (UFRN) diane_lid@hotmail.com Lyrene Silva Computer Science Department
More informationSoftware 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 informationIntroduction. ADL Roles
Architecture Description Languages (ADLs) 1 Introduction Architecture is key to reducing development costs development focus shifts to coarse-grained elements Formal architectural models are needed ADLs
More informationProduct Lines, Features, and MDD 1
Product Lines, Features, and MDD 1 Bruno González-Baixauli, Miguel A. Laguna, Yania Crespo Department of Computer Science, University of Valladolid, Campus M. Delibes, 47011 Valladolid, Spain {bbaixauli,
More informationWhy Consider Implementation-Level Decisions in Software Architectures?
1. Abstract Why Consider Implementation-Level Decisions in Software Architectures? Nikunj Mehta Nenad Medvidović Marija Rakić {mehta, neno, marija}@sunset.usc.edu Department of Computer Science University
More informationMeta Architecting: Towered a New Generation of Architecture Description Languages
Journal of Computer Science 1 (4): 454-460, 2005 ISSN 1549-3636 Science Publications, 2005 Meta Architecting: Towered a New Generation of Architecture Description Languages Adel Smeda, Tahar Khammaci and
More informationVisualizing Variability Models Using Hyperbolic Trees
Visualizing Variability Models Using Hyperbolic Trees R. Bashroush, A. Al-Nemrat, M. Bachrouch, H. Jahankhani School of Computing, IT and Engineering, University of East London, London, United Kingdom
More informationTowards the Automatic Resolution of Architectural Variability in Software Product Line Architectures through Model Transformations
Towards the Automatic Resolution of Architectural Variability in Software Product Line Architectures through Model Transformations Jesús Benedé ISSI Research Group, Universitat Politècnica de València
More informationA Generative Development Method with Multiple Domain-Specific Languages
A Generative Development Method with Multiple Domain-Specific Languages Edmilson Campos 1,2, Uirá Kulesza 1, Marília Freire 1,2 and Eduardo Aranha 1 1 Federal University of Rio Grande do Norte, Natal-RN,
More informationConstraints 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 informationAnalyzing 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 informationOntology-based Architecture Documentation Approach
4 Ontology-based Architecture Documentation Approach In this chapter we investigate how an ontology can be used for retrieving AK from SA documentation (RQ2). We first give background information on the
More informationQuality-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 informationOntology Matching with CIDER: Evaluation Report for the OAEI 2008
Ontology Matching with CIDER: Evaluation Report for the OAEI 2008 Jorge Gracia, Eduardo Mena IIS Department, University of Zaragoza, Spain {jogracia,emena}@unizar.es Abstract. Ontology matching, the task
More informationDemo Proposal. 1 General Information
Demo Proposal 1 General Information Demostration title: FLiP Product Line Derivation Tool Type of demonstration : Forum Contact person: Paulo Borba, phmb@cin.ufpe.br, Informatics Center UFPE, Universidade
More informationApplying the Component Paradigm to AUTOSAR Basic Software
Applying the Component Paradigm to AUTOSAR Basic Software Dietmar Schreiner Vienna University of Technology Institute of Computer Languages, Compilers and Languages Group Argentinierstrasse 8/185-1, A-1040
More informationDeveloping Web-Based Applications Using Model Driven Architecture and Domain Specific Languages
Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain
More informationModelling Variation in Quality Attributes
Modelling Variation in Quality Attributes Leire Etxeberria, Goiuria Sagardui, Lorea Belategi Faculty of Engineering University of Mondragon Limerick 16.01.2007 Research group &3 ;078 9 4143/7, 43 Research
More informationRepresenting Product Family Architectures in an Extensible Architecture Description Language
Representing Product Family Architectures in an Extensible Architecture Description Language Eric M. Dashofy and André van der Hoek Institute for Software Research University of California, Irvine Irvine,
More informationFaMa-OVM: A Tool for the Automated Analysis of OVMs
FaMa-OVM: A Tool for the Automated Analysis of OVMs Fabricia Roos-Frantz, José A. Galindo, David Benavides and Antonio Ruiz-Cortés University of Seville 41012 Seville, Spain {fabriciaroos,jagalindo,benavides,aruiz}@us.es
More informationDomain Models for Laboratory Integration
Models for Laboratory Integration ANCA DANIELA IONITA Computers and Industrial Informatics Department University Politehnica of Bucharest Spl. Independentei 313, 060042, Bucharest ROMANIA Abstract: - Laboratory
More informationDesign 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 informationAnnotation for the Semantic Web During Website Development
Annotation for the Semantic Web During Website Development Peter Plessers and Olga De Troyer Vrije Universiteit Brussel, Department of Computer Science, WISE, Pleinlaan 2, 1050 Brussel, Belgium {Peter.Plessers,
More informationDeveloping a Product-Line Based Architecture in a Domain Under Research
Developing a Product-Line Based Architecture in a Domain Under Research Valentino Vranić and Vladimír Marko Institute of Informatics and Software Engineering Faculty of Informatics and Information Technology
More informationA 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 informationConfiguration Management in the STAR Framework *
3 Configuration Management in the STAR Framework * Helena G. Ribeiro, Flavio R. Wagner, Lia G. Golendziner Universidade Federal do Rio Grande do SuI, Instituto de Informatica Caixa Postal 15064, 91501-970
More informationDomain-Specific Language Architecture for Automation Systems: An Industrial Case Study
Domain-Specific Language Architecture for Automation Systems: An Industrial Case Study Christopher Preschern, Andrea Leitner, and Christian Kreiner Institure for Technical Informatics Graz University of
More informationSoftware 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 informationYlvi - Multimedia-izing the Semantic Wiki
Ylvi - Multimedia-izing the Semantic Wiki Niko Popitsch 1, Bernhard Schandl 2, rash miri 1, Stefan Leitich 2, and Wolfgang Jochum 2 1 Research Studio Digital Memory Engineering, Vienna, ustria {niko.popitsch,arash.amiri}@researchstudio.at
More informationArchitecture-Centric Evolution in Software Product Lines:
Architecture-Centric Evolution in Software Product Lines: Position Paper Hassan Gomaa Department of Information and Software Engineering George Mason University Fairfax, Virginia 22030, USA hgomaa@gmu.edu
More informationCarrying 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 informationADLARS: An Architecture Description Language for Software Product Lines
ADLARS: An Architecture Description Language for Software Product Lines R. Bashroush, T.J. Brown, I. Spence, P. Kilpatrick Queens University Belfast, School of Computer Science, 18 Malone Road, Belfast
More informationComponent-Based Applications: A Dynamic Reconfiguration Approach with Fault Tolerance Support
Electronic Notes in Theoretical Computer Science 65 No. 4 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 9 pages Component-Based Applications: A Dynamic Reconfiguration Approach with Fault
More informationA SIMULATION ARCHITECTURE DESCRIPTION LANGUAGE FOR HARDWARE-IN-LOOP SIMULATION OF SAFETY CRITICAL SYSTEMS
A SIMULATION ARCHITECTURE DESCRIPTION LANGUAGE FOR HARDWARE-IN-LOOP SIMULATION OF SAFETY CRITICAL SYSTEMS YUJUN ZHU, ZHONGWEI XU, MENG MEI School of Electronics & Information Engineering, Tongji University,
More informationPerspectives on User Story Based Visual Transformations
Perspectives on User Story Based Visual Transformations Yves Wautelet 1, Samedi Heng 2, and Manuel Kolp 2 1 KU Leuven, Belgium yves.wautelet@kuleuven.be, 2 LouRIM, Université catholique de Louvain, Belgium
More informationIntegrating Software Architecture Concepts into the MDA Platform with UML Profile
Journal of Computer Science 3 (10): 793-802, 2007 ISSN 1549-3636 2007 Science Publications Integrating Software Architecture Concepts into the MDA Platform with UML Profile 1 Adel Alti, 2 Tahar Khammaci
More informationVariability Management in Aspect-Oriented Architecture Description Languages: An Integrated Approach
2009 XXIII Brazilian Symposium on Software Engineering Variability Management in Aspect-Oriented Architecture Description Languages: An Integrated Approach Eiji Adachi, Thaís Batista, Uirá Kulesza, Ana
More informationIntegrating 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 informationComponent Design. Systems Engineering BSc Course. Budapest University of Technology and Economics Department of Measurement and Information Systems
Component Design Systems Engineering BSc Course Budapest University of Technology and Economics Department of Measurement and Information Systems Traceability Platform-based systems design Verification
More informationApplying the Semantic Web Layers to Access Control
J. Lopez, A. Mana, J. maria troya, and M. Yague, Applying the Semantic Web Layers to Access Control, IEEE International Workshop on Web Semantics (WebS03), pp. 622-626, 2003. NICS Lab. Publications: https://www.nics.uma.es/publications
More informationWinery A Modeling Tool for TOSCA-Based Cloud Applications
Winery A Modeling Tool for TOSCA-Based Cloud Applications Oliver Kopp 1,2, Tobias Binz 2,UweBreitenbücher 2, and Frank Leymann 2 1 IPVS, University of Stuttgart, Germany 2 IAAS, University of Stuttgart,
More informationSoftware Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista
Software Architecture in Action Flavio Oquendo, Jair C Leite, Thais Batista Motivation 2 n In this book you can learn the main software architecture concepts and practices. n We use an architecture description
More information1 Motivation and Background
David Garlan and Andrew Kompanek (with John Kenney, David Luckham, Bradley Schmerl and Dave Wile) September 2000 1 Motivation and Background Over the past decade numerous architecture description languages
More informationUsing Acme to Specify the Software Architecture of the OpenH323 Open Source Code
Using Acme to Specify the Software Architecture of the OpenH323 Open Source Code FERNANDO NEY C. NASCIMENTO, ANTÔNIO C. THEÓPHILO C. JÚNIOR, VIRGÍNIA C. C. DE PAULA, GUIDO LEMOS DE S. FILHO DIMAp CCET
More informationUSING ASPECT-ORIENTED CONCEPTS IN THE REQUIREMENTS ANALYSIS OF DISTRIBUTED REAL-TIME EMBEDDED SYSTEMS
USING ASPECT-ORIENTED CONCEPTS IN THE REQUIREMENTS ANALYSIS OF DISTRIBUTED REAL-TIME EMBEDDED SYSTEMS Edison P. Freitas 1, Marco A. Wehrmeister 1,3, Carlos E. Pereira 1,2, Flavio R. Wagner 1, Elias T.
More informationConcurrent Object-Oriented Development with Behavioral Design Patterns
Concurrent Object-Oriented Development with Behavioral Design Patterns Benjamin Morandi 1, Scott West 1, Sebastian Nanz 1, and Hassan Gomaa 2 1 ETH Zurich, Switzerland 2 George Mason University, USA firstname.lastname@inf.ethz.ch
More informationIntegrating decision management with UML modeling concepts and tools
Downloaded from orbit.dtu.dk on: Dec 17, 2017 Integrating decision management with UML modeling concepts and tools Könemann, Patrick Published in: Joint Working IEEE/IFIP Conference on Software Architecture,
More informationFeature Model to Orthogonal Variability Model Transformation towards Interoperability between Tools
Feature Model to Orthogonal Variability Model Transformation towards Interoperability between Tools Fabricia Roos-Frantz 1, David Benavides 2 and Antonio Ruiz-Cortés 2 1 Unijuí, Departmento de Tecnologia
More informationDesign and Evolution of an Agent-Based CASE System for OOAD
Proceedings of ATS 2003 206 Design and Evolution of an -Based CASE System for OOAD Dong Liu, Kalaivani Subramaniam, Behrouz H. Far, and Armin Eberlein Department of Electrical and Computer Engineering
More informationInteroperability and Service Oriented Architecture an Enterprise Architect's approach
Interoperability and Service Oriented Architecture an Enterprise Architect's approach Peter Bernus and Ovidiu Noran 1 Griffith University, Nathan (Brisbane) Queensland 4111, Australia P.Bernus@griffith.edu.au,
More informationScenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures
Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Muhammad Ali Babar National ICT Australia Ltd. and University of New South
More informationSemi-Formal, not Semi-Realistic: A New Approach to Describing Software Components
Semi-Formal, not Semi-Realistic: A New Approach to Describing Software Components E James Montgomery, Rune Meling, Daniela Mehandjiska School of Information Technology Bond University Queensland, Australia
More informationCustomized UI Development Through Context-Sensitive GUI Patterns
Customized UI Development Through Context-Sensitive GUI Patterns Enes Yigitbas, Stefan Sauer Paderborn University, s-lab Software Quality Lab Abstract Developing highly flexible and easy to use user interfaces
More informationSemantic Event Correlation Using Ontologies
Semantic Event Correlation Using Ontologies Thomas Moser 1, Heinz Roth 2, Szabolcs Rozsnyai 3, Richard Mordinyi 1, and Stefan Biffl 1 1 Complex Systems Design & Engineering Lab, Vienna University of Technology
More informationAvailable online at ScienceDirect. Procedia Computer Science 34 (2014 ) Generic Connector for Mobile Devices
Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 34 (2014 ) 613 618 International Symposium on Emerging Inter-networks, Communication and Mobility (EICM-2014) Generic Email
More informationCapturing and Formalizing SAF Availability Management Framework Configuration Requirements
Capturing and Formalizing SAF Availability Management Framework Configuration Requirements A. Gherbi, P. Salehi, F. Khendek and A. Hamou-Lhadj Electrical and Computer Engineering, Concordia University,
More informationTowards Generating Domain-Specific Model Editors with Complex Editing Commands
Towards Generating Domain-Specific Model Editors with Complex Editing Commands Gabriele Taentzer Technical University of Berlin Germany gabi@cs.tu-berlin.de May 10, 2006 Abstract Domain specific modeling
More informationUsing the UML for Architectural Description Rich Hilliard
Using the UML for Architectural Description Rich Hilliard rh@isis2000.com Outline What is IEEE P1471? The IEEE P1471 Conceptual Framework Requirements on Architectural Descriptions Using the UML in the
More informationArchitecting IoT Applications with SysADL
2017 IEEE International Conference on Software Architecture Workshops Architecting IoT Applications with SysADL Jair Leite, Thais Batista Computer Science Department Federal University of Rio Grande do
More informationReverse Engineering Feature Models From Programs Feature Sets
2011 18th Working Conference on Reverse Engineering Reverse Engineering Feature Models From Programs Feature Sets Evelyn Nicole Haslinger k0855482@students.jku.at Roberto E. Lopez-Herrejon roberto.lopez@jku.at
More informationA Domain-Specific Language for Modeling Web User Interactions with a Model Driven Approach
A Domain-Specific Language for Modeling Web User Interactions with a Model Driven Approach Carlos Eugênio Palma da Purificação / Paulo Caetano da Silva Salvador University (UNIFACS) Salvador, Brazil email:
More informationSelf-Adaptive Middleware for Wireless Sensor Networks: A Reference Architecture
Architecting Self-Managing Distributed Systems Workshop ASDS@ECSAW 15 Self-Adaptive Middleware for Wireless Sensor Networks: A Reference Architecture Flávia C. Delicato Federal University of Rio de Janeiro
More informationSpemmet - 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 informationStyle-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 informationCOrDeT 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 informationAADL 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 informationTowards semantic modelling of business processes for networked enterprises
Towards semantic modelling of business processes for networked enterprises Karol Furdík 1, Marián Mach 2, Tomáš Sabol 3 1 InterSoft, a.s., Florianska 19, 040 01 Kosice, Slovakia karol.furdik@intersoft.sk
More informationThe SRAMO Technique for Analysis and Reuse of Requirements in Multi-agent Application Engineering
The SRAMO Technique for Analysis and Reuse of Requirements in Multi-agent Engineering Alisson Neres Lindoso, Rosario Girardi Research Group on Software Engineering and Knowledge Engineering (GESEC) Department
More informationProceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)
Electronic Communications of the EASST Volume X (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) m2n: Translating Models to Natural Language
More informationSWRL RULE EDITOR: A WEB APPLICATION AS RICH AS DESKTOP BUSINESS RULE EDITORS
SWRL RULE EDITOR: A WEB APPLICATION AS RICH AS DESKTOP BUSINESS RULE EDITORS João Paulo Orlando 1, Adriano Rívolli 1, Saeed Hassanpour 2, Martin J. O'Connor 2, Amar Das 2, and Dilvan A. Moreira 1 1 Dept.
More informationA Design Rationale Representation for Model-Based Designs in Software Engineering
A Design Rationale Representation for Model-Based Designs in Software Engineering Adriana Pereira de Medeiros, Daniel Schwabe, and Bruno Feijó Dept. of Informatics, PUC-Rio, Rua Marquês de São Vicente
More informationStatic Safety Analysis of UML Action Semantics for Critical Systems Development
Static Safety Analysis of UML Action Semantics for Critical Systems Development Zsigmond Pap, Dániel Varró Dept. of Measurement and Information Systems Budapest University of Technology and Economics H-1521
More informationTowards 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 informationArchitectural Design
Architectural Design Topics i. Architectural design decisions ii. Architectural views iii. Architectural patterns iv. Application architectures Chapter 6 Architectural design 2 PART 1 ARCHITECTURAL DESIGN
More informationDESIGN PATTERN MATCHING
PERIODICA POLYTECHNICA SER. EL. ENG. VOL. 47, NO. 3 4, PP. 205 212 (2003) DESIGN PATTERN MATCHING Dániel PETRI and György CSERTÁN Department of Measurement and Information Systems Budapest University of
More informationProduct 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 informationGame Architecture and Modeling Assessment
Game Architecture and Modeling Assessment The game is divided into a client and a server application. The above diagram shows two of clients connected to a server, all of them with their internal component
More informationA Product Derivation Tool Based on Model-Driven Techniques and Annotations
Journal of Universal Computer Science, vol. 14, no. 8 (2008), 1344-1367 submitted: 15/11/07, accepted: 25/3/08, appeared: 28/4/08 J.UCS A Product Derivation Tool Based on Model-Driven Techniques and Annotations
More informationComponent-based Development Process and Component Lifecycle
Journal of Computing and Information Technology - CIT 13, 2005, 4, 321-327 321 Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2 and Michel Chaudron 3 1 Mälardalen
More informationObject-Oriented Design
Object-Oriented Design Lecturer: Raman Ramsin Lecture 20: GoF Design Patterns Creational 1 Software Patterns Software Patterns support reuse of software architecture and design. Patterns capture the static
More information