<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Is SonarQube Compatible with Appian</title><link>https://community.appian.com/discussions/f/general/12584/is-sonarqube-compatible-with-appian</link><description>Hi All, 
 
 Has anyone came across integrating sonarQube with Appian. or Is it compatible with Appian. 
 
 TIA :) 
 Harsha</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/78331?ContentTypeID=1</link><pubDate>Mon, 07 Dec 2020 15:39:51 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:f244b84f-3bcd-44b5-bdf5-c6b40bebe557</guid><dc:creator>Stewart Burchell</dc:creator><description>&lt;p&gt;Tell me if I&amp;#39;m wrong but I think what you&amp;#39;re trying to achieve is a method of conducting quality assurance reviews on delivered Appian objects. Such reviews will cover what I like to call &amp;#39;Design-time&amp;#39; risks e.g. are the objects named correctly according to the standard set for that Application; and &amp;#39;Run-time&amp;#39; risks e.g. is the Data Management setting on a&amp;nbsp; process model set according to the policy defined in the standards for that Application. There are many such &amp;#39;standards&amp;#39; and some will be common across Applications, and some will be specific to an Application. There are also poor design patterns e.g. calling a Query Entity within a forEach() loop. Typically a project will set out all of these standards in a &amp;#39;Peer Review checklist&amp;#39; document, and the developers will check each others implementations against this list.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I am assuming that the real question behind your question is: is there a tool we can use to automate these sorts of quality assurance checks? The answer right now is, no, nothing out of the box. The specific answer to your question is that Sonarqube does not support &amp;#39;Appian&amp;#39; as a language.&lt;/p&gt;
&lt;p&gt;Ideally what is required is a tool that you can configure the &amp;#39;rules&amp;#39; of what is good/not good within a specific Appian Application, and an engine that can run those rules over your Appian objects and report on them. The tool should also be extensible so that you can manage the rules - adding new ones, switching off existing ones, and flexing up and down your appetite for risk (since it is all about risk in the end).&lt;/p&gt;
&lt;p&gt;I am working on such a tool right now and hope to have this on the AppMarket by the end of this year.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/78327?ContentTypeID=1</link><pubDate>Mon, 07 Dec 2020 14:09:56 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a394ef30-ce25-4020-be79-70b9e9de4fcd</guid><dc:creator>juergeng393</dc:creator><description>&lt;p&gt;Hi Richard,&lt;/p&gt;
&lt;p&gt;what we basically do in the peer review app, is uploading the zip file of the application we would like to get examined. (no deployment of the application necessary). We extract the zip file and parse the xml code applying more than 26 checks for process models, rules, groups, constants, interfaces,&amp;nbsp;etc., creating an interactive report about the violations found.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/78325?ContentTypeID=1</link><pubDate>Mon, 07 Dec 2020 13:52:50 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:7865a546-5eb6-41f0-a953-10b267fae60f</guid><dc:creator>juergeng393</dc:creator><description>&lt;p&gt;Hi Vishnu,&lt;/p&gt;
&lt;p&gt;Yes, it is true - SonarQube supports XML files, but to my understanding only does static code analysis for 10 rules:&lt;br /&gt;&lt;a href="https://rules.sonarsource.com/xml"&gt;https://rules.sonarsource.com/xml&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So checking e. g.&amp;nbsp;if a process model hands over data to a sub-process by referencing or by value is not possible.&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/78298?ContentTypeID=1</link><pubDate>Fri, 04 Dec 2020 14:29:09 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:3d25a054-f698-4c78-a2f1-1bae11285422</guid><dc:creator>Peter Lewis</dc:creator><description>&lt;p&gt;I don&amp;#39;t think having SonarQube checking the XML is going to help you. All of the XML definitions of process models get generated&amp;nbsp;in Appian and can only be understood by Appian. Plus, the part you&amp;#39;re interested in is whether the process model is designed efficiently (i.e. the data contained in the XML) - the XML structure itself has no bearing on the design of your process model.&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s a scenario that might help to explain: suppose you export all your process models and run them through SonarQube, and let&amp;#39;s also assume it finds some code suggestion. What would you do with that suggestion? You can&amp;#39;t change the XML - if you do, Appian wouldn&amp;#39;t be able to parse it correctly. Plus, an design mistake like creating an infinite loop wouldn&amp;#39;t be found in the XML analysis unless that tool has a lot of knowledge about how Appian works.&lt;/p&gt;
&lt;p&gt;This is a pretty old post, and Appian has made some strides in helping you analyze your applications directly within the product. I think your best bet is using tools like the &lt;a href="https://docs.appian.com/suite/help/latest/health-check.html"&gt;Health Check&lt;/a&gt;&amp;nbsp;or &lt;a href="https://docs.appian.com/suite/help/latest/appian-recommendations.html"&gt;Appian Recommendations&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/78293?ContentTypeID=1</link><pubDate>Fri, 04 Dec 2020 06:19:08 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:96520204-0d4f-461f-be25-e73c159afcab</guid><dc:creator>vishnuv</dc:creator><description>&lt;p&gt;Hi Juergeng,&lt;/p&gt;
&lt;p&gt;I agree with SAIL when you say that SonarQube cant deal with respective constructs. BUt w.r.t process models, I was browsing though SonarQube website and found that XML constructs can also be dealt, link here ---&amp;gt;&amp;nbsp;&lt;a href="https://www.sonarqube.org/features/multi-languages/"&gt;https://www.sonarqube.org/features/multi-languages/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Just trying to understand if it really cant be done.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/77750?ContentTypeID=1</link><pubDate>Tue, 10 Nov 2020 10:58:32 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:f979b0f1-ca12-4d49-a893-af77f8e558d9</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;This could be a starter:&amp;nbsp;&lt;a href="https://community.appian.com/b/appmarket/posts/coe-appcop"&gt;community.appian.com/.../coe-appcop&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/77748?ContentTypeID=1</link><pubDate>Tue, 10 Nov 2020 10:51:40 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:84b9e89a-20e0-41ec-b1ab-10f172972e07</guid><dc:creator>richard-hancock</dc:creator><description>&lt;p&gt;Hi Juergen,&lt;/p&gt;
&lt;p&gt;How is your &amp;quot;Peer Review&amp;quot; app?&amp;nbsp; We are hoping to create something like this ourselves so any details you can share would be most welcome.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/65822?ContentTypeID=1</link><pubDate>Thu, 11 Apr 2019 14:10:17 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:ddc4a613-4ccb-4aad-801f-4ed0fb6204fa</guid><dc:creator>juergeng393</dc:creator><description>&lt;p&gt;You are right - to have peer reviews for application build with Appian is always a good idea.&lt;br /&gt;That is what we have automated with our &amp;#39;Peer Review&amp;#39; application.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/65821?ContentTypeID=1</link><pubDate>Thu, 11 Apr 2019 13:58:22 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:cc025725-51d0-4ddc-a52e-94b1367de8a6</guid><dc:creator>catalinp0001</dc:creator><description>&lt;p&gt;I can add also, by conducting code reviews (peer review)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/65796?ContentTypeID=1</link><pubDate>Wed, 10 Apr 2019 15:32:02 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:8dcbb330-fb60-4bf4-979f-a2415bc4993f</guid><dc:creator>juergeng393</dc:creator><description>&lt;p&gt;Hi Harsha,&lt;br /&gt;&lt;br /&gt;sonarQube is a tool used to achieve code quality, currently supporting 26 programming languages.&lt;br /&gt;I assume that your intent is to instill code quality for the applications build on the Appian Platform.&lt;br /&gt;Then the answer is &amp;quot;NO&amp;quot;. &lt;br /&gt;The rationale behind is: Appian is a low-code platform. The process models defined are transformed in XML code, executed&lt;br /&gt;by the Appian BPM Engine. Now way that sonarQube can deal with those constructs. Same is true for the Interface definitions where&lt;br /&gt;Appian is using the SAIL code.&lt;br /&gt;&lt;br /&gt;To achieve good quality for our applications build with Appian, we have build an application in Appian which checks that all Best Practices are&lt;br /&gt;followed for Appian applications (e.g Alert settings, security settings in process models, description provided, Node assignments to groups only etc.)&lt;br /&gt;&lt;br /&gt;Hope that helps.&lt;br /&gt;Juergen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is SonarQube Compatible with Appian</title><link>https://community.appian.com/thread/65763?ContentTypeID=1</link><pubDate>Tue, 09 Apr 2019 16:54:56 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:d35973dd-b99f-4d8c-b8d7-f8be8b85f69f</guid><dc:creator>vmachuca</dc:creator><description>&lt;p&gt;I have the same question&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>