Service-Oriented Development of Fault Tolerant Communicating Systems

Author(s):  
Linas Laibinis ◽  
Elena Troubitsyna ◽  
Sari Leppänen

Telecommunication systems must have a high degree of availability, that is, a high probability of correct and timely provision of requested services. To achieve this, correctness of software for such systems should be ensured. Application of formal methods helps increase confidence in building correct software. However, to be used in practice, formal methods should be well integrated into existing development process. In this paper, the authors propose a formal model-driven approach to development of communicating systems. The authors formalize and extend the Lyra approach—a top-down service-oriented method for development of communicating systems. Lyra is based on transformation and decomposition of models expressed in UML2. The authors formalize Lyra in the B Method by proposing a set of formal specification and refinement patterns reflecting the essential models and transformations of the Lyra phases. Moreover, this paper extends Lyra to integrate reasoning about fault tolerance in the entire development flow.

Author(s):  
Linas Laibinis ◽  
Elena Troubitsyna ◽  
Sari Leppänen

Telecommunication systems must have a high degree of availability, that is, a high probability of correct and timely provision of requested services. To achieve this, correctness of software for such systems should be ensured. Application of formal methods helps increase confidence in building correct software. However, to be used in practice, formal methods should be well integrated into existing development process. In this paper, the authors propose a formal model-driven approach to development of communicating systems. The authors formalize and extend the Lyra approach—a top-down service-oriented method for development of communicating systems. Lyra is based on transformation and decomposition of models expressed in UML2. The authors formalize Lyra in the B Method by proposing a set of formal specification and refinement patterns reflecting the essential models and transformations of the Lyra phases. Moreover, this paper extends Lyra to integrate reasoning about fault tolerance in the entire development flow.


Author(s):  
Chung-Yeung Pang

Back in the 1970s, applications mainly comprised programs written in COBOL. Many of these applications are still in operation. To meet new business demands, new applications that have to collaborate with existing programs need to be developed. It is possible to have an agile software architecture that enables easy development, extension and maintenance in COBOL. Such an architecture, and the agile development process, are presented in this article. The architectural design is a combination of the layered, component-based and service-oriented architectural patterns. It also includes features such as the centralized control of the business process, plug-and-play autonomous COBOL modules and context container for storing state data. A model-driven approach is used in the agile development process. Application models include UML class diagrams, state charts and activity diagrams from which various software artefacts and COBOL codes are generated. The architecture and development approaches were first introduced in 2004 and have been successfully applied to 13 applications since then.


Author(s):  
Huy Tran ◽  
Ta’id Holmes ◽  
Uwe Zdun ◽  
Schahram Dustdar

This chapter introduces a view-based, model-driven approach for process-driven, service-oriented architectures. A typical business process consists of numerous tangled concerns, such as the process control flow, service invocations, fault handling, transactions, and so on. Our view-based approach separates these concerns into a number of tailored perspectives at different abstraction levels. On the one hand, the separation of process concerns helps reducing the complexity of process development by breaking a business process into appropriate architectural views. On the other hand, the separation of levels of abstraction offers appropriately adapted views to stakeholders, and therefore, helps quickly re-act to changes at the business level and at the technical level as well. Our approach is realized as a model-driven tool-chain for business process development.


2009 ◽  
Vol 121 (1) ◽  
pp. 5-20 ◽  
Author(s):  
Jihed Touzi ◽  
Fréderick Benaben ◽  
Hervé Pingaud ◽  
Jean Pierre Lorré

2011 ◽  
Vol 20 (02) ◽  
pp. 201-220 ◽  
Author(s):  
MARCOS LÓPEZ-SANZ ◽  
JUAN MANUEL VARA ◽  
ESPERANZA MARCOS ◽  
CARLOS E. CUESTA

Model-driven development is recognized as one of the most promising approaches in software engineering. Recent research in the area highlights the importance of using an explicit architectural model in this context. Since service-oriented architectures have also demonstrated to be adequate to overcome current software needs, the idea of using the model-driven approach to generate service-oriented architectural models has successfully flourished in the last years. However, the emphasis on the Service-Oriented Computing (SOC) paradigm has led to the design of architectures lacking some desirable features. Knowing the benefits provided by architectural styles, we have found that their use can help us to overcome those needs. Our goal is to obtain a service-oriented model which satisfies the requirements of the concrete architecture and complies with the constraints and vocabulary defined for a specific architectural style. To achieve this, here, we propose to use a weaving model which merges the concrete architectural model with a model of the architectural style of choice.


2007 ◽  
Vol 46 (01) ◽  
pp. 52-56 ◽  
Author(s):  
B. G. M. E. Blobel

Summary Objectives: As health care develops from an organization-centered via service-centered (disease management) towards a person-centered system (favored homecare, patient monitoring, body area networks), information systems involved have to be semantically interoperable, process-related, decision-supportive, context-sensitive, user-oriented, and trustworthy. Methods: The aforementioned paradigm shift requires highly flexible solutions based on knowledge concepts, provided by a service-oriented and model-driven approach. Results: Information systems’ design, implementation and maintenance have to be realized based on formal grammar. This is true for all considered aspects and views of the system and its components, using metalanguages and reflecting all domains touched. Conclusions: For meeting the challenge, involvement of, and close collaboration between, experts from different domains as well as knowledge and tooling regarding formal modeling and model interchange are required.


2022 ◽  
pp. 1511-1534
Author(s):  
Chung-Yeung Pang

Reusability is a clear principle in software development. However, systematic reuse of software elements is not common in most organizations. Application programmers rarely design and create software elements for possible future reuse. In many agile software development processes, the project teams believe that the development of reusable software elements can slow down the project. This can be a misconception. This chapter examines various ways to reuse software. Three approaches to developing reusable software artifacts from 15 years of experience in the agile development process are presented. The first approach is to create generic programs or configurable frameworks that support similar solutions for a variety of use cases and environments. The reuse of patterns is the second approach presented. Another effective way is to use a model-driven approach with model patterns. These approaches help to speed deployment software. The final product is flexible and can easily be adapted to changes. This is one of the main goals of an agile approach.


Author(s):  
Ingo Zinnikus ◽  
Gorka Benguria ◽  
Brian Elvesæter ◽  
Klaus Fischer ◽  
Julien Vayssière

Sign in / Sign up

Export Citation Format

Share Document