lunes, 1 de diciembre de 2014

Tema 2. Lenguaje Unificado de Modelado UML: Diagramas de Estructura: Clases y Estructuras compuestas,



ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ


CARRERA INFORMÁTICA

SEMESTRE SEPTIMO                 PERIODO OCT./2014-MAR./2015

INGENIERIA DE SOFTWARE
TEMA 2:
LENGUAJE UNIFICADO DE MODELADO UML

AUTORA:
JENNIFER V. LÓPEZ ÁLAVA

FACILITADOR:
ING. HIRAIDA SANTANA

CALCETA, 01 DICIEMBRE 2014



INTRODUCCIÓN

En este capítulo se conocerá acerca de los diagramas de estructura los cuales son los diagramas de clase, que es una clases, un atributo y las operaciones que se realizan en este diagrama, sus asociaciones y la generalización de las clases, además, los diagramas de estructura compuestas, que es una parte y puertos, las interfaces, y demás componentes de dicho diagrama.

DIAGRAMAS DE ESTRUCTURA

CLASES

Los diagramas de clases muestran las diferentes clases que componen un sistema y cómo se relacionan unas con otras. Se dice que los diagramas de clases son diagramas «estáticos» porque muestran las clases, junto con sus métodos y atributos, así como las relaciones estáticas entre ellas: qué clases «conocen» a qué otras clases o qué clases «son parte» de otras clases, pero no muestran los métodos mediante los que se invocan entre ellas.

Clase
Una clase define los atributos y los métodos de una serie de objetos. Todos los objetos de esta clase (instancias de esa clase) tienen el mismo comportamiento y el mismo conjunto de atributos (cada objetos tiene el suyo propio). En ocasiones se utiliza el término «tipo» en lugar de clase, pero recuerde que no son lo mismo, y que el término tipo tiene un significado más general.

Atributos
En UML, los atributos se muestran al menos con su nombre, y también pueden mostrar su tipo, valor inicial y otras propiedades. Los atributos también pueden ser mostrados visualmente:

   + Indica atributos públicos
   # Indica atributos protegidos
   - Indica atributos privados

Operaciones
Las operaciones (métodos) también se muestan al menos con su nombre, y pueden mostrar sus parámetros y valores de retorno. Las operaciones, al igual que los atributos, se pueden mostrar visualmente:

     + Indica operaciones públicas
     # Indica operaciones protegidas
     - Indica operaciones privadas

Plantillas
Las clases pueden tener plantillas, un valor usado para una clase no especificada o un tipo. El tipo de plantilla se especifica cuando se inicia una clase (es decir cuando se crea un objeto). Las plantillas existen en C++ y se introducirán en Java 1.5 con el nombre de Genéricos.

Asociaciones De Clases
Las clases se puede relaciones (estar asocionadas) con otras de diferentes maneras

Generalización
La herencia es uno de los conceptos fundamentales de la programación orientada a objetos, en la que una clase «recoge» todos los atributos y operaciones de la clase de la que es heredera, y puede alterar/modificar algunos de ellos, así como añadir más atributos y operaciones propias.

En UML, una asociación de generalización entre dos clases, coloca a estas en una jerarquía que representa el concepto de herencia de una clase derivada de la clase base. En UML, las generalizaciones se representan por medio de una línea que conecta las dos clases, con una flecha en el lado de la clase base

ESTRUCTURAS COMPUESTAS

Un diagrama de estructura compuesta es un diagrama que muestra la estructura interna de un clasificador, incluyendo sus puntos de interacción a otras partes del sistema. Esto muestra la configuración y relación de las partes que juntas realizan el comportamiento de clasificador contenido.
Los elementos de clase han sido descriptos en gran detalle en la sección en los diagramas de clase. Esta sección describe la forma en que las clases se pueden mostrar como elementos compuestos exponiendo interfaces y conteniendo puertos y partes.

Parte
Una parte es un elemento que representa un conjunto de una o más instancias que pertenecen a una instancia del clasificador contenida. Por ejemplo, si una instancia de diagrama se apropia de un conjunto de elementos gráficos, luego los elementos gráficos se pueden representar como partes, si fuera útil hacer eso para modelar algún tipo de relación entre ellos. Tener en cuenta que una parte se puede quitar de sus padres antes de que el padre se elimine, para que la parte no se elimine al mismo tiempo.
Una parte se muestra como un rectángulo no adornado dentro del cuerpo de una clase o del elemento componente.

Puerto
Un Puerto es un elemento escrito que representa una parte visible externa de una instancia del clasificador contenido. Los puertos definen la interacción entre un clasificador y su entorno. Un Puerto puede aparecer en el límite de la parte contenida, una clase o una estructura compuesta. Un Puerto puede especificar los servicios que un clasificador provee así como también los servicios que este requiere de su entorno.
Un Puerto se muestra como un rectángulo nombrado en el borde del límite de su clasificador apropiado.

Interfaces
Una interfaz es similar a una clase pero con un número de restricciones. Todas las operaciones de la interfaz son públicas y abstractas, y no proveen ninguna implementación predeterminada. Todos los atributos de la interfaz deben ser constantes. Sin embargo, mientras que una clase puede solo heredar de una sola super-clase, puede implementar interfaces múltiples.
Una interfaz, cuando esta sola en un diagrama, se muestra como un rectángulo del elemento clase con la clave «interfaz» y con su nombre en itálica para denotar que es abstracto, o se muestra como un circulo.

Cuando las interfaces se muestran como si fueran apropiadas por las clases, se refieren a ellas como interfaces expuestas. Una interfaz expuesta se puede definir como provista o requerida. Una interfaz provista es una afirmación que el clasificador contenido provee a las operaciones definidas por el elemento de la interfaz nombrada y se define dibujando un vínculo de realización entre la clase y la interfaz. Una interfaz requerida es un estado que el clasificador puede comunicar con algún otro clasificador que provee operaciones definidas por el elemento de la interfaz nombrada y se define dibujando un vínculo de dependencia entre la clase y la interfaz

Una interfaz provista se muestra como una “pelota en un palo” adjuntada al borde de un elemento clasificador. Una interfaz requerida se muestra como una “copa en un palo” adjuntada al borde de un elemento clasificador.

Delegar
Un conector delegar se usa para definir los trabajos internos de los puertos e interfaces externas del componente. Un conector delegar se muestra como una flecha con un estereotipo «delegar». Esto conecta un contrato externo de un componente como se muestra por sus puertos a la realización interna del comportamiento de la parte del componente.

Colaboración
Una colaboración define un conjunto de roles co-operativos usados colectivamente para ilustrar una funcionalidad especifica. Una colaboración debería solo mostrar los roles y los atributos requeridos para lograr sus tareas o funciones definidas. Aislar los roles primarios es un ejercicio de simplificar la estructura y clasificar el comportamiento, y también provee para poder re- usarlo. Un elemento colaboración a menudo implementa un patrón.
Un elemento colaboración se muestra como un elipse.

Enlace de Roles
Un conector enlace de roles se dibuja desde una colaboración a un clasificador que completa el rol. Esto se muestra como una línea de trazos con una punta de flecha y el estereotipo «enlace de roles».

Representa
Un conector representa se puede dibujar desde una colaboración a un clasificador para mostrar que una colaboración se usa en el clasificador. Se muestra como una línea de trazos con una punta de flecha y el estereotipo «representa».

Ocurrencia
Un conector ocurrencia se puede dibujar desde una colaboración a un clasificador para mostrar que la colaboración representa (sic) el clasificador. Esto se muestra como una línea de trazos y el estereotipo «ocurrencia».

CIERRE

Los diagramas de clases muestran las diferentes clases que componen un sistema y cómo se relacionan unas con otras, una clase define los atributos y los métodos de una serie de objetos, dichas clases se pueden relacionar con otras de diferentes maneras. Un diagrama de estructura compuesta es un diagrama que muestra la estructura interna de un clasificador, incluyendo sus puntos de interacción a otras partes del sistema, una parte es un elemento que representa un conjunto de una o más instancias que pertenecen a una instancia del clasificador contenida, un puerto es un elemento escrito que representa una parte visible externa de una instancia del clasificador contenido, Una interfaz es similar a una clase pero con un número de restricciones.

BIBLIOGRÁFIA

Kendall, K. Kendall, J. Análisis y Diseño de Sistemas. 8va ed. Pearson Education. Prentice Hall, INC., Copyright © 2011.

Martínez, H. Lenguaje Unificado de Modelado UML. Consultado, 05 feb. 15. Formato HTML. Disponible en: http://umlhugomartinez.blogspot.com/p/diagramas-de-estructura.html

Pressman, R. 2010. Ingeniería del Software Un Enfoque Práctico. 7ma ed. University of Connecticut. McGraw-Hill Interamericana Editores, S.A.

SparxSystems. Diagrama de estructura compuesta UML2. Consultado, 05 feb. 15. Formato HTML. Disponible en: http://www.sparxsystems.com.ar/resources/tutorial/uml2_compositediagram.html


lunes, 24 de noviembre de 2014

Tema 2. Lenguaje Unificado de Modelado UML: Diagramas de Comportamiento: Estado, Secuencia, Comunicación, y Tiempo.




ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ


CARRERA INFORMÁTICA

SEMESTRE SEPTIMO                 PERIODO OCT./2014-MAR./2015

INGENIERIA DE SOFTWARE
TEMA 2:
LENGUAJE UNIFICADO DE MODELADO UML

AUTORA:
JENNIFER V. LÓPEZ ÁLAVA

FACILITADOR:
ING. HIRAIDA SANTANA

CALCETA, 24 NOVIEMBRE 2014



INTRODUCCIÓN
En este capítulo se conocerá acerca de los diagramas de estado, los diagramas de secuencia, los diagramas de comunicación y los diagramas de tiempo, el funcionamiento de cada uno y como se utiliza.
DIAGRAMAS DE COMPORTAMIENTO
DIAGRAMA DE ESTADO
Los diagramas de máquinas de estado son útiles para describir el comportamiento de clases y sistemas que han sido concebidos haciendo uso de un modelo de estados. En un modelo de estados se identifican las situaciones en la que el comportamiento o capacidad de respuesta con cualitativamente diferentes, así como los eventos o condiciones bajos las que se pasa de una situación a otra (transiciones de estados).
Los diagramas de estados son intensivamente utilizados en:
     Sistemas de tiempo real y críticos.
     La descripción de sistemas reactivos.
     La descripción de sistemas basados en protocolos
 DIAGRAMA DE SECUENCIA
Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada caso de uso.
Mientras que el diagrama de casos de uso permite el modelado de una vista business del escenario, el diagrama de secuencia contiene detalles de implementación del escenario, incluyendo los objetos y clases que se usan para implementar el escenario, y mensajes intercambiados entre los objetos.

DIAGRAMA DE COMUNICACIÓN

En el Lenguaje Unificado de Modelado (UML) 2.0, un diagrama de comunicación es una versión simplificada del diagrama de colaboración de la versión de UML 1.x. Un diagrama de comunicación modela las interacciones entre objetos o partes en términos de mensajes en secuencia. Los diagramas de comunicación representan una combinación de información tomada desde el diagrama de clases, secuencia, y diagrama de casos de uso describiendo tanto la estructura estática como el comportamiento dinámico de un sistema.
Los diagramas de comunicación y de secuencia describen información similar, y con ciertas transformaciones, pueden ser transformados unos en otros sin dificultad.
Para mantener el orden de los mensajes en un diagrama de comunicación, los mensajes son etiquetados con un número cronológico y colocados cerca del enlace por el cual se desplaza el mensaje. Leer un diagrama de comunicación conlleva comenzar en el mensaje 1.0, y seguir los mensajes desde un objeto hasta el siguiente, sucesivamente.

DIAGRAMA TIEMPO

Un diagrama de tiempos o cronograma es una gráfica de formas de onda digitales que muestra la relación temporal entre varias señales, y cómo varía cada señal en relación a las demás.
Un cronograma puede contener cualquier número de señales relacionadas entre sí. Examinando un diagrama de tiempos, se puede determinar los estados, nivel alto o nivel bajo, de cada una de las señales en cualquier instante de tiempo especificado, y el instante exacto en que cualquiera de las señales cambia de estado con respecto a las restantes.

CIERRE

Los diagramas de estado son útiles para describir el comportamiento de clases y sistemas que han sido concebidos haciendo uso de un modelo de estados, son utilizados por sistemas de tiempo real y crítico, la descripción de sistemas reactivos y la descripción de sistemas basados en protocolos. Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada caso de uso. Un diagrama de comunicación modela las interacciones entre objetos o partes en términos de mensajes en secuencia, representan una combinación de información tomada desde el diagrama de clases, secuencia, y diagrama de casos de uso describiendo tanto la estructura estática como el comportamiento dinámico de un sistema. Y, Un diagrama de tiempos o cronograma es una gráfica de formas de onda digitales que muestra la relación temporal entre varias señales, y cómo varía cada señal en relación a las demás.

BIBLIOGRÁFIA

Cáceres, J. 2012. Casos de uso. Universidad De Alcalá: Disponible en: http://www2.uah.es/jcaceres/capsulas/DiagramaCasosDeUso.pdf.

Kendall, K. Kendall, J. Análisis y Diseño de Sistemas. 8va ed. Pearson Education. Prentice Hall, INC., Copyright © 2011.

Pressman, R. 2010. Ingeniería del Software Un Enfoque Práctico. 7ma ed. University of Connecticut. McGraw-Hill Interamericana Editores, S.A.