Model-Driven Domain Analysis and Software Development
Latest Publications


TOTAL DOCUMENTS

19
(FIVE YEARS 0)

H-INDEX

4
(FIVE YEARS 0)

Published By IGI Global

9781616928742, 9781616928766

Author(s):  
Brian Dougherty ◽  
Jules White ◽  
Douglas C. Schmidt

Distributed real-time and embedded (DRE) systems are increasingly being constructed with commercial-off-the-shelf (COTS) components to reduce development time and effort. The configuration of these components must ensure that real-time quality-of-service (QoS) and resource constraints are satisfied. Due to the numerous QoS constraints that must be met, manual system configuration is hard. Model-Driven Architecture (MDA) is a design paradigm that incorporates models to provide visual representations of design entities. MDAs show promise for addressing many of these challenges by allowing the definition and automated enforcement of design constraints. This chapter presents MDA techniques and tools that simplify and automate the configuration of COTS components for DRE systems. First, the challenges that make manual DRE system configuration infeasible are presented. Second, the authors provide an incremental methodology for constructing modeling tools to alleviate these difficulties. Finally, the authors provide a case study describing the construction of the Ascent Modeling Platform (AMP), which is a modeling tool capable of producing near-optimal DRE system configurations.


Author(s):  
Sebastian Rose ◽  
Marius Lauder ◽  
Michael Schlereth ◽  
Andy Schürr

Automation engineering heavily relies on concurrent model-driven design activities across multiple disciplines. The customization and integration of domain-specific modeling languages and tools play an important role. This contribution introduces a conceptual framework for this purpose that combines the modeling standards of the Object Management Group (OMG) with precisely defined specification techniques based on metamodeling and graph grammars. The main focus is on the development of synchronization mechanisms between modeling tools and on the presentation of some extensions of the underlying graph grammar formalism motivated by its application to a real-world scenario. These techniques are presented by a case study about the application of graph grammars within automation engineering.


Author(s):  
Iwona Dubielewicz ◽  
Bogumila Hnatkowska ◽  
Zbigniew Huzar ◽  
Lech Tuzinkiewicz

The chapter presents a quality-driven, MDA-based approach for database system development. It consists of four parts. The first part gives a short presentation of quality models and basic MDA concepts. The second one discusses the specific relationships between software development and quality assessment processes. The third part presents the Q-MDA framework which combines the aforementioned processes. The framework is next tailored for database systems design. In particular the authors discuss the relationship between MDA models and data models. The last part contains an example of the framework application. The example shows how the specification and evaluation of the quality of database models can influence the process of database system development.


Author(s):  
Yu Sun ◽  
Jules White ◽  
Jeff Gray ◽  
Aniruddha Gokhale

Cloud computing provides a platform that enables users to utilize computation, storage, and other computing resources on-demand. As the number of running nodes in the cloud increases, the potential points of failure and the complexity of recovering from error states grows correspondingly. Using the traditional cloud administrative interface to manually detect and recover from errors is tedious, time-consuming, and error prone. This chapter presents an innovative approach to automate cloud error detection and recovery based on a run-time model that monitors and manages the running nodes in a cloud. When administrators identify and correct errors in the model, an inference engine is used to identify the specific state pattern in the model to which they were reacting, and to record their recovery actions. An error detection and recovery pattern can be generated from the inference and applied automatically whenever the same error occurs again.


Author(s):  
Jules White ◽  
Brian Dougherty

Product-line architectures (PLAs) are a paradigm for developing software families by customizing and composing reusable artifacts, rather than handcrafting software from scratch. Extensive testing is required to develop reliable PLAs, which may have scores of valid variants that can be constructed from the architecture’s components. It is crucial that each variant be tested thoroughly to assure the quality of these applications on multiple platforms and hardware configurations. It is tedious and error-prone, however, to setup numerous distributed test environments manually and ensure they are deployed and configured correctly. To simplify and automate this process, the authors present a model-driven architecture (MDA) technique that can be used to (1) model a PLA’s configuration space, (2) automatically derive configurations to test, and (3) automate the packaging, deployment, and testing of con-figurations. To validate this MDA process, the authors use a distributed constraint optimization system case study to quantify the cost savings of using an MDA approach for the deployment and testing of PLAs.


Author(s):  
Audris Kalnins ◽  
Michal Smialek ◽  
Elina Kalnina ◽  
Edgars Celms ◽  
Wiktor Nowakowski ◽  
...  

This chapter presents an approach to software development where model driven development and software reuse facilities are combined in a natural way. The basis for all of this is a semiformal requirements language RSL. The requirements in RSL consist of use cases refined by scenarios in a simple controlled natural language and the domain vocabulary containing the domain concepts. The chapter shows how model transformations building a platform independent model (PIM) can be applied directly to the requirements specified in RSL by domain experts. Further development of the software case (PSM, code) is also supported by transformations, which in addition ensure a rich traceability within the software case. The reuse support relies on a similarity based comparison of requirements for software cases. If a similar part is found in an existing software case, a traceability link based slice of the solution can be merged into the new case. The implementation of the approach is briefly sketched.


Author(s):  
Janis Osis ◽  
Erika Asnina

Model-driven software development has all chances to turn software development into software engineering. But this requires not only mature methodologies but also engineering models. An engineering model should satisfy five key characteristics, namely, abstraction, understandability, accuracy, predictiveness and inexpensiveness. This chapter discusses capabilities of a Topological Functioning Model (TFM) as such an engineering model for the purposes of domain analysis and software development in common. The TFM has functional and topological properties. The functional properties are cause-effect relations, cycle structure, inputs, and outputs. The topological properties are connectedness, closure, neighborhood, and continuous mapping. Thanks to its formal mathematical foundations, the TFM completely satisfies the mentioned characteristics of engineering models that is illustrated in the chapter.


Author(s):  
Marite Kirikova

In information systems engineering there is a long history of development and application of different domain modeling approaches, methods and techniques. The chapter surveys and analyzes enterprise models, systems development artifacts, enterprise architectures, enterprise modeling tools, and information systems change management issues from the point of view of information systems engineering. The purpose of this work is to share experience from information systems engineering with model driven architecture community and to reveal strong and weak sides of domain modeling approaches and tools used in information systems engineering which, in turn, would help to see where further research and development efforts are needed in order to achieve maximum value from systems development efforts in the area of information systems engineering and model driven architecture. The chapter focuses on methods used in information systems engineering and, according to its purpose, does not consider in detail domain modeling approaches that are well known to model driven development/engineering/architecture community.


Author(s):  
Hyun Cho ◽  
Jeff Gray ◽  
Yuanfang Cai ◽  
Sonny Wong ◽  
Tao Xie

Software assets, which are developed and maintained at various stages, have different abstraction levels. The structural mismatch of the abstraction levels makes it difficult for developers to understand the consequences of changes. Furthermore, assessing change impact is even more challenging in software product lines because core assets are interrelated to support domain and application engineering. Model-driven engineering helps software engineers in many ways by lifting the abstraction level of software development. The higher level of abstraction provided by models can serve as a backbone to analyze and design core assets and architectures for software product lines. This chapter introduces model-driven impact analysis that is based on the synergy of three separate techniques: (1) domain-specific modeling, (2) constraint-based analysis, and (3) software testing. The techniques are used to establish traceability relations between software artifacts, assess the tradeoff of design alternatives quantitatively, and conduct change impact analysis.


Author(s):  
Jelena Zdravkovic ◽  
Tharaka Ilayperuma

Contemporary enterprises face strong pressures to increase competitiveness by engaging in alliances of several kinds. In a rapidly increasing degree, traditional organizational structures evolve towards online business using modern ICT – such as the Internet, semantic standards, process- and service-oriented architectures. For efficient applications of inter-organizational information systems, the alignment between business and ICT is a key factor. At the ICT level, Web services are used as the cornerstones for modeling the interaction points of Web applications. So far, development of Web services has focused on a technical perspective, such as the development of standards for message exchanges and service coordination. Thereby, business concepts, such as economic values exchanged among the cooperating actors, cannot be traced in Web service specifications. As a consequence, business and ICT models become difficult to keep aligned. To address this issue, the authors propose a MDA-based approach for design of software services which may be implemented using Web services and Web service coordinations. The proposal focuses on a value-explorative analysis and modeling of business services at the CIM level, and model transformations using UML 2 to the PIM level, by utilizing well-defined mappings.


Sign in / Sign up

Export Citation Format

Share Document