sia 1
2. Modelos tradicionales y ágiles para
el desarrollo de software
Organización de procesos
Procesos de Transversales
Planificación de Proyectos
Seguimiento y Control de Proyectos
Gestión de Configuración
Aseguramiento de Calidad
Procesos de Desarrollo
Levantamiento de Requisitos
Análisis y Diseño
Implementación
Pruebas
Procesos de SoporteDocumentación
Control de
Configuración
Control de Calidad
Verificación y
Validación
Resolución de
Problemas
Instalación
1
Algunas definiciones necesarias
Modelo de desarrollo de software
Es un conjunto organizado de procedimientos, herramientas
procedimientos
y técnicas de Ingeniería que apoya a un grupo de personas
en el desarrollo de software.
Proceso
“Una secuencia depasos que deben ser realizados para obtener
un resultado”.
IEEE.
Proceso de software
“Un conjunto de actividades, métodos, prácticas y
actividades
todos
prá
transformaciones que las personas usan para desarrollar y
mantener software, y los productos relacionados con éste”.
CMM.
Proceso
Insumos
de
Productos
PROCESO
o
Salidas
Entrada
( Conjunto de actividades )
2Descomposición de un Proceso
Ejemplo : Proceso de Desarrollo
Actividad 1
Actividad 2
Actividad N
Ej. Especificación
de Requerimientos
Ej. Prueba
Tarea 1
Tarea 2
Tarea 3
Ej. Narrar
requerimientos
Ej. Representar
requerimientos en
modelos
Ej. Presentar
modelos al cliente
Ej. Planificación
Levantamiento de Requisitos
El levantamiento de requisitos permite:
•Definir las necesidades de los usuarios.
• Estimar plazos, esfuerzo y recursos materiales y financieros,
planificar el proyecto y delimitar la aplicación.
• Evaluar los riesgos y los recursos necesarios para lograr un nivel
de riesgo aceptable para el proyecto, ayudar a concentrar los
esfuerzos hacia una meta común.
3
Análisis, Diseño e Implementación
Análisis
• Permite representarlos requisitos obtenidos en el levantamiento de
procesos de negocio en artefactos útiles para la implementación de
una solución de software.
Diseño
• Busca producir un modelo o representación de una entidad para su
posterior construcción.
Implementación
• Permite:
Planificar integraciones de sistema.
Distribuir el sistema asignando componentes ejecutables.
Implementar entidades ysubsistemas encontrados en el diseño.
Probar componentes individualmente.
Integrar los componentes compilándolos y enlazándolos en uno o más
ejecutables.
Pruebas e Instalación
Pruebas
• El testing o fase de pruebas, es un proceso que involucra todas las
estrategias, diseños y actividades que se desarrollan para
asegurar, con un cierto grado de certeza, que:
El software en desarrollo hace loque tiene que hacer bien
(verificación), y
Resuelve la problemática del cliente (validación).
Instalación
• A la instalación le corresponden todos los programas instaladores,
archivos de configuración, de licencias, etc. que forman parte de la
Aplicación desarrollada.
4
Ejemplo de levantamiento de requisitos
Especificación de requisitos
del cliente (CRS)
Regulaciones
del clientedel
negocio
Estándares de modelamiento
(como
Unified
Language - UML )
Modeling
Análisis de
Requisitos
Prototipo
Estándares de codificación
Especificación
de requisitos de
software (SRS)
…
ENTRADAS
SUBPROCESO
SALIDAS
Modelos Clásicos de Desarrollo de Software
•
•
•
•
•
•
•
Code & Fix.
Modelo de Cascada (Royce).
Modelo en Cascada Incremental.Modelo Evolutivo.
Modelo Espiral (Boehm).
Modelo Orientado a Componentes.
RUP (Rational Unified Process).
5
Code & Fix (1960)
Descripción :
Tenía sólo dos etapas: codificar y corregir errores.
Desventajas:
Presupone un tamaño y una complejidad abordable por una o
dos personas. Para más personas es imposible aplicarlo y se
torna caótico.
Escasa documentación, cuando las personas...
Regístrate para leer el documento completo.