Lessons Learned on Using Execution Model Implementation in Sparx Enterprise Architect for Verification of the Topological Functioning Model

Lessons Learned on Using Execution Model Implementation in Sparx Enterprise Architect for Verification of the Topological Functioning Model

Lessons Learned on using Execution Model Implementation in Sparx Enterprise Architect for Verification of the Topological Functioning Model Viktoria Ovchinnikova and Erika Nazaruka Department of Applied Computer Science, Riga Technical University, Sētas iela 1, LV-1048, Riga, Latvia Keywords: Execution Model, UML, Modeling Tools, Topological Functioning Model. Abstract: The execution model can improve analysis, testing and verification of software systems and their features right from the early stages of development. It helps to decrease risks and the possibility of future defects. One of the main goals and challenges for modern modeling tools is the ability to generate usable source code using the modeling approach. The system functionality can be shown as Topological Functioning Model and this functionality can be validated with the help of modeling tools. The paper presents an overview of modeling tools for the execution of models and the ways that they can aid software development. Four modeling tools are reviewed and compared based on their features and documentation – Cameo Simulation Toolkit, Enterprise Architect, Papyrus with Moka and BridgePoint. Two of them – Cameo Simulation Toolkit and Enterprise Architect, are analyzed and compared in practice. Results of the overview are the base for future work, where the tools will be applied for case studies. 1 INTRODUCTION The research hypothesis is that the execution of models and mentioned modeling tools can help in One of the first steps of software development is model (especially the TFM) verification and requirements analysis, where the goal is to specify decrease future risks of implementation errors, while the system structure and behavior. Usually at this not severely complicating the resulting model or stage requirements are represented in the form of requiring significantly more time and other resource unstructured text and structured descriptions that investments. later become the system documentation. Both the The main goal is to study the main approaches of creation and reading of such documentation is a model verification and overview the characteristics time-consuming process. Modeling approaches can of modeling tools that support execution of models be used to help decrease this time since they can and can be potentially used for verification of TFM serve as a blueprint and the documentation (through transformations to UML at this stage of simultaneously. Either way, the specification must research). Four tools that support execution of bridge the problem and the solution domains. The models have been selected - Cameo Simulation Topological Functioning Model (TFM) can be used Toolkit, Enterprise Architect, Papyrus with Moka to achieve this goal (see Section 2.2). and BridgePoint. To accomplish this goal the However, if we put effort into modeling, the following tasks need to be done: review execution result must be trustable. To save resources the model models and their purpose; research information needs to be automatically or manually verified about modeling tools available as well as the official before implementation. The verification can be websites of these tools; summarize the results and performed by using execution models, which can analyze benefits and the usability of selected also be transformed to source code. The execution modeling tools in the software system development models and the supporting modeling tools aim to process. perform the generation without writing a single line The current work is focused on the tool of actual code. Enterprise Architect that is examined in practice in section 3. Cameo Simulation Toolkit has been 355 Ovchinnikova, V. and Nazaruka, E. Lessons Learned on using Execution Model Implementation in Sparx Enterprise Architect for Verification of the Topological Functioning Model. DOI: 10.5220/0006388403550366 In Proceedings of the 12th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE 2017), pages 355-366 ISBN: 978-989-758-250-9 Copyright © 2017 by SCITEPRESS – Science and Technology Publications, Lda. All rights reserved MDI4SE 2017 - Special Session on Model-Driven Innovations for Software Engineering previously analyzed in practice in (Ovchinnikova & number of executions and use hypothesis testing to Nazaruka, 2016) and the remaining tools (Papyrus know whether results provide a statistical evidence with Moka and BridgePoint) are left for further to check the compliance of requirements to the research. Their descriptions and characteristics are specification. Only systems with certain structural based only on documentation and other available properties can be checked by using numerical information. algorithms. The authors suggest that simulation- Section 2 presents the background of the based approach cannot get a definitely correct result research and related work – the TFM within the in comparison with numerical approach. Statistical Model Driven Paradigm, execution UML in brief model checking approach can be used for getting and modeling tools for execution models. Section 3 estimates of the probability measure on executions. reviews tools for execution models and current Statistical model checking can be applied to the results. Section 4 discusses the results and states greater number of systems in comparison with further research tasks. numerical approach, but it provides only probabilistic results and does not guarantee the correctness of the answer received from the executed 2 BACKGROUND algorithm. Authors in (Milewicz & Pirkelbauer, 2017) tried to produce a categorical and quantitative model of 2.1 Related Work thread behaviors. Different threads can produce different combinations due to concurrency and it is Different techniques of model checking and complicated for a tester to repeat or determine verification exist and have been researched in the concurrency bugs. They define a thread as a related works. sequence of the blocks of instructions that are The authors of (Donini et al., 2006) use related. Their aim is to determine potential techniques of model checking for performing concurrency bugs which can happen during automated verification of UML design of a web execution of parallel threads. The model checking application. The focus is on black-box verification. can precisely define and find how, where and when They propose a UML design checking method to violations can occur. The authors used heuristics to check the correctness of the design. The method detect the potential bugs (e.g. deadlock detection, automates the checking of a system model with its count of times that the current thread has been specifications, which is expressed in a logical scheduled and count of other possible threads that formalism. Model checking in this case is automated can be scheduled instead). The approach allows to and does not need any user interaction, while tests or analyze and detect possible bugs quicker and at a other formal methods can require user interaction. reduced cost. Finally, a system to automatically build the Combined logics and approaches involving Symbolic Model Verifier (SMV) model was different dimensions are considered by authors of implemented, which can be verified according to (Konur et al., 2013). They do not introduce a new system specifications. Specifications are presented logic for model checking of multi-agent systems. as Computation Tree Logic (CTL) formulas. Formal Instead they show a modular approach, created from verification helps to ensure the correctness and the combined logics, that introduces a generic accuracy of software system. It is based on static method of model checking and presents different analysis. As authors explained, the CTL can be used aspects similar to other approaches for multi-agent to verify properties of the graph of the web systems. They combine temporal, real-time and application, in which arcs are state transitions and probabilistic logics and provide some expressions in nodes are states. the paper. The statistical approach is surveyed and its The design of a composite web service is verified advantages: simplicity, uniformity and efficiency, by authors in (Bentahar et al., 2013). They divide are analyzed in (Legay et al., 2010). For verifying behaviors into two abstraction levels: control and quantitative properties of stochastic systems, the operational. Control is application-independent and numerical and simulation-based approaches can be monitors the progress of execution of the operational used. The model checking of stochastic systems can behavior (it identifies the actions and constraints). be done by a numerical approach to compute or Operational is application-dependent and defines the approximate an exact measure of paths by using business logic, specifies functions, which should be formulas and a specific algorithm. Another approach performed by the Web service. Both of them are is to use simulation of the system to have a large 356 Lessons Learned on using Execution Model Implementation in Sparx Enterprise Architect for Verification of the Topological Functioning Model linked together in order to check that the sequence of 2.2 The Topological Functioning actions called by operational behavior is always Modeling within Model Driven synchronized with the control behavior. Paradigm Methods analyzed in (Donini et al., 2006), (Legay et al., 2010), (Milewicz & Pirkelbauer, The TFM can be presented as a Computation 2017), (Konur et al., 2013) and (Bentahar et al., Independent Model (CIM) in Model-Driven

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    12 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us