You are on page 1of 27

Metodologas

tradicionales y agiles
Ingeniera (E) computacin e informtica
Marcelo Beneventi Iturra

Metodologa.

Metodologa de desarrollo

Conjunto de actividades relacionadas que conducen a la elaboracin de un


producto de software.

Existen muchas y diferentes metodologas.

Actividades fundamentales
Actividades que son fundamentales para la ingeniera de software:

Especificacin del software: Definir lo que har y lo que no har el software.

re:
a
w
soft r.
l
e
n d ue ha

i
c
nta n lo q
e
m
ple plir co
m
i
o e de cum
e
s
i
ad
D
d
i
l
fina

llar
o
r
r
Desa

twa
f
o
s
el

nl
o
c
re

Valid
a
tiene cin de
ls
que
hace oftware:
r.
Valid
ar

el so
ftwa
re

para

aseg

urar
qu

e ha

ce lo

que

ar
w
t
f
so s.
l
E
re: acere
a
w
soft s queh
l
e
d
vo
n
e

u
i
n
c
volu bida a
E

ca
dar

r lo
e
c
ha
e
b
e de

ce
a
h
ue

ane
m
de

al d
t
a
r

Metodologas tradicionales.

Cascada.

Toma las actividades fundamentales del proceso de especificacin, desarrollo,


validacin y evolucin.

Los muestra como fases separadas.

Anlisis y definicin de requerimientos: Servicios, restricciones, metas del


sistema. Se establecen mediante consulta a los usuarios del sistema, luego se
definen con detalle y sirven como una especificacin del sistema.

Diseo del sistema y del software: Asignacin de requerimientos para sistemas de


HW y SW estableciendo una arquitectura de sistema.

Implementacin y prueba de unidad: El diseo de SW se realiza como un conjunto


de programas y unidades del programa. Las pruebas de unidad consiste en verificar
que cada unidad cumpla con sus especificaciones.

Integracin y prueba de sistema: Las unidades del programa o los programas


individuales se integran y prueban como un sistema completo para asegurarse de
que se cumplan los requerimientos de software. Despus de probarlo, se libera el
sistema de software al cliente.

Operacin y mantenimiento: Fase ms larga del ciclo de vida, donde el sistema se


instala y se pone en prctica. La mantencin incluye la correccin de errores que
no se detectaron en etapas anteriores, mejorar la implementacin de las unidades
del sistema e incrementar los servicios del sistema conforme se descubren nuevos
requerimientos.

Desarrollo incremental.

Metodologa que se encuentra entre la metodologa tradicional y la gil.


Incluso los mtodos agiles ven sus inicios en esta.

Especificacin, desarrollo y validacin de manera casi simultnea.

Producto de software se desarrolla como una serie de.

La finalidad es que cada incremento aade una funcionalidad al incremento


anterior.

Cada incremento se expone al comentario del usuario y se acepta o modifica


hasta producir un sistema adecuado.

Metodologas agiles

Alguna metodologa agiles existente son:

Programacin extrema.

Scrum.

Crystal.

Desarrollo de SW adaptativo.

DSDM.

Desarrollo dirigido por caractersticas.

Principios de los mtodos agiles.

Participacin del cliente: Intervienen estrechamente durante el proceso de


desarrollo. Ofrecen y priorizan nuevos requerimientos. Evalan las iteraciones
(entregas incrementales).

Entrega incremental: Sistema se desarrolla en incrementos. Cliente


especifica los requerimientos que se incluyen en cada incremento.

Personas, no procesos: Deben reconocerse y aprovecharse las habilidades del


equipo. Se debe permitir a los miembros desarrollar sus propias formas de
trabajar sin procesos establecidos.

Adoptar el cambio: Esperar que cambien los requerimientos del sistema y


asumir dichos cambios como desafo de manera de implementar dichos
cambios.

Mantener simplicidad: Enfocarse en la simplicidad tanto en el software a


desarrollar como en el proceso de desarrollo. Trabajar de manera activa para
eliminar la complejidad del sistema.

Metodologa Lean Startup

Una organizacin del tipo Startup es un concepto empresarial el cual


emprender un nuevo negocio y hace referencia a ideas de negocios que estn
empezando o estn en construccin, es decir son empresas emergentes
apoyadas en la tecnologa.

La metodologa Lean Startup aplica a diversas realidades y no solamente a


la ingeniera de software. Esta metodologa ve sus inicios el sistema de
produccin ajustada. El Lean manufacturing es un modelo de gestin
enfocado a la creacin de flujo para poder entregar el mximo valor para los
clientes, utilizando para ello los mnimos recursos necesarios: es decir
ajustados.

reduccin de los siete tipos de "desperdicios" en


productos manufacturados:

Sobre-produccin

Tiempo de espera

Transporte

Exceso de procesados

Inventario

Movimientos

Defectos

Potencial humano subutilizado

Eliminar la incertidumbre (Falta de seguridad, de confianza o de certeza


sobre algo, especialmente cuando crea inquietud):

Principal fuente de riesgo en un proyecto.

Gestionar el riesgo desde el inicio.

Validar el producto usando prototipos.

Gestionar la lista de requerimientos de su producto.

Validar frecuentemente.

Entender el cambio como una constante del proyecto y del cual es


responsable de gestionar.

El costo de corregir un error incrementa con el tiempo.

Detectar errores en etapas tempranas.

Aprendizaje Validado:

No esperar a terminar el producto para recibir la negativa al proyecto


desarrollado.

Recibir las crticas desde el inicio, levantarse rpido y corregir el plan


mientras se avanza.

Validar el producto de software con el cliente en iteraciones cortas,


semanales o diarias si fuese necesario.

Ajustar los requerimientos y repetir el proceso. Esto no significa que no se


deba controlar el alcance general de su proyecto.

Establecer una lnea base de alcance y hacerla respetar.

Construir-Medir-Aprender:

No porque sea gil significa que no se debe administrar un proyecto. Por el


contrario, se debe controlar y medir todo el tiempo.

Establecer hitos logrables, medir el progreso real del trabajo en trminos de


entregables.

Usar una matriz de requerimientos para priorizar y hacer seguimiento.

Asegurar el desarrollo de los requerimientos de mayor prioridad temprano y


rpidamente validarlos con el cliente.

Asegurar un MVP (Minimum Viable Product):

Desarrollar un producto mnimo viable lo ms pronto posible, validarlo con


sus usuarios o clientes y luego refinarlo.

Asegurar que el inversionista al que se busca convencer vea lo que el


producto de software es capaz de hacer desde el comienzo.

Ya existir tiempo de ajustar los detalles ms pequeos.

Tabla comparativa
Metodologas
Tradicional
Cascada
Ventajas

gil
Startup

Incremental
Ventajas

Especificacin clara de la totalidad Costo reducido de anlisis y


de los requerimientos al inicio del documentacin al tener una
proyecto.
respuesta constante del cliente
ante
la
presencia
de
un
Alto porcentaje de funcionalidad
incremento.
entre el paso de una etapa a otra.
Los clientes pueden ver el avance
Proceso de administracin visible
de su aplicativo a travs de un
que posibilita la monitorizacin del
incremento, ya que es difcil juzgar
progreso contra el plan de
el avance a partir de documentos
desarrollo.
de diseo de software.
Alta probabilidad de lograr un
Se posibilita la implementacin
producto de software con cero
rpida de un fragmento del
defectos.
software til y ganar terreno al ya
implementar en la realidad.

Ventajas
Eliminar el riesgo de invertir
mucho dinero y no ver resultados
en un corto plazo.
Crear o elaborar productos que
nadie
desea
o
necesita.
Garantizando tener un producto o
servicio mnimo viable y el cual
asegura cumplir con todas las
necesidades establecidas.

Desventajas

Desventajas

Demasiadas iteraciones hacen caer en Difcil implementacin en organizaciones


pausas de desarrollo, las cuales se con procedimientos burocrticos. Ya que
convierten en futuros problemas.
el proceso puede carecer de visibilidad y
control documental.
Alto costo econmico y de tiempo para
el desarrollo ya que se estila la La estructura del sistema tiende a
utilizacin de equipos especialistas para degradarse conforme se tienen nuevos
cada etapa y los cuales deben de incrementos. El cambio regular tiende a
estudiar el proyecto en general como la corromper la estructura.
documentacin resultante de la etapa
Llega un momento en el cual debemos
anterior.
desertar a la implementacin de nuevos
requerimientos.

Desventajas.
Lean significa eficiente y gil, y una vez
que el ciclo de construir, medir,
aprender ensea cmo gastar uno para
generar dos, deberas empezar a gastar
en mayor escala. Por tanto necesitas
estar consciente de que debes invertir al
encontrar la receta.
til para captar necesidades del
mercado en el corto plazo, pero puede
no ser prctico para identificar
tendencias que estn en maduracin y
que requieren plazos ms extensos. Es
casi imposible medir la demanda del
mercado para un mercado que todava
no existe.

Aplica

Aplica

Aplica

Para el desarrollo de sistemas


crticos y con equipos de trabajo
que
no
comparten
simultneamente las etapas de
desarrollo.

Para el desarrollo de sistemas de


mediana
complejidad,
para
equipos
de
trabajo
que
comparten simultneamente las
etapas del desarrollo y para
organizaciones de un nivel de
rigurosidad documental no tan
elevada.

Para el desarrollo de sistemas


innovadores, para equipos de
trabajo
que
comparten
simultneamente las etapas del
desarrollo y para organizaciones
de un nivel de rigurosidad
documental no tan elevada.

You might also like