GA11-220501098-AA1-EV02 Aplicación de Buenas Prácticas de Calidad Documentadas en Las Disciplinas de Calidad de Software

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 8

SERVICIO NACIONAL DE APRENDIZAJE SENA

Magdalena: Centro de Logística y Promoción Ecoturística


Análisis y Desarrollo de Software

GA11-220501098-AA1-EV02 aplicación de buenas prácticas de calidad


documentadas en las disciplinas de calidad de software

Autores:
María Isabel Roque Muñoz
CC.1.040.752.489
Valentina Mendoza Anachury
CC.1.108.766.899
Jorge Andres Anchico Benavides
CC.1.144.046.410

Colombia
2024
INTRODUCCION
En la era digital, la calidad del software es fundamental para el éxito de las
organizaciones. El Modelo de Madurez de Capacidad Integrado (CMMI) se
destaca como un estándar globalmente reconocido que optimiza los procesos de
desarrollo de software. Al implementar CMMI, las organizaciones pueden
aumentar su productividad, mejorar la calidad y predictibilidad, reducir costos y
satisfacer las crecientes expectativas de los clientes. Este modelo ofrece un marco
estructurado para identificar áreas de mejora, establecer metas claras y medir el
progreso, garantizando la entrega constante de productos de software de alta
calidad.
APLICACIÓN DE BUENAS PRÁCTICAS DE CALIDAD EN EL
DESARROLLO DE SOFTWARE
El Modelo de Madurez de Capacidad Integrado (CMMI) es un estándar
globalmente reconocido para mejorar los procesos de desarrollo de software. Al
implementar CMMI, las organizaciones pueden aumentar significativamente su
productividad, calidad y predictibilidad, reduciendo costos y cumpliendo con las
expectativas de los clientes cada vez más exigentes.
CMMI proporciona un marco de trabajo estructurado que permite identificar áreas
de mejora, establecer metas claras y medir el progreso. Al adoptar este modelo,
las empresas aseguran la entrega de productos de software de alta calidad de
manera consistente.
En este contexto, el modelo CMMI fue desarrollado para procesos relativos al
desarrollo e implementación de software por la Carnegie-Mellon University y
recibía el nombre de CMM.
El CMMI es un enfoque de mejora de procesos que provee a las organizaciones
de los elementos esenciales para un proceso efectivo.
 El CMMI es el Modelo de Madurez de Capacidades Integrado.
 Fue desarrollado por el SEI (Software Enginnering Institute).
 Mide la madurez del desarrollo del software en una escala del 1 al 5.
 Integra disciplinas como sistemas y software en un solo marco de trabajo.
 Describe formas efectivas y probadas de hacer las cosas, no es un enfoque
radical. Algunos de los objetivos del CMMI y que son buenos para el negocio.
 Producir servicios y Productos de alta calidad.
 Crear valor para los accionistas.
 Mejorar la satisfacción del cliente.
 Incrementar la participación en el mercado.
 Ganar reconocimiento en la industria.

¿Cómo funciona el CMMI?

El CMMI utiliza una escala de madurez de 5 niveles para evaluar los procesos de
una organización:
Estructurada por nivel de madurez
1. Inicial: Procesos ad hoc, sin definición formal.
2. Repetitivo: Procesos básicos establecidos.
3. Definido: Procesos documentados y estandarizados.
4. Gestionado: Procesos medidos y controlados cuantitativamente.
5. Optimizado: Mejora continua basada en datos y aprendizaje.

Estructurada por nivel de capacidad


En CMMI, en una representación continua, se identifican seis niveles de
capacidad, clasificados en una escala del 0 al 5, de la siguiente manera:
0 - Incompleto.
1 - Realizado.
2 - Administrado.
3 - Definido.
4 - Gestionado cuantitativamente.
5 - Optimizado.
Esta representación es un conjunto predefinido de áreas de proceso, que se mide
por el logro de los objetivos tanto genéricos como específicos. En el siguiente
recurso educativo se describen las características de cada nivel de madurez en
detalle

Gracias a este tipo de modelos, muchas empresas han mejorado sus procesos de
gestión de las actividades entrelazadas de forma explícita, han aplicado prácticas
de alta madurez mucho más robustas y están cumpliendo con las normas ISO de
una manera mucho más completa. Aplicando el modelo Capability Maturity Model
Integration se puede calificar el grado de madurez de los distintos procesos de una
empresa, y aplicando las buenas prácticas sugeridas por CMMI se pueden mejorar
los mismos. Además de integrar las áreas de ingeniería de software y sistemas, el
modelo también lo vincula todo con los objetivos comerciales de la organización y
también mantiene un enfoque en la satisfacción de las expectativas del cliente.

Ventajas de aplicar el modelo CMMI


 Mejora la comunicación (interna y externa) al proporcionar un marco común.
 Proporciona a los trabajadores una idea clara y global, lo que les permite
centrarse en sus objetivos.
 Aumenta la calidad de productos y servicios y reduce los tiempos de
entrega.
 Ayuda a reducir los costes
.  Mejora la satisfacción al cliente.
 Es un modelo que cuenta con muchos años de experiencia.
Muchas empresas se plantean si elegir un modelo CMMI o aplicar una
metodología Agile Scrum. Se tiende a ver ambos conceptos como contrarios e
incompatibles, quizás porque CMMI lleva muchos años utilizándose y la
metodología Agile es más actual y ha tenido gran impacto en la gestión de
procesos actual. Sin embargo, muchos expertos opinan que ambas opciones
pueden ser compatibles y aplicadas en una misma organización.
 Scrum se basa en una metodología Agile, dividiendo los trabajos en pequeñas
tareas o sprints con un tiempo de entrega corto. CMMI, por su parte, no es una
metodología: se trata de un modelo que aporta una serie de buenas prácticas y
que permite valorar el grado de madurez de los procesos en particular y de la
empresa en general.
 Con Scrum se establecen prioridades a la hora de ejecutar los distintos
procesos, sin embargo, CMMI no establece el orden de ejecución (este aspecto lo
marca la metodología utilizada).
 CMMI se centra en mejorar procesos y medir su eficiencia mientras que Scrum
busca la agilidad o rapidez de los procesos.
 CMMI da importancia al grupo de trabajo, pero da mayor importancia a disponer
de un sistema adecuado que mejore los procesos. Por su parte, Scrum concede
un papel primordial al equipo de trabajo para la mejora de procesos.
 Scrum sitúa entre sus objetivos prioritarios la relación con el cliente y satisfacer
sus necesidades, mientras CMMI confía en la mejora interna de procesos como la
clave para mejorar los resultados.
CMMI ofrece un método para que las empresas puedan evaluar y mejorar sus
procesos de negocio, prestando gran importancia al uso de buenas prácticas. A
pesar de diferenciarse en algunos aspectos con Agile Scrum, tienen algunos
puntos en común. Ambos le dan importancia a la mejora de los procesos, a la
flexibilidad y persiguen los mismos objetivos. Sea cual sea la metodología que
escojas, siempre debes buscar el compromiso, la responsabilidad, la confianza, la
ética y el respeto de quienes la aplican.
Existen otras metodologías muy utilizadas para el desarrollo de software, entre
ellas:
TDD (Test-Driven Development): es una metodología práctica de programación
basada en escribir primero las pruebas, después el código fuente y, por último,
refactorizar el código escrito. De esta manera, establece el camino para conseguir
un código más robusto, seguro y garantizar el mantenimiento y la rapidez en el
desarrollo.
DDD (Domian-Driven Design): Es ideal para el desarrollo de aplicaciones
complejas y está orientada a proyectos que utilizan metodologías ágiles. Es un
modelo en constante evolución y nos ayuda a tomar decisiones de diseño para
enfocar y acelerar el manejo de dominios con alta complejidad durante el
desarrollo de los proyectos. En definitiva, la metodología DDD te ayuda a prevenir
las malas prácticas en tu sistema
Microservicios: Son independientes, escalables y fáciles de desarrollar, y su
estructura funciona como un conjunto de pequeños servicios que son ejecutados
de forma autónoma. Gracias a este tipo de alternativas, las empresas están
logrando aplicaciones mucho más flexibles y escalables, ya que no necesitan
alterar toda la aplicación para modificar una funcionalidad.
CONCLUSION

La implementación de buenas prácticas en las disciplinas de calidad de software es


fundamental para el éxito en el desarrollo y mantenimiento de aplicaciones en la era
digital. Al adoptar estas prácticas, las organizaciones pueden crear software confiable,
eficiente y seguro, lo que se traduce en una mayor satisfacción del cliente y una ventaja
competitiva en el mercado.

También podría gustarte