Documentos de Académico
Documentos de Profesional
Documentos de Cultura
● XP - Xtreme Programming
Es una alternativa a otro modelo de desarrollo conocido como cascada, la diferencia radica en
darle menos prioridad a la planificación general y darle más prioridad al desarrollo mismo
dividiendo este en módulos para la solución de las funcionalidades a través de grupos que de
forma incremental van realizando el desarrollo del sistema y después se integran todas las
partes para poder tener la solución final. Se utiliza el desarrollo de varios prototipos
dependiendo de los requerimientos que existan en el momento y la flexibilidad de cambiar
cosas de ser necesario.
● Crystal
Imagen 3. Especificación del cambio del modelo Crystal según la cantidad de personas en
los grupos de desarrollo.
Crystal es más bien una familia de metodologías que tienen en cuenta el desarrollo de software
según la metodología que mejor se adapte a las características del proyecto, entre el número de
integrantes y el número de recursos que se tiene.
Se tienen cuatro niveles de acuerdo a la complejidad y criticidad del proyecto:
❏ Vida: impacto para con la persona o demás cosas.
❏ Dinero esencial: perdida de dinero por mal funcionamiento que afecta a la organización.
❏ Dinero discrecional: perdida de dinero por malfuncionamiento que no afecta a la
organización.
❏ Confort: perdida de dinero por malfuncionamiento debido a la incomodidad de los
usuarios en general.
● Scrum
Imagen 4. Modelo Scrum general.
Las iteraciones que son mejor conocidas como “sprints”, toman entre 2 a 4 semanas, son los
ciclos de desarrollo que inician con la planificación para determinar las características que se
necesitan, luego el propio desarrollo que finaliza con una parte del producto.
Se realizan reuniones diarias para analizar el progreso y las situaciones adversas que se puedan
presentar. Por el carácter de agilidad estas reuniones son cortas, entre 15 minutos, donde se
presentan los temas necesarios y se determinan los logros, lo que falta y lo que se debe de
hacer.
Todo lo producido en cada iteración o Sprint se conoce como los artefactos, que son los
materiales útiles, desde el propio código, porciones ejecutables de desarrollo, modelos,
diagramas,informes, etc.
● Desarrollo dirigido por Características
Imagen 5. Proceso del desarrollo dirigido por características.
Este modelo combina la gestión iterativa con prácticas de desarrollo de software. De manera
incremental se dan las características del producto en cada uno de los ciclos que se compone
de 2 dos etapas: el descubrimiento de la lista de características que serán implementadas y en
la misma implementación de estas característica para el producto; la duración de los ciclos
oscila comúnmente entre 1 a 3 semanas.
Otro modelo que es similar a otras metodologías ágiles en lo que respecta al desarrollo de
software por ciclos. Se basa en 7 principios:
❏ Eliminar desperdicios.
❏ Amplificar aprendizaje.
❏ Tomar decisiones tardías.
❏ Entregar lo antes posible.
❏ Potenciar el equipo.
❏ Crear la integridad.
❏ Visualizar todo el conjunto.
● Kanban
Es una metodología enfocada en la gestión del cambio y del esfuerzo así como uso de recursos
que se aplican en una determinada fase o porción del proyecto y por lo mismo se puede usar
con otras metodologías ágiles. Sirve más para gestionar las actividades que se realizan en cada
porción, y en el caso de desarrollo de software en cada fase, la regulación de los recursos, la
regulación de la fuerza laboral, el enfoque y la prioridad misma se visualizan para tomar
mejores decisiones según cómo avance el proyecto con el tiempo.
Modelos Predictivos:
● Cascada
Imagen 8. Modelo en Cascada.
Es uno de los primeros modelos presentados para organizar el ciclo de vida de desarrollo de
software, es de carácter secuencial lineal y es el que tiene las fases principales que siempre se
toman en cuenta:
❏ Toma de Requerimientos, Analisis.
❏ Diseno del Software.
❏ Codificación, la misma implementación de la funcionalidad.
❏ Pruebas realizadas para el aseguramiento de la calidad.
❏ El mantenimiento siempre presente en todo software después de su lanzamiento y uso
para con el cliente/usuario.
● Modelo V
Imagen 9. Modelo en V.
Este modelo es una extensión del modelo en cascada con la diferenciación de que la secuencia
tiene más énfasis en las pruebas que se realizan después del ciclo normal de desarrollo. Con la
documentación y uso de materiales de la etapa anterior se continúa el desarrollo de manera más
fácil.
Modelos Iterativas:
● Prototipado
Este modelo tiene una dinámica diferente y su enfoque está principalmente puesto en el
desarrollo de prototipos para mostrar la funcionalidad, evaluar estas porciones de código
terminadas y mejorar de manera progresiva el software. Su carácter de continuo desarrollo
facilita mucho la comunicación entre el equipo de desarrolladores y los usuarios/clientes ya
que estos mismos tienen la posibilidad de probar las funcionalidades del software y dar
feedback inmediato para así tomar la decisión más acertada lo mas antes posible continuando
el desarrollo.
● Espiral
Imagen 11. Modelo en Espiral.
El modelo en espiral es una evolución de modelos anteriores, así mismo tomando muy en
cuenta los modelos de prototipado y cascada. Se divide en 5 regiones que son consistentes con
las fases tradiciones en el desarrollo de software:
❏ Comunicación con el Cliente.
❏ Planificación.
❏ Análisis de Riesgos.
❏ Ingenieria.
❏ Evaluacion.
El análisis de riesgos es la caracteristica de evaluacion segun como van los ciclos de desarrollo,
identifica posibles fallos, prevé que existan inconsistencias y regula la manera de trabajar para
así reducir costos que se puedan generar en el futuro.
● Incremental
Imagen 12. El modelo incremental.
Está basado en el modelo en cascada pero agrega la complejidad y escala en el proyecto porque
este se divide en grupos de desarrollo manejables para implementar ciertas funcionalidades de
software, realizar las pruebas referentes de cada parte individual y después integrar todos los
trabajos realizados para finalmente realizar más pruebas y asegurarse de que los requerimientos
se cumplen y se satisface al usuario/cliente.
● Modelo RUP
Rational Unified Process por sus siglas en inglés, o en espaniol como Proceso Unificado
Racional tiene un enfoque en las actividades iterativas y su relacion específica con las fases
tradicionales de desarrollo comúnmente presentes.
Presenta 4 fases:
❏ Fase de inicio: se establece el modelamiento del negocio y determinar el ámbito del
proyecto.
❏ Fase de elaboración: se establece los elementos arquitectónicos que va a usar el sistema,
se especifican los requerimientos funcionales, no funcionales y se hace una evaluación
de los elementos con mayor riesgo o prioridad.
❏ Fase de construcción: la fase donde se realiza el proceso de codificación del producto
y se realizan las pruebas respectivas para el aseguramiento de su calidad.
❏ Fase de transición: es esta fase se realiza la aceptación del software y la integración de
todos los elementos del sistema, materiales necesarios para el aprendizajes de su uso,
manuales y demás materiales necesarios para un uso satisfactorio por parte del
usuario.cliente.
Diagrama de clases
Diagrama de componentes
Imagen 15. Diagrama de componentes de una transacción de venta.
Diagrama de objetos
Diagrama de despliegue
Diagrama de paquetes
Imagen 19. Diagrama de paquetes de una casa de prestamos.
Diagrama de actividades
Diagrama de estados
Diagrama de comunicación
Imagen 23. Diagrama de comunicación de un bibliotecario.
Diagrama de tiempos
● Encuestas:
Es una serie de preguntas que se hace a una cantidad considerable de personas para
reunir datos o detectar la opinión sobre un asunto determinado, generalmente con
opciones de respuesta predefinida dentro de los parámetros esperados por los
desarrolladores con respecto a sus clientes.
● Cuestionarios:
Consiste en un conjunto o serie de preguntas para saber cual es la opinión o punto de
vista de los clientes y/o usuarios respecto a criterios especificados por los
desarrolladores, como la calidad de software, identificación de requerimientos,
opiniones de pruebas, etc.
● Entrevistas:
Las entrevistas son reuniones individuales e independientes entre un entrevistador del
grupo de desarrollo de software y algún cliente y/o usuarios, en la que el entrevistador
le pregunta una serie de cuestiones para saber su opinión, desempeño y realizar una
recopilación de datos de forma mucho más natural y personal.
● Reuniones presenciales:
De manera más detallada es la congregación presencial en el mismo lugar del grupo de
desarrollo de software y un grupo de usuarios y clientes para poder identificar y discutir
cualquier situación respecto al mismo desarrollo y desempeño del software en cuestión.
Siendo de manera presencial y grupal abarca muchas más experiencias y puntos de vista
necesarios para un buen feedback.
● Reuniones no presenciales:
Estas reuniones tienen la particularidad de no se de carácter presencial, osea no es
necesario que las personas estén en el mismo lugar para comunicarse puesto que se
puede realizar con el uso de diferentes herramientas de telecomunicaciones como
videollamadas, chats grupales, teleconferencias y demás.