![Page 1: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/1.jpg)
Seis mejores prácticas:1. Desarrollo iterativo.2. Gestión de los requerimientos.3. Uso de arquitecturas basadas en
componentes.4. Modelado visual.5. Comprobación continua de la calidad.6. Control de los cambios.
Desarrollo del software
![Page 2: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/2.jpg)
Mejores prácticasDesarrollo iterativo
Desarrollo iterativo e incremental:
◦ No se realiza una sola entrega del sistema sino una serie de entregas, cada una con sus funcionalidades incrementadas.
+ + =
![Page 3: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/3.jpg)
Mejores prácticasDesarrollo iterativoAnálisis Diseño Codificación Prueba de
integración Entrega
Iteración 1
Iteración n
Cada iteración implementa un subconjunto de la funcionalidad total.
Cada iteración debe tener definida su planificación de tiempos
![Page 4: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/4.jpg)
Soluciones a los problemas del desarrollo:
◦ Los malentendidos se hacen evidentes al principio del ciclo de vida, cuando es posible reaccionar a ellos.
◦ Incentiva el feedback con el usuario permitiendo ahondar en los requerimientos.
◦ Las pruebas continuas permiten un mejor conocimiento del estado del proyecto.
Mejores prácticasDesarrollo iterativo
Análisis DiseñoCodificación
Prueba de integracion
Entrega
![Page 5: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/5.jpg)
Soluciones a los problemas del desarrollo:
◦ Detección temprana de inconsistencias entre los requerimientos, el diseño y la implementación.
◦ Balanceo de la distribución de la carga de trabajo en el equipo (por ejemplo equipo de pruebas).
Mejores prácticasDesarrollo iterativo
Análisis DiseñoCodificación
Prueba de integracion
Entrega
![Page 6: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/6.jpg)
Requerimientos:
◦ Condición o capacidad que debe cumplir una aplicación.
◦ Son “dinámicos”, cambian durante el ciclo de vida del desarrollo.
◦ La detección de los requerimientos fundamentales es un proceso continuo, no es posible completar esta tarea al comienzo del desarrollo.
Mejores prácticasGestión de los requerimientos
![Page 7: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/7.jpg)
¿En qué consiste la gestión de los requerimientos?
◦ Recabar◦ Organizar◦ Documentar◦ Evaluar los cambios y su impacto.◦ Documentar análisis de costo-beneficio y
decisiones tomadas.
Mejores prácticasGestión de los requerimientos
![Page 8: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/8.jpg)
Soluciones a los problemas del desarrollo:
◦ Las comunicaciones en el equipo se basan en requerimientos definidos.
◦ Facilita la priorización y filtrado de los requerimientos.
◦ Posibilita la valoración objetiva de las funcionalidades y el desempeño de la aplicación.
Mejores prácticasGestión de los requerimientos
![Page 9: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/9.jpg)
Soluciones a los problemas del desarrollo:
◦ Facilita la detección de inconsistencias.◦ Utilizando la herramienta adecuada es
posible mantener un repositorio de requerimientos.
Mejores prácticasGestión de los requerimientos
![Page 10: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/10.jpg)
Componente: ◦ Pieza de software que encapsula funcionalidad.
Mejores prácticasUso de arquitecturas basadas en
componentes.
Gestión de Clientes
UML 1.x y reconocido en UML 2.0 por compatibilidad hacia atrás UML 2.0
![Page 11: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/11.jpg)
Una arquitectura basada en componentes define:
◦ La organización de una aplicación o conjunto de aplicaciones.
◦ Elementos estructurales e interfaces entre ellos.
Mejores prácticasUso de arquitecturas basadas en
componentes.
![Page 12: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/12.jpg)
La definición de la arquitectura de un sistema :
◦ Permite gestionar los distintos puntos de vista existentes en un proyecto (usuarios, analistas, desarrolladores, etc.).
◦ Facilita el control del proceso de desarrollo iterativo e incremental.
Mejores prácticasUso de arquitecturas basadas en
componentes.
![Page 13: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/13.jpg)
Soluciones a los problemas del desarrollo:
◦ La utilización de componentes facilita la creación de arquitecturas robustas.
◦ La modularidad permite una clara división de responsabilidades entre los elementos del sistema.
◦ Se favorece la reutilización del software a través de la utilización de componentes comerciales.
Mejores prácticasUso de arquitecturas basadas en
componentes.
![Page 14: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/14.jpg)
Modelo:
◦ Simplificación de la realidad que describe un sistema desde una perspectiva particular.
Mejores prácticasModelado visual.
![Page 15: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/15.jpg)
Octubre 2009Jorge Alberto Lorenzo Losada
Mejores prácticasModelado visual.
Modelo
Ayuda a razonar y sacar conclusiones
Puede extenderse para abarcar otros modelos posibles
Permite compartir el conocimiento acerca de una situación real
![Page 16: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/16.jpg)
Modelado desde distintas perspectivas:
Mejores prácticasModelado visual.
![Page 17: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/17.jpg)
Modelo visual:
◦ Facilita la gestión de los distintos modelos permitiendo exponer los detalles necesarios.
◦ Mejora la capacidad del equipo de gestionar la complejidad del software.
◦ Combinado con el desarrollo iterativo permite exponer, valorar y comunicar los cambios en la arquitectura.
◦ Con herramientas adecuadas es posible sincronizar los modelos con el código fuente en cada iteración.
Mejores prácticasModelado visual.
![Page 18: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/18.jpg)
Soluciones a los problemas del desarrollo:
◦ Los diagramas de casos de uso permiten especificar el comportamiento de una no ambigua.
◦ Se captura el diseño sin ambigüedades.◦ Quedan en evidencia las arquitecturas no
modulares o rígidas.◦ Es posible ocultar los detalles cuando es
necesario.
Mejores prácticasModelado visual.
![Page 19: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/19.jpg)
Arreglar los problemas del software se torna más caro cuanto más tarde se los trate:
Mejores prácticasComprobación continua de la
calidad
![Page 20: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/20.jpg)
En cada iteración del desarrollo:
◦ Crear un plan de pruebas para cada uno de los escenarios clave.
◦Evaluar la funcionalidad del sistema recabando los escenarios donde se han producido fallos.
Mejores prácticasComprobación continua de la
calidad
![Page 21: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/21.jpg)
Soluciones a los problemas del desarrollo:
◦ La valoración del estado del proyecto se hace objetiva al basarse en los resultados de las pruebas.
◦ Se exponen las inconsistencias en los requerimientos, diseños e implementaciones.
◦ Detección temprana de los defectos del software, reduciendo el coste de arreglarlo.
Mejores prácticasComprobación continua de la
calidad
![Page 22: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/22.jpg)
Coordinación de las actividades de los desarrolladores y sus equipos estableciendo workflows para la gestión de los cambios.
La coordinación permite la mejor asignación de los recursos basada en la prioridades del proyecto y sus riesgos.
Mejores prácticasControl de los cambios.
![Page 23: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/23.jpg)
Soluciones a los problemas del desarrollo:
◦ Los requerimientos de cambios facilitan las comunicaciones claras.
◦ Las estadísticas de cambios proveen buenas métricas para valorar objetivamente el estado del proyecto.
◦ Permite valorar y controlar la propagación de los cambios.
Mejores prácticas Control de los cambios.
![Page 24: Mejores Prácticas en el Desarrollo del Software](https://reader036.vdocuments.co/reader036/viewer/2022070520/58f19a9c1a28aba8488b45d3/html5/thumbnails/24.jpg)
Mejores prácticas que permiten atacar las causas principales de los problemas en el desarrollo del software:1. Desarrollo iterativo.2. Gestión de los requerimientos.3. Uso de arquitecturas basadas en
componentes.4. Modelado visual.5. Comprobación continua de la calidad.6. Control de los cambios.
Mejores prácticas Resumen