jueves, 5 de septiembre de 2013

Metodología Open UP

Hola. Aquí les traigo el trabajo de investigación sobre la metodología Open UP.



Introducción

Diferentes proyectos necesitan diferentes procesos. Los factores típicos nos indican la necesidad de procesos formales o agiles, como el tamaño del equipo y donde van a estar, la complejidad de la arquitectura, la innovaciones tecnológicas, los estándares de conformidad, entre otras. Sin embargo  existen otras prácticas de desarrollo de software que benefician a cualquier proyecto para ser más efectivo.

Open UP adopta un enfoque pragmático, con una filosofía ágil que se centra en la naturaleza colaborativa de desarrollo de software. Es una herramienta agnóstica, procesos de baja formalidad que puede ser usado tal cual o ampliarse para hacer frente a una amplia variedad de proyectos.

¿Qué es Open UP?

OpenUP es un proceso de desarrollo de software mínimamente suficiente, esto quiere decir que incluye solo el contenido fundamental, esto es que no provee orientación sobre temas en los que el proyecto tiene que lidiar, como son: el tamaño del equipo, el cumplimiento, seguridad, orientación tecnológica entre otras. Sin embargo OpenUP es completa en el sentido de que manifiesta por completo el proceso de construir un sistema. Para atender las necesidades que no están cubiertas en su contenido OpenUp  es extensible a ser utilizado como base sobre la cual se pueden añadir o adaptarse a contenido de otro proceso que sea necesario.

Características de Open UP

·         Desarrollo incremental.
·         Uso de casos de uso y escenarios.
·         Manejo de riesgos.
·         Diseño basado en la arquitectura.

Principios de Open UP

·         Colaborar para sincronizar intereses y compartir conocimiento. Este principio promueve prácticas que impulsan un ambiente de equipo saludable, facilitan la colaboración y desarrollan un conocimiento compartido del proyecto.
·         Equilibrar las prioridades para maximizar el beneficio obtenido por los interesados en el proyecto. Este principio promueve prácticas que permiten a los participantes de los proyectos desarrollar una solución que maximice los beneficios obtenidos por los participantes y que cumple con los requisitos y restricciones del proyecto.
·         Centrarse en la arquitectura de forma temprana para minimizar el riesgo y organizar el desarrollo.
·         Desarrollo evolutivo para obtener retroalimentación y mejoramiento continuo. Este principio promueve prácticas que permiten a los equipos de desarrollo obtener retroalimentación temprana y continua de los participantes del proyecto, permitiendo demostrarles incrementos progresivos en la funcionalidad.

Roles

Los roles de Open Up representan las habilidades necesarias de un equipo pequeño o co-localizado. En la siguiente figura se muestran los roles de Open UP los cuales explicare más adelante.
Empecemos con el analista.
Representa al cliente y el usuario final, se refiere a la obtención de requerimientos de los interesados, por medio de comprender el problema a resolver capturando y creando las prioridades de los requerimientos.

El arquitecto es el responsable del diseño de arquitectura de software, tomando las decisiones técnicas claves, las cuales limitaran el conjunto de diseño y la implementación del proyecto.

El desarrollador es el que tiene la responsabilidad del desarrollo de una parte del sistema o el sistema completo dependiendo de la magnitud del mismo, se encarga del diseño ajustándolo a la arquitectura y de la implementación de pruebas unitarias y de integración para los componentes.

El líder del proyecto dirige la planificación del proyecto en colaboración con las partes interesadas y el equipo, coordina las interacciones de los interesados, manteniendo al equipo del proyecto enfocado en los objetivos del mismo.

Las partes interesadas representan al grupo que está interesado en el proyecto , quienes necesariamente deberán de ser satisfechos por el mismo. Este papel lo puede jugar cualquier persona que es afectada por los objetivos del proyecto.

El comprobador es el responsable de las actividades básicas y de realizar las pruebas, se encarga de la identificación, definición, implementación y conducción de las pruebas necesarias. Así como el ingreso de pruebas y el análisis de resultados.

Cualquier otro rol, representa a cualquier otra persona en el equipo que puede realizar tareas generales.

Ciclo de vida de Open UP.
Iteración inicial.
1.       Inicio de proyecto
2.       Iteración de administración y planeación.
3.       Requerimientos administrativos.
4.       Determinar la factibilidad de la arquitectura.
5.       Hito de los objetivos del ciclo de vida.
Iteración de elaboración.
1.       Iteración de administración y planeación.
2.       Requerimientos administrativos
3.       Definir la arquitectura
4.       Desarrollar una solución por requerimiento dentro del contexto.
5.       Validar construcción
6.       Tareas en curso
7.       Hito de la arquitectura del ciclo de vida.
Iteración de construcción
1.       Iteración de administración y planeación
2.       Requerimientos administrativos.
3.       Desarrollar una solución por requerimientos dentro del contexto.
4.       Validar construcción
5.       Tareas en curso
6.       Hito de la capacidad operativa inicial.

Iteración de transición.
1.       Iteración  de administración y planeación
2.       Desarrollar una solución por requerimientos dentro del contexto.
3.       Validar construcción
4.       Hito del lanzamiento del producto.
Ventajas y desventajas de Open UP.

Ventajas:
·         Es una metodología ágil.
·         Se puede adaptar con otros procesos.
Desventajas:
·         A veces omite contenido que puede ser de interés en el proyecto.
·         Se espera que cubra un amplio sistema de necesidades para los proyectos de desarrollo en un plazo muy corto.

Discusión.

Open UP nos ofrece una metodología ágil y flexible, que se puede acoplar a la mayoría de proyectos, además que cubre aspectos como la seguridad y contratación de personal, también incluye a otras personas interesadas en el proyecto o parte de.

Conclusión

Open UP es un proceso completo, flexible y corto, fomenta el uso de técnicas agiles y principios, mientras que tiene un ciclo de vida estructurado y probado que hace referencia en la continua entrega de software de calidad.

Referencias.

·         Agile Manifesto: www.agilemanifesto.org
·         Eclipse Process Framework Project: www.eclipse.org/epf
·         Open UP Ana P. Rodriguez, Josué Polanco, Darwin Hernández: http://es.scribd.com/doc/37116717/Open-Up