mejores prácticas en el desarrollo del software

Post on 15-Apr-2017

303 Views

Category:

Technology

7 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

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.

+ + =

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

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

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

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

¿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

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

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

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

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.

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.

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.

Modelo:

◦ Simplificación de la realidad que describe un sistema desde una perspectiva particular.

Mejores prácticasModelado visual.

Octubre 2009Jorge Alberto Lorenzo Losada

jorge.lorenzo@ono.com

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

Modelado desde distintas perspectivas:

Mejores prácticasModelado visual.

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.

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.

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

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

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

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.

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.

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

top related