Figure 5 - uploaded by Andreas Rytina
Content may be subject to copyright.
2 Entity Model with Layered Extensions  

2 Entity Model with Layered Extensions  

Source publication
Conference Paper
Full-text available
Software product line (SPL) engineering is one approach for addressing customization and variability for products. However, current approaches and research, while often addressing feature modeling and component variability, insufficiently address difficulties and additional complexity with respect to entity model variability, which negatively impac...

Similar publications

Article
Full-text available
Within the wide framework of information production processes, we present a conversion formula that expresses the generalised Lorenz (GL) curve of a size-frequency distribution as a function of the corresponding rank-size distribution using a fully discrete modelling approach. Based on this conversion formula, we introduce a somewhat universal mode...

Citations

... This means that there is entity data variability in the resource types, attributes, and relations among these. Accordingly, this paper defines the following three types of entity variability for entity modeling [26]: ...
Article
The software product line (SPL) is an approach that develops a family of similar software by maximizing the reusability of development artifacts. The home resource management system in the smart home system is a core module of the home network middleware system. It manages all of the devices and services installed in the smart home system, i.e., installed devices, their installed location, their status (on/off), and related services. The basic functions of the home resource management system are similar no matter which kinds of homes they are installed in, but the detailed configurations of the location, device types, and services, including service combinations, differ from each other. Therefore, developers should focus on modifying the APIs and resource managers whenever a new kind of house needs to be serviced. To reduce these efforts, the demand for product line architecture (PLA) commonly used among different kinds of smart resource management systems has been raised and this paper describes the design results.
... The mentioned approaches have not been particularly designed to support data model variability. In addition there are some studies on data model variability [5], [6], but they are in the data model or domain model level and do not directly address the design and implementation of the database. As a result, an appropriate variability modeling approach supporting variability at database design level is necessary. ...
... ADMV process (Addressing the Data Model Variability) is a UML-based approach for SPL data modeling and data integration. [5], [6] ADMV uses adapters and views in order to support the data integration and variability in SPL. It is important that [5] and [6] do not consider the logical and conceptual modeling of the database and apply their proposed technique on a UML-based domain model. ...
... [5], [6] ADMV uses adapters and views in order to support the data integration and variability in SPL. It is important that [5] and [6] do not consider the logical and conceptual modeling of the database and apply their proposed technique on a UML-based domain model. ...
Conference Paper
Managing variability in a software family is crucial to software product line engineering. The existing variability management techniques, however do not particularly address database design in the context of information systems poduct lines. This paper presents a practical approach to handle variability in database design for families of software. We use the technique of Delta-Oriented Programming when a product is constructed by adding a number of delta modules to a core module incrementally, based on the features selected in the product configuration. We use SQL Data Definition Language to model core and delta modules. We present rules for consistency checking of the delta scripts based on the database consistency constraints to generate a valid consistent database schema for the product. Also we analyze the cases in which a conflict arises based on inconsistencies between delta modules. The fact that DDL is widely known to software developers, along with modularity and scalability of the proposed method makes it suitable to be used in industrial real world applications.
... Some features are common to all products, while others exist only in some of the products (i.e. if the functionality they provide is required by that product). Software product lines have found their way in many application domains, for example: eHealth systems [2], Mobile phones [3], Revenue Acquisition Management solutions [4], and Web portals [5]. In all these examples, the product line deals with data one way or another: processing data, generating and storing data, or simply retrieving data. ...
Conference Paper
Full-text available
In this paper, we provide an approach for modeling data variability as part of the overall software product line modeling approach. Modeling data variability in software product lines allows tailoring the data to the variability of a product. For this purpose, we have extended our Feature Assembly Modeling technique with the concept of persistency feature. We explain how these persistency features can be used to express the data variability, how they can be created and how they relate to the other features of the software product line. We also show how to derive a so-called variable data model from these persistency features and how an actual data model for a product of the product line can be derived. Additionally, annotations provide traceability between the variability of the features and the variability in the data model.
... Feature modeling is located somewhere between routine configuration and creative construction [6], and has already been used in many successful cases. However, there are other kinds of variation, such as in entity models [8], which are more complex than it is possible to capture in feature models, because they are too generic [3]. These require a richer mechanism, with more expressive power to capture detailed relationships and constraints between entities. ...
Conference Paper
Full-text available
Model-Driven Engineering (MDE) can leverage domain engineering by offering support to complex variability and automatic implementation. However, little attention is given to the process of designing a domain architecture that is well suited to MDE techniques such as domain-specific languages and software transformations. A domain-specific software architecture is normally developed based on a few selected and important requirements, called architectural drivers. This paper presents three types of architectural drivers that can be used to build a software architecture that can take full advantage of the benefits of MDE. It also presents some patterns that can be used to help in the architectural design. An evaluation is also presented, showing that, when used together in a model-driven domain engineering project, these drivers and patterns can lead to some benefits in terms of reusability and complexity, but that in some cases there are drawbacks that need to be considered in a trade-off analysis.
... [17] ...
Article
Abstract—Variability on source code level in automotive,soft- ware,engineering,is handled,by C/C++ preprocessing,directives. It provides fine-grained definition of variation points, but brings highly,complex,structures,into the source,code. The software gets more difficult to understand, to maintain and to integrate changes. Current approaches,for modeling,and,managing,vari- ability on source,code do not consider,the specific requirements of the automotive domain. To close this gap, we propose a model- driven approach,to support software engineers in handling,source code variability and,configuration,of software,variants. For this purpose, a variability model is developed that is linked with the source code. Using this approach, a software engineer can shift work,steps to the variability model in order to model and manage variation points and,implement,their variants in the source code. Index Terms—automotive,software engineering; programming;
... A wide range of research papers proposes graphical representations for complex software ranging from domain specific code generators (e.g: [6], [9]) to software models expressed in UML (e.g: [4], [18]). [3] succinctly summarizes the reasoning for the visual representation : ...
Conference Paper
Full-text available
In children’s playrooms and in secondary school projects programmable toys and entry level programming courses use visual programming languages instead of the (standard) textual source codes seen in Logo, BASIC, Java. Higher ed- ucation and research also propose visual programming or even (graphical) model based design to steepen the learning curve1 . Industry however appears unfazed with this approach. Textual source code is still the main means of representing software. Based on experience gained in laboratory exercises con- ducted with students of an undergraduate course in mecha- tronics this paper adresses the feasibility and efficiency of this approach.
... [17] ...
Article
Full-text available
Abstract—Developing,smart,home,systems,that properly,fit end-user needs,is not always,an easy task due,to the lack of understanding,that may,exist between,end-users and,system developers. In the context of Software Product Lines, several approaches,have,been,presented,to improve,the development of smart home system functionality. However, little support is provided to improve the interaction with end-users. In this work, we,extend,a Software Product,Line based,on Model-Driven Development,with an interactive design tool that allows end-users to actively participate in the SPL. This tool allows end-users to configure the decision model,that drives the production,process of the software,product,line by themselves. In order to develop this tool we have,been inspired by well-known,and,tested end- user techniques,and,interaction patterns that improve,the user interface usability.
... The Approach for Data Model Variability (ADMV) described in this paper provides a unified methodology for SPLE to consistently view and edit the data within the data model, capture the variability, as well as shield artifact developers from extraneous differences. Additionally, constraint checking support for data integration variability in SPLs via views and adapter generation is considered, expanding on our previous work [1]. ...
Article
Full-text available
Software Product Line (SPL) engineering is one approach for addressing customization and variability for software products. However, current state-of-the-art often focuses on feature modeling and component variability while insufficiently addressing data model variability difficulties and their associated complexity. Various software qualities, such as correctness, reusability, maintainability, testability, and evolvability, are negatively impacted. In this article the Approach for Data Model Variability (ADMV) is described which provides a unified and systematic methodology for providing a consistent view to capture data variability in data models. Adapter generation hides and decouples components from superfluous data elements and supports SPL data integration with the potentially multifarious external systems and devices that a SPL may need to consider. An eHealth SPL case study is presented supporting adapter generation with differential data conversion and data integration with medical devices. The results show that with this approach, data model variability and data integration can be effectively addressed and desirable software qualities preserved.
Article
Full-text available
The strong cost pressure of the market and safety issues faced by aerospace industry affect the development. Suppliers are forced to continuously optimize their life-cycle processes to facilitate the development of variants for different customers and shorten time to market. Additionally, industrial safety standards like RTCA/DO-178C require high efforts for testing single products. A suitably organized test process for Product Lines (PL) can meet standards. In this paper, we propose an approach that adopts Model-based Testing (MBT) for PL. Usage models, a widely used MBT formalism that provides automatic test case generation capabilities, are equipped with variability information such that usage model variants can be derived for a given set of features. The approach is integrated in the professional MBT tool MaTeLo. We report on our experience gained from an industrial case study in the aerospace domain.