skip to main content
10.1145/3103111.3104042acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

Formal Analysis of Object-Oriented Mograms

Published: 18 June 2017 Publication History

Abstract

A mogram designates a software language implemented in either a programming or a modelling language. Object-Oriented mograms share many common language features, but also have specificities related to inheritance, collection values, opposite and contained references, or overloading. We propose a mathematical framework that captures the semantics of such mograms with a precise characterisation of the variation points. We implemented a prototype tool that enables formal analysis in a uniform way.

References

[1]
M. Abadi and L. Cardelli. 1998. A Theory of Objects. Springer.
[2]
A.V. Aho, R. Sethi, and J.D. Ullman. 1986. Compilers:Principles, Techniques, and Tools. Addison-Wesley.
[3]
W. Ahrendt, B. Beckert, R. Bubel, R. Hähnle, P.H. Schmitt, and M. Ulbrich (Eds.). 2016. Deductive Software Verification -- The KeYBook. From Theory to Practice. Springer-Verlag.
[4]
Moussa Amrani. 2013. A Formal Semantics of Kermeta. In Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, Marjan Mernik (Ed.). Igi Global, Chapter 10.
[5]
Moussa Amrani. 2013. Towards The Formal Verification of Model Transformations --- An Application to Kermeta. Ph.D. Dissertation. University of Luxembourg.
[6]
Anneke Kleppe. 2009. Software Language Engineering: Creating Domain-Specific Languages Using Metamodels. Addison-Wesley, Upper Saddle River, NJ.
[7]
I. Attali, D. Caromel, and S. Ould Ehmety. 1995. An Operational Semantics for the Eiffel Language. Technical Report. INRIA.
[8]
Luca Cardelli. 1988. A Semantics of Multiple Inheritance. Information and Computation 76, 2--3 (1988), 138--164.
[9]
Manuel Clavel, Francisco Duran, Steven Eker, Patrick Lincoln, Narciso Marti Oliet, Jose Meseguer, and Carolyn Talcott. 2007. All About Maude. A High-Performance Logical Framework. Lecture Notes in Computer Science (Lncs), Vol. 4350. Springer.
[10]
M. Dwyer, J. Hatcliff, M. Hoosier, and Robby. 2005. Building Your Own Software Model-Checker Using The Bogor Extensible Model-Checking Framework. In Computer-Aided Verification.
[11]
D. Kolovos, L. Rose, A. Garcia-Dominguez, and R. Paige. 2017. The Epsilon Book.
[12]
Florent Latombe, Xavier Crégut, Benoît Combemale, Julien Deantoni, and Marc Pantel. 2015. Weaving Concurrency in eXecutable Domain-Specific Modeling Languages. In Conference on Software Language Engineering (SLE).
[13]
J. Le Noir, S. Madelénat, C. Labreuche, O. Constant, G. Gailliard, M. Acher, and O. Barais. 2016. A Decision-Making Process for Exploring Architectural Variants in Systems Engineering. In Software Product Lines Conference.
[14]
M. Nordio, C. Calcagno, P. Müller, and B. Meyer. 2009. A Sound and Complete Program Logic for Eiffel. In Technology of Object-Oriented Languages and Systems.
[15]
Object Management Group. 2005. Action Language for Foundational UML Alf -- Concrete Syntax for an Uml Action Language (ptc/2010-10-05). Technical Report. Object Management Group.
[16]
Object Management Group. 2006. Meta-Object Facility 2.0. Technical Report.
[17]
Gilles Perrouin, Gilles Vanwormhoudt, Brice Morin, Philippe Lahire, Olivier Barais, and Jean-Marc Jézéquel. 2012. Weaving Variability into Domain Metamodels. Software & Systems Modeling 11, 3 (2012), 361--383.
[18]
K. Pohl, G. Böckle, and F van der Linden. 2005. Software Product Line Engineering: Foundations, Principles and Techniques. Springer-Verlag.
[19]
R. St'ark, J. Schmid, and E. Börger. 2001. Java and the Java Virtual Machine --- Definition, Verification, Validation. Springer-Verlag.
[20]
G. Winskel. 1993. The Formal Semantics of Programming Languages. MIT Press.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
FTFJP'17: Proceedings of the 19th Workshop on Formal Techniques for Java-like Programs
June 2017
49 pages
ISBN:9781450350983
DOI:10.1145/3103111
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 the author(s) 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].

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 June 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Formal Verification
  2. OO Languages
  3. Semantics

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

ECOOP '17

Acceptance Rates

FTFJP'17 Paper Acceptance Rate 10 of 12 submissions, 83%;
Overall Acceptance Rate 51 of 75 submissions, 68%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 64
    Total Downloads
  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media