Towards an approach for modeling and formalizing SOA design patterns with Event-B (original) (raw)

Using SoaML Models and Event-B Specifications for Modeling SOA Design Patterns

Although design patterns have become increasingly popular, most of them are presented in an informal way. Patterns, proposed by the SOA design pattern community, are described with a proprietary informal notation, which can raise ambiguity and may lead to their incorrect usage. Modeling SOA design patterns with a standard formal notation avoids misunderstanding by software architects and helps endow design methods. In this paper, we present an approach that aims, first, to model message-oriented SOA design patterns with the SoaML language, and second to transform them to Event-B specifications. These two steps are performed before undertaking the effective coding of a design pattern providing correct by construction pattern-based software architectures. Our approach is enhanced with a tool supporting it. Specification results are imported under the Rodin platform which we use to prove model consistency.

Modeling and refinement SOA design patterns with Event-B method

2012

Using design patterns has become increasingly popular. Most design patterns are proposed in an informal way, which can give rise to ambiguity and may lead to incorrect usage. Patterns, proposed by the SOA design pattern community, are described with an appropriate notation. So they require modeling with a standard notation and then formalization. In this paper, we propose a formal architecture-centric approach that aims rst to model message-oriented SOA design patterns with the SoaML standard language and second to formally specify these patterns at a high level of abstraction using the Event-B language. These two steps are performed before undertaking the eective coding of a design pattern providing correct by design solutions. Our approach is experimented through an example we present in this paper. We implemented our approach under the Rodin platform which we use to prove model consistency.

Modeling and renement SOA design patterns with Event-B method

2015

Abstract. Using design patterns has become increasingly popular. Most design patterns are proposed in an informal way, which can give rise to ambiguity and may lead to incorrect usage. Patterns, proposed by the SOA design pattern community, are described with an appropriate nota-tion. So they require modeling with a standard notation and then formal-ization. In this paper, we propose a formal architecture-centric approach that aims rst to model message-oriented SOA design patterns with the SoaML standard language and second to formally specify these patterns at a high level of abstraction using the Event-B language. These two steps are performed before undertaking the eective coding of a design pattern providing correct by design solutions. Our approach is experi-mented through an example we present in this paper. We implemented our approach under the Rodin platform which we use to prove model consistency. 1

An Approach for Modeling and Formalizing SOA Design Patterns

2013 Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2013

Although design patterns has become increasingly popular, most of them are presented in an informal way, which can give rise to ambiguity and may lead to their incorrect usage. Patterns proposed by the SOA design pattern community are described with informal visual notations. Modeling SOA design patterns with a standard formal notation contributes to avoid misunderstanding by software architects and helps endowing design methods with refinement approaches for mastering system architectures complexity. In this paper, we present a formal architecture-centric approach that aims, first, to model message-oriented SOA design patterns with the SoaML standard language, and second to formally specify these patterns at a high level of abstraction using the Event-B method. These two steps are performed before undertaking the effective coding of a design pattern providing correct by construction patternbased software architectures. Our approach is experimented through an example we present in this paper. We implemented our approach under the Rodin platform, which we use to prove model consistency.

A refinement-based approach for building valid SOA design patterns

International Journal of Cloud Computing, 2015

Although design patterns have become increasingly popular, most of them are proposed in an informal way, which can give rise to ambiguity and may lead to their incorrect usage. Patterns proposed by the SOA design pattern community are described with informal visual notations. Modeling SOA design patterns with a standard formal notation contributes to avoid misunderstanding by software architects and helps endowing design methods with renement approaches for mastering system architectures complexity. In this paper, we present a formal renement-based approach that aims, rst, to model message-oriented SOA design patterns with the SoaML standard language, and second to formally specify these patterns at a high level of abstraction using the Event-B method. These two steps are performed before undertaking the eective coding of a design pattern providing correct by construction pattern-based software architectures. Our approach is experimented through an example we present in this paper. We implemented our approach under the Rodin platform, which we use to prove model consistency.

One approach to partial formalization of SOA design patterns using production rules

2012 Federated Conference on Computer Science and Information Systems, 2012

Service oriented architecture (SOA) is nowadays one of the dominant styles in developing new information systems. These information systems often have complex models, which can contain mistakes, or are described by informally. In order to minimize mistakes and to create formal models, patterns as components of software development could be used-according to Model driven development (MDD) principles. Design patterns in SOA have been identified by T. Erl [1]. However, they are represented in form which is suitable for humans, but not for computers. In context of machine processing formal representation of patterns would be advantageous. In this paper we present our approach to partial formal representation of SOA design patterns using production rules. This partial formal representation is useful in searching for mistakes (antipatterns) in models and will enable creating formal models (with patterns) from informal documents.

Event-B Patterns and Their Tool Support

2009

Event-B has given developers the opportunity to construct models of complex systems that are correct by construction. However, there is no systematic approach, especially in terms of reuse, which could help with the construction of these models. We introduce the notion of design patterns within the framework of Event-B to shorten this gap.

A formal framework to model and validate event-based software architecture

Procedia Computer Science, 2011

Today, distributed systems with loose connections are increasingly developed using event-based architectures. In these architectures, systems are composed of separate components which cooperate dynamically. The communication and cooperation of components in these architectures are done through event passing mechanisms. The main challenge in these architectures is to define a framework to model and validate systems under development. In this paper, we propose a framework using ASMETA (ASM mETA language) for modelling systems through event-based architectures. Validation of the whole system is done through model checking using Bogor. We describe the process of automatically mapping ASM models to BIR -the input language of Bogor-. In the end, we present our experimental results using the proposed approach with different case studies.

Transformation of compound SOA Design Patterns

Procedia Computer Science, 2017

Software Design Patterns provide architects and developers with reusable software elements helping them to master building complex software systems. In real applications, problems are complex and their solutions can be represented by compound patterns that require the combination and reuse of two or more design patterns. In this paper, we propose a transformation approach of compound SOA design patterns based on two types of transformations. The first type, is an M2M (Model to Model) transformation. It allows to transform SOA design patterns modeled with the semi-formal SoaML language and linked together with composition operators to a compound pattern. The second type, is an M2T (Model to Text) transformation. It allows to transform compound pattern model to Event-B specifications. So, the compound pattern will have a graphic representation and a formal description.

SOEDA: A Method for Specification and Implementation of Applications on a Service-Oriented Event-Driven Architecture

Lecture Notes in Business Information Processing, 2009

Both Event-Driven Architecture (EDA) and Service-Oriented Architecture (SOA) are unique architectural styles widely used in today's industries. However, they mostly exist as isolated systems that could greatly benefit from each other when being combined. This paper introduces SOEDA, an approach that unifies EDA and SOA by introducing a development method taking advantage of the unique properties of each architecture. The different steps of the method reach from abstract process specification over event and process implementation to the the final execution phase -described in an abstract manner and by means of an example. Resulting applications are based on state-of-the-art workflow technology using events to trigger the execution of individual business activities.