Implantación de las Normas ISO/IEC 15504 e ISO/IEC 12207 con métodos ágiles y SCRUM


Descárgalo en PDF

Subscríbete a nuestra lista de correo para descargar este artículo

* indica que es necesario

Mª Carmen García , Emanuel Irrazabal y Javier Garzás

Cada vez más, las organizaciones ven la necesidad de controlar y mejorar la calidad del software debido al impacto que ésta tiene en los costes finales. En este sentido, las organizaciones están implantando modelos de mejora de procesos software, siendo los de mayor uso CMMI-DEV (Chrissis et al., 2006) e ISO/IEC 15504 – ISO/IEC 12207 (ISO, 2004; ISO, 2008a). Sin embargo, numerosos estudios (Hareton y Terence, 2001; Saiedian y Carr, 1997; Staples et al., 2007) confirman que la aplicación de estos modelos resulta costosa en pymes y pequeños equipos de desarrollo. Y por otro lado, se suma la difícil integración de las metodologías ágiles, paradigma más utilizado por pymes y pequeños equipos de desarrollo (Coleman y O’Connor, 2008) con estos modelos.

En este sentido se han identificado varias iniciativas nacionales e internacionales orientadas expresamente a unir pymes, procesos y metodologías ágiles, como la de AENOR, en la que participa Kybele Consulting, y en la que se ha elaborado un modelo de evaluación y mejora de procesos software conforme con la norma ISO/IEC 15504 – ISO/IEC 12207:2008 adaptado a pymes y pequeños equipos de desarrollo que permita lograr una mayor agilidad, adaptación e integración con los procesos y metodologías de la organización, incluyendo ágiles.

El modelo de procesos ISO/IEC 15504 – ISO/IEC 12207:2008

Normalmente, en la mejora de la calidad de los procesos participan dos tipos de modelos, el modelo de procesos y el modelo de evaluación. El modelo de procesos define un catálogo o colección estructurada de buenas prácticas que describen las características de un proceso efectivo, mientras que el modelo de evaluación proporciona los principios para realizar una evaluación de la calidad, e implantación, de dicho modelo de procesos en una organización.

La norma ISO/IEC 15504, en su parte 7 (ISO, 2008b), describe las bases para llevar a cabo evaluaciones por niveles de madurez. En concreto, establece 6 niveles para mejorar y evaluar a las organizaciones, desde el 0 hasta el 5. Si bien dicha norma sólo describe los niveles, y no los procesos a superar en cada uno de ellos, esto último se define en el modelo desarrollado por AENOR (ver la Tabla 1).

Tabla 1. Procesos de los niveles de madurez 1 y 2 del modelo ISO/IEC 15504 – ISO/IEC 12207:2008

Integración entre ISO/IEC 12207 y los modelos ágiles

En el desarrollo software, el qué hacer y el cómo hacerlo han sido siempre aspectos básicos en la mejora de procesos, que sin embargo en la práctica han creado confusión. Los modelos de procesos, como ISO/IEC 12207, definen buenas prácticas (outcomes) y lo qué se espera encontrar en los procesos, pero en ningún momento indican cómo realizarlo (Glazer et al., 2008; Osterweil, 1987; Wang y King, 2000; Yingxu y Antony, 2002), esto último se describe en las metodologías. Por lo tanto, el uso de modelos de procesos y metodologías ágiles no debe considerarse un aspecto contradictorio sino complementario.

Un problema que sucede en muchas ocasiones cuando se implantan metodologías ágiles es la falta de documentación. Como se afirma en (Selic, 2009a), “uno de los principios ágiles sugiere que no debería existir una documentación exhaustiva, lo cual es correcto, el problema aparece cuando no se documenta”. La ausencia completa de documentación en cualquier soporte no es una buena práctica, ya que no ayuda al personal no directamente involucrado en el desarrollo, como son nuevos desarrolladores o el equipo de mantenimiento. En ningún caso el modelo ISO/IEC 12207:2008 obliga a documentar exhaustivamente, el objetivo que persigue es que las actividades sean repetibles.

Asimismo indicar que en las auditorías ISO/IEC 15504 – ISO/IEC 12207:2008 no se evalúa la aplicación directa de los resultados de los procesos, sino que se estudia y analiza la implementación y adaptación de los mismos a una organización concreta. La tarea de un equipo auditor es alinear las actividades de mejora definidas en la organización y las evidencias objetivas de su implantación con las buenas prácticas del modelo de procesos.

Implantación de ISO/IEC 12207, niveles 1 y 2, con SCRUM

El modelo de procesos ISO/IEC 12207:2008 no pone restricciones sobre la metodología que se debe utilizar para implementar los procesos. Por lo tanto, es posible implementarlos con metodologías ágiles como SCRUM. En el estudio que aquí se presenta se analizó el grado de relación entre ISO/IEC 12207:2008 y las prácticas de SCRUM.

El estudio se realizó sobre los procesos establecidos en los niveles de madurez 1 y 2 del modelo desarrollado por AENOR. Se centra en los procesos del área de gestión de proyectos, ya que la metodología SCRUM cubre principalmente estas áreas (Schwaber y Sutherland, 2010).

Para llevar a cabo el estudio, en primer lugar se analizó el grado de relación entre los outcomes del modelo ISO/IEC 12207:2008 y las prácticas de SCRUM. Una vez concluida esta primera fase del estudio, se calculó el grado de cobertura de los procesos de Planificación del Proyecto y Evaluación y Control del Proyecto (ver Fig. 1).

Fig. 2. Grado de cobertura de los procesos PP y ECP utilizando SCRUM

Por último, se estudió el grado de implantación de forma general de los restantes procesos de los niveles 1 y 2 de madurez que no tienen una relación directa con los principios de SCRUM, para los que se observó que hay cierto grado de cobertura.

Consideraciones finales y conclusiones

El presente artículo describe los resultados obtenidos del estudio realizado sobre el grado de cobertura entre los procesos de ISO/IEC 15504 – ISO/IEC 12207:2008 y SCRUM. Según el estudio realizado, con la implantación de SCRUM, se alcanzaría, prácticamente, el 83% del proceso de Planificación del Proyecto y el 75% del proceso de Evaluación y Control de Proyectos. En base a la experiencia de los autores en consultoría y auditoría del modelo de evaluación y mejora de procesos software ISO/IEC 15504 SPICE, se considera que la aplicación de la metodología SCRUM para el cumplimiento de dicho modelo es un recurso muy utilizado en las organizaciones. De una muestra de 23 organizaciones auditadas por Kybele Consulting el 56% usaba SCRUM para gestión de proyectos.

NOTA: Este artículo es un resumen de otro mas extenso publicado en la conferencia Agile Spain 2010 Haciendo realidad la agilidad, celebrada entre los días 10 y 11 de Junio de 2010 en Madrid.

¿Quiéres implantar una norma de calidad y utilizas metodologías ágiles?

En Kybele Consulting somos expertos en la implantación de normas de calidad de procesos software como ISO/IEC 15504 o CMMI en organizaciones que desarrollan software utilizando metodologías ágiles, habiendo implementado ambas tendencias en una gran cantidad de organizaciones. Si estas interesado en unir estas dos tendencias, no lo dudes y contáctanos o envíanos un email a info@kybeleconsulting.com.

Otros recursos

Gracias a nuestra experiencia en la implantación de modelos de calidad de procesos con metodologías ágiles hemos podido desarrollar una serie de cursos para facilitar el entendimiento tanto de las metodologías ágiles como de las normas de calidad de procesos software. Si tienes interés en realizar los siguientes cursos, puedes acceder a la información de los mismos a través de los siguientes enlaces:

  • Curso online de Gestión de Proyectos Ágiles: curso online en el que se presentan las principales metodologías ágiles, explicando de manera práctica sus principios básicos, así como su relación con los modelos de calidad de procesos software. Recomendable para quién tenga interés en implantar metodologías ágiles o que utilice metodologías ágiles y quiera implantar un modelo de calidad de procesos software.
  • Curso online de Mejora de la calidad de los procesos software con ISO 15504: curso online en el que se profundiza en la norma ISO 15504 y se indican las pautas para la implantación de ISO 15504 con metodologías ágiles. Recomendable para todo aquel que tenga pensado implantar la norma ISO 15504 en su organización o en otra, o como soporte para el proceso de implantación.

Referencias

  • Coleman G, O’Connor R. 2008. Investigating software process in practice: A grounded theory perspective. J Syst Softw 81(5):772-784.
  • Chrissis MB, Konrad M, Shrum S. 2006. CMMI: Guidelines for Process Integration and Product Improvement. 2nd Edition ed: Addison-Wesley Professional.
  • Glazer H, Dalton J, Anderson D, Konrad M, Shrum S. 2008. CMMI or Agile: Why not Embrace Both! Technical Note CMU/SEI-2008-TN-003. Software Engineering Institute. (http://www.sei.cmu.edu/reports/08tn003.pdf).
  • Hareton L, Terence Y. 2001. A Process Framework for Small Projects. Software Process Improvement and Practice 6:67-83.
  • ISO. 2004. ISO/IEC 15504-2:2003, Information technology— Process assessment — Part 2: Performing an assessment. International Standards Organization. Ginebra, Suiza.
  • ISO. 2008a. ISO/IEC 12207:2008. Systems and software engineering – Software life cycle processes. International Organization for Standarization.
  • ISO. 2008b. ISO/IEC TR 15504-7:2008 Information technology — Process assessment — Part 7: Assessment of organizational maturity. International Standards Organization.
  • Marcal ASC, Soares FS, Belchior AD. Mapping CMMI Project Management Process Areas to SCRUM Practices; 2007. IEEE Computer Society. p 13–22.
  • Osterweil L. Software Processes Are Software Too; 1987 Monterey, CA, March 1987. p 2-13.
  • Saiedian H, Carr N. 1997 Characterizing a software process maturity model for small organizations. , 1997. Vol. pp. . ACM SIGICE Bulletin:2-11.
  • Schwaber K, Sutherland J. 2010. The Scrum Guide. Scrum Alliance (wwwscrumorg/storage/scrumguides/Scrum%20Guidepdf#view=fit).
  • Selic B. 2009a. Agile Documentation, Anyone? IEEE Softw 26(6):11-12.
  • Staples M, Niazi M, Jeffery R, Abrahams A, Byatt P, Murphy R. 2007. An exploratory study of why organizations do not adopt CMMI. Journal of Systems and Software 80(6):883-895.
  • Turner R, Jain A. Agile Meets CMMI: Culture Clash or Common Cause?; 2002. Springer-Verlag. p 153–165.
  • Wang Y, King G. 2000. Software Engineering Processes: Principles and Applications. CRC Press.
  • Yingxu W, Antony B. 2002. Process-Based Software Engineering: Building the Infrastructures. Ann Softw Eng 14(1-4):9-37.