Desarrollo de Software basado en las mejores prácticas CMMI

Por Karel Gomez el 23-feb-2017 14:31:41

Desarrollo de Software basado en las mejores prácticas CMMI

De acuerdo a un extracto del libro publicado por Pearson Educación, S.A. en el año 2009 con el título CMMI, Guía para la integración de procesos y la mejora de productos, CMMI (Capability Maturity Model Integration) es:

[...] un modelo de madurez de mejora de los procesos para el desarrollo de productos y de servicios. Consiste en las mejores prácticas que tratan las actividades de desarrollo y de mantenimiento que cubren el ciclo de vida del producto, desde la concepción a la entrega y el mantenimiento.

Este modelo fue creado por la Carniege-Mellon University con la finalidad de unificar la gran cantidad de modelos de desarrollo de software creados por otras organizaciones a lo largo de los años. De ahí que actualmente sea uno de los modelos más usados dentro de la industria del software.

Adicionalmente, con CMMI es factible la disminución o eliminación de retrabajo, pero además aumenta la fiabilidad en lo que se refiere a la predicción de costos, incrementa la reutilización de productos y procesos, pero sobre todo disminuye costos debido a las múltiples evaluaciones y programas de mejoras de proceso.

Dicho esto, cabe destacar que Megapractical hace uso de este modelo para llevar a cabo el proceso de desarrollo de software en pro de poder brindar a las organizaciones lo que necesitan para lograr romper con las barreras de la comunicación, garantizando así la optimización de sus procesos de negocio.

 

Desarrollo de Software basado en las mejores prácticas CMMI

 

Para ello se han definido políticas de obligatorio cumplimiento en el interior de la organización de modo que se garantice lo dispuesto en los objetivos genéricos y específicos del CMMI Dev. 1.3 Nivel 2, entre estas políticas se encuentran las siguientes:

1. Establecer una política organizacional: al establecer una política organizacional los proyectos a ejecutarse deben desarrollarse cumpliendo con los ciclos de vida definidos para el proceso de desarrollo, utilizando las fases, productos de trabajo y roles definidos. En caso de algún proyecto a ejecutarse necesite de alguna adaptación al proceso definido requerirá la aprobación de la alta gerencia.

2. Planear el proceso: en los WBS definidos como parte de las actividades de planificación de la gestión de procesos y proyectos se deberán incluir las actividades que aseguren la ejecución de las fases definidas para el proceso en dependencia del ciclo de vida del proyecto.

3. Proveer los recursos: en el WBS del proyecto se deben incluir los recursos planificados para la ejecución de cada fase del proyecto según su ciclo de vida y el tiempo estimado para realizar las actividades.

4. Asignar responsabilidades: en el Plan Proyecto de Software se debe especificar por roles sus responsabilidades dentro del proyecto y referenciar al documento de Definición de roles y responsabilidades (MEGA-004_Definición de Roles y Responsabilidades).

5. Capacitar el personal: se debe capacitar al personal de los proyectos en los procesos definidos, los productos de trabajo a generar por las responsabilidades que cumplen en la ejecución de sus actividades.

6. Administrar la configuración: por cada fase de ciclo de vida debe quedar definido en el Plan de configuración de la organización. (MEGA-CM-002_Plan de gestión de la configuración) los elementos de configuración de los proyectos, definir cuándo se establecerá la línea base, las auditorías a la configuración, el versionamiento de los productos de trabajo, los procedimientos para solicitudes de infraestructura, liberaciones de líneas bases y el control de cambios, dejando registro de las acciones realizadas y facilitando el acceso a los recursos según los permisos autorizados.

7. Identificar e involucrar a los agentes relevantes: en el Plan de proyecto de software deben quedar explícitamente definidos los involucrados en cada fase del ciclo de vida del proyecto, las actividades en las cuáles intervienen y cuál es su nivel de participación en cada actividad.

8. Monitorear y controlar el proceso: el proceso de desarrollo será monitoreado y controlado para la verificación de su cumplimiento como proceso y la generación de los productos de trabajo desarrollados, en las revisiones se registran las desviaciones y las acciones correctivas correspondientes.

9. Evaluar Objetivamente Adherencia a Procesos: el área de aseguramiento y control de calidad será la encargada de evaluar el porciento de adherencia al proceso y los productos de trabajo generados en correspondencia al ciclo de vida del proyecto, permitirá a la alta gerencia contar con información oportuna con respecto a la ejecución del proceso por los proyectos y corregir las desviaciones existentes.

10. Revisar el Estatus con la Alta Dirección: las revisiones a la adherencia al proceso y los productos de trabajo serán informado a la alta dirección mediante los reportes generados a partir del seguimiento y control de los proyectos. Esta información permitirá a la dirección de la empresa la toma de decisiones con respecto al seguimiento del proceso de desarrollo definido para los proyectos de la Unidad de Desarrollo, Soporte y Consultoría.

Para ello dentro del proceso de desarrollo de software de Megapractical se han identificado tres ciclos de vida para proyectos de desarrollo: Desarrollo tradicional, SOA/BPM, Personalización de productos.

¿Quieres conocer los aspectos sobre esta solución y saber por qué el desarrollo de software en México, Panamá y Ecuador es una tecnología que permite optimizar procesos de negocios?  Entonces te invitamos a hacer la descarga de este whitepaper:

"Desarrollo de Software: Tecnología para romper barreras de comunicación y optimizar procesos de negocio"

 

Desarrollo de Plataforma Tecnológica para Metro de Quito
Desarrollo de software parte 2

Completar con sus datos

Últimos Post

business intelligence

 

Conoce más