DOMICO: Checking conformance between domain models and implementations

As a predominant design method for microsservices architecture (MSA), domain‐driven design (DDD) utilizes a series of standard patterns in both models and implementations to effectively support the design of architectural elements. However, an implementation may deviate from its original domain mode...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Software, practice & experience practice & experience, 2024-04, Vol.54 (4), p.595-616
Hauptverfasser: Zhong, Chenxing, Zhang, He, Huang, Huang, Chen, Zhikun, Li, Chao, Liu, Xiaodong, Li, Shanshan
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 616
container_issue 4
container_start_page 595
container_title Software, practice & experience
container_volume 54
creator Zhong, Chenxing
Zhang, He
Huang, Huang
Chen, Zhikun
Li, Chao
Liu, Xiaodong
Li, Shanshan
description As a predominant design method for microsservices architecture (MSA), domain‐driven design (DDD) utilizes a series of standard patterns in both models and implementations to effectively support the design of architectural elements. However, an implementation may deviate from its original domain model that uses certain patterns. The deviation between a domain model and its implementation is a type of architectural drift, which needs to be detected promptly. This paper proposes an approach, namely DOMICO, to check the conformance between the domain model and its implementation, by which the conformance is formalized by defining eight common structural patterns of domain modeling and their representations in both models and the corresponding source code. Based on the formalization, our approach can not only identify the discrepancies (e.g., divergence, absence, and modification) with respect to pattern elements, but also detect possible violations of 24 compliance rules imposed by the patterns. To validate DOMICO, we performed a case study to investigate its use in a supply chain project and its performance. The results show that DOMICO can accurately identify 100% inconsistency issues in the cases examined. As the first conformance checking approach for DDD, DOMICO can be integrated into the regular domain modeling process and help ensure the conformity of microservice implementations to models.
doi_str_mv 10.1002/spe.3272
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2938228100</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2938228100</sourcerecordid><originalsourceid>FETCH-LOGICAL-c2932-12300e27c81b546baa21dd8768c3d46baa72e6c59b77678324dd128eadaf01a73</originalsourceid><addsrcrecordid>eNp10FFLwzAQwPEgCs4p-BEKvvjSmVy6JvNN6jYHkwkq-BbS5KqdbVKbjrFvb7f56tNx8OMO_oRcMzpilMJdaHDEQcAJGTA6ETGF5OOUDCjlMqZpkpyTixDWlDI2hnRAZo-r50W2uo-yLzTfpfuMjHeFb2vtDEY5dltEF1lf69JFtbdYhUg7G5V1U2GNrtNd6V24JGeFrgJe_c0heZ9N37KneLmaL7KHZWxgwiFmwClFEEayfJykudbArJUilYbbwy4AUzOe5EKkQnJIrGUgUVtdUKYFH5Kb492m9T8bDJ1a-03r-peqfyABZB-hV7dHZVofQouFatqy1u1OMar2lVRfSe0r9TQ-0m1Z4e5fp15fpgf_C00sZ38</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2938228100</pqid></control><display><type>article</type><title>DOMICO: Checking conformance between domain models and implementations</title><source>Wiley Online Library Journals Frontfile Complete</source><creator>Zhong, Chenxing ; Zhang, He ; Huang, Huang ; Chen, Zhikun ; Li, Chao ; Liu, Xiaodong ; Li, Shanshan</creator><creatorcontrib>Zhong, Chenxing ; Zhang, He ; Huang, Huang ; Chen, Zhikun ; Li, Chao ; Liu, Xiaodong ; Li, Shanshan</creatorcontrib><description>As a predominant design method for microsservices architecture (MSA), domain‐driven design (DDD) utilizes a series of standard patterns in both models and implementations to effectively support the design of architectural elements. However, an implementation may deviate from its original domain model that uses certain patterns. The deviation between a domain model and its implementation is a type of architectural drift, which needs to be detected promptly. This paper proposes an approach, namely DOMICO, to check the conformance between the domain model and its implementation, by which the conformance is formalized by defining eight common structural patterns of domain modeling and their representations in both models and the corresponding source code. Based on the formalization, our approach can not only identify the discrepancies (e.g., divergence, absence, and modification) with respect to pattern elements, but also detect possible violations of 24 compliance rules imposed by the patterns. To validate DOMICO, we performed a case study to investigate its use in a supply chain project and its performance. The results show that DOMICO can accurately identify 100% inconsistency issues in the cases examined. As the first conformance checking approach for DDD, DOMICO can be integrated into the regular domain modeling process and help ensure the conformity of microservice implementations to models.</description><identifier>ISSN: 0038-0644</identifier><identifier>EISSN: 1097-024X</identifier><identifier>DOI: 10.1002/spe.3272</identifier><language>eng</language><publisher>Bognor Regis: Wiley Subscription Services, Inc</publisher><subject>architectural drift ; architecture conformance checking ; code implementation ; domain model ; domain‐driven design ; microservices architecture ; Modelling ; Source code ; Supply chains</subject><ispartof>Software, practice &amp; experience, 2024-04, Vol.54 (4), p.595-616</ispartof><rights>2023 John Wiley &amp; Sons, Ltd.</rights><rights>2024 John Wiley &amp; Sons, Ltd.</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c2932-12300e27c81b546baa21dd8768c3d46baa72e6c59b77678324dd128eadaf01a73</citedby><cites>FETCH-LOGICAL-c2932-12300e27c81b546baa21dd8768c3d46baa72e6c59b77678324dd128eadaf01a73</cites><orcidid>0000-0001-7298-1926</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://onlinelibrary.wiley.com/doi/pdf/10.1002%2Fspe.3272$$EPDF$$P50$$Gwiley$$H</linktopdf><linktohtml>$$Uhttps://onlinelibrary.wiley.com/doi/full/10.1002%2Fspe.3272$$EHTML$$P50$$Gwiley$$H</linktohtml><link.rule.ids>314,776,780,1411,27901,27902,45550,45551</link.rule.ids></links><search><creatorcontrib>Zhong, Chenxing</creatorcontrib><creatorcontrib>Zhang, He</creatorcontrib><creatorcontrib>Huang, Huang</creatorcontrib><creatorcontrib>Chen, Zhikun</creatorcontrib><creatorcontrib>Li, Chao</creatorcontrib><creatorcontrib>Liu, Xiaodong</creatorcontrib><creatorcontrib>Li, Shanshan</creatorcontrib><title>DOMICO: Checking conformance between domain models and implementations</title><title>Software, practice &amp; experience</title><description>As a predominant design method for microsservices architecture (MSA), domain‐driven design (DDD) utilizes a series of standard patterns in both models and implementations to effectively support the design of architectural elements. However, an implementation may deviate from its original domain model that uses certain patterns. The deviation between a domain model and its implementation is a type of architectural drift, which needs to be detected promptly. This paper proposes an approach, namely DOMICO, to check the conformance between the domain model and its implementation, by which the conformance is formalized by defining eight common structural patterns of domain modeling and their representations in both models and the corresponding source code. Based on the formalization, our approach can not only identify the discrepancies (e.g., divergence, absence, and modification) with respect to pattern elements, but also detect possible violations of 24 compliance rules imposed by the patterns. To validate DOMICO, we performed a case study to investigate its use in a supply chain project and its performance. The results show that DOMICO can accurately identify 100% inconsistency issues in the cases examined. As the first conformance checking approach for DDD, DOMICO can be integrated into the regular domain modeling process and help ensure the conformity of microservice implementations to models.</description><subject>architectural drift</subject><subject>architecture conformance checking</subject><subject>code implementation</subject><subject>domain model</subject><subject>domain‐driven design</subject><subject>microservices architecture</subject><subject>Modelling</subject><subject>Source code</subject><subject>Supply chains</subject><issn>0038-0644</issn><issn>1097-024X</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2024</creationdate><recordtype>article</recordtype><recordid>eNp10FFLwzAQwPEgCs4p-BEKvvjSmVy6JvNN6jYHkwkq-BbS5KqdbVKbjrFvb7f56tNx8OMO_oRcMzpilMJdaHDEQcAJGTA6ETGF5OOUDCjlMqZpkpyTixDWlDI2hnRAZo-r50W2uo-yLzTfpfuMjHeFb2vtDEY5dltEF1lf69JFtbdYhUg7G5V1U2GNrtNd6V24JGeFrgJe_c0heZ9N37KneLmaL7KHZWxgwiFmwClFEEayfJykudbArJUilYbbwy4AUzOe5EKkQnJIrGUgUVtdUKYFH5Kb492m9T8bDJ1a-03r-peqfyABZB-hV7dHZVofQouFatqy1u1OMar2lVRfSe0r9TQ-0m1Z4e5fp15fpgf_C00sZ38</recordid><startdate>202404</startdate><enddate>202404</enddate><creator>Zhong, Chenxing</creator><creator>Zhang, He</creator><creator>Huang, Huang</creator><creator>Chen, Zhikun</creator><creator>Li, Chao</creator><creator>Liu, Xiaodong</creator><creator>Li, Shanshan</creator><general>Wiley Subscription Services, Inc</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>F28</scope><scope>FR3</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><orcidid>https://orcid.org/0000-0001-7298-1926</orcidid></search><sort><creationdate>202404</creationdate><title>DOMICO: Checking conformance between domain models and implementations</title><author>Zhong, Chenxing ; Zhang, He ; Huang, Huang ; Chen, Zhikun ; Li, Chao ; Liu, Xiaodong ; Li, Shanshan</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c2932-12300e27c81b546baa21dd8768c3d46baa72e6c59b77678324dd128eadaf01a73</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2024</creationdate><topic>architectural drift</topic><topic>architecture conformance checking</topic><topic>code implementation</topic><topic>domain model</topic><topic>domain‐driven design</topic><topic>microservices architecture</topic><topic>Modelling</topic><topic>Source code</topic><topic>Supply chains</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Zhong, Chenxing</creatorcontrib><creatorcontrib>Zhang, He</creatorcontrib><creatorcontrib>Huang, Huang</creatorcontrib><creatorcontrib>Chen, Zhikun</creatorcontrib><creatorcontrib>Li, Chao</creatorcontrib><creatorcontrib>Liu, Xiaodong</creatorcontrib><creatorcontrib>Li, Shanshan</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ANTE: Abstracts in New Technology &amp; Engineering</collection><collection>Engineering Research Database</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>Software, practice &amp; experience</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Zhong, Chenxing</au><au>Zhang, He</au><au>Huang, Huang</au><au>Chen, Zhikun</au><au>Li, Chao</au><au>Liu, Xiaodong</au><au>Li, Shanshan</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>DOMICO: Checking conformance between domain models and implementations</atitle><jtitle>Software, practice &amp; experience</jtitle><date>2024-04</date><risdate>2024</risdate><volume>54</volume><issue>4</issue><spage>595</spage><epage>616</epage><pages>595-616</pages><issn>0038-0644</issn><eissn>1097-024X</eissn><abstract>As a predominant design method for microsservices architecture (MSA), domain‐driven design (DDD) utilizes a series of standard patterns in both models and implementations to effectively support the design of architectural elements. However, an implementation may deviate from its original domain model that uses certain patterns. The deviation between a domain model and its implementation is a type of architectural drift, which needs to be detected promptly. This paper proposes an approach, namely DOMICO, to check the conformance between the domain model and its implementation, by which the conformance is formalized by defining eight common structural patterns of domain modeling and their representations in both models and the corresponding source code. Based on the formalization, our approach can not only identify the discrepancies (e.g., divergence, absence, and modification) with respect to pattern elements, but also detect possible violations of 24 compliance rules imposed by the patterns. To validate DOMICO, we performed a case study to investigate its use in a supply chain project and its performance. The results show that DOMICO can accurately identify 100% inconsistency issues in the cases examined. As the first conformance checking approach for DDD, DOMICO can be integrated into the regular domain modeling process and help ensure the conformity of microservice implementations to models.</abstract><cop>Bognor Regis</cop><pub>Wiley Subscription Services, Inc</pub><doi>10.1002/spe.3272</doi><tpages>22</tpages><orcidid>https://orcid.org/0000-0001-7298-1926</orcidid></addata></record>
fulltext fulltext
identifier ISSN: 0038-0644
ispartof Software, practice & experience, 2024-04, Vol.54 (4), p.595-616
issn 0038-0644
1097-024X
language eng
recordid cdi_proquest_journals_2938228100
source Wiley Online Library Journals Frontfile Complete
subjects architectural drift
architecture conformance checking
code implementation
domain model
domain‐driven design
microservices architecture
Modelling
Source code
Supply chains
title DOMICO: Checking conformance between domain models and implementations
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-09T00%3A11%3A42IST&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=DOMICO:%20Checking%20conformance%20between%20domain%20models%20and%20implementations&rft.jtitle=Software,%20practice%20&%20experience&rft.au=Zhong,%20Chenxing&rft.date=2024-04&rft.volume=54&rft.issue=4&rft.spage=595&rft.epage=616&rft.pages=595-616&rft.issn=0038-0644&rft.eissn=1097-024X&rft_id=info:doi/10.1002/spe.3272&rft_dat=%3Cproquest_cross%3E2938228100%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=2938228100&rft_id=info:pmid/&rfr_iscdi=true