Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Para manejar el proceso de desarrollo se debe comprender como se relacionan las fases de desarrollo una con otra y con el proceso general. Comprender las relaciones entre los productos de trabajo facilita el mejoramiento y refinamiento de los modelos. As como en el anlisis, los modelos se deben reconciliar para probar su integridad y exactitud. Los procesos de prueba del proceso continuarn a travs del diseo.
2
CAL/Fundamentos
Comprender como estos mismos productos del trabajo evolucionan desde una fase hacia la siguiente facilitan el manejo del proceso general. Cada fase entrega los productos de trabajo a un nivel que les permita usarse como recursos en la siguiente fase.
3
CAL/Fundamentos
En las lecciones anteriores aprendimos acerca de las dos primeras fases, Inicio del proyecto y anlisis del problema. Al final de estas dos fases, ha creado y probado un modelo completo del dominio del problema. Se ha definido todos los objetivos y recursos que el sistema final deber soportar. Estos productos del trabajo representan su objetivo
4
CAL/Fundamentos
El diseo es cuando Ud. toma el objetivo como el blanco. Es importante que no dispare hasta que que tenga el blanco. En otras palabras, disear trata acerca del planear como conseguir los objetivos definidos en los productos de trabajo del anlisis. El proceso de planeamiento identifica la solucin deseada, no la solucin completa.
5
CAL/Fundamentos
CAL/Fundamentos
Probablemente preguntar, pero el lenguaje y el ambiente de implementacin no dictan el diseo?, En parte es as. Habr un esfuerzo convenido durante la implementacin para reconciliar el diseo deseado y lo que la tecnologa soportar. El valor de separar estos dos pasos viene del hecho de que el diseo retiene la imagen del resultado deseado, mientras que la implementacin se debe conformar con las limitaciones de la tecnologa y entornos actuales.
7
CAL/Fundamentos
Las tecnologas y los entornos cambian rpidamente, presentando nuevas oportunidades para mejorar la implementacin. El diseo proporciona un marco a atravs del cual medir estas nuevas oportunidades y planear su introduccin en la implementacin.
CAL/Fundamentos
El Proceso De Desarrollo
CAL/Fundamentos
CAL/Fundamentos
10
Anlisis arquitectural
CAL/Fundamentos
11
Diseo de Objetos
CAL/Fundamentos
12
Construccin
CAL/Fundamentos
13
Instalacin
CAL/Fundamentos
14
Mantenimiento
CAL/Fundamentos
15
La transicin desde el anlisis hacia el diseo requiere que se comprenda la diferencia entre lo que se model en el anlisis y lo que se modelar en el diseo. Durante el inicio del proyecto y del anlisis del problema se procedi bajo el supuesto de que el sistema que estaba modelando no tena nada que hacer en absoluto con el software y hardware.
16
CAL/Fundamentos
La funcionalidad (modelo de casos de uso), los recursos (modelo de objetos) y la interaccin de los recursos para soportar la funcionalidad (Diagramas de secuencia y colaboracin) podran existir se proporcione o no automatizacin. p.e en el sistema de venta de boletos, se identific la necesidad de fijar asiento, fijar presentaciones, los precios por asiento en las presentaciones y la venta de boletos. No hay nada tecnolgico en estas funciones. De hecho ellas han sido realizadas manualmente durante centurias.
17
CAL/Fundamentos
Todo lo que defini en el anlisis debe permanecer intacto a medida que se mueve hacia el diseo. De hecho, el modelo de objetos a nivel de anlisis ser la base para su diseo de base de datos. Pocos objetos nuevos, si hay alguno, que se adicionan en el diseo formarn parte de la base de datos. Aquellos que se agregan durante el diseo de objetos sern para mejorar el rendimiento no la funcionalidad.
18
CAL/Fundamentos
Diseo: el diseo aade una capa de funcionalidad mas arriba del modelo de anlisis. Esta capa es el software que facilita el uso de los recursos del dominio del problema usando interfaces, bases de datos, control de transacciones y comunicacin que conforma al modelo de casos de uso.
19
CAL/Fundamentos
Esta capa de tecnologa probablemente cambie a menudo, pero el dominio del problema subyacente permanecer relativamente estable.
CAL/Fundamentos
20
Capa de anlisis
CAL/Fundamentos
21
Diccionario de datos:
Define el vocabulario del dominio del problema. Este vocabulario forma la base para todos los modelos. Incluye los diagramas de casos de uso, como tambin la descripcin narrativa y los escenarios de cada caso de uso.
22
CAL/Fundamentos
El propsito del modelo de casos de uso es establecer lo que el usuario espera ver cuando interacte con el sistema. La vista es de alguien de fuera del sistema. Los escenario proporcionan los casos de prueba para cada caso de uso y as son recursos crticos para el resto del proyecto. Estos casos de prueba pueden y deben ser aplicados en cada iteracin del proceso de anlisis y diseo.
CAL/Fundamentos
23
Modelo de objetos:
Proporciona dos recursos: el diagrama de clases y el diagrama de objetos. Los dos diagramas representan los recursos del dominio del problema que los usuarios podran requerir an si el sistema no fuera automatizado. El diagrama de clases (frecuentemente llamado modelo de objetos) es el modelo principal.
24
CAL/Fundamentos
Modelo de objetos:
El diagrama de clases genera el cdigo y proporciona la mejor definicin para los objetos persistentes del sistema los objetos que debern manejarse en la base de datos. El diagrama de objetos es una herramienta para prueba y compresin de los objetos que son representados por clases en el diagrama de clases.
25
CAL/Fundamentos
Diagramas de interaccin:
Los diagramas de secuencia y colaboracin representan las interacciones entre objetos. Como tal son herramientas valiosas para identificar interfaces de objetos. Las interfaces a su vez ayudan a identificar los atributos que debe soportar el diagrama de clases. Los atributos contienen valores de datos.
26
CAL/Fundamentos
... Los valores de datos son pasados como argumentos y valores de retorno en las interfaces. Un valor no se puede pasar como argumento si no est contenido en un atributo en algn objeto o creado por alguna operacin que pertenece a un objeto (atributo derivado).
CAL/Fundamentos
27
Modelo de Objetos
28
Por ejemplo la diferencia entre aplicaciones locales y distribuidas son significativas. Los retos de latencia, acceso a memoria, fallas parciales y concurrencia, requieren diseos significativamente diferentes para soluciones locales que para distribuidas.
29
CAL/Fundamentos
Arquitecturas diferentes dictan diferentes diseos de bajo nivel. Consecuentemente, las decisiones arquitecturales proporcionan el contexto para el diseo de bajo nivel.
CAL/Fundamentos
30
Anlisis Arquitectural
El anlisis arquitectural evala los requerimientos del sistema contra las tecnologas que ofrecen los mas promisorios marcos para una solucin. El problema se particiona para soportar tanto los requerimientos tecnolgicos como los funcionales.
CAL/Fundamentos
31
Anlisis Arquitectural
Los casos de uso con utilizado como fuente para la divisin funcional. Los diagramas de clases proporcionan los recursos de cada rea funcional. Los diagramas de interaccin proporcionan la visin de las dependencias entre las particiones funcionales. Las particiones resultantes se modelan en un diagrama de paquetes.
32
CAL/Fundamentos
Anlisis Arquitectural
Cada paquete (particin funcional) est dividido para representar las capas de tecnologa que se usarn para implementar la solucin.
CAL/Fundamentos
33
Anlisis Arquitectural
Modelo de Casos de Uso (Funcionalidad) modelo de objetos (Recursos) Diagramas de Interaccin (Comunicacin)
CAL/Fundamentos
34
Diseo De Objetos
Durante el diseo de objetos cada particin representa un tipo diferente de reto de diseo. Por ejemplo, la particin de interface del usuario trata un conjunto muy diferente de problemas que la particin de acceso a datos. Una particin de Servidor de Transacciones es muy diferente de una particin de Aplicacin del Cliente.
35
CAL/Fundamentos
Diseo De Objetos
El diseo de objetos utilizar el diagrama de estados adicionalmente a otras herramientas de anlisis. Juntas estas herramientas proporcionan modelos activos de todos los aspectos del diseo de software.
CAL/Fundamentos
36
Resmen
Las fases del proceso de desarrollo se asignan para soportan la evolucin de los modelos desde la definicin del problema hasta la definicin de la solucin. Las mismas herramientas se usan a travs del proceso. Sin embargo el nivel de detalle y la clase de objetos agregados a cada fase sucesiva son diferentes. La clave para manejar y aplicar el proceso con xito est en comprender las relaciones entre las fases y los productos de trabajo que ellos afectan.
37
CAL/Fundamentos