miércoles, 20 de agosto de 2008

SDM (Método de Desarrollo de Sistemas Dinámicos).

DSDM es un método que provee un framework para el desarrollo ágil de software, apoyado por su continua implicación del usuario en un desarrollo iterativo y creciente que sea sensible a los requerimientos cambiantes, para desarrollar un sistema que reuna las necesidades de la empresa en tiempo y presupuesto. Es uno de un número de métodos de desarrollo ágil de software y forma parte del alianza ágil.

DSDM fue desarrollado en el Reino Unido en los años 90 por un consorcio de proveedores y de expertos en la materia del desarrollo de sistemas de información (IS), el consorcio de DSDM, combinando sus experiencias de mejores prácticas. El consorcio de DSDM es una organización no lucrativa y proveedor independiente, que posee y administra el framework. La primera versión fue terminada en enero de 1995 y publicada en febrero de 1995. La versión actualmente en uso (abril de 2006) es la versión 4.2: El framework para el Negocio Centralizado Desarrollado lanzado en mayo de 2003.

Como extensión del Desarrollo rápido de aplicaciones (RAD), DSDM se centra en los proyectos de sistemas de información que son caracterizados por presupuestos y agendas apretadas. DSDM trata los problemas que ocurren con frecuencia en el desarrollo de los sistemas de información en lo que respecta a pasar sobre tiempo y presopuesto y otras razones comunes para la falta en el proyecto tal como falta de implicación del usuario y de la comisión superior de la gerencia.

DSDM consiste en 3 fases: fase del pre-proyecto, fase del ciclo de vida del proyecto, y fase del post-proyecto. La fase del ciclo de vida del proyecto se subdivide en 5 etapas:

  1. estudio de viabilidad,
  2. estudio de la empresa,
  3. iteración del modelo funcional,
  4. diseño e iteración de la estructura, e
  5. implementación.

DSDM reconoce que los proyectos son limitados por el tiempo y los recursos, y los planes acorde a las necesidades de la empresa. Para alcanzar estas metas, DSDM promueve el uso del RAD con el consecuente peligro que demasiadas esquinas estén cortadas. DSDM aplica algunos principios, roles, y técnicas.

En algunas circunstancias, hay posibilidades para integrar contenido de otros métodos, tal como el Proceso Unificado Racional (RUP), Programación Extrema (XP), y Proyectos en ambientes controlados (PRINCE2), para complementar el DSDM en la realización de un proyecto. Otro método ágil que tiene semejanzas proceso y concepto con DSDM es Scrum.

PRINCIPIOS

Este modelo consta de 9 principios que son fundamentales, de los cuales hablaremos a continuación:

1.) La Participación de los Usuario es la clave Principal: Se llega a tener una eficacia del proyecto, debido a que los usuarios y los desarrolladores comparten un área de trabajo. Esto se realiza para tomar decisiones de manera oportuna.

1.) El equipo del Proyecto debe estar Facultado: En este método todo el equipo deberá de tomar decisiones sin necesidad de recibir indicaciones o aprobación de los niveles superiores.

2.) El enfoque se centra en la Entrega de Productos: Entregar versiones del producto antes de entregar una versión completa o final. Esto examina y pone a prueba el proyecto para ser mejorado en iteraciones siguientes.

3.) Principal Criterio de Prioridad, desarrollo y validación de las entregas incrementales es el objetivo y la salud del negocio.

4.) El desarrollo es Iterativo e Incremental: El apoyo de los usuarios puede ayudar a mejoras que hagan efectivo el negocio.

5.) Todos los cambios realizados en el desarrollo son reversibles.

6.) Los requisitos se establecen a nivel general.

7.) Las pruebas forman parte del ciclo de Desarrollo.

8.) Trabajar con espíritu de colaboración con todos los agentes implicados en el sistema que se desarrolla.

REQUISITOS PREVIOS PARA EL USO DE DSDM.

Ya se ha hablado que para poder tener armonía en el proyecto el equipo deberá tener interactividad, los usuarios y los jefes de Desarrollo. Otro de las cosas con las que se debe contar es con motivación y participación entre las partes (humanas) que integran el equipo. La falta de uno de estos requisitos puede causar el fracaso del proyecto ya que si no hay comunicación o discrepancias entre las partes no podrán intercambiarse ideas o funcionalidades necesarias para entregar un proyecto de calidad.

DIAGRAMA DEL CICLO DE VIDA DEL PROYECTO

La manera en que el proyecto presenta sus datos de la aplicación se basa en el siguiente diagrama, este muestra características de este método como lo es la forma iterativa de desarrollar el proyecto.

El siguiente diagrama muestra de manera clara que este método utiliza como base modelos similares como por ejemplo prototipos para poder realizar tomas de requerimientos.

FASES DEL DSDM

FASE 1: PRE-PROYECTO

En esta fase se identifican los proyectos propuestos, quien financiara el proyecto, compromiso por parte de los equipos, usuarios y clientes.

OBJETIVO: Evitar Problemas en etapas siguientes.

FASE 2: CICLO DE VIDA DEL PROYECTO

Para crear un sistema de información esta fase se representa en 5 etapas las cuales describiremos a continuación. Las etapas muestran en términos generales la retroalimentación que necesita cada etapa como consecuencia de la anterior. Para entender mejor eso pasemos a describir cada una de las etapas que corresponden al ciclo de vida del Proyecto.

ETAPAS DEL CICLO DE VIDA DEL PROYECTO

ETAPA 1: ESTUDIO DE VIABILIDAD.

Se examinan requisitos previos, en esta etapa se suelen hacer preguntas como las siguientes: ¿El proyecto satisface la demanda del negocio?, ¿Se puede ajustar el proyecto a este método?, ¿Qué riesgos implica la elaboración de este proyecto?

OBJETIVO: Utilizar el método de prototipo para poder realizar tomas de requerimientos e identificación de riesgos.

ETAPA 2: ESTUDIO DEL NEGOCIO

Esta etapa se realiza únicamente si se ha identificado que el proyecto es viable utilizando este método.

Aquí en esta etapa se determina como trabaja la empresa, que espera la empresa de nuestro trabajo, saber si los clientes saben que quieren o no, hay participación de los usuarios.

OBJETIVO: utilizar técnicas que faciliten y aseguren un proyecto de calidad, timeboxing es una de las técnicas esencial para determinar tiempo, presupuesto y garantía deseada, sobre esta técnica hablaremos más adelante.

ETAPA 3: ITERACION DE MODELADO FUNCIONAL

Para realizar esta etapa nos valemos de recursos como el modelo de prototipos, este modelo forma una parte clave en esta etapa. Una parte importante de esta etapa es que aquí se realizan las pruebas, que determinan el grado de calidad y efectividad del proyecto.

OBJETIVO: Realizar un modelado y un prototipo funcional que representen unificadamente todas las funciones que puede hacer la iteración en la que nos encontremos trabajando.

ETAPA 4: ITERACION DE DISEÑO Y DESARROLLO.

La construcción del diseño consiste en integrar los componentes realizados en las etapas anteriores en un solo sistema que satisfaga las necesidades de los usuarios.

OBJETIVO: Entregar a los usuarios un prototipo durante la fase de prueba y final del diseño de construcción, para que pueda ser aprobado y entregado para la siguiente fase.

ETAPA 5: APLICACIÓN

Se le entrega una versión de prueba al usuario incluyendo la documentación. Esta versión entregada debe incluir los requerimientos que se han establecido en las etapas iníciales.

OBJETIVO: Entregar una versión del sistema, capacitación de Usuarios y Evaluar detalladamente los documentos del Sistema.

FASE 3: POST – PROYECTO

Asegurarse que el sistema operativo acepte de manera eficaz y segura el proyecto. Esta fase se realiza por mejoras, mantenimiento y correcciones de acuerdo con los principios del DSDM.

TECNICAS BASICAS DE DSDM

En esta parte recordamos cuando estábamos en la etapa 2 acerca del estudio del negocio, ya que estas técnicas son implementadas en esta etapa.

Las técnicas vistas en esta investigación son las siguientes:

TIMEBOXING:

Se utiliza para apoyar los objetivos principales del DSDM para realizar un desarrollo de software en tiempo, costo y calidad deseada. La idea de esta técnica es dividir en partes cada una con presupuesto y fecha fija de entrega. Cada parte de los requisitos que se seleccionan son priorizados de acuerdo con el principio MOSCOW. Las únicas variables son los requisitos.

ademas existe este software para usar el TIMEBOXING,

pinchen aqui para descargarlo


MOSCOW:

Representa una forma de priorizar los temas, se deben priorizar las necesidades.

Esta es una sigla que significa:

MUST (DEBE) tener este requisito para satisfacer necesidades del negocio.

MUST (DEBE) tener este requisito, pero el proyecto no depende de ello.

COULD (PODRIAN) tener este requisito sin que afecte las condiciones del sistema.

WOULD (SE) tiene este requisito en una fecha posterior.

PROTOTIPOS:

Permite descubrir de manera previa deficiencia del sistema.

EXAMENES:

Es una técnica independiente para poder medir el logro de cada iteración.

TALLER:

Consiste en llevar a las partes interesadas a discutir necesidades, funcionalidades, y comprensión mutua.

SITUACIONES NO APLICABLES PARA DSDM

FACTOR 1:

Cuando no existe aceptación por parte de la dirección y otros empleados. Falta de motivación y participación del equipo.

FACTOR 2:

Se deriva del factor 1 y consiste en la falta de motivación y participación impide la buena gestión de ideas y funcionalidades.

FACTOR 3:

Poca habilidad por parte de los integrantes del equipo. También se pueden incluir las faltas de herramientas.

FACTOR 4:

Si no hay apoyo entre cliente y proveedor.