Behzad Bordbar
University of Birmingham
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Behzad Bordbar.
model driven engineering languages and systems | 2007
Kyriakos Anastasakis; Behzad Bordbar; Geri Georg; Indrakshi Ray
Alloy is a formal language, which has been applied to modelling of systems in a wide range of application domains. It is supported by Alloy Analyzer, a tool, which allows fully automated analysis. As a result, creating Alloy code from a UML model provides the opportunity to exploit analysis capabilities of the Alloy Analyzer to discover possible design flaws at early stages of the software development. Our research makes use of model based techniques for the automated transformation of UML class diagrams with OCL constraints to Alloy code. The paper demonstrates challenging aspects of the model transformation, which originate in fundamental differences between UML and Alloy. We shall discuss some of the differences and illustrate their implications on the model transformation process. The presented approach is explained via an example of a secure e-business system.
Software and Systems Modeling | 2010
Kyriakos Anastasakis; Behzad Bordbar; Geri Georg; Indrakshi Ray
The Unified Modeling Language (UML) is the de facto language used in the industry for software specifications. Once an application has been specified, Model Driven Architecture (MDA) techniques can be applied to generate code from such specifications. Since implementing a system based on a faulty design requires additional cost and effort, it is important to analyse the UML models at earlier stages of the software development lifecycle. This paper focuses on utilizing MDA techniques to deal with the analysis of UML models and identify design faults within a specification. Specifically, we show how UML models can be automatically transformed into Alloy which, in turn, can be automatically analysed by the Alloy Analyzer. The proposed approach relies on MDA techniques to transform UML models to Alloy. This paper reports on the challenges of the model transformation from UML class diagrams and OCL to Alloy. Those issues are caused by fundamental differences in the design philosophy of UML and Alloy. To facilitate better the representation of Alloy concepts in the UML, the paper draws on the lessons learnt and presents a UML profile for Alloy.
model driven engineering languages and systems | 2006
David H. Akehurst; Behzad Bordbar; M. J. Evans; W.G.J. Howells; Klaus D. McDonald-Maier
A number of different Model Transformation Frameworks (MTF) are being developed, each of them requiring a user to learn a different language and each possessing its own specific language peculiarities, even if they are based on the QVT standard. To write even a simple transformation, these MTFs require a large amount of learning time. We describe in this paper a minimal, Java based, library that can be used to support the implementation of many practical transformations. Use of this library enables simple transformations to be implemented simply, whilst still providing some support for more complex transformations.
Information & Software Technology | 2009
Geri Georg; Indrakshi Ray; Kyriakos Anastasakis; Behzad Bordbar; Manachai Toahchoodee; Siv Hilde Houmb
We propose a methodology, based on aspect-oriented modeling (AOM), for incorporating security mechanisms in an application. The functionality of the application is described using the primary model and the attacks are specified using aspects. The attack aspect is composed with the primary model to obtain the misuse model. The misuse model describes how much the application can be compromised. If the results are unacceptable, then some security mechanism must be incorporated into the application. The security mechanism, modeled as security aspect, is composed with the primary model to obtain the security-treated model. The security-treated model is analyzed to give assurance that it is resilient to the attack.
Lecture Notes in Computer Science | 2001
David H. Akehurst; Behzad Bordbar
UML is the de-facto standard language for Object-Oriented analysis and design of information systems. Persistent storage and extraction of data in such systems is supported by databases and query languages. UML sustains many aspects of software engineering; however, it does not provide explicit facility for writing queries. It is crucial for any such query language to have, at least, the expressive power of Relational Algebra, which serves as a benchmark for evaluating its expressiveness. The combination of UML and OCL can form queries with the required expressive power. However, certain extensions to OCL are essential if it is to be used effectively as a Query Language. The adoption of the ideas presented in this paper will enable query expressions to be written using OCL, that are elegant and ideally suited for use in conjunction with UML data models. This technique is illustrated by expressing the UML equivalent of an example Relational data model and associated query expressions.
enterprise distributed object computing | 2010
Imran Sarwar Bajwa; Behzad Bordbar; Mark G. Lee
Object Constraint Language (OCL) plays a key role in Unified Modeling Language (UML). In the UML standards, OCL is used for expressing constraints such as well-definedness criteria. In addition OCL can be used for specifying constraints on the models and pre/post conditions on operations, improving the precision of the specification. As a result, OCL has received considerable attention from the research community. However, despite its key role, there is a common consensus that OCL is the least adopted among all languages in the UML. It is often argued that, software practitioners shy away from OCL due to its unfamiliar syntax. To ensure better adoption of OCL, the usability issues related to producing OCL statement must be addressed. To address this problem, this paper aims to preset a method involving using Natural Language expressions and Model Transformation technology. The aim of the method is to produce a framework so that the user of UML tool can write constraints and pre/post conditions in English and the framework converts such natural language expressions to the equivalent OCL statements. As a result, the approach aims at simplifying the process of generation of OCL statements, allowing the user to benefit form the advantages provided by UML tools that support OCL. The suggested approach relies on Semantic Business Vocabulary and Rules (SBVR) to support formulation of natural language expressions and their transformations to OCL. The paper also presents outline of a prototype tool that implements the method.
Proceedings of the 6th International Workshop on Model-Driven Engineering, Verification and Validation | 2009
Seyyed M. A. Shah; Kyriakos Anastasakis; Behzad Bordbar
Model Transformations can be used to bridge the gap between design and analysis technical spaces by creating tools that allow a model produced by a designer to be transformed to a model suitable for conducting automated analysis. Such model transformations aim at allowing the designer to benefit from the capabilities provided by analysis tools and languages. If the designer who is not a formal method expert is to benefit from such tools, the outcome of the analysis should also be transformed to the language used in the design domain. This paper presents a study involving UML2Alloy, a tool for transforming UML models in form of UML class diagrams which are augmented with OCL constraints, to Alloy. The conversion allows analysis of UML models via Alloy, to identify consistencies in those UML models. We present a method of automatically creating a model transformation based on the original UML2Alloy transformation. The new transformation converts Alloy instances into the UML equivalent object diagram. The current technique is presented with the help of an example, along with a prototype implementation using the QVT standard.
Discrete Event Dynamic Systems | 2008
George Jiroveanu; René Boel; Behzad Bordbar
We consider a Petri Net model of the plant. The observation is given by a subset of transitions whose occurrence is always and immediately sensed by a monitoring agent. Other transitions not in this subset are silent (unobservable). Classical on-line monitoring techniques, which are based on the estimation of the current state of the plant and the detection of the occurrence of undesirable events (faults), are not suitable for models of large systems due to high spatial complexity (exponential in the size of the entire model). In this paper we propose a method based on the explanation of plant observation. A legal trace minimally explains the observation if it includes all unobservable transitions whose firing is needed to enable the observed transitions. To do so, starting from an observable transition, using backward search techniques, a set of minimal explanations is derived, which are sufficient for detecting whether a fault event must have occurred for sure in the plant or not. The technique also allows production of a set of basis markings for the estimation of the current state of the plant. The set of all possible current markings can then be characterized as the unobservable reach of these basis markings. The computational complexity of the algorithm depends on the size of the largest connected subnet which includes only unobservable transitions. This allows monitoring of plants of any size in which there is no large unobservable subnet. We also illustrate the applicability of the method for the monitoring of a class of infinite state systems, unbounded Petri Nets with unobservable trap circuits, and we show how this can be useful for distributed implementations.
symposium on access control models and technologies | 2009
Manachai Toahchoodee; Indrakshi Ray; Kyriakos Anastasakis; Geri Georg; Behzad Bordbar
Traditional access control models, such as Role-Based Access Control (RBAC), do not take into account contextual information, such as location and time, for making access decisions. Consequently, they are inadequate for specifying the access control needs of many complex real-world applications, such as the Dengue Decision Support (DDS) that we discuss in this paper. We need to ensure that such applications are adequately protected using emerging access control models. This requires us to represent the application and its access control requirements in a formal specification language. We choose the Unified Modeling Language (UML) for this purpose, since UML is becoming the defacto specification language in the software industry. We need to analyze this formal specification to get assurance that the application is adequately protected. Manual analysis is error-prone and tedious. Thus, we need automated tools for verification of UML models. Towards this end, we propose that the UML models be converted to Alloy. Alloy is based on first-order logic, has a software infrastructure that supports automated analysis, and has been used for the verification of real-world applications. We show how to convert the UML models to Alloy and verify the resulting model using the Alloy Analyzer which has embedded SAT-solvers. The results from the Alloy Analyzer will help uncover the flaws in the specification and help us refine the application and its access control requirements.
international conference on conceptual modeling | 2004
Behzad Bordbar; Athanasios Staikopoulos
Web Services are seen as one of the most promising solutions for the integration of autonomous, heterogonous e-business systems. Today’s e-commerce systems often involve a combination of multiple Web Services, which are implemented via a mix of technologies such as Business Process Markup Language (BPML), Business Process Execution Language for Web Services (BPEL4WS), and Web Service Choreography Interface (WSCI).