Académique Documents
Professionnel Documents
Culture Documents
CONTENIDO OFICIAL
Unidad 1.- Conceptos Introductorios 1.1. La arquitectura de 4+1 vistas 1.2. Desarrollo orientado a objetos 1.3. Diagramacin
ARQUITECTURA
La arquitectura software trata el diseo e implementacin de la estructura de alto nivel del software. Es el resultado de ensamblar un cierto nmero de elementos arquitectnicos para satisfacer la funcionalidad y ejecucin de los requisitos del sistema; as como los requisitos no funcionales del mismo: fiabilidad, escalabilidad, portabilidad, disponibilidad, etc.
ARQUITECTURA
Aunque un Sistema de Software es una nica entidad, al arquitecto del software y a los desarrolladores les resulta til presentar el sistema desde diferentes perspectivas para comprender mejor el diseo. Estas perspectivas son vistas del modelo del sistema.
(Funcionalidad)
Vista de Implementacin
Modelo de Referencia
Pedido
Informacin de artculos
VISTA DE IMPLEMENTACIN
Esta vista se centra en la estructura de los componentes run-time, los ejecutables del sistema. Esta arquitectura tiene muy en cuenta los siguientes requerimientos no funcionales:
Rendimiento Escalabilidad Seguridad Administracin del sistema Fiabilidad Integridad Sincronizacin
VISTA DE IMPLEMENTACIN
Los componentes run-time muestran los mappings de las Clases a libreras de tipo ActiveX, Applets de Java y libreras dinmicas. Los componentes ejecutables muestran sus interfaces y niveles de dependencia dentro de la aplicacin.
Los diagramas de distribucin muestran el despliegue de nodos (locales y remotos), en la organizacin de la empresa. Permite al equipo de desarrollo comprender mejor la topologa de un sistema distribuido.
VISTA DE FUNCIONALIDAD
Esta vista certifica la validez de las cuatro vistas anteriores, con la funcionalidad requerida del sistema. Utilizamos los siguientes elementos para describir la funcionalidad: Diagramas de Casos de Uso Especificacin de Casos de Uso Diagramas de Interaccin (Escenarios) Diagramas de Actividad (Flujos de Trabajo) Diagramas de Estados (Dinmica)
Org. Esttica del sw en su Entorno de desarrollo Vista de componentes, .jar, etc) (libreras,
Arquitectura y UML
Vista Escenarios Lgica Desarrollo UML Casos de Uso Clases, de Estados y Colaboracin Componentes
Fsica
Procesos
Despliegue
Actividades, Estados y Secuencia
DOO
AOO
AOODOOPOO
El Anlisis Orientado a Objetos concierne al desarrollo del modelo de objetos del dominio de la aplicacin. El Diseo Orientado a Objetos trata del desarrollo del modelo del sistema orientado a objetos para implementar los requerimientos La Programacin Orientada a Objetos trata de la realizacin del Diseo Orientado a Objetos utilizando algn lenguaje de programacin orientada a objetos como C++ o Java.
Planifica cin Com un. Con el client e Evalua cin del cliente
2.Identificar las clases (atributos y mtodos) 3.Se debe especificar una jerarqua de clases 4.Representan las relaciones (conexiones de objetos) objeto a objeto
5.Modelar el comportamiento del objeto 6.Repetir iterativamente las tareas de la 1 a la 5 para completar el modelo.
EL PROCESO DE AOO
El proceso de AOO no comienza con una definicin de los objetos, sino con una comprensin de la manera en la que se usar el sistema: por las personas, por otras mquinas o por otros programas. Una vez que se ha definido el escenario, comienza el modelado del software. Una tcnica para recopilar requisitos bsicos del usuario y despus permite definir un modelos de anlisis para un sistema OO son los CASOS DE USO (uses cases)
CASOS DE USO
Una vez que se han recopilado los requisitos, el IS puede crear un conjunto de escenarios, de manera que cada uno identifique una parte (hilo)del uso que se le dar al sistema a construir.
Para crear un caso de uso, el analista debe primero identificar los diferentes tipos de personas (o dispositivos) que usan el sistema o producto. Estos actores representan papeles ejecutados por personas (o dispositivos) cuando el sistema est en operacin.
Un actor es cualquier cosa que se comunique con el sistema o producto y que sea externo a l. En el modelo de AOO no se identifican todos los actores en la primera iteracin.
Una vez que los actores han sido identificados pueden desarrollarse casos de uso. EL CASO DE USO DESCRIBE LA FORMA EN LA CUAL UN ACTOR INTERACTUA CON EL SISTEMA
La capa del subsistema contiene una representacin de cada uno de los subsistemas que le permiten al software conseguir que los requisitos definidos por el cliente e implementar la estructura tcnica que los soporta. La capa de clases y objetos. Contiene las jerarquas de clases que permiten crear el sistema usando generalizacioens y especializaciones mejor definidas incrementalmente. Esta capa tambien contiene representaciones de diseo para cada objeto. La capa de mensajes. Contiene los detalles que le permiten a cada objeto comunicarse con sus colaboradores. Esta capa establece las interfaces externas e internas para el sistema. La capa de responsabilidades. Contiene las estructuras de datos y el diseo algortmico para todos los atributos y operaciones de cada objeto.
CONCLUSIONES
El AOO es el fundamento de cualquier proceso OO en el que se quiera desarrollar un SW con cualidades que le permitan incorporar una Ingeniera de componentes de forma natural. El Diseo Orientado a Objetos es un medio para disear software de tal forma que los componentes del diseo representen objetos con su estado y operaciones privadas propias en lugares de funciones
Metodologas de Desarrollo de Sw
Booch OMT Shlaer && Mellor OOSE XP CRC y RDD Coad Yourdon
EXPOSICIN
1.3. DIAGRAMACIN
La diagramacin se refiere al uso de mtodos y notaciones grficas que llevan como fin facilitar la expresin y comunicacin de ideas. En cuanto al rea de software existen varias herramientas de diagramacin, entre las ms utilizadas actualmente est el UML (Lenguaje Unificado de Modelado), el cual es una notacin grfica para dibujar diagramas de conceptos de software.
Jacobson
Booch
Rumbaugh
Niveles de Diagramacin
Los Diagramas de los niveles de especificacin y de implementacin. Tienen una conexin fuerte con el cdigo fuente. Su propsito es que un diagrama del nivel de especificacin se transforme en cdigo fuente, y que un diagrama del nivel de implementacin describa un cdigo fuente existente. Los Diagramas en el nivel conceptual. No estn tan fuertemente relacionados con el cdigo fuente. No siguen reglas semnticas estrictas y, por tanto su significado puede ser ambiguo y sujeto a interpretacin.
TIPOS DE DIAGRAMAS
UML tiene tres clases principales de diagramas. Los diagramas estticos describen la estructura lgica invariable de los elementos software representando clases, objetos, estructuras de datos y las relaciones entre ellas. Los diagramas estructurales sirven para visualizar, especificar, construir y documentar los aspectos estticos de un sistema. Los diagramas de comportamiento se emplean para visualizar, especificar, construir y documentar los aspectos dinmicos de un sistema.
PANORAMA GENERAL
UML Elementos Estructurales
Casos de uso Clase Interfaz Componente Colaboracin Nodo
Relaciones De anotacin
Nota Dependencia Asociacin Generalizacin
Diagramas
Casos de uso Clases Objeto Secuencia Colaboracin Estados Actividad Componente Despliegue
De comportamiento
Interaccin Mq. De estados
De agrupacin
Paquete Subsistema Marco de trabajo
Elementos Estructurales
Los elementos estructurales son los sustantivos de los modelos UML. Estos son la mayora de las partes estticas de un modelo, representando elementos que son conceptuales o fsicos.
Clases
Actor Un actor representa un conjunto coherente de roles que los usuarios de los casos de uso desempean cuando interactan con estos casos de uso.
Colaboracin Una colaboracin define una interaccin y es una sociedad de roles y otros elementos que trabajan conjuntamente para proveer algn comportamiento cooperativo que es mayor que la suma de todos los elementos.
Interfaz y Colaboracin
Elementos de Comportamiento
Los elementos de comportamiento son las partes dinmicas de los modelos UML. Estos son los verbos de un modelo, representando el comportamiento a travs del tiempo y el espacio.
Elementos de Agrupacin
Los elementos de agrupacin son organizacionales de los modelos UML. la partes
Elementos de Anotacin
Los elementos de anotacin son las partes explicativas de los modelos UML.
Nota Una nota es un smbolo simple para establecer condiciones y comentarios ligados a un elemento o coleccin de elementos.
Dependencia Una dependencia es una relacin de uso que un cambio en la especificacin de un elemento puede afectar a otro elemento que lo utiliza, pero no necesariamente lo contrario.
Asociacin Una asociacin es una relacin estructural que especifica que objetos de un elemento estn conectados a objetos de otro.
Relaciones
Dependencia y Asociacin
Relaciones (Cont.)
Agregacin Una agregacin es una forma especial de asociacin que especifica una relacin todo/parte entre el agregado (el todo) y un componente (la parte). Una variacin es la composicin. Generalizacin Un generalizacin es una relacin entre un elemento general y un tipo ms especfico de ese elemento. Algunas veces llamada una relacin es-parte-de.
Realizacin Una realizacin es una relacin semntica entre clasificadores, en donde, un clasificador especifica un contrato que otro clasificador garantice para realizar.
DIAGRAMAS
Sus diagramas
Modelado
Establecimiento de los requisitos de usuario Modelado de la estructura esttica Modelado de interaccin
Diagrama
Diagrama de Casos de Uso Diagrama de Clases Diagrama de Colaboracin Diagrama de Secuencia Diagrama de Estados Diagrama de Actividades Diagrama de Componentes Diagrama de Despliegue
Modelado dinmico
Modelado de implementacin
Diagrama de Clases
Una Clase representa a un tipo de objetos que comparten:
Las mismas propiedades (Atributos)
Ejemplo
La clase Persona tiene Nombre, Direccin y Nmero del Seguro social. Una Persona puede trabajar en algn proyecto y ganar un salario. Una Compaa tiene un Nombre, Direccin, Nmero telefnico y Producto Primario. Una Compaa contrata y despide Personas. Persona y Compaa tienen una relacin de muchos-muchos. Hay dos tipos de Personas: Trabajadores y Administradores. Cada Trabajador est involucrado en varios Proyectos; cada Administrador es responsable de varios proyectos. En un proyecto pueden trabajar varios trabajadores y un solo administrador. Cada proyecto tiene Nombre, Presupuesto y una Prioridad interna para asegurar recursos. Adems, una Compaa est compuesta de mltiples Departamentos; cada Departamento dentro de una Compaa se identifica de forma nica por su Nombre. Un Departamento usualmente tiene un Administrador. La mayora de los administradores manejan un departamento; y algunos administradores no estn asignados a ningn departamento. Cada departamento, manufactura varios productos; mientras que cada producto est hecho por un solo departamento. Un Producto tiene Nombre, Costo y Peso.
Empleado
Empleador
trabaja-para
Trabajador
Administrador
*
administra
0..1 0..1 1 Departamento
*
trabaja-en
responsable-de
manufactura
*
Nombre Presupuesto Prioridad
*
Proyecto Nombre Costo Peso
*
Producto
Comprensin detallada de la funcionalidad del Sistema Acotacin precisa de las habilitaciones de los usuarios Trazabilidad desde los requerimientos al cdigo ejecutable
<<Incluye>>
Tramitador
Matricular Alumnos
Generar
Generar Mov. Tasa
Cod. Anonimato
Imprimir
Abonar Recibo
Calcular
Importe Matrcula
Diagrama de Actividad
Muestra la secuencia de actividades que se desarrollan en el flujo de trabajo de un Caso de Uso, como pieza de funcionalidad concreta Muestra el flujo de trabajo que se desarrolla en un proceso configurado como un paquete de Casos de Uso
Diagrama de Actividad
Diagrama de Secuencia
Describe la interaccin de objetos que requiere la funcionalidad de los distintos escenarios de un Caso de Uso Los objetos son representados con su ciclo de vida dentro de una serie temporal
Cada posible escenario de un Caso de Uso puede representarse con un diagrama de secuencia
Diagrama de Colaboracin
Muestra lo mismo que un diagrama de secuencia cmo interaccionan los objetos dentro de un Caso de Uso
A diferencia de un diagrama de secuencia no hay referencia a una serie temporal Su propsito es mostrar la topologa del proceso distribuido entre los distintos objetos
Diagrama de Estados
Diagrama de Componentes
Muestra la vista fsica del modelo
Muestra los componentes de software que configuran el sistema y su interdependencia
Conta.exe
Sistema Contabilidad
Matrcula.exe
Agentes.dll
Cursos.dll
Cursos
Usuarios
Alumnos
Profesores
Curso
Oferta de Cursos
Diagrama de Despliegue
Muestra la distribucin fsica de los componentes en nodos locales y remotos de la red Un nodo puede representar una pieza de hardware, desde un perifrico a un servidor
Presenta los distintos componentes arquitectura en tres capas (3Tier) de una