{"id":8113,"date":"2022-06-06T04:20:00","date_gmt":"2022-06-06T04:20:00","guid":{"rendered":"https:\/\/modeling-languages.com\/?p=8113"},"modified":"2022-06-06T04:58:12","modified_gmt":"2022-06-06T04:58:12","slug":"process-software-modeling-spem","status":"publish","type":"post","link":"https:\/\/modeling-languages.com\/process-software-modeling-spem\/","title":{"rendered":"Software process modeling with SPEM"},"content":{"rendered":"<p>Every new technology introduces new dimensions and challenges that must be considered when building software.<strong> Modern software teams are multidisciplinary<\/strong> and often need to include other profiles beyond developers and software engineers, such as data scientists, psychologists and AI experts.<\/p>\n<p>These new profiles must be coordinated with the more &#8220;traditional&#8221; profiles. And may require more explicit guidelines to be able to integrate within software engineering processes in place at the company.\u00a0 As such, enterprises need to revise, clarify and adapt their software engineering best practices and follow a clear process to manage the lifecycle of a product. In our opinion, this is going to revive the interest in software process modeling (and therefore on software process modeling languages), especially focused on new types of software, such as <a href=\"https:\/\/som-research.uoc.edu\/research-projects\/#LOCOSS_Low-code_development_of_smart_software_8211_RETOS_Spanish_National_Project_2021-2024\" target=\"_blank\" rel=\"noopener\">smart software<\/a>.<\/p>\n<h2>Benefits of process modeling<\/h2>\n<p><span style=\"font-weight: 400;\">Analysts, architects, engineers and other stakeholders engaged on a software development project often face typical challenges and flaws in managing and communicating knowledge and information about their internal and external processes that usually drive confusion and misalignment on expectations and goals.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Practices for both traditional and lean &amp; agile software and systems development, spanning from business problem statement and requirements definition through acceptance testing, integration, deployment and operations, are well-known and spread across the industry due to their significant benefits. Standards define the activities, tasks, milestones, work products and roles &amp; skills required to start, execute and successfully complete a development process in an organization given a specific situation, problem, goal and culture.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A fully-documented process helps teams to adopt and follow engineering best practices and is critical to complying with regulatory standards such as ISO 26262, SPICE, and CMMi. A framework that includes those processes provides full visibility and traceability about how the work is structured and required to be executed within an organization and its context, along with the responsibilities of their participants and the standards &amp; knowledge it is based on. Those frameworks act as guidelines for configuration and execution, and must include models and metrics for monitoring and continuous improvement.<\/span><\/p>\n<h2>The new momentum<\/h2>\n<p><span style=\"font-weight: 400;\">Machine Learning, the Internet of Things, Behavioral Software, Cyber-Physical Systems\u2026 New technologies and techniques have become rapidly in the last years a key core element of several software products. Traditionally, the first versions of those components have been developed by people from an area other than software engineering \u2013like psychology, mathematics and statistics\u2013 and therefore are not used to follow engineering principles and best practices to build a modern application ready for mass consumption.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Nowadays, building competitive software requires a joint effort of people from different backgrounds. New technologies introduce new dimensions and challenges to be addressed when building software. Enterprises need to apply and adapt (software) engineering best practices and follow an end-to-end method to manage the development, deployment, monitoring and operating of hybrid systems at scale, by streamlining activities, and fostering knowledge sharing and collaboration across diverse skills. Their ultimate goal should be to increase the predictability, productivity and business impact of their teams. The lack of a process is a ballast for any modern software team configuration.<\/span><\/p>\n<p>Note that this is a clear contrast from the agile trend, where &#8220;formal&#8221; process modeling was seen as least important. We believe it is now coming back as the needs for complex interdisciplinary software requires it.<\/p>\n<h2>A standard language for modeling software processes<\/h2>\n<p><span style=\"font-weight: 400;\">The <a href=\"https:\/\/www.omg.org\/spec\/SPEM\/2.0\/About-SPEM\/\" target=\"_blank\" rel=\"noopener\">Software Process Engineering Metamodel Specification<\/a> (SPEM) is an OMG\u2019s standard used to describe software development processes or a family of related software development processes.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The elements of SPEM can be categorized into method contents or processes. Method content are the roles defining development skills and responsibilities, tasks that those roles perform, and artifacts or work products that are the inputs and outputs of the tasks. The elements of a given method content are then assets to be combined and included into any process. A development process is a sequence of tasks performed by roles and makes explicit how work products are created and evolve over time.<\/span><\/p>\n<div id=\"attachment_8118\" style=\"width: 1001px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/SPEMMethodFramework.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8118\" class=\"size-full wp-image-8118\" src=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/SPEMMethodFramework.png\" alt=\"\" width=\"991\" height=\"642\" srcset=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/SPEMMethodFramework.png 991w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/SPEMMethodFramework-980x635.png 980w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/SPEMMethodFramework-480x311.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 991px, 100vw\" \/><\/a><p id=\"caption-attachment-8118\" class=\"wp-caption-text\">Key terminology. Image from the SPEM 2.0 specification available as OMG formal\/2008-04-01<\/p><\/div>\n<p><span style=\"font-weight: 400;\">As the specification states:<\/span><\/p>\n<p><i><span style=\"font-weight: 400;\">\u201cThe scope of SPEM is purposely limited to the minimal elements necessary to define any software and systems development process, without adding specific features for particular development domains or disciplines. (&#8230;) SPEM 2.0 does not aim to be a generic process modeling language, nor does it even provide its own behavior modeling concepts. (&#8230;) SPEM 2.0 focuses on providing the additional information structures that you need for processes modeled with UML 2.0 Activities or BPMN\/BPDM to describe an actual development process.\u201d<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">Such an approach makes SPEM an extremely flexible metamodel for process engineers to model their company-specific processes, either by following and adopting a standard framework to their concrete needs and purposes, or by documenting their own processes from scratch.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Due to its \u201ccomplementary\u201d nature to UML 2.0 Activities or BPMN\/BPDM specifications, SPEM has been adopted in a very scattered way by the different tool providers and other organizations. Thus, its aim and industry adoption is not quite clear: shall SPEM be used to adopt a model-driven engineering approach for process analysis and execution or it is yet another language limited to document specifications but not easing an actual process enactment? Does it cover an actual gap or could we continue using other specifications which, combined, provide the needed output?<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Nevertheless, since the publication of SPEM 2.0 specification in 2008, most of the popular software modeling tools added its artifacts to their toolboxes and provided users with the ability to define processes following this standard. Let\u2019s take a look at them.<\/span><\/p>\n<h2>Tools that support SPEM<\/h2>\n<p>While SPEM is the standard language for process modeling (with the caveats mentioned in the previous section), tool support for actually using it in practice is rather limited. Let&#8217;s see what are the available options.<\/p>\n<h3>Eclipse Process Framework Composer<\/h3>\n<p><span style=\"font-weight: 400;\">The <\/span><a href=\"https:\/\/www.eclipse.org\/epf\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Eclipse Process Framework Composer<\/span><\/a><span style=\"font-weight: 400;\"> is the tool and conceptual framework provided by the Eclipse group for authoring, tailoring and deploying development process frameworks. Its latest version is the 1.5.2 and was released back in 2018. Its first version supported their own specification language \u2013named UMA\u2013 which was based on SPEM 1.1 and included some artifacts and extensions that were added to SPEM 2.0 shortly after. Latest mentions of EPF Composer in Eclipse forums date back from 2018 and the project, though promising and still downloadable and functioning, looks abandoned.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The main features of this platform encompass the authoring, configuring, publishing and browsing of methods and processes. All components of the SPEM specification are available in EPF Composer, including an explicit division between method content and processes.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The users of this platform can create processes either via breakdown structure editors or workflow diagram editors; from scratch or by adopting an existing framework. The platform\u2019s key feature \u2013as the main differentiator with other tools included in this post\u2013 is the ability to create and reuse process building blocks (known as capability patterns) that represent best practices that can be assembled to compose new processes and methods. In defining a process, then, one can use some or all of the elements of a method content library.<\/span><\/p>\n<div id=\"attachment_8120\" style=\"width: 975px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFIDE.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8120\" class=\"size-full wp-image-8120\" src=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFIDE.png\" alt=\"\" width=\"965\" height=\"943\" srcset=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFIDE.png 965w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFIDE-480x469.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 965px, 100vw\" \/><\/a><p id=\"caption-attachment-8120\" class=\"wp-caption-text\">EPF Composer user interface, displaying information from the OpenUP method plugin provided by Eclipse.<\/p><\/div>\n<p><span style=\"font-weight: 400;\">The EPF Composer\u2019s installation package includes reusable plug-ins and method libraries for some common development frameworks, such as OpenUP, Extreme Programming and Scrum. So, the users can tailor, adapt, extend and enact these frameworks within their own organizations for their specific project needs.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Finally, the frameworks created with EPF Composer can be published and deployed as websites, so that all members of the organization can access and navigate through the complete up-to-date information, regulation and practices about their development processes. Processes could also be exported as templates for Microsoft Project.<\/span><\/p>\n<div id=\"attachment_8119\" style=\"width: 1127px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFWebsiteExample.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8119\" class=\"size-full wp-image-8119\" src=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFWebsiteExample.png\" alt=\"\" width=\"1117\" height=\"765\" srcset=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFWebsiteExample.png 1117w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFWebsiteExample-980x671.png 980w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EPFWebsiteExample-480x329.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1117px, 100vw\" \/><\/a><p id=\"caption-attachment-8119\" class=\"wp-caption-text\">Example of the webpage describing the OpenUP&#8217;s Initiate Project activity provided by Eclipse.<\/p><\/div>\n<h3>IBM Engineering Lifecycle Optimization &#8211; Method Composer<\/h3>\n<p><span style=\"font-weight: 400;\">A commercial equivalent of EPF Composer is the <\/span><a href=\"https:\/\/www.ibm.com\/docs\/en\/elo-mc\/7.6.2\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">IBM Engineering Lifecycle Optimization &#8211; Method Composer<\/span><\/a><span style=\"font-weight: 400;\">, now in its version 7.6.2 that was released in 2020. It fully supports the SPEM 2.0 specification and we can describe this platform as an EPF Composer <\/span><i><span style=\"font-weight: 400;\">on steroids<\/span><\/i><span style=\"font-weight: 400;\">: this IBM solution is part of the company\u2019s suite for software development, management and governance.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Apart from the main features available in the open-source platform, it includes an extended catalog of pre-defined processes such as RUP and some other relevant extensions:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Since version 7.5.2, it is possible to extend the SPEM metamodel by adding element types or custom attributes and relationships to existing SPEM elements; for example: RACI relationships between roles and tasks.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Users are able to select subsets of method content and processes from existing libraries, organize them in method packages, and set up a method configuration so that they can apply a subset of a full framework specification to a given specific context.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Similarly, users can tailor existing method content and processes to fit the needs of an instance of a project. Processes can be customized by adding and\/or removing activities, tasks, roles, and work products. Those changes can be saved in tailoring sessions so that the original framework library is not modified.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">The platform provides the capability of defining estimation models, its factors, and formulas.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">It also provides integrations with different tools for version control and reporting, and allows users to collaborate and discuss online on process pages.<\/span><\/p>\n<h3>Enterprise Architect<\/h3>\n<p><a href=\"https:\/\/sparxsystems.com\/enterprise_architect_user_guide\/16.0\/modeling_languages\/spem_getting_started.html\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Enterprise Architect<\/span><\/a><span style=\"font-weight: 400;\"> is a multi-purpose enterprise solution for analysis, modeling, test and maintenance of systems, including software and processes. Its latest version is the 16 and was released on April, 21st 2022.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Within the software area \/ module of the solution, Enterprise Architect enables its users to document software development processes using SPEM 2.0. This specification is included as a UML 2 profile. The tool includes a template \u2013not depicting any known framework or method\u2013 for quickly creating a simple model.<\/span><\/p>\n<div id=\"attachment_8116\" style=\"width: 1493px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EnterpriseArchitectIDE.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8116\" class=\"wp-image-8116 size-full\" src=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EnterpriseArchitectIDE.png\" alt=\"Enterprise Architect user interface for modeling software development processes as a SPEM diagram.\" width=\"1483\" height=\"768\" srcset=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EnterpriseArchitectIDE.png 1483w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EnterpriseArchitectIDE-1280x663.png 1280w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EnterpriseArchitectIDE-980x508.png 980w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/EnterpriseArchitectIDE-480x249.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) and (max-width: 1280px) 1280px, (min-width: 1281px) 1483px, 100vw\" \/><\/a><p id=\"caption-attachment-8116\" class=\"wp-caption-text\">Enterprise Architect user interface for modeling a SPEM diagram.<\/p><\/div>\n<p><span style=\"font-weight: 400;\">A user can define any element according to the SPEM specification, including workflow diagrams to describe the steps for performing a task and the components involved. Enterprise Architect enables users to switch between different views of a model diagram and also to collaborate via the tool so they can keep track of a journal of changes or discussions.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The models generated can be exported in interoperability formats such as XMI and other XML formats \u2013the user can reference an XSL file for post-processing\u2013. Additionally, the information can be published in HTML format in local files or in a Joomla site server, so all employees in an organization can browse the information included in the model.<\/span><\/p>\n<h3>MagicDraw UML<\/h3>\n<p><a href=\"https:\/\/www.magicdraw.com\/download\/magicdraw\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">MagicDraw UML<\/span><\/a><span style=\"font-weight: 400;\"> is a solution for analysis and modeling of software and systems. Its latest version is named 2021x and was released in 2021. The default version of MagicDraw UML doesn\u2019t support the SPEM metamodel. It is available as a <a href=\"https:\/\/modeling-languages.com\/emf-profiles-annotation-mechanism-emf-models\/\" target=\"_blank\" rel=\"noopener\">profile<\/a> via <\/span><a href=\"https:\/\/docs.nomagic.com\/display\/PLUGINS\/SPEM+Plugin\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">plug-in<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<div id=\"attachment_8117\" style=\"width: 1429px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/MagicDrawIDE.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8117\" class=\"wp-image-8117 size-full\" src=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/MagicDrawIDE.png\" alt=\"MagicDraw UML user interface for modeling software development processes as a SPEM diagram.\" width=\"1419\" height=\"685\" srcset=\"https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/MagicDrawIDE.png 1419w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/MagicDrawIDE-1280x618.png 1280w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/MagicDrawIDE-980x473.png 980w, https:\/\/modeling-languages.com\/wp-content\/uploads\/2022\/06\/MagicDrawIDE-480x232.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) and (max-width: 1280px) 1280px, (min-width: 1281px) 1419px, 100vw\" \/><\/a><p id=\"caption-attachment-8117\" class=\"wp-caption-text\">MagicDraw UML user interface for modeling a SPEM diagram.<\/p><\/div>\n<p><span style=\"font-weight: 400;\">For any given MagicDraw project, users can define the method content and different diagrams to include the processes of the method being defined. With MagicDraw users can create the following: activity detail, process component, team profile, work product dependency, and workflow diagrams; with all elements from the specification being available. There is no explicit separation between the method content and its processes.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A project can be saved as a template for other projects, so that users can reutilize existing methods (as a whole) to start creating new ones. Other export formats include XMI (UML, MOF, Eclipse) and EMF Ecore.<\/span><\/p>\n<h3>Miscellaneous<\/h3>\n<p><span style=\"font-weight: 400;\">Beyond the main tools listed above, there are a few other tools that claim (or used to) support SPEM:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/www.modeliosoft.com\" target=\"_blank\" rel=\"noopener\">Modelio<\/a> <span style=\"font-weight: 400;\">(formerly Objecteering Modeler), although the company participated in the SPEM specification, it doesn&#8217;t have a SPEM profile \u2013it supports XMI import, though, of the UML 2 profile. The last reference to SPEM in public forums is from 8 years ago.<\/span><\/li>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/github.com\/ObeoNetwork\/SPEM-Designer\" target=\"_blank\" rel=\"noopener\">SPEM Designer<\/a><span style=\"font-weight: 400;\"> has not been updated since 2010.<\/span><\/li>\n<li style=\"font-weight: 400;\"><a href=\"http:\/\/www.mckila.com\/wp-content\/uploads\/2013\/07\/SpemmetAToolForModelingSoftwareProcessesWithSPEM.pdf\" target=\"_blank\" rel=\"noopener\">Spemmet<\/a><span style=\"font-weight: 400;\"> originally used to support SPEM 1.1 but it has never been updated.<\/span><\/li>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/alarcos.esi.uclm.es\/vepf\/variant_rich_process_paradigm\/vepf.html\" target=\"_blank\" rel=\"noopener\">v-EPF<\/a> is a web-based tool for the extended v-SPEM specification.<\/li>\n<\/ul>\n<h2>Takeaways<\/h2>\n<p><span style=\"font-weight: 400;\">As we can see, the adoption of SPEM is very different from one tool to another but in general, we can say <strong>there is a limited adoption of SPEM in current modeling tools<\/strong>.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">When looking into scientific papers to see what tools are used in there, the most popular platform we see is the Eclipse Process Framework (EPF) Composer. It is used in 6 out of 10 reviewed papers, mostly focused on MDD activities. Still, when looking at papers that describe processes we often see that SPEM is not actually used for the description.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">One potential reason is that SPEM is so flexible, its purpose so ambitious, that it has a steep learning curve. This together with the limited tool support makes companies interested in process modeling to look for more &#8220;mainstream&#8221; alternatives. As of today, SPEM cannot be considered the <\/span><i><span style=\"font-weight: 400;\">rosetta\u00a0 stone<\/span><\/i><span style=\"font-weight: 400;\"> for describing, communicating and executing specific software development processes in the current fast-paced industry. Let&#8217;s see if the increasing needs for software modeling generate a broader adoption of SPEM (or SPEM extensions) that turn the tide.\u00a0<\/span><\/p>\n<p>But for now, UML and BPMN are so popular (and with much better <a href=\"https:\/\/modeling-languages.com\/uml-tools\/\" target=\"_blank\" rel=\"noopener\">tool support<\/a>) that are often used by companies that want to somehow draw their processes. Even if neither UML or BPMN include modeling primitives specific to software process modeling both are obviously capable of describing a myriad of different types of processes so it&#8217;s not surprising that they work &#8220;good enough&#8221; in many scenarios. As we said, this is also the case for research works where it is difficult to see references to SPEM in the last years.<\/p>\n<p><span style=\"font-weight: 400;\">Is, then, the time to deprecate SPEM? Time to revise and refresh it? Or are UML and BPMN combined, enough to model software development processes? Or, maybe, we need a new set of DSLs that target the process modeling needs of each of the new software engineering scenarios we need to cope with?\u00a0<\/span><\/p>\n<p>Feel free to share your thoughts and point us to any potential SPEM (or any other tailored process modeling tool) you may know!<\/p>\n<span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Software is becoming more and more complex and require new development practices. In this post we argue the need for better software process modeling tools and revisit the state of the art of SPEM modeling tools. <\/p>\n","protected":false},"author":110,"featured_media":8115,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","_has_post_settings":[],"footnotes":""},"categories":[20,93,35,24],"tags":[839,841],"hashtags":[],"class_list":["post-8113","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-modeling","category-agile","category-software_engineering","category-tools","tag-process-modeling","tag-spem"],"_links":{"self":[{"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/posts\/8113","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/users\/110"}],"replies":[{"embeddable":true,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/comments?post=8113"}],"version-history":[{"count":0,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/posts\/8113\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/media\/8115"}],"wp:attachment":[{"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/media?parent=8113"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/categories?post=8113"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/tags?post=8113"},{"taxonomy":"hashtags","embeddable":true,"href":"https:\/\/modeling-languages.com\/wp-json\/wp\/v2\/hashtags?post=8113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}