1. ¿Qué es el desarrollo ágil?
El desarrollo de software gil es un concepto que
se usa para describir metodologías
de desarrollo, donde se hace hincapié en el
empoderamiento de las personas para colaborar
y tomar decisiones del código.
las técnicas ágiles son variadas en prácticas y
énfasis, pero aun así comparten algunas
características como lo es el desarrollo iterativo
y el enfoque en la interacción. desarrollar en
iteraciones nos permite que el equipo se adapte
más rápido a las necesidades cambiantes
trabando en las instalaciones esto permite que
los equipos puedan tomar decisiones y actuar
sobre ellas en lugar de esperar respuestas de
otras instancias.
las recomendaciones de una metodología de
software ágil son:
- Participación de los usuarios
- Tener facultad para la
toma de decisiones
- Tener tiempo y fecha de
entrega fijas
- Captura de requisitos
- Desarrollo de versiones
pequeñas (veta)
- Completar
cada funcionalidad antes de pasar a la siguiente
- Las pruebas se integran
en todo el ciclo de vida del proyecto
- Tener un enfoque de
colaboración y coordinación entre las partes interesadas
2. ¿Por qué es importante el cliente?
La metodología ágil permite al
desarrollador mostrar avances de su proyecto siempre, añadir cambios con
facilidad y rapidez., no se debe esperar hasta el final para recibir la versión
total del producto, desde el principio se reciben versiones no definitivas que
encaminan al cliente, permitiéndole ver cómo van las cosas y generar los
cambios que desee, de esta manera las correcciones llegarán antes y con menos
costo, generando un producto "ideal" desde el principio.
3. Modelos
existen
diferentes opciones, pero las más utilizadas son:
programación
extrema (xp), Scrum y Kanban, ágil incepción y designa Sprint, esta es la mitología
de Google todas estas se guían a través de un patrón establecido
por
el manifiesto ágil que se realiza por varios autores que establecieron
los
12 principios del software ágil.
4. EXTREME PROGRAMMING (XP)
XP Está desarrollada para entregar el
software que los clientes requieren a tiempo. Ayuda a los desarrolladores a
responder a los requerimientos del usuario aún en fases avanzadas del ciclo de
vida del programa. Es una de las metodologías ágiles más exitosas.
Roles:
- Cliente: Determina prioridades, usuario final del producto.
- Programador: Encargado de desarrollar el software.
- Tester: Ayuda al cliente con los requisitos del producto.
- Coach: Asesoran y determinan el rumbo del proyecto.
- Manager: Responsable de la comunicación externa y los recursos.
Ciclo:
- Fase exploración: Comprender lo que el cliente requiere.
- Fase de planeación: Estimar el esfuerzo.
- Fase de iteraciones: Crear soluciones.
- Fase de puesta en producción: Entrega del producto final.
- (Cevallos, Karla, 2015)
DESARROLLO ADAPTATIVO DE SOFTAWARE
(DAS)
El desarrollo adaptativo del software
(DAS)fue propuesta por jim highsmith en
1998 como una metodología para el
desarrollo del software y sistemas
complejos. él se centra en la colaboración humana
y la organización de equipo.
el ciclo de vida de DAS se conforma
de tres fases:
- Especulación
- Colaboración
- Aprendizaje
Características:
- Iterativo
- Tolerante
a los cambios
- Fue
creado como una técnica para construir software y sistemas complejos
- Los
enfoques filosóficos de DAS se enfocan en la colaboración humana y la organización
propia del equipo.
- La
organización propia es una propiedad que tienen los sistemas operativos
complejos
- Es
el modelo de energía creativa cuando surge la solución a un problema.
(Fernanda,2012)
SCRUM
es un conjunto de labores grupales
que están al servicio de la consecución de un objetivo.
la simulación del método radica en la
manera en que intervienen los distintos actores del plan
para dejar más clara la definición de
scrum son los métodos tradicionales de gestión.
creador: ikujiro Nonaka e Hirotaka
Takeuchi
Año:1986
- ScrumMaster: nos permite mantener los
procesos y trabajar de forma similar al director del proyecto.
- ProductOwner: es lo que representa a
los stakeholders(clientes externos o internos)
- Team: es lo que incluye a los
desarrolladores.
- Tiene
un rango de tiempo de 15 y 30 días
- Los
requisitos estarán congelados durante cada sprint
scrum
permite la creación de equipos autoorganizados impulsando la co-localizacion de todos los miembros
del equipo
un
principio clave de scrum es el reconocimiento de que dúrate un proyecto los
clientes cambiar de idea sobre lo que quieren y necesitan. (Cevallos, Karla, 2015)
MÉTODO DE DESARROLLO DE SISTEMAS
DINÁMICOS (MDSN)
Metodología ágil que emplea un ciclo
iteractivo con el objetivo de evolucionar la solución apropiada y satisfacer
los requerimientos del cliente. Se enfoca en proyectos de sistemas de
información que se caracterizan por horarios firmes y presupuestos bastante
rigurosos, su objetivo es entregar el producto a tiempo y en el valor acordado
desde el principio, siempre ajustado a los requisitos cambiantes.
Principios:
- Involucrar
al cliente
- Toma
de decisiones
- Entrega
de productos
- Desarrollo
iterativo e incremental
- Cambios
durante el desarrollo
- Pruebas
- Comunicación
y cooperación
Requisitos:
- Interactividad
- Motivación
- Intercambio
de ideas
Roles:
- Patrocinador: Encargado de recursos.
- Visionario: Encamina el proyecto.
- Usuario: Establece los requerimientos.
- Jefe
de proyecto: Encargado de comunicación externa.
- Coordinador
técnico: Establece parámetros.
- Líder
de equipo: Encargado de guiar al equipo.
- Desarrollador: Encargado de programar.
- Tester: Apoya al cliente al establecer requerimientos.
(MARIA, ROSA,2016)
CRISTAL
creador: Cockburn
Crystal es una metodología de desarrollo de
software ágil que en realidad esta
considerada como una (familia de
metodologías).
es la compilación de un conjunto de
metodologías que nos facilitan el desarrollo de software dependiendo de varios
actores teniendo
como principal factor la cantidad de
desarrolladores que son en su mayoría en los que recaerá el éxito o fracaso del
proyecto
metodologías:
- crystal
yellow
- crystal
orange
- crystal
orange web
- crystal
red
- crystal
magenta
- crystal
blue
Roles:
- patrocinador:
consigue los recursos y define la totalidad del proyecto
- usuario
experto: junto con el experto en negocios produce la lista de actores de caso
de uso
- diseñador
principal: produce la descripción arquitectónica
- programador: produce junto con el diseñador principal, los borradores de pantalla el
modelo común de las notas y diagramas del diseño
- experto
en negocios: junto con él, usuario experto produce la lista de actores y el
archivo de caso de uso requerimientos.
- coordinador:
con la ayuda del equipo, produce el mapa del proyecto, el plan de entrega y el estado
del proyecto
- verificador:
produce el reporte de bugs puede ser un programador en tiempo parcial
- escritor:
produce el manual de usuario.
(javiergarzas.com, 2012)
DESARROLLO IMPULSADO POR CARACTERÍSTICA (DIC)
Desarrollo que hace énfasis en la
colaboración entre los integrantes de un equipo, administrando la complejidad
de los problemas del proyecto mediante la descomposición basada en las
características. También comunica detalles técnicos de forma verbal y gráfica,
mediante textos.
Beneficios:
- Características como
bloques pequeños.
- Características ordenadas
por jerarquía.
- Diseño
y representación.
.(Roger S. Pressman (2010)
DESARROLLO ESBELTO DEL SOFTWARE (DES)
Este método busca la perfección del
producto, implica agilidad.
Principios:
- Eliminar
desperdicios.
- Construir
calidad.
- Crear
conocimientos.
- Postergar
compromisos.
- Entregas
rápidas.
- Respetar
a las personas.
- Optimizar
todo.
.(Roger S. Pressman (2010)
MODELO ÁGIL (MA)
Metodología basada en la práctica
para modelar y documentar con eficacia. Adopta todos los valores del manifiesto
ágil, su filosofía afirma que un equipo ágil debe tener valentía para la toma
de decisiones que implique rechazar un diseño y reconstruirlo.
Ciclo de vida:
- Planificación:
Organización de ideas.
- Análisis
de requisitos: Revisión de los requerimientos del cliente.
- Diseño:
Creación de la estructura del producto.
- Codificación:
Programación del producto.
- Revisión:
Verficación del software.
- Documentación:
Debida explicación del programa.
.(Roger S. Pressman (2010)
PROCESO
UNIFICADO ÁGIL DE CARACTERÍSTICAS (PUA)
Describe una aproximación al desarrollo de
aplicaciones que combina conceptos propios del proceso unificado tradicional
con técnicas ágiles, su objetivo de mejorar la productividad.
Ciclos:
- Iniciación: Identificar
el alcance inicial del proyecto.
- Elaboración: Fase que identifica y valida la arquitectura del
sistema.
- Construcción: Construye
un software desde un punto de vista.
- Transición: Se
valida y despliega el sistema en el entorno de producción.
.(Roger S. Pressman (2010)
Herramientas (CASE)
De acuerdo con Kendall y Kendall la ingeniería de
sistemas asistida por ordenador es la aplicación de tecnología informática a
las actividades, las técnicas y las metodologías propias de desarrollo, su
objetivo es acelerar el proceso para el que han sido diseñadas, en el caso de
CASE para automatizar o apoyar una o más fases del ciclo de vida del desarrollo
de sistemas. Cuando se hace la planificación de la base de datos, la primera
etapa del ciclo de vida de las aplicaciones de bases de datos, también se puede
escoger una herramienta CASE (Computer-Aided Software Engineering) que permita
llevar a cabo el resto de las tareas del modo más eficiente y efectivo posible.
Una herramienta CASE suele incluir:
- Un diccionario de datos para almacenar
información sobre los datos de la aplicación de bases de datos.
- Herramientas de diseño para dar apoyo al análisis
de datos.
- Herramientas que permitan desarrollar el modelo
de datos corporativo, así como los esquemas conceptual y lógico.
- Herramientas para desarrollar los prototipos de
las aplicaciones.
(monografías,S,F)
5. Bibliografía:
ingsotfwarekarlacevallos.wordpress.com
(05 del 08 de 2015). INGENIERÍA DEL SOFTWARE. obtenido de ing. Software
desarrolloadaptativodesoftware.blogspot.com
(LUNES, 13 DE JUNIO DE 2011). Desarrollo adaptativo de software. Obtenido de
das
https://espejodeantagno.files.wordpress.com(Caracas,
01 de febrero de 2016). MÉTODO DE DESARROLLO DESISTEMAS DINÁMICOS (DSDM).
obtenido de dsdm.
javiergarzas.com(25
septiembre, 2012). Las metodologías Crystal. Obtenido de cristal.
ingenieriadelsoftwareudgvirtual.(Roger
S. Pressman (2010) México: Mc Graw Hill.) Métodos del desarrollo de Software.
Obtenido de dic
monografias.com(S.F.DE.S.F.DE.S.F).
herramientas case. Obtenido de herramientas case