Está en la página 1de 8

Proceso de desarrollo del software

modelo en cascada

Anlisis: Necesidades del usuario especificaciones


Diseo: Descomposicin en elementos que puedan desarrollarse por separado
especificaciones de cada elemento
Codificacin: Programacin de cada elemento por separado (+pruebas aisladas)
Integracin: Se juntan los elementos y se prueba el sistema completo
Mantenimiento: Cambios ocasionales (errores o mejoras)
Prototipos
Prototipos rpidos
Slo para adquirir experiencia
El cdigo no se reusa
Se usan para las fases de anlisis diseo

Prototipos evolutivos
El cdigo se reusa
Proceso cclico del modelo en cascada
En cada vuelta se va mejorando el prototipo hasta llegar a un sistema completo
Especificacin de software
Concepto de modelo del sistema
El modelo especifica el QU hace el sistema sin especificar el CMO lo hace
Se pueden usar distintas tcnicas
Descomposicin en subsistemas
Modificacin de un modelo existente
Anlisis del dominio estudiar entorno, terminologa, sistemas similares....
Anlisis de requisitos
Objetivo obtener las especificaciones del software (construir el modelo)
Fases
Estudio del sistema en su contexto: sistema SW es parte de un sistema complejo
(SW+HW+mecnica+.....) estudio de todos los dems sistemas + estudio del dominio
Identificacin de necesidades: interaccin con el cliente necesidades reales
Establecimiento del modelo del sistema
Desarrollo jerrquico divisin en subsistemas + desarrollo de cada subsistema
Finaliza con un documento de especificacin de requisitos
Distintas notaciones posibles para la especificacin
Lenguaje natural para sistemas muy sencillos o como complemento de otros
Diagramas de flujo de datos (DFD) modelan el procesado de los datos en el sistema
Diagramas de transicin de estado (DTE) modelan la dinmica del sistema
Diccionario de datos modela los datos
...........................................
Diseo de software
Diseo
Decir CMO va a hacer el sistema lo que tiene que hacer
Finaliza con un documento de diseo arquitectnico y un documento de diseo detallado
Fases
Diseo arquitectnico
Estructura y organizacin del sistema
Divisin en subsistemas o mdulos + interfaces entre ellos
Diseo detallado desarrollo de cada mdulo
Aparecen nuevos mdulos, se agrupan o desaparecen otros
Definir la estructura de cada mdulo, con sus datos y servicios asociados
Disear los algoritmos para el desarrollo de cada mdulo se detalla en pseudocdigo sin llegar a un
nivel muy detallado (sera casi codificacin)
Diseo de datos diseo de las bases de datos asociadas al sistema (si es necesario)
Diagramas de estructura
Es uno de las muchas herramientas para el diseo
Propuesta por E. Yourdon como herramienta para el diseo estructurado
Describen la jerarqua de modulos y submdulos (diseo arquitectnico)
El concepto de mdulo de Yourdon encaja en lo que es una funcin de C
Simbologa de los diagramas de estructura
mdulo Indica un mdulo, con su nombre

Indica que el mdulo superior llama al inferior

Sobre una lnea. Indica llamada opcional

Sobre una lnea. Indica llamada repetitiva

Envo de datos (de informacin)


Envo de datos (de control)

EJEMPLO
principal

dato1 dato3
dato2
dato4

sub1 sub2 sub3


Caractersticas que debe cumplir un mdulo
Acoplamiento (debe ser dbil) es la interrelacin que tiene con otros mdulos
(muy fuerte) Por contenido acceso a datos locales y cdigo (entre mdulos)
(fuerte) Comn zona de datos comunes a varios mdulos
(medio) De control los mdulos se pasan seales de control
(dbil) Por referencia los modulos se pasan datos por referencia (p.e.: struct de C)
(muy dbil) Por valor paso de datos de un mdulos a otro (slo los que necesita)
Cohesin (debe ser media/alta) agrupar en un mdulo elementos afines
(muy baja) casual no hay relacin (p.e.: cojo un programa de 1000 lneas de cdigo, lo parto en bloques
de 100 lneas y hago un mdulo con cada bloque)
(baja) Lgica el mdulo contiene operaciones cuya ejecucin depende de un parmetro (p.e.: una
funcin calcular(operacion,datos) que puede hacer sumas o productos)
(media-baja) temporal el mdulo contiene operaciones que se ejecutan en el mismo momento (p.e.:
rutinas de inicializacin del sistema)
(media) comunicacin el mdulo realiza distintas operaciones que se ejecutan en paralelo y que
operan todos sobre el mismo conjunto de datos
(media-alta) secuencial el mdulo realiza distintas operaciones que se realizan de forma secuencial
sobre los datos, de forma que los datos de salida de una operacin son datos de entrada para la siguiente
(alta) funcional el mdulo realiza slo una funcin
Comprensibilidad simple y con funcionamiento comprensible (por quien no lo ha diseado)
Adaptabilidad (muy difcil) posibilidad de cambiarlo con facilidad
Documento de diseo (modelo de la Agencia Espacial Europea)
1. Introduccin visin general del documento
1.1. Objetivo
1.2. mbito
1.3. Definiciones, siglas y abreviaturas
1.4. Referencias
2. Panormica del sistema visin general de los requisitos + referencia al documento de especificacin de requisitos
3. Contexto del sistema conexiones con otros sistemas
3.n. Definicin de interfaz externa
4. Diseo del sistema descripcin del nivel superior de diseo (diseo arquitectnico)
4.1. Metodologa de diseo de alto nivel descripcin de la metodologa usada
4.2. Descomposicin del sistema componentes del sistema (mdulos1 ) y la relacin entre ellos
5. Diseo de los componentes diseo de cada mdulo1
5.n.0. Indentificador del componente
5.n.1. Tipo mdulo1
5.n.2. Objetivo justificacin de la necesidad de que exista
5.n.3. Funcin qu hace?
5.n.4. Subordinados componentes (mdulos1) que usa
5.n.5. Dependencias componentes (mdulos1) por los que es usado
5.n.6. Interfases reglas de interaccin con otros elementos (mdulos1)
5.n.7. Recursos
5.n.8. Referencias
5.n.9. Proceso algoritmos (se definen con pseudocdigo)
5.n.10. Datos datos internos que usa el componente (mdulo1)
6. Viabilidad y recursos estimados para llevar a cabo el sistema
7. Matriz requisitos/componentes
1.- En el caso de diseo modular

Propuesta de desarrollo para sistemas pequeos


Especificacin (Anlisis)
Muy brevemente decir qu hace el sistema sin decir cmo
En lenguaje natural o bien lenguaje natural estructurado
Sin documento de especificacin de software se incluye en el documento de diseo
Diseo
Diseo arquitectnico
Divisin en mdulos y los interfaces entre ellos
Reflejado en un diagrama de estructura
Diseo detallado
Diseo de cada uno de los mdulos
Se especificar como pseudocdigo (mejor) o diagrama de flujo
Se plasma en el documento de diseo
Codificacin Se realizarn ambas a la vez y por mdulos
Pruebas (ojo, no empezar hasta que no est terminado el diseo detallado)
Documento de diseo
Breve introduccin y panormica del sistema
Desarrollo detallado de diseo del sistema y de los componentes

También podría gustarte