Reasoning about UML/OCL class diagrams using constraint logic programming and formula

Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under development. This paper presents a framework to reason about the satisfiability of class mo...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Information systems (Oxford) 2019-03, Vol.81, p.152-177
Hauptverfasser: Pérez, Beatriz, Porres, Ivan
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 177
container_issue
container_start_page 152
container_title Information systems (Oxford)
container_volume 81
creator Pérez, Beatriz
Porres, Ivan
description Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under development. This paper presents a framework to reason about the satisfiability of class models described using the Unified Modeling Language (UML). The proposed framework allows us to identify possible design flaws as early as possible in the software development cycle. More specifically, we focus on UML Class Diagrams annotated with Object Constraint Language (OCL) invariants, which are considered to be the main artifacts in Object-Oriented analysis and design for representing the static structure of a system. We use the Constraint Logic programming (CLP) paradigm to reason about UML Class Diagrams modeling foundations. In particular, we use Formula as a model-finding and design space exploration tool. We also present an experimental Eclipse plug-in, which implements our UML model to Formula translation proposal following a Model Driven Architecture (MDA) approach. The proposed framework can be used to reason, validate, and verify UML Class Diagram software designs by checking correctness properties and generating model instances using the model exploration tool Formula. •Reasoning about CD/OCL models based on CLP using the tool Formula as model-finder.•Translation of CD to Formula following a MOF-like proposal.•Identified an expressive fragment of OCL and provided its translation to Formula.•Provided an experimental MDA-based implementation of our CD-to-Formula proposal.•Model design reasoning by checking correctness properties and generating model instances automatically.
doi_str_mv 10.1016/j.is.2018.08.005
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2191341364</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><els_id>S0306437916303465</els_id><sourcerecordid>2191341364</sourcerecordid><originalsourceid>FETCH-LOGICAL-c322t-9b5b2ffc681dbdfcd3ae66e722af416b186e79929cb68203e045af81f74f84e13</originalsourceid><addsrcrecordid>eNp1kM1LxDAQxYMouK7ePQY8d3eStGnjTRa_oLIg7jmkabKktM2atIL_vVnXqzAwDPN-M4-H0C2BFQHC193KxRUFUq0gFRRnaEGqkmUcSn6OFsCAZzkrxSW6irEDAFoIsUC7d6OiH924x6rx84R3b_V6u6mx7lWMuHVqH9QQ8RyPEu3HOAXlxgn3fu80PgR_3A-__Nhi68Mw9-oaXVjVR3Pz15do9_T4sXnJ6u3z6-ahzjSjdMpEUzTUWs0r0jat1S1ThnNTUqpsTnhDqjQIQYVueEWBGcgLZStiy9xWuSFsie5Od5OPz9nESXZ-DmN6KSkRhOWE8Typ4KTSwccYjJWH4AYVviUBeQxPdtIlIoUnIRUUCbk_ISa5_3ImyKidGbVpXTB6kq13_8M_dMJ22Q</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2191341364</pqid></control><display><type>article</type><title>Reasoning about UML/OCL class diagrams using constraint logic programming and formula</title><source>Access via ScienceDirect (Elsevier)</source><creator>Pérez, Beatriz ; Porres, Ivan</creator><creatorcontrib>Pérez, Beatriz ; Porres, Ivan</creatorcontrib><description>Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under development. This paper presents a framework to reason about the satisfiability of class models described using the Unified Modeling Language (UML). The proposed framework allows us to identify possible design flaws as early as possible in the software development cycle. More specifically, we focus on UML Class Diagrams annotated with Object Constraint Language (OCL) invariants, which are considered to be the main artifacts in Object-Oriented analysis and design for representing the static structure of a system. We use the Constraint Logic programming (CLP) paradigm to reason about UML Class Diagrams modeling foundations. In particular, we use Formula as a model-finding and design space exploration tool. We also present an experimental Eclipse plug-in, which implements our UML model to Formula translation proposal following a Model Driven Architecture (MDA) approach. The proposed framework can be used to reason, validate, and verify UML Class Diagram software designs by checking correctness properties and generating model instances using the model exploration tool Formula. •Reasoning about CD/OCL models based on CLP using the tool Formula as model-finder.•Translation of CD to Formula following a MOF-like proposal.•Identified an expressive fragment of OCL and provided its translation to Formula.•Provided an experimental MDA-based implementation of our CD-to-Formula proposal.•Model design reasoning by checking correctness properties and generating model instances automatically.</description><identifier>ISSN: 0306-4379</identifier><identifier>EISSN: 1873-6076</identifier><identifier>DOI: 10.1016/j.is.2018.08.005</identifier><language>eng</language><publisher>Oxford: Elsevier Ltd</publisher><subject>Constraint logic programming ; Constraint modelling ; Information systems ; Logic programming ; Modelling ; OCL ; Program verification (computers) ; Reasoning ; Software development ; Systems development ; UML</subject><ispartof>Information systems (Oxford), 2019-03, Vol.81, p.152-177</ispartof><rights>2018 Elsevier Ltd</rights><rights>Copyright Elsevier Science Ltd. Mar 2019</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c322t-9b5b2ffc681dbdfcd3ae66e722af416b186e79929cb68203e045af81f74f84e13</citedby><cites>FETCH-LOGICAL-c322t-9b5b2ffc681dbdfcd3ae66e722af416b186e79929cb68203e045af81f74f84e13</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://dx.doi.org/10.1016/j.is.2018.08.005$$EHTML$$P50$$Gelsevier$$H</linktohtml><link.rule.ids>314,780,784,3550,27924,27925,45995</link.rule.ids></links><search><creatorcontrib>Pérez, Beatriz</creatorcontrib><creatorcontrib>Porres, Ivan</creatorcontrib><title>Reasoning about UML/OCL class diagrams using constraint logic programming and formula</title><title>Information systems (Oxford)</title><description>Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under development. This paper presents a framework to reason about the satisfiability of class models described using the Unified Modeling Language (UML). The proposed framework allows us to identify possible design flaws as early as possible in the software development cycle. More specifically, we focus on UML Class Diagrams annotated with Object Constraint Language (OCL) invariants, which are considered to be the main artifacts in Object-Oriented analysis and design for representing the static structure of a system. We use the Constraint Logic programming (CLP) paradigm to reason about UML Class Diagrams modeling foundations. In particular, we use Formula as a model-finding and design space exploration tool. We also present an experimental Eclipse plug-in, which implements our UML model to Formula translation proposal following a Model Driven Architecture (MDA) approach. The proposed framework can be used to reason, validate, and verify UML Class Diagram software designs by checking correctness properties and generating model instances using the model exploration tool Formula. •Reasoning about CD/OCL models based on CLP using the tool Formula as model-finder.•Translation of CD to Formula following a MOF-like proposal.•Identified an expressive fragment of OCL and provided its translation to Formula.•Provided an experimental MDA-based implementation of our CD-to-Formula proposal.•Model design reasoning by checking correctness properties and generating model instances automatically.</description><subject>Constraint logic programming</subject><subject>Constraint modelling</subject><subject>Information systems</subject><subject>Logic programming</subject><subject>Modelling</subject><subject>OCL</subject><subject>Program verification (computers)</subject><subject>Reasoning</subject><subject>Software development</subject><subject>Systems development</subject><subject>UML</subject><issn>0306-4379</issn><issn>1873-6076</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2019</creationdate><recordtype>article</recordtype><recordid>eNp1kM1LxDAQxYMouK7ePQY8d3eStGnjTRa_oLIg7jmkabKktM2atIL_vVnXqzAwDPN-M4-H0C2BFQHC193KxRUFUq0gFRRnaEGqkmUcSn6OFsCAZzkrxSW6irEDAFoIsUC7d6OiH924x6rx84R3b_V6u6mx7lWMuHVqH9QQ8RyPEu3HOAXlxgn3fu80PgR_3A-__Nhi68Mw9-oaXVjVR3Pz15do9_T4sXnJ6u3z6-ahzjSjdMpEUzTUWs0r0jat1S1ThnNTUqpsTnhDqjQIQYVueEWBGcgLZStiy9xWuSFsie5Od5OPz9nESXZ-DmN6KSkRhOWE8Typ4KTSwccYjJWH4AYVviUBeQxPdtIlIoUnIRUUCbk_ISa5_3ImyKidGbVpXTB6kq13_8M_dMJ22Q</recordid><startdate>201903</startdate><enddate>201903</enddate><creator>Pérez, Beatriz</creator><creator>Porres, Ivan</creator><general>Elsevier Ltd</general><general>Elsevier Science Ltd</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>E3H</scope><scope>F2A</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>201903</creationdate><title>Reasoning about UML/OCL class diagrams using constraint logic programming and formula</title><author>Pérez, Beatriz ; Porres, Ivan</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c322t-9b5b2ffc681dbdfcd3ae66e722af416b186e79929cb68203e045af81f74f84e13</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2019</creationdate><topic>Constraint logic programming</topic><topic>Constraint modelling</topic><topic>Information systems</topic><topic>Logic programming</topic><topic>Modelling</topic><topic>OCL</topic><topic>Program verification (computers)</topic><topic>Reasoning</topic><topic>Software development</topic><topic>Systems development</topic><topic>UML</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Pérez, Beatriz</creatorcontrib><creatorcontrib>Porres, Ivan</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>Library &amp; Information Sciences Abstracts (LISA)</collection><collection>Library &amp; Information Science Abstracts (LISA)</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>Information systems (Oxford)</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Pérez, Beatriz</au><au>Porres, Ivan</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Reasoning about UML/OCL class diagrams using constraint logic programming and formula</atitle><jtitle>Information systems (Oxford)</jtitle><date>2019-03</date><risdate>2019</risdate><volume>81</volume><spage>152</spage><epage>177</epage><pages>152-177</pages><issn>0306-4379</issn><eissn>1873-6076</eissn><abstract>Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under development. This paper presents a framework to reason about the satisfiability of class models described using the Unified Modeling Language (UML). The proposed framework allows us to identify possible design flaws as early as possible in the software development cycle. More specifically, we focus on UML Class Diagrams annotated with Object Constraint Language (OCL) invariants, which are considered to be the main artifacts in Object-Oriented analysis and design for representing the static structure of a system. We use the Constraint Logic programming (CLP) paradigm to reason about UML Class Diagrams modeling foundations. In particular, we use Formula as a model-finding and design space exploration tool. We also present an experimental Eclipse plug-in, which implements our UML model to Formula translation proposal following a Model Driven Architecture (MDA) approach. The proposed framework can be used to reason, validate, and verify UML Class Diagram software designs by checking correctness properties and generating model instances using the model exploration tool Formula. •Reasoning about CD/OCL models based on CLP using the tool Formula as model-finder.•Translation of CD to Formula following a MOF-like proposal.•Identified an expressive fragment of OCL and provided its translation to Formula.•Provided an experimental MDA-based implementation of our CD-to-Formula proposal.•Model design reasoning by checking correctness properties and generating model instances automatically.</abstract><cop>Oxford</cop><pub>Elsevier Ltd</pub><doi>10.1016/j.is.2018.08.005</doi><tpages>26</tpages></addata></record>
fulltext fulltext
identifier ISSN: 0306-4379
ispartof Information systems (Oxford), 2019-03, Vol.81, p.152-177
issn 0306-4379
1873-6076
language eng
recordid cdi_proquest_journals_2191341364
source Access via ScienceDirect (Elsevier)
subjects Constraint logic programming
Constraint modelling
Information systems
Logic programming
Modelling
OCL
Program verification (computers)
Reasoning
Software development
Systems development
UML
title Reasoning about UML/OCL class diagrams using constraint logic programming and formula
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-22T07%3A26%3A34IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Reasoning%20about%20UML/OCL%20class%20diagrams%20using%20constraint%20logic%20programming%20and%20formula&rft.jtitle=Information%20systems%20(Oxford)&rft.au=P%C3%A9rez,%20Beatriz&rft.date=2019-03&rft.volume=81&rft.spage=152&rft.epage=177&rft.pages=152-177&rft.issn=0306-4379&rft.eissn=1873-6076&rft_id=info:doi/10.1016/j.is.2018.08.005&rft_dat=%3Cproquest_cross%3E2191341364%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2191341364&rft_id=info:pmid/&rft_els_id=S0306437916303465&rfr_iscdi=true