{"id":147,"date":"2012-06-17T09:49:27","date_gmt":"2012-06-17T08:49:27","guid":{"rendered":"http:\/\/dev.qualilogy.com\/es\/?p=147"},"modified":"2013-01-05T09:50:03","modified_gmt":"2013-01-05T08:50:03","slug":"quality-profile","status":"publish","type":"post","link":"http:\/\/qualilogy.com\/es\/quality-profile\/","title":{"rendered":"Quality profile"},"content":{"rendered":"<p>Hemos visto en el post <a href=\"http:\/\/qualilogy.com\/es\/sonar-analisis-cobol-con-jenkins\" target=\"_blank\">anterior<\/a> c\u00f3mo crear un an\u00e1lisis de c\u00f3digo Cobol con Sonar y Jenkins.<\/p>\n<p>En realidad, no hemos utilizado todas las reglas Cobol disponibles en Sonar. \u00bfPor qu\u00e9? Debido a que algunas reglas est\u00e1n desactivadas, ya que se usan solamente en un contexto determinado y entonces requieren alguna configuraci\u00f3n. Por ejemplo, las reglas de nomenclatura no est\u00e1n estandarizadas en Cobol, y con frecuencia ser\u00e1n diferentes entre departamentos o incluso entre equipos del mismo departamento.<\/p>\n<p>As\u00ed que necesitamos gestionar diferentes modelos de calidad, es decir diferentes conjuntos de normas seg\u00fan el proyecto. Sonar lo permite gracias a los &#8216;Quality profiles&#8217; que incluyen las reglas activadas durante un an\u00e1lisis de c\u00f3digo.<\/p>\n<p>Vamos a ver en este post, c\u00f3mo crear un nuevo perfil con todas las normas de calidad Cobol, y asignarlo a un proyecto existente. <!--more--><\/p>\n<h3><strong>Crear un nuevo Quality profile<\/strong><\/h3>\n<p>El objetivo es examinar lo m\u00e1s de reglas Cobol posibles, as\u00ed que vamos a crear un Quality profile con todas estas reglas. Para ello:<\/p>\n<ul>\n<li>Entrar como Admin.<\/li>\n<li><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfile.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-1891\" title=\"QualCobolNewProfile\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfile.jpg\" alt=\"\" width=\"420\" height=\"99\" \/><\/a>En \u2018Configuration\u2019, la primera pantalla lista los Quality profiles existentes. Podemos ver que el perfil &#8216;Sonar Way&#8217; tiene 34 reglas.<\/li>\n<li>Vamos a crear un nuevo Quality profile copiando (bot\u00f3n \u2018Copy\u2019) el perfil \u2018Sonar Way\u2019.<\/li>\n<li>Vamos a asignar un nombre a este nuevo perfil: \u2018Sonar Cobol Complete\u2019 por ejemplo. Ahora, aparece en la lista de los \u2018Cobol profiles\u2019.<\/li>\n<\/ul>\n<h3><strong>Gestionar las reglas en un Quality profile<\/strong><\/h3>\n<p>Queremos utilizar todas las reglas Cobol con nuestros an\u00e1lisis, para descubrir y comentar estas &#8216;best practices&#8217;. Para ello:<\/p>\n<ul>\n<li>Entrar en el nuevo Quality profile: las 34 reglas activas aparecen en la p\u00e1gina \u2018Coding rules\u2019 .<\/li>\n<\/ul>\n<p><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfile1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1895\" title=\"QualCobolNewProfile1\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfile1.jpg\" alt=\"\" width=\"447\" height=\"246\" \/><\/a><\/p>\n<ul>\n<li>Seleccionar \u2018Inactive\u2019 en la list-box &#8216;Status&#8217; y hacer \u2018Search\u2019 : se muestran ahora 51 reglas inactivas.<\/li>\n<\/ul>\n<ul>\n<li><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfileBulk.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-1897\" title=\"QualCobolNewProfileBulk\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfileBulk.jpg\" alt=\"\" width=\"213\" height=\"68\" \/><\/a> A la derecha de esta pantalla, un bot\u00f3n permite activar todas las reglas.<\/li>\n<\/ul>\n<ul>\n<li>De vuelta en la pantalla &#8216;Quality Profiles&#8217;, cambiar nuestro nuevo perfil en el &#8216;Profile&#8217; por defecto.<\/li>\n<\/ul>\n<p><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfileDflt.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1893\" title=\"QualCobolNewProfileDflt\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfileDflt.jpg\" alt=\"\" width=\"375\" height=\"119\" \/><\/a>Nota: puedes cambiar la criticidad de una regla, de &#8216;Major&#8217; a &#8216;Blocker&#8217;, por ejemplo.<\/p>\n<p>Del mismo modo, puedes cambiar la configuraci\u00f3n de la reglas. Por ejemplo, para cambiar el umbral de complejidad ciclom\u00e1tica para un programa Cobol muy complejo. Solamente haz un &#8216;click&#8217; en la regla para acceder al parametro, cuando existe uno.<\/p>\n<p><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolRuleParamj.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1902\" title=\"QualCobolRuleParamj\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolRuleParamj.jpg\" alt=\"\" width=\"618\" height=\"178\" \/><\/a><\/p>\n<h3><strong>Asignar un Quality profile a un proyecto<\/strong><\/h3>\n<p>Nuestro nuevo perfil es activado para todos los nuevos proyectos que se pueden crear. Pero \u00bfqu\u00e9 pasa con los proyectos existentes? Se analizan con el perfil &#8216;Sonar Way&#8217;.<\/p>\n<p>Ahora, para utilizar el nuevo perfil con los an\u00e1lisis existentes, hay que ir en la pesta\u00f1a &#8216;Projects&#8217; de la p\u00e1gina &#8216;Quality Profiles&#8217; y asociar los proyectos existentes con el nuevo perfil.<\/p>\n<p><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfileProj.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1899\" title=\"QualCobolNewProfileProj\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/06\/QualCobolNewProfileProj.jpg\" alt=\"\" width=\"448\" height=\"166\" \/><\/a><\/p>\n<p>Hemos visto en este post c\u00f3mo crear un Quality profile, es decir, un modelo de calidad que agrupa ciertas reglas, su nivel de criticidad o su configuraci\u00f3n. Entonces, es posible manejar diferentes perfiles de acuerdo con diferentes normas de calidad.<\/p>\n<p>Si analizas ahora tus proyectos con todas las reglas Cobol activadas, encontrar\u00e1s un fuerte aumento en el n\u00famero de violaci\u00f3nes. A continuaci\u00f3n en nuestro pr\u00f3ximo post.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hemos visto en el post anterior c\u00f3mo crear un an\u00e1lisis de c\u00f3digo Cobol con Sonar y Jenkins. En realidad, no hemos utilizado todas las reglas Cobol disponibles en Sonar. \u00bfPor qu\u00e9? Debido a que algunas reglas est\u00e1n desactivadas, ya que se usan solamente en un contexto determinado y entonces requieren alguna configuraci\u00f3n. Por ejemplo, las [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-147","post","type-post","status-publish","format-standard","hentry","category-sonar-360"],"_links":{"self":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts\/147"}],"collection":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/comments?post=147"}],"version-history":[{"count":1,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts\/147\/revisions"}],"predecessor-version":[{"id":148,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts\/147\/revisions\/148"}],"wp:attachment":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/media?parent=147"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/categories?post=147"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/tags?post=147"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}