{"id":240,"date":"2012-11-25T14:54:40","date_gmt":"2012-11-25T13:54:40","guid":{"rendered":"http:\/\/dev.qualilogy.com\/fr\/?p=240"},"modified":"2013-01-08T16:56:01","modified_gmt":"2013-01-08T15:56:01","slug":"sonar-abap-les-cas-dutilisation","status":"publish","type":"post","link":"http:\/\/qualilogy.com\/fr\/sonar-abap-les-cas-dutilisation\/","title":{"rendered":"Sonar ABAP &#8211; Les cas d&rsquo;utilisation"},"content":{"rendered":"<p><a href=\"http:\/\/vicken.deviantart.com\/\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-2639\" title=\"Qualilogy41\" alt=\"\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/11\/Qualilogy41.jpg\" width=\"349\" height=\"145\" \/><\/a>Nous continuons <a title=\"Sonar ABAP - Les questions\" href=\"http:\/\/qualilogy.com\/fr\/sonar-abap-les-questions\" target=\"_blank\">le post pr\u00e9c\u00e9dent<\/a> sur les questions \u00e0 poser afin de pr\u00e9parer la mise en place d&rsquo;un processus d&rsquo;analyse de code ABAP, dont nous avons vu que celui-ci reposait en grande partie sur les cas d&rsquo;utilisation.<\/p>\n<p>J&rsquo;ai donc invit\u00e9 Walter, <a title=\"Sonar &amp; ABAP\" href=\"http:\/\/qualilogy.com\/fr\/sonar-et-abap\" target=\"_blank\">Directeur Qualit\u00e9<\/a> de Drago Solutions, qui nous accompagne depuis le d\u00e9but de cette s\u00e9rie d&rsquo;articles, \u00e0 r\u00e9pondre \u00e0 quelques questions sur ce sujet. <!--more--><\/p>\n<p><em>Walter, quels sont les cas d&rsquo;utilisation que tu rencontres le plus souvent ?<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Les cas d&rsquo;utilisation auxquels je pense sont : Quality Gate, am\u00e9lioration continue, audit d&rsquo;un portefeuille d&rsquo;aplications, benchmark de provider, KPI pour le management (\u00e9volution de la qualit\u00e9 du code), assessments sp\u00e9cifiques (par exemple pour un migration, un probl\u00e8me de performance, etc.)<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Les plus fr\u00e9quents dans mon exp\u00e9rience sont les suivants : d&rsquo;abord, l&rsquo;\u00e9valuation ponctuelle d&rsquo;un projet, deuxi\u00e8mement l&rsquo;int\u00e9gration continue de l&rsquo;analyse de code dans le cycle de vie du logiciel, troisi\u00e8mement, une analyse avant et apr\u00e8s un projet en cours de maintenance, quatri\u00e8mement, l&rsquo;audit de la performance.<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Mais il ne faut pas oublier les sous-produits de ces cas d&rsquo;utilisation, \u00e0 savoir la l&rsquo;impl\u00e9mentation de best practices de programmation, le suivi des accords de niveau de service (SLA ou Service Level Agreement), la g\u00e9n\u00e9ration de documentations techniques lorsque celles-ci sont obsolescentes ou absentes, l&rsquo;\u00e9valuation des exigences CMMI ou ISO, ou enfin le respect des normes et des r\u00e8gles sp\u00e9cifiques en environnements \u00e0 haut risque (d\u00e9fense, aviation civile, nucl\u00e9aire, secteur pharmaceutique, etc.).<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Et r\u00e9cemment, nous avons ouvert un nouveau champ d&rsquo;investigation, sur l&rsquo;\u00e9valuation et la r\u00e9duction des risques de d\u00e9faillances des processus business, caus\u00e9es par les syst\u00e8mes d&rsquo;information qui les soutiennent, \u00e0 travers l&rsquo;analyse de code de ces syst\u00e8mes.<\/em><\/p>\n<p><em>Y a-t-il des cas d&rsquo;utilisation qui te semble pr\u00e9senter plus de valeur et que tu recommanderais \u00e0 un client ou \u00e0 des utilisateurs \/ stakeholders en interne ?<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Tout d&rsquo;abord, l&rsquo;int\u00e9gration continue de l&rsquo;analyse de code dans le cycle de vie de projet a d\u00e9montr\u00e9 une tr\u00e8s grande valeur pour les organisations dans lesquelles nous l&rsquo;avons mis en \u0153uvre.<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Je recommande \u00e9galement la r\u00e9alisation d&rsquo;audit de code sous l&rsquo;angle des risques pour les processus critiques d&rsquo;une organisation, et particuli\u00e8rement les processus d&rsquo;affaires.<br \/>\n<\/em><\/p>\n<p><em>Est-ce que cette valeur peut \u00eatre diff\u00e9rente en fonction de la taille du portefeuille SAP, ou le nombre de fournisseurs, ou tout autre \u00e9l\u00e9ment?<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Dans ce dernier exemple d&rsquo;analyse de risque pour les processus business, plus le portefeuille d&rsquo;applications SAP sera important, plus l&rsquo;on pourra identifier et mesurer ces risques au travers de l&rsquo;analyse de code. <\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Pour ce qui est du nombre de fournisseurs, plus il est important, plus il sera profitable d&rsquo;effectuer des cas d&rsquo;utilisation tels que le benchmarking interne et le suivi des SLA ou des best practices par les prestataires.<br \/>\n<\/em><\/p>\n<p><em>Qu&rsquo;est ce que tu appelles benchmarking \u201cinterne\u201d ou \u201cexterne\u201d?<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Je parle de benchmarking \u201cinterne\u201d s&rsquo;il est n\u00e9cessaire d&rsquo;\u00e9valuer de mani\u00e8re comparative le niveau de connaissance des bonnes pratiques de programmation et la qualit\u00e9 du code produit par diff\u00e9rentes \u00e9quipes, normalement de diff\u00e9rents providers.<br \/>\n<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>A l&rsquo;inverse, un benchmarking \u201cexterne\u201d porte sur les r\u00e9sultats d&rsquo;analyse de code de diff\u00e9rentes entreprises d&rsquo;un m\u00eame secteur et pour une m\u00eame technologie, par exemple, les impl\u00e9mentations SAP du module IS-U dans le secteur de l&rsquo;\u00e9nergie ou la personnalisation d&rsquo;un syst\u00e8me CRM dans le secteur des t\u00e9l\u00e9communications.<br \/>\n<\/em><\/p>\n<p><em>Qu&rsquo;en est-il des d\u00e9fauts ant\u00e9rieurs , qui proviennent d&rsquo;un autre provider ou de l&rsquo;\u00e9quipe de projet pr\u00e9c\u00e9dente ?<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Comme tu l&rsquo;as soulign\u00e9 dans ton dernier article, les providers ou \u00e9quipes de projet actuels ne sont pas responsables des carences existantes dans le code. N\u00e9anmoins, lorsqu&rsquo;elles sont r\u00e9v\u00e9l\u00e9es par l&rsquo;analyse de code, nous ne devons pas les ignorer, en fonction de leur gravit\u00e9 et de leur impact ou de leur fr\u00e9quence. Nous pouvons s\u00e9lectionner les points critiques et recommander un plan d&rsquo;actions. L&rsquo;effort de r\u00e9solution, apr\u00e8s d\u00e9tection, sera toujours inf\u00e9rieur \u00e0 son impact pour les utilisateurs. Je compare toujours de tels d\u00e9fauts \u00e0 une bombe \u00e0 retardement. Les gens que je rencontre comprennent imm\u00e9diatement ce que je veux dire.<br \/>\n<\/em><\/p>\n<p><em>Que le client ou l&rsquo;\u00e9quipe de projet dispose ou non de ses propres normes de qualit\u00e9, quels sont les b\u00e9n\u00e9fices de l&rsquo;analyse de code ?<\/em><\/p>\n<p style=\"margin-left: 25px\"><em>Qu&rsquo;il existe ou non des standards et des normes de programmation, l&rsquo;analyse de code permet un premier niveau de connaissance des applications et ensuite de surveiller le respect par l&rsquo;\u00e9quipe de projet de ces normes, internes ou externes. En second lieu, il devient possible de d\u00e9finir des objectifs et de v\u00e9rifier si les d\u00e9veloppeurs parviennent \u00e0 les atteindre, dans l&rsquo;int\u00e9r\u00eat des utilisateurs et des stakeholders.<\/em><\/p>\n<p><em>L&rsquo;objectif peut \u00eatre : \u00ab\u00a0La performance des bases de donn\u00e9es doit \u00eatre optimale\u00a0\u00bb, et donc de diffuser, mettre en \u0153uvre et contr\u00f4ler le respect des bonnes pratiques correspondantes, sur la base de donn\u00e9es objectives et mesurables : ne pas utiliser de Selects imbriqu\u00e9s, \u00e9viter l&rsquo;instruction l&rsquo;instruction SELECT &#8230; ENDSELECT, etc<\/em>.<\/p>\n<p>Merci Walter, pour partager ton exp\u00e9rience dans l&rsquo;impl\u00e9mentation de ces cas d&rsquo;utilisation SAP. Les prochains posts seront plus techniques, centr\u00e9s sur l&rsquo;analyse de code ABAP avec Sonar.<\/p>\n<p>A bient\u00f4t.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nous continuons le post pr\u00e9c\u00e9dent sur les questions \u00e0 poser afin de pr\u00e9parer la mise en place d&rsquo;un processus d&rsquo;analyse de code ABAP, dont nous avons vu que celui-ci reposait en grande partie sur les cas d&rsquo;utilisation. J&rsquo;ai donc invit\u00e9 Walter, Directeur Qualit\u00e9 de Drago Solutions, qui nous accompagne depuis le d\u00e9but de cette s\u00e9rie [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-240","post","type-post","status-publish","format-standard","hentry","category-sonar-abap"],"_links":{"self":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts\/240"}],"collection":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/comments?post=240"}],"version-history":[{"count":3,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts\/240\/revisions"}],"predecessor-version":[{"id":265,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts\/240\/revisions\/265"}],"wp:attachment":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/media?parent=240"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/categories?post=240"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/tags?post=240"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}