Escolar Documentos
Profissional Documentos
Cultura Documentos
de software
septiembre de 2007
Referencias bsicas
Ingeniera de software. Un enfoque
prctico. Pressman, R. Quinta edicin. Mc.
Graw Hill 2002
Ingeniera de software. Sommerville, I.
Sptima edicin. Addison Wesley 2005
Modelos de desarrollo
Secuencial Lineal
Cascada (clsico)
RAD (Desarrollo Rpido de Aplicacin)
Evolutivo
Incremental
Espiral
Basado en reutilizacin
Basado en transformaciones
......
Modelo Cascada
Anlisis de Requerimientos
Especificacin de Requerimientos
Diseo
Implementacin
Prueba
Mantenimiento
Especificaciones
Parciales
Diseo
Implementacin
Prueba
Lanzamiento
Equipo 2
Especificaciones
Parciales
Diseo
Implementacin
Prueba
Lanzamiento
Equipo 3
Especificaciones
Parciales
Diseo
Implementacin
Prueba
Lanzamiento
Equipo 4
Especificaciones
Parciales
Diseo
Implementacin
Prueba
Lanzamiento
Equipo 1
Modelo Incremental
Anlisis Parcial
Diseo
Implementacin
Prueba
Lanzamiento
Retroalimentacin
Anlisis Parcial
Diseo
Implementacin
Prueba
Lanzamiento
Retroalimentacin
Anlisis Parcial
Diseo
Implementacin
Prueba
Lanzamiento
Diseo
Implementacin
Prueba
Lanzamiento
Modelo en espiral
Planificacin del Proyecto
Anlisis de Riesgo
Comunicacin
Ingeniera
con el Cliente
del
Software
Evaluacin y
Retroalimentacin
del Cliente
Modelo Basado en
reutilizacin
Especificacin de
Requerimientos
Anlisis de
componentes
Desarrollo e
Integracin
Validacin del
Sistema
Modificacin de
Requerimientos
Modelo Basado en
transformaciones
Conjunto de tcnicas y
herramientas basadas en
modelos matemticos y lgica
formal que son utilizadas para
especificar y verificar los
requerimientos y el diseo de
sistemas computarizados.
9
Mtodos giles
Mtodo de desarrollo de SW dirigidos a la
entrega rpida del mismo.
El SW se desarrolla y entrega en incrementos
Se minimiza el proceso de documentacin y
la burocracia
Principios:
11
14
Pruebas:
Comprobar que todos los bytes de la cadena son dgitos
Comprobar que el mes se encuentra entre 1 y 12 y que el ao es mayor o igual que el ao actual
Utilizando los 4 primeros dgitos del nmero de tarjeta de crdito, comprobar que el emisor de la tarjeta
es vlido consultando la tabla de emisores de tarjetas. Comprobar la validez de la tarjeta de crdito
enviando el nmero de tarjeta y la fecha en la que caduca el emisor de la tarjeta.
Salida:
OK o un mensaje de error indicando que la tarjeta no es vlida
15
Seleccionar las
historias de usuario
para esta entrega
Planificar la entrega
Evaluar el sistema
Entregar el software
Desarrollar/integrar/
probar el software
16
XP - Elementos Principales
Planificacin Incremental
Requerimientos se registran en tarjetas de
historias
Entregas pequeas
Tpicamente cada dos meses
Metforas:
Nombres y descripciones comunes
Diseo simple
Slo el cdigo necesario
No construir para futuras versiones
17
XP - Elementos Principales
Pruebas unitarias continuas
Los programadores disean primero las pruebas y
luego escriben el software para cumplir los
requerimientos de las pruebas.
Pruebas de integracin en cada etapa.
Pruebas de aceptacin por el cliente
Refactorizacin:
Rescribir ciertas partes del cdigo para aumentar
su legibilidad y mantenibilidad pero sin modificar
su comportamiento
18
XP - Elementos Principales
Programacin por parejas
Propiedad colectiva
Cada lnea de cdigo pertenece a cada
programador trabajando en el proyecto
Integracin continua
Semanas de 40 horas
Cliente altamente disponible
Codificacin estndar
Se establecen estndares para escribir el cdigo
19
XP - Ventajas
Proceso flexible
Cambios en los objetivos y prioridades son
naturales.
Sin sobrecarga al equipo de desarrollo
El cliente desde las primeras etapas tiene
software que puede usar y probar.
En el proceso de desarrollo se toma en
cuenta las opiniones de los programadores
20
XP - Desventajas
Es necesario un representante del cliente en
todo momento del desarrollo
Todo el proceso de desarrollo se basa en la
comunicacin, si la misma es costosa o lenta
perjudica enormemente el tiempo y costo del
desarrollo
No sirve para proyectos grandes debido a sus
requerimientos de comunicacin
21