IT Systems for the Digital Enterprise

Author(s):  
Souvik Barat ◽  
Asha Rajbhoj

Modern digital enterprises operate in a dynamic environment where the business objectives, underlying technologies, and expectations from the end-users change over the time. Therefore, developing agile and adaptive IT systems is a critical need for most of the large business-critical enterprises. However, it is observed that the traditional IT system development approaches are not capable of ensuring all desired characteristics. This chapter discusses a set of established concepts and techniques that collectively help to achieve the desired agility and adaptiveness. The chapter reflects on the core concept of model-driven engineering for agility, technology independence, and retargetability; focuses on component abstraction to introduce divide-and-concur and separation of concerns; and proposes the use of variability and the concept of productline for developing configurable and extensible IT system.

Author(s):  
Janis Osis ◽  
Erika Nazaruka (Asnina)

Some experts opine that software is built in a primitive way. The role of modeling as a treatment for the weakness of software engineering became more important when the principles of Model Driven Architecture (MDA) appeared. Its main advantage is architectural separation of concerns. It showed the necessity of modeling and opened the way for software development to become an engineering discipline. However, this principle does not demonstrate its whole potential power in practice because of lack of mathematical accuracy in the very initial steps of software development. The sufficiency of modeling in software development is still disputable. The authors believe that software development in general (and modeling in particular) based on mathematical formalism in all of its stages and together with the implemented principle of architectural separation of concerns can become an important part of software engineering in its real sense. They propose the formalism by topological modeling of system functioning as the first step towards engineering.


Author(s):  
Liliana Maria Favre

Smartphones are at the core of new paradigms such as cloud computing, pervasive computing, and internet of things. Frequently, the development of mobile software requires adaptation of valuable and tested non-mobile software. In this context, most challenges are related to the diversity of platforms on the smartphones market and to the need of systematic and reusable processes with a high degree of automation that reduce time, cost, and risks. To face these challenges, this chapter presents an analysis of non-mobile software modernization through an integration of MDE (model-driven engineering) with cross-platform development. Two approaches are analyzed. One of them is a lightweight process that combines MDA (model-driven architecture) with traditional static and dynamic analysis techniques of reverse engineering. The other approach is based on ADM (architecture-driven modernization) standards. A scenario for the migration of C/C++ or Java software through the multiplatform Haxe language is described.


Author(s):  
Janis Osis ◽  
Erika Nazaruka (Asnina)

Some experts opine that software is built in a primitive way. The role of modeling as a treatment for the weakness of software engineering became more important when the principles of Model Driven Architecture (MDA) appeared. Its main advantage is architectural separation of concerns. It showed the necessity of modeling and opened the way for software development to become an engineering discipline. However, this principle does not demonstrate its whole potential power in practice because of lack of mathematical accuracy in the very initial steps of software development. The sufficiency of modeling in software development is still disputable. The authors believe that software development in general (and modeling in particular) based on mathematical formalism in all of its stages and together with the implemented principle of architectural separation of concerns can become an important part of software engineering in its real sense. They propose the formalism by topological modeling of system functioning as the first step towards engineering.


Author(s):  
Davide Ferraris ◽  
Carmen Fernandez-Gago ◽  
Javier Lopez

AbstractThe Internet of Things (IoT) is a paradigm that permits smart entities to be interconnected anywhere and anyhow. IoT opens new opportunities but also rises new issues. In this dynamic environment, trust is useful to mitigate these issues. In fact, it is important that the smart entities could know and trust the other smart entities in order to collaborate with them. So far, there is a lack of research when considering trust through the whole System Development Life Cycle (SDLC) of a smart IoT entity. In this paper, we suggest a new approach that considers trust not only at the end of the SDLC but also at the start of it. More precisely, we explore the modeling phase proposing a model-driven approach extending UML and SysML considering trust and its related domains, such as security and privacy. We propose stereotypes for each diagram in order to give developers a way to represent trust elements in an effective way. Moreover, we propose two new diagrams that are very important for the IoT: a traceability diagram and a context diagram. This model-driven approach will help developers to model the smart IoT entities according to the requirements elicited in the previous phases of the SDLC. These models will be a fundamental input for the following and final phases of the SDLC.


2021 ◽  
Vol 27 (7) ◽  
pp. 755-773
Author(s):  
Sylvie Trouilhet ◽  
Jean-Paul Arcangeli ◽  
Jean-Michel Bruel ◽  
Maroun Koussaifi

At the heart of cyber-physical and ambient systems, the user should permanently benefit from applications adapted to the situation and her/his needs. To do this, she/he must be able to configure her/his software environment and be supported as much as possible in that task. To this end, an intelligent “engine” assembles software components that are present in the ambient environment at the time and makes unanticipated applications emerge. The problem is to put the user “in the loop”, i.e., provide adapted and intelligible descriptions of the emerging applications, and present them so that the user can accept, modify or reject them. Besides, user feedback must be collected to feed the engine’s learning process. Our approach relies on Model-Driven Engineering (MDE). However, differently from the regular use of MDE tools and techniques by engineers to develop software and generate code, our focus is on end-users. Models of component assemblies are represented and made editable for them. Based on a metamodel that supports modeling and de- scription of component-based applications, a user interface provides multi-faceted representations of the emerging applications and captures user feedback. Our solution relies on several domain- specific languages and a transformation process, based on the established MDE tools (Gemoc studio, Eclipse Modeling Framework, EcoreTools, Sirius, Acceleo). It works in conjunction with the intelligent engine that builds the emerging applications and to which it provides learning data.


2009 ◽  
Vol 38 (38) ◽  
pp. 119-130
Author(s):  
Erika Asnina

Use of Business Models within Model Driven Architecture Model Driven Architecture is a framework dedicated for development of large and complex computer systems. It states and implements the principle of architectural separation of concerns. This means that a system can be modeled from three different but related to each other viewpoints. The viewpoint discussed in this paper is a Computation Independent one. MDA specification states that a model that shows a system from this viewpoint is a business model. Taking into account transformations foreseen by MDA, it should be useful for automation of software development processes. This paper discusses an essence of the Computation Independent Model (CIM) and the place of business models in the computation independent modeling. This paper considers four types of business models, namely, SBVR, BPMN, use cases and Topological Functioning Model (TFM). Business persons use SBVR to define business vocabularies and business rules of the existing and planned domains, BPMN to define business processes of both existing and planned domains, and use cases to define business requirements to the planned domain. The TFM is used to define functionality of both existing and planned domains. This paper discusses their capabilities to be used as complete CIMs with formally defined conformity between planned and existing domains.


Sign in / Sign up

Export Citation Format

Share Document