Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Royce propone un modelo compuesto por siete fases que se ha de ejecutar en diversas
vueltas (iteraciones):
1. Requisitos de sistema
2. Requisitos de software
3. Análisis
4. Diseño
5. Implementación
6. Prueba
7. Servicio
El procedimiento popularmente conocido como waterfall model se basa en las fases definidas
por Royce, pero solo prevé una iteración.
Hecho
El modelo en cascada se popularizó a través de la norma estadounidense DoD-STD-2167.
Esta norma se basa en una versión extremadamente simplificada del procedimiento
desarrollado por Royce, que no fue lo suficientemente analizado por los autores. Tal y como
reconoció con el paso del tiempo David Maibor, uno de sus autores, el motivo fue la falta de
compresión de los modelos iterativos incrementales.
En la práctica, se aplican diversas versiones del modelo. Los más habituales son los
modelos que dividen los procesos de desarrollo en cinco fases. En ocasiones, las fases 1, 2 y
3 definidas por Royce se integran en una sola fase de proyecto a modo de análisis de los
requisitos.
Por último, la primera fase del waterfall model incluye un análisis de la definición de los
requisitos en el que los problemas complejos se dividen en pequeñas tareas secundarias y
se elaboran las correspondientes estrategias de resolución.
Diseño
La fase de diseño sirve para formular una solución específica en base a las exigencias, tareas
y estrategias definidas en la fase anterior. En esta fase, los desarrolladores de software se
encargan de diseñar la arquitectura de software, así como un plan de diseño detallado del
mismo, centrándose en componentes concretos, como interfaces, entornos de trabajo o
bibliotecas. La fase de diseño da como resultado un borrador preliminar con el plan de diseño
del software, así como planes de prueba para los diferentes componentes.
Implementación
La arquitectura de software concebida en la fase de diseño se ejecuta en la fase de
implementación, en la que se incluye la programación del software, la búsqueda de
errores y las pruebas unitarias. En la fase de implementación, el proyecto de software se
traduce al correspondiente lenguaje de programación. Los diversos componentes se
desarrollan por separado, se comprueban a través de las pruebas unitarias y se integran
poco a poco en el producto final. La fase de implementación da como resultado un producto
de software que se comprueba por primera vez como producto final en la siguiente fase
(prueba alfa).
Prueba
La fase de prueba incluye la integración del software en el entorno seleccionado. Por norma
general, los productos de software se envían en primer lugar a los usuarios finales
seleccionados en versión beta (pruebas beta). Las pruebas de aceptación desarrolladas en
la fase de análisis permiten determinar si el software cumple con las exigencias definidas con
anterioridad. Aquellos productos de software que superan con éxito las pruebas beta están
listos para su lanzamiento.
Servicio
Una vez que la fase de prueba ha concluido con éxito, se autoriza la aplicación
productiva del software. La última fase del modelo en cascada incluye la entrega,
el mantenimiento y la mejora del software.
En teoría, el desarrollo en cascada pretende crear los requisitos previos para una ejecución
rápida y rentable de los proyectos a través de una cuidada planificación previa. Sin
embargo, la utilización del modelo en la práctica es controvertida. Por una parte, en el
desarrollo de software las fases de proyecto no suelen estar claramente diferenciadas entre sí.
Es precisamente en los proyectos de software más complejos donde los desarrolladores se
suelen enfrentar al hecho de que los diversos componentes de una misma aplicación se
encuentran en diferentes fases de desarrollo al mismo tiempo. Por otra parte, la secuencia
lineal del waterfall model no suele coincidir con la realidad.
Ventajas Inconvenientes
✔ Una estructura sencilla gracias a unas fases ✘ Por norma general, los proyectos más
de proyecto claramente diferenciadas. complejos o de varios niveles no permiten su
división en fases de proyecto claramente
diferenciadas.
✔ Buena documentación del proceso de ✘ Poco margen para realizar ajustes a lo largo
desarrollo a través de unos hitos bien definidos. del proyecto debido a un cambio en las
exigencias.
✔ Los costes y la carga de trabajo se pueden ✘El usuario final no se integra en el proceso de
estimar al comenzar el proyecto. producción hasta que no termina la
programación.
✔ Aquellos proyectos que se estructuran en ✘En ocasiones, los fallos solo se detectan una
base al modelo en cascada se pueden vez finalizado el proceso de desarrollo.
representar cronológicamente de forma
sencilla.
La idea principal es entregar sistemas de alta calidad, en poco tiempo y con un coste bajo
de inversión. Para conseguir esto, hay que seguir determinadas pautas que harán que
estemos ante una auténtica metodología DRA (las siglas en castellano: Desarrollo Rápido
de Aplicaciones), que veremos más adelante.
Desventajas de RAD
Por supuesto, no todo podía ser perfecto y, como cualquier otro método de desarrollo de
software, el método RAD tiene algunas desventajas que también hay que tener en cuenta a
la hora de elegirlo para trabajar.
➡️Planificación de necesidades:
En esta primera fase, lo que habrá que hacer será sentar las bases de las necesidades del
proyecto, tanto de necesidades de la aplicación como de alcance del proyecto y de esta
manera comenzar a trabajar en la creación de prototipos.
➡️Construcción:
Ahora que tenemos el diseño básico, tendremos que realizar el grueso del proyecto:
Codificación, pruebas e integración reales de la aplicación. Al igual que en la fase anterior,
esta se podrá repetir tantas veces como necesitemos, según haya nuevos componentes o
modificaciones en el proyecto.
➡️Transición:
La última fase, también conocida como “cutover”, permitirá al equipo de desarrollo pasar
los componentes a un entorno de producción en vivo, para realizar todas las pruebas que
sean necesarias.
Con todo esto, creemos que será mas fácil comprender por qué usar RAD es una buena
elección para tu forma de trabajar.
• El factor humano.
2. Inspección
Los miembros del equipo Scrum frecuentemente inspeccionan el
progreso para detectar posibles problemas. La inspección no es un
examen diario, sino una forma de saber que el trabajo fluye y
que el equipo funciona de manera auto-organizada.
3. Adaptación
Cuando hay algo que cambiar, el equipo se ajusta para
conseguir el objetivo del sprint. Esta es la clave para conseguir el
éxito en proyectos complejos, donde los requisitos son cambiantes o
poco definidos y en donde la adaptación, la innovación, la
complejidad y flexibilidad son fundamentales.
2. Scrum Master:
Es el responsable de que las técnicas Scrum sean comprendidas y
aplicadas en la organización. Es el manager de Scrum, un líder que
se encarga de eliminar impedimentos o inconvenientes que tenga el
equipo dentro de un sprint (que ya revisaremos en detalle más
adelante), aplicando las mejores técnicas para fortalecer el equipo de
marketing digital.
3. Equipo de desarrollo:
Son los encargados de realizar las tareas priorizadas por el
Product Owner. Es un equipo multifuncional y auto-organizado.
Son los únicos que estiman las tareas del product backlog, sin
dejarse influenciar por nadie.
1. Sprint
El sprint es el corazón de Scrum, es el contenedor de los demás hitos
del proceso. Todo lo que ocurre en una iteración para entregar
valor está dentro de un sprint . La duración máxima es de un mes, el
tiempo se determina en base al nivel de comunicación que el cliente
quiere tener con el equipo. Los sprints largos pueden hacer que se
pierda feedback valioso del cliente y poner en peligro el proyecto.
2. Sprint planning
En esta reunión todo el equipo Scrum define qué tareas se van a
abordar y cuál será el objetivo del sprint . La primera reunión que se
hace en el sprint puede llegar a tener una duración de 8 horas
para sprints de un mes.
3. Daily meeting
Es una reunión diaria dentro del sprint que tiene como máximo 15
minutos de duración. En ella debe participar, sí o sí, el equipo
de desarrollo y el Scrum Master. El Product Owner no tienen
necesidad de estar presente.
4. Sprint review
La review del valor que vamos a entregar al cliente se hace en esta
reunión, al final de cada sprint. Su duración es de 4 horas para
sprints de un mes, y es la única reunión de Scrum a la que puede
asistir el cliente. En ella el Product Owner presenta lo
desarrollado al cliente y el equipo de desarrollo muestra su
funcionamiento. El cliente valida los cambios realizados y además
brinda feedback sobre nuevas tareas que el Product Owner tendrá
que agregar al Product backlog.
5. Sprint retrospective
La retrospectiva es el último evento de Scrum, tiene una duración de
3 horas para Sprints de un mes, y es la reunión del equipo en la que
se hace una evaluación de cómo se ha implementado
la metodología Scrum en el último sprint .
1. Product backlog
Básicamente, el product backlog es el listado de tareas que
engloba todo un proyecto. Cualquier cosa que debamos hacer
debe estar en el product backlog y con un tiempo estimado por el
equipo de desarrollo.
2. Sprint backlog
Es el grupo de tareas del product backlog que el equipo de
desarrollo elige en el sprint planning junto con el plan para poder
desarrollarlas. Debe ser conocido por todo el equipo, para
asegurarse de que el foco debe estar en este grupo de tareas.
• Discusión
Acciones de página
• Ver
• Ver código
• Historial
• 1 Un poco de historia
• 2 Principales Elementos
• 3 Características Principales de RUP
• 4 Principales ventajas
• 5 Ciclo de vida de RUP
• 6 Flujo de Trabajo de RUP
• 7 Fases
• 8 Hitos
• 9 Diferencias de RUP con las demás metodologías
• 10 Enlaces Relacionados
• 11 Fuente
Un poco de historia
Los orígenes de RUP se remontan al modelo espiral original de Barry Boehm. Ken
Hartman, uno de los contribuidores claves de RUP colaboró con Boehm en la
investigación. En 1995 Rational Software compró una compañía sueca llamada
Objectory AB, fundada por Ivar Jacobson, famoso por haber incorporado los casos de
uso a los métodos de desarrollo orientados a objetos.
Principales Elementos
Como RUP es un proceso, en su modelación define como sus principales elementos:
Actividades (“cómo”): Es una tarea que tiene un propósito claro, es realizada por un
trabajador y manipula elementos.
Principales ventajas
o Coste del riesgo a un solo incremento.
o Reduce el riesgo de no sacar el producto en el calendario previsto.
o Acelera el ritmo de desarrollo.
o Se adapta mejor a las necesidades del cliente.
Fases
Cada fase representa un ciclo de desarrollo en la vida de un producto de software.
La fase de concepción o inicio tiene por finalidad definir la visión, los objetivos y el
alcance del proyecto, tanto desde el punto de vista funcional como del técnico,
obteniéndose como uno de los principales resultados una lista de los casos de uso y
una lista de los factores de riesgo del proyecto. El principal esfuerzo está radicado en
el Modelamiento del Negocio y el Análisis de Requerimientos. Es la única fase que no
necesariamente culmina con una versión ejecutable.
La fase de elaboración tiene como principal finalidad completar el análisis de los
casos de uso y definir la arquitectura del sistema, además se obtiene una aplicación
ejecutable que responde a los casos de uso que la comprometen. A pesar de que se
desarrolla a profundidad una parte del sistema, las decisiones sobre la arquitectura se
hacen sobre la base de la comprensión del sistema completo y los requerimientos
(funcionales y no funcionales) identificados de acuerdo al alcance definido.
La fase de construcción está compuesta por un ciclo de varias iteraciones, en las
cuales se van incorporando sucesivamente los casos de uso, de acuerdo a los
factores de riesgo del proyecto. Este enfoque permite por ejemplo contar en forma
temprana con versiones el sistema que satisfacen los principales casos de uso. Los
cambios en los requerimientos no se incorporan hasta el inicio de la próxima iteración.
La fase de transición se inicia con una versión “beta” del sistema y culmina con el
sistema en fase de producción.
Hitos
Fases Hitos
Conceptualización -
Objetivos (visión)
Inicio
Elaboración Arquitectura
Funcionalidad
Construcción
operativa
Transición Release del sistema
Además de utilizar los casos de uso para guiar el proceso; se presta especial atención
al establecimiento temprano de una buena arquitectura que no se vea fuertemente
impactada ante cambios posteriores durante la construcción y el mantenimiento.
También este propone que cada fase se desarrolle en iteraciones