[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2480362.2480569acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Executing and debugging UML models: an fUML extension

Published: 18 March 2013 Publication History

Abstract

With the widespread of the Model-Driven Development (MDD) and surfing on the success of the Unified Modeling Language (UML), software development is shifting from being code-centric to model-centric. Models become the key artefacts in the software development process. The success of the project relies on the quality of these models. Early detection of errors by debugging and testing these models is mandatory in order to reduce development cost, ensuring quality and preventing rework at later stages. The fUML standard defines the precise semantics for executing a subset of UML models by defining a virtual machine. The models are then directly executed without transformation. However, the virtual machine is defined to execute the model as an atomic action and does not fulfil the requirements for debugging it. We highlight in this paper the limit of the current specification of fUML (v1.0) and propose an approach for extending the virtual machine with the key functionality that enables debugging of fUML models. A working UML debugger prototype has been implemented and the use and evaluation of the approach are made on a case study.

References

[1]
Papyrus. http://www.eclipse.org/papyrus.
[2]
Galaxy project. http://galaxy.lip6.fr/, 2009.
[3]
moliz. http://www.modelexecution.org/, 2012.
[4]
I. Abdelhalim, J. Sharp, S. Schneider, and H. Treharne. Formal verification of tokeneer behaviours modelled in fuml using csp. Formal Methods and Software Engineering, pages 371--387, 2010.
[5]
P. Baker, S. Loh, and F. Weil. Model-driven engineering in a large industrial context-Motorola case study. Model Driven Engineering Languages and Systems, pages 476--491, 2005.
[6]
A. Benyahia, A. Cuccuru, S. Taha, F. Terrier, F. Boulanger, and S. Gérard. Extending the standard execution model of UML for real-time systems. Distributed, Parallel and Biologically Inspired Systems, pages 43--54, 2010.
[7]
M. Crane and J. Dingel. Towards a UML virtual machine: implementing an interpreter for UML 2 actions and activities. In Proceedings of the 2008 conference of the center for advanced studies on collaborative research: meeting of minds, page 8. ACM, 2008.
[8]
D. Dotan and A. Kirshin. Debugging and testing behavioral UML models. In Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion, pages 838--839. ACM, 2007.
[9]
R. Ellner, S. Al-Hilank, J. Drexler, M. Jung, D. Kips, and M. Philippsen. A FUML-based distributed execution machine for enacting software process models. In ECMFA, pages 19--34, 2011.
[10]
L. Fuentes, J. Manrique, and P. Sánchez. Execution and simulation of (profiled) UML models using Pópulo. In Proceedings of the 2008 international workshop on Models in software engineering. ACM, 2008.
[11]
E. Gamma. Design patterns: elements of reusable object-oriented software. 1995.
[12]
B. Hailpern and P. Santhanam. Software debugging, testing, and verification. IBM Systems Journal, 2002.
[13]
J. Hannemann and G. Kiczales. Design pattern implementation in java and aspectj. In ACM Sigplan Notices, volume 37, pages 161--173. ACM, 2002.
[14]
W. Humphrey. Managing the software process. Reading/MA, 1989.
[15]
K. Jensen. Coloured petri nets. Petri nets: central models and their properties, pages 248--299, 1987.
[16]
G. Kiczales. Aspect-oriented programming. ACM Computing Surveys (CSUR), 28(4es):154, 1996.
[17]
A. Kirshin, D. Dotan, and A. Hartman. A UML simulator based on a generic model execution engine. Lecture notes in computer science, 4364:324, 2007.
[18]
A. Kleppe, J. Warmer, and W. Bast. MDA explained: the model driven architecture: practice and promise. Addison-Wesley Longman Publishing Co., Inc., 2003.
[19]
T. Mayerhofer. Testing and debugging UML models based on fUML. In Software Engineering (ICSE), 2012 34th International Conference on. IEEE, 2012.
[20]
S. Mellor, M. Balcer, and I. Foreword By-Jacoboson. Executable UML: A foundation for model-driven architectures. 2002.
[21]
OMG. Semantics of a foundational subset for executable uml models (FUML) version 1.0. http://www.omg.org/spec/FUML/, 2011.
[22]
N. Papoylias. High-level debugging facilities and interfaces: Design and developement of a debug-oriented ide. Open Source Software: New Horizons, pages 373--379, 2010.
[23]
D. Riehle, S. Fraleigh, D. Bucka-Lassen, and N. Omorogbe. The architecture of a UML virtual machine. ACM SIGPLAN Notices, 2001.
[24]
J. Rosenberg. How debuggers work: algorithms, data structures, and architecture. John Wiley & Sons, Inc., 1996.
[25]
B. Selic. The pragmatics of model-driven development. Software, IEEE, 20(5):19--25, 2003.
[26]
E. Shapiro. Algorithmic program debugging. Dissertation Abstracts International Part B: Science and Engineering, 43(5):1982, 1982.
[27]
The ModelDriven Community. Foundational UML reference implementation. http://portal.modeldriven.org/project/foundationalUML, 2007.

Cited By

View all
  • (2024)Examining the Effects of Layout and Working Memory on UML Class Diagram Defect Identification2024 IEEE Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT64034.2024.00017(71-82)Online publication date: 6-Oct-2024
  • (2024)AnimUMLScience of Computer Programming10.1016/j.scico.2023.103050232:COnline publication date: 1-Jan-2024
  • (2022)Practical multiverse debugging through user-defined reductionsProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems10.1145/3550355.3552447(87-97)Online publication date: 23-Oct-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '13: Proceedings of the 28th Annual ACM Symposium on Applied Computing
March 2013
2124 pages
ISBN:9781450316569
DOI:10.1145/2480362
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 March 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. UML
  2. debugging
  3. execution
  4. fUML
  5. testing

Qualifiers

  • Research-article

Funding Sources

Conference

SAC '13
Sponsor:
SAC '13: SAC '13
March 18 - 22, 2013
Coimbra, Portugal

Acceptance Rates

SAC '13 Paper Acceptance Rate 255 of 1,063 submissions, 24%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 07 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Examining the Effects of Layout and Working Memory on UML Class Diagram Defect Identification2024 IEEE Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT64034.2024.00017(71-82)Online publication date: 6-Oct-2024
  • (2024)AnimUMLScience of Computer Programming10.1016/j.scico.2023.103050232:COnline publication date: 1-Jan-2024
  • (2022)Practical multiverse debugging through user-defined reductionsProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems10.1145/3550355.3552447(87-97)Online publication date: 23-Oct-2022
  • (2022)UML to code, and code to UML, a view inside implementation challenges and cost2022 26th International Conference on System Theory, Control and Computing (ICSTCC)10.1109/ICSTCC55426.2022.9931871(140-145)Online publication date: 19-Oct-2022
  • (2021)Characterizing and Injecting Faults in Executable Models Specified with fUML2021 10th Latin-American Symposium on Dependable Computing (LADC)10.1109/LADC53747.2021.9672596(01-10)Online publication date: Nov-2021
  • (2020)VICToRy: Visual Interactive Consistency Management in Tolerant Rule-based SystemsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.330.1330(1-12)Online publication date: 3-Dec-2020
  • (2019)Execution of UML modelsSoftware and Systems Modeling (SoSyM)10.1007/s10270-018-0675-418:3(2313-2360)Online publication date: 1-Jun-2019
  • (2018)Considerations about quality in model-driven engineeringSoftware Quality Journal10.1007/s11219-016-9350-626:2(685-750)Online publication date: 1-Jun-2018
  • (2017)Debugging Parallel DEVSSimulation10.1177/003754971665836093:4(285-306)Online publication date: 1-Apr-2017
  • (2016)Towards a tracing framework for Model-Driven software systems2016 6th International Conference on Computer and Knowledge Engineering (ICCKE)10.1109/ICCKE.2016.7802156(298-303)Online publication date: Oct-2016
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media