{"id":160837,"date":"2024-04-16T14:43:33","date_gmt":"2024-04-16T13:43:33","guid":{"rendered":"https:\/\/www.devoteam.com\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/"},"modified":"2024-04-16T14:43:33","modified_gmt":"2024-04-16T13:43:33","slug":"code-quality-in-mulesoft-development-leveraging-sonarqube","status":"publish","type":"expert-view","link":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/","title":{"rendered":"Code Quality in MuleSoft Development: Leveraging SonarQube"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Maintaining code quality and ensuring API reliability is essential to all MuleSoft development (as it is with any software development). However, as projects grow in complexity and development teams expand, upholding standards to ensure the required quality becomes increasingly challenging.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Code Analysis tools such as <a href=\"https:\/\/www.sonarsource.com\/\"><em>SonarQube<\/em><\/a> come into play at this point. They provide features to help developers, team leads, and software architects maintain quality standards.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As one of the leaders in this field, we&#8217;ll explore why using SonarQube is essential for successful software development.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SonarQube: What is it?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SonarQube\u2019s primary function is to perform in-depth code quality assessments, making it a valuable companion for all developers. It scrutinises codebases to identify issues, such as coding inefficiencies, potential bugs, security vulnerabilities, and redundant code segments. These scans can be performed on multiple codebases of different languages; all run quickly and efficiently.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The tool can be incorporated into Build pipelines (as shown in the diagram below), providing developers with immediate feedback. It can even be used to decorate Pull Requests, giving additional insight when reviewing code.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/QEN8WfNueOE1fsiX1ec4u_yZDT-VZynFldZcUi51gE9AbNOEQ7aNSI0FFqiWuvb8wH_QM_gdRhdotvX9xSm29Z2YfOQWwaXvcGJFX4eyruXdgAwutO3kJ4J7fRDtn_4ak_vtOYBw-hbofxC0uvq3v2w.png\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Note, in the Build pipeline above, the <em>Code Analysis<\/em> phase is after the <em>Unit Test<\/em> stage &#8211; some may prefer to run it <em>before<\/em>. However, one of the benefits of SonarQube is that it\u2019s possible to upload the results of any Unit Tests to the SonarQube UI. Yet, this is only if the code analysis scan is performed <em>after<\/em> the unit test phase is complete. An approach such as this provides the advantage of a single view of all issues within the codebase.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SonarQube can easily be integrated with Build tools such as Maven, and there\u2019s a decent level of <a href=\"https:\/\/docs.sonarsource.com\/sonarqube\/latest\/analyzing-source-code\/scanners\/sonarscanner-for-maven\/\">documentation<\/a> illustrating how to do this. However, when wanting to run SonarQube with MuleSoft, consider any mismatch in Java versions when constructing pipelines. MuleSoft may be using Java 8, while SonarQube could use Java 11 (or even Java 17).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Core Features of SonarQube<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">With its scoring system, SonarQube offers insights into the health of any codebase, enabling developers to pinpoint and rectify areas requiring improvement. It ensures that the code is functional, well-structured and maintainable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With SonarQube, it is possible to create <em>Quality Gates<\/em> and <em>Quality Profiles<\/em>. These allow for thresholds to be set to determine acceptable quality levels. Depending on the configuration applied, they can automatically fail pipelines or decline Pull Requests.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Although SonarQube can analyse many different languages out-of-the-box (OOTB), <em>plugins<\/em> can be developed to extend the list of languages further. MuleSoft is not an OOTB language, so an appropriate plugin must be enabled before scanning. Fortunately, a <a href=\"https:\/\/github.com\/mulesoft-catalyst\/mule-sonarqube-plugin\/releases\">pre-built plugin<\/a> already exists for this very purpose; the procedure for installing and enabling this plugin is straightforward.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Note plugins extend SonarQube&#8217;s functionality to additional languages and report the results of other types of scans &#8211; those performed outside of SonarQube. One example would be the <a href=\"https:\/\/github.com\/dependency-check\/dependency-check-sonar-plugin\">OWASP Dependency Checker<\/a> scan.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1489767514-scaled.jpg\" alt=\"\" class=\"wp-image-9910\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Issue Detection<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">When integrated into a development pipeline (as demonstrated above), SonarQube becomes a game-changer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SonarQube can catch coding issues at the earliest stages of development, ensuring bugs and vulnerabilities are addressed well before they enter Production &#8211; reducing the number of <em>live<\/em> bugs and the backlog of technical debt. This early detection translates to lower development costs, enabling faster code delivery with increased confidence.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Enforcing Coding Standards<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Maintaining coding standards and best practices across a development team is essential. SonarQube is adept at enforcing standards, helping maintain uniform coding styles and, where necessary, adhering to industry best practices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This consistency of code not only improves readability but also fosters effective collaboration among developers. It helps reduce the learning curve for newcomers to a team.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Security Scanning<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Security is a top priority in modern software development. To this end, SonarQube includes security rules and vulnerability scanning capabilities. However, it is essential to note that this feature is more relevant to OOTB languages than those that require additional plugins to conduct scanning (such as MuleSoft). However, being aware of this feature is useful.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When used, this scanning can identify and flag security weaknesses in code, including potential injection vulnerabilities, authentication lapses, and data leakage risks. Addressing these vulnerabilities during development significantly reduces the likelihood of security breaches after deployment, safeguarding sensitive data.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1681145170_edited-scaled.jpg\" alt=\"\" class=\"wp-image-9908\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Further Benefits<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Facilitating Collaboration and Communication<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Effective communication is vital in all software development, not just in MuleSoft development. SonarQube allows developers, testers, architects, and other team members to discuss and address code issues. Fostering this communication enables knowledge sharing and a shared sense of responsibility for code quality, thereby enhancing the overall development efficiency.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Promoting Continuous Improvement<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Successful API development is an ongoing journey of improvement. SonarQube&#8217;s reporting and visualisation features enable teams to monitor progress and track code quality enhancements over time.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Licensing<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Like many other software products, there are several licenses for SonarQube, each with access to a different set of features and at a different price.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There are three <em>paid-for<\/em> versions with a substantial price difference between them. Therefore, the differences must be investigated diligently before deciding upon what version is most suitable for the needs of an organisation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There are also two other versions to note, although these come with some limitations. There is the community-driven free version, but the restriction is that only the project&#8217;s default main branch can be scanned. Scanning additional branches is not possible. There is also a PaaS offering, <em>SonarCloud<\/em>, but this version doesn&#8217;t allow for plugins, so it can&#8217;t be used with MuleSoft projects.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SonarQube shouldn\u2019t be considered just a code analysis tool; it&#8217;s an indispensable asset for API development. It empowers MuleSoft development teams to elevate code quality by upholding standards and managing technical debt.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">By incorporating SonarQube into your API development toolkit, you can craft functional, maintainable, secure, and robust APIs. These are all essential attributes for success when building MuleSoft APIs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So, if you haven&#8217;t already, consider making SonarQube an integral part of your development workflow. Your APIs, your team, and your users will all reap the benefits.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Maintaining code quality and ensuring API reliability is essential to all MuleSoft development (as it is with any software development). However, as projects grow in complexity and development teams expand, upholding standards to ensure the required quality becomes increasingly challenging. Code Analysis tools such as SonarQube come into play at this point. They provide features [&hellip;]<\/p>\n","protected":false},"featured_media":114238,"template":"","categories":[752],"tags":[1148],"industry":[],"class_list":["post-160837","expert-view","type-expert-view","status-publish","has-post-thumbnail","hentry","category-business-platforms","tag-uk-import-uk"],"acf":[],"cards":"\n\t<div class=\"single-post-card\">\n\n\t\t<figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/\" target=\"_self\" ><img width=\"2560\" height=\"1706\" src=\"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1.jpg\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"Code Quality in MuleSoft Development: Leveraging SonarQube\" style=\"aspect-ratio:4\/3;width:100%;object-fit:cover;\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1.jpg 2560w, https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-300x200.jpg 300w, https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-1024x682.jpg 1024w, https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-768x512.jpg 768w, https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-1536x1024.jpg 1536w, https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-2048x1365.jpg 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/a><\/figure>\n\n\t\t\n\t\t<div class=\"wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-43282307 wp-block-group-is-layout-flex\">\n\t<p style=\"font-style:normal;font-weight:700\" class=\"has-link-color wp-elements-1 wp-block-lp-post-type has-text-color has-primary-color has-small-font-size\">Expert View<\/p>\n\n\t\t\n\t\t<h3 style=\"font-style:normal;font-weight:400\" class=\"wp-block-post-title has-base-font-size\"><a href=\"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/\" target=\"_self\" >Code Quality in MuleSoft Development: Leveraging SonarQube<\/a><\/h3><\/div>\n\t\t\n\t<\/div>\n\n","yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.4 (Yoast SEO v28.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Code Quality in MuleSoft Development: Leveraging SonarQube | Devoteam<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Code Quality in MuleSoft Development: Leveraging SonarQube\" \/>\n<meta property=\"og:description\" content=\"Maintaining code quality and ensuring API reliability is essential to all MuleSoft development (as it is with any software development). However, as projects grow in complexity and development teams expand, upholding standards to ensure the required quality becomes increasingly challenging. Code Analysis tools such as SonarQube come into play at this point. They provide features [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/\" \/>\n<meta property=\"og:site_name\" content=\"Devoteam\" \/>\n<meta property=\"og:image\" content=\"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/QEN8WfNueOE1fsiX1ec4u_yZDT-VZynFldZcUi51gE9AbNOEQ7aNSI0FFqiWuvb8wH_QM_gdRhdotvX9xSm29Z2YfOQWwaXvcGJFX4eyruXdgAwutO3kJ4J7fRDtn_4ak_vtOYBw-hbofxC0uvq3v2w.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/\",\"url\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/\",\"name\":\"Code Quality in MuleSoft Development: Leveraging SonarQube | Devoteam\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/devoteam.info\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/GettyImages-1475582712-scaled-1.jpg\",\"datePublished\":\"2024-04-16T13:43:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/#primaryimage\",\"url\":\"https:\\\/\\\/devoteam.info\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/GettyImages-1475582712-scaled-1.jpg\",\"contentUrl\":\"https:\\\/\\\/devoteam.info\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/GettyImages-1475582712-scaled-1.jpg\",\"width\":2560,\"height\":1706},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/code-quality-in-mulesoft-development-leveraging-sonarqube\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Expert View\",\"item\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/expert-view\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Code Quality in MuleSoft Development: Leveraging SonarQube\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/#website\",\"url\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/\",\"name\":\"Devoteam\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/devoteam.info\\\/uk\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Code Quality in MuleSoft Development: Leveraging SonarQube | Devoteam","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/","og_locale":"en_GB","og_type":"article","og_title":"Code Quality in MuleSoft Development: Leveraging SonarQube","og_description":"Maintaining code quality and ensuring API reliability is essential to all MuleSoft development (as it is with any software development). However, as projects grow in complexity and development teams expand, upholding standards to ensure the required quality becomes increasingly challenging. Code Analysis tools such as SonarQube come into play at this point. They provide features [&hellip;]","og_url":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/","og_site_name":"Devoteam","og_image":[{"url":"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/QEN8WfNueOE1fsiX1ec4u_yZDT-VZynFldZcUi51gE9AbNOEQ7aNSI0FFqiWuvb8wH_QM_gdRhdotvX9xSm29Z2YfOQWwaXvcGJFX4eyruXdgAwutO3kJ4J7fRDtn_4ak_vtOYBw-hbofxC0uvq3v2w.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/","url":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/","name":"Code Quality in MuleSoft Development: Leveraging SonarQube | Devoteam","isPartOf":{"@id":"https:\/\/devoteam.info\/uk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/#primaryimage"},"image":{"@id":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/#primaryimage"},"thumbnailUrl":"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1.jpg","datePublished":"2024-04-16T13:43:33+00:00","breadcrumb":{"@id":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/#primaryimage","url":"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1.jpg","contentUrl":"https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1.jpg","width":2560,"height":1706},{"@type":"BreadcrumbList","@id":"https:\/\/devoteam.info\/uk\/expert-view\/code-quality-in-mulesoft-development-leveraging-sonarqube\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/devoteam.info\/uk\/"},{"@type":"ListItem","position":2,"name":"Expert View","item":"https:\/\/devoteam.info\/uk\/expert-view\/"},{"@type":"ListItem","position":3,"name":"Code Quality in MuleSoft Development: Leveraging SonarQube"}]},{"@type":"WebSite","@id":"https:\/\/devoteam.info\/uk\/#website","url":"https:\/\/devoteam.info\/uk\/","name":"Devoteam","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/devoteam.info\/uk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"}]}},"uagb_featured_image_src":{"full":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1.jpg",2560,1706,false],"thumbnail":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-150x150.jpg",150,150,true],"medium":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-300x200.jpg",300,200,true],"medium_large":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-768x512.jpg",768,512,true],"large":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-1024x682.jpg",1024,682,true],"1536x1536":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-1536x1024.jpg",1536,1024,true],"2048x2048":["https:\/\/devoteam.info\/wp-content\/uploads\/2024\/11\/GettyImages-1475582712-scaled-1-2048x1365.jpg",2048,1365,true]},"uagb_author_info":{"display_name":"Julien Pawlowski","author_link":"https:\/\/devoteam.info\/uk\/author\/"},"uagb_comment_info":0,"uagb_excerpt":"Maintaining code quality and ensuring API reliability is essential to all MuleSoft development (as it is with any software development). However, as projects grow in complexity and development teams expand, upholding standards to ensure the required quality becomes increasingly challenging. Code Analysis tools such as SonarQube come into play at this point. They provide features&hellip;","_links":{"self":[{"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/expert-view\/160837","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/expert-view"}],"about":[{"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/types\/expert-view"}],"version-history":[{"count":0,"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/expert-view\/160837\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/media\/114238"}],"wp:attachment":[{"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/media?parent=160837"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/categories?post=160837"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/tags?post=160837"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/devoteam.info\/uk\/wp-json\/wp\/v2\/industry?post=160837"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}