Sei sulla pagina 1di 4

DESARROLLO ITERATIVO Y EL PROCESO UNIFICADO

2 INTRODUCCIN
Un proceso de desarrollo de software describe un enfoque para la construccin, desarrollo y mantenimiento del software. El proceso unificado (UP) es un proceso de desarrollo de software para la construccin de sistemas orientados a objetos. En particular, se ha adoptado el RUP (Rational Unified Process).

2.1 La idea ms importante del UP: desarrollo iterativo e incremental


Una de las buenas prcticas que fomenta el UP es el desarrollo iterativo. En este enfoque, el desarrollo se organiza en una serie de mini-proyectos cortos, de duracin fija llamados iteraciones. El resultado de cada iteracin puede ser probado, integrado y ejecutado. Cada iteracin incluye sus propias actividades de anlisis de requisitos, diseo, implementacin y pruebas. El ciclo de vida iterativo se basa en la ampliacin y refinamiento sucesivos del sistema mediante mltiples iteraciones, con retroalimentacin cclica. El sistema creces incrementalmente iteracin tras iteracin. El resultado de cada iteracin es un sistema ejecutable, pero incompleto. La salida de una iteracin NO es un prototipo experimental o desechable.

Adaptando los cambios: retroalimentacin y adaptacin El UP llega a un equilibrio entre: o La necesidad de llegar a un acuerdo y estabilizar un conjunto de requisitos. o La realidad de los requisitos cambiantes, cuando el personal involucrado clarifica su visin o cambia el mercado. Cada iteracin conlleva la eleccin de un pequeo conjunto de requisitos y rpidamente, disear, implementar y probar. Tener retroalimentacin en una etapa temprana vale su peso en oro, ms que las especulaciones sobre los requisitos y diseos correctos. La retroalimentacin, a partir de la construccin y prueba realista de algo, aporta un conocimiento prctico y crucial, y una oportunidad de modificar o adaptar la comprensin de los requisitos o el diseo. Adems de clarificar los requisitos, actividades como la prueba de carga probarn si el diseo y la implementacin parcial estn en el camino correcto. En consecuencia, el trabajo se desarrolla a lo largo de una serie de ciclos estructurados de construirretroalimentar-adaptar. Beneficios del desarrollo iterativo Mitigacin de riesgos tan pronto como sea posible. Progreso visible en las primeras etapas. Una temprana retroalimentacin, compromiso de los usuarios y adaptacin, lleva a un sistema refinado y ms ajustado a las necesidades reales. Gestin de la complejidad. El conocimiento adquirido en una iteracin se puede utilizar para mejorar el propio proceso de desarrollo.

Longinos Recuero Bustos

Diseo del software 2012-13

http://longinox.blogspot.com

Longitud de una iteracin y fijacin de la duracin El UP recomienda que la longitud sea de dos a seis semanas. Iteraciones largas destruyen la motivacin principal del desarrollo iterativo e incrementan el proyecto. Menos de dos semanas dificulta completar el trabajo suficientemente como para obtener resultados significativos y retroalimentados. Una idea clave es que se fija la duracin de las iteraciones.

2.2 Conceptos y buenas prcticas del UP adicionales


La idea fundamental para apreciar y utilizar el UP es el desarrollo iterativo, fijando iteraciones cortas y adaptables. Otra idea del UP implcita, es el uso de las tecnologas como el A/DOO y la POO. Conceptos claves y buenas prcticas del UP son: o Abordar cuestiones de alto riesgo en las primeras iteraciones. o Involucrar continuamente a los usuarios para evaluacin, retroalimentacin y requisitos. o Verificar la calidad del software continuamente y de manera realista. o Aplicar casos de uso. o Modelar software visualmente (UML).

2.3 Las fases de UP y trminos orientados a la planificacin


Un proyecto UP organiza el trabajo y las iteraciones en cuatro fases: 1. Inicio (fase de viabilidad): visin aproximada, anlisis del negocio, alcance, estimaciones imprecisas. 2. Elaboracin: visin refinada, implementacin iterativa del ncleo central de la arquitectura, resolucin de riesgos altos, identificacin de ms requisitos y alcance, estimaciones ms realistas. 3. Construccin: implementacin iterativa del resto de requisitos de menor riesgo y elementos ms fciles, preparacin para el despliegue. 4. Transicin: pruebas beta, despliegue.

2.4 Las disciplinas del UP (eran flujos de trabajo)


Una disciplina es un conjunto de actividades (y artefactos relacionados) en un rea determinada (escribir casos de uso, ...). Un artefacto es el trmino general para cualquier producto del trabajo (cdigo, diagramas, esquemas, ...). Algunos disciplinas son (las que se centra el libro) o Modelado del Negocio (modelado de los objetos del dominio) o Requisitos (anlisis de los requisitos) o Diseo (todos los aspectos de diseo)

Disciplinas y fases Durante una iteracin, el trabajo se desarrolla en la mayora o en todas las disciplinas. El esfuerzo relativo a estas disciplinas cambia con el tiempo.

Longinos Recuero Bustos

Diseo del software 2012-13

http://longinox.blogspot.com

Inters en este libro

2.5 Adaptacin del proceso y el Marco de Desarrollo


Artefactos opcionales Es importante saber que en UP todas las actividades y artefactos son opcionales (el cdigo no!). En un proyecto UP, un equipo debera seleccionar un pequeo subconjunto de artefactos que sirvan para tratar sus problemas y necesidades particulares. El Marco de Desarrollo La eleccin de los artefactos del UP para un proyecto podra recogerse en un documento breve denominado Marco de Desarrollo. Disciplina Modelado del Negocio Requisitos Artefacto Iteracin Modelo del Dominio Modelos de Casos de Uso Visin Especificacin Complementaria Glosario Modelo de Diseo Documentacin de Arquitectura SW Modelo de Datos Modelo de Implementacin Plan de Desarrollo SW Modelo de Pruebas Marco de Desarrollo Inicio I1 c c c c Elab. E1En c r r r r c c c c r c r Const. C1Cn Trans. T1T2

Diseo

r r r r r

Implementacin Gestin del Proyecto Pruebas Entorno

c c

r r

2.6 El UP gil
Un proceso pesado es un trmino peyorativo, que pretende sugerir un proceso con las siguientes cualidades: o Muchos artefactos creados en un ambiente burocrtico. o Rigidez y control. o Planificacin detallada, muy larga y elaborada. o Predictivo ms que adaptable. Un proceso predictivo es aquel que intenta planificar y predecir en detalle las actividades y asignacin de recursos en un intervalo largo de tiempo, siguiendo un ciclo de vida en cascada secuencial.

Longinos Recuero Bustos

Diseo del software 2012-13

http://longinox.blogspot.com

Un proceso adaptable es aquel que acepta el cambio como motor inevitable y fomenta la adaptacin flexible, siguiendo un ciclo iterativo. Un proceso gil implica un proceso adaptable y ligero. La intencin de los autores de UP fue que se adoptara y aplicara con el espritu de un proceso gil. Algn ejemplo de esto en la prctica podra ser que no hay un plan detallado para todo el proyecto. Hay un plan de alto nivel (Plan de Fase) que estima la fecha de terminacin del proyecto y otros hitos importantes. Un plan detallado (Plan de iteracin) slo planifica con gran detalle una iteracin por adelantado.

Longinos Recuero Bustos

Diseo del software 2012-13

http://longinox.blogspot.com

Potrebbero piacerti anche