martes, 23 de febrero de 2016

Diagrama de Despliegue

Diagrama de despliegue
Definición.-

     Los Diagramas de Despliegue muestran las relaciones físicas de los distintos nodos que componen un sistema y el reparto de los componentes sobre dichos nodos. La vista de despliegue representa la disposición de las instancias de componentes de ejecución en instancias de nodos conectados por enlaces de comunicación. Un nodo es un recurso de ejecución tal como un computador, un dispositivo o memoria. Los estereotipos permiten precisar la naturaleza del equipo:
·                   Dispositivos
·                   Procesadores
·                   Memoria
     Los nodos se interconectan mediante soportes bidireccionales que pueden a su vez estereotiparse. Esta vista permite determinar las consecuencias de la distribución y la asignación de recursos. Las instancias de los nodos pueden contener instancias de ejecución, como instancias de componentes y objetos. El modelo puede mostrar dependencias entre las instancias y sus interfaces, y también modelar la migración de entidades entre nodos u otros contenedores.

     Esta vista tiene una forma de descriptor y otra de instancia. La forma de instancia muestra la localización de las instancias de los componentes específicos en instancias específicas del nodo como parte de una configuración del sistema. La forma de descriptor muestra qué tipo de componentes pueden subsistir en qué tipos de nodos y qué tipo de nodos se pueden conectar, de forma similar a una diagrama de clases, esta forma es menos común que la primera.
Un diagrama de despliegue es un grafo de nodos unidos por conexiones de comunicación. Un nodo puede contener instancias de componentes software, objetos, procesos (caso particular de un objeto). En general un nodo será una unidad de computación de algún tipo, desde un sensor a un mainframe. Las instancias de componentes software pueden estar unidas por relaciones de dependencia, posiblemente a interfaces (ya que un componente puede tener más de una interfaz).

Dependencias.-


     Un nodo es un objeto físico en tiempo de ejecución que representa un recurso computacional, generalmente con memoria y capacidad de procesamiento. Pueden representarse instancias o tipos de nodos que se representa como un cubo 3D en los diagramas de implementación.


Las instancias de componentes de software muestran unidades de software en tiempo de ejecución y generalmente ayudan a identificar sus dependencias y su localización en nodos. Pueden mostrar también qué interfaces implementan y qué objetos contienen. Su representación es un rectángulo atravesado por una elipse y dos rectángulos más peque nos. 


     Aquí tenemos dos nodos, el cliente y el servidor, cada uno de ellos contiene componentes. El componente del cliente utiliza una interfase de uno de los componentes del servidor. Se muestra la relación existente entre los dos Nodos. Estar Times New Romanelación podríamos asociarle un estereotipo para indicar que tipo de conexión disponemos entre el cliente y el servidor, así como modificar su cardinalidad, para indicar que soportamos diversos clientes.

Como los componentes pueden residir en mas de un nodo podemos situar el componente de forma independiente, sin que pertenezca a ningún nodo, y relacionarlo con los nodos en los que se sitúa.

Instancia de Nodo

Una instancia de nodo se puede mostrar en un diagrama. Una instancia se puede distinguir desde un nodo por el hecho de que su nombre esta subrayado y tiene dos puntos antes del tipo de nodo base. Una instancia puede o no tener un nombre antes de los dos puntos. El siguiente diagrama muestra una instancia nombrada de una computadora. 

Estereotipo de Nodo

Un número de estereotipos estándar se proveen para los nodos, nombrados «cdrom», «cdrom», «computer», «disk array», «pc», «pc client», «pc server», «secure», «server», «storage», «unix server», «user pc». Estos mostrarán un icono apropiado en la esquina derecha arriba del símbolo nodo.



Artefacto

     Un artefacto es un producto del proceso de desarrollo de software, que puede incluir los modelos del proceso (e.g. modelos de Casos de Uso, modelos de Diseño, etc.), archivos fuente, ejecutables, documentos de diseño, reportes de prueba, prototipos, manuales de usuario y más.

     Un artefacto se denota por un rectángulo mostrando el nombre del artefacto, el estereotipo «artifact» y un icono de documento, como a continuación.


Asociación

     En el contexto del diagrama de despliegue, una asociación representa una ruta de comunicación entre los nodos. El siguiente diagrama muestra un diagrama de despliegue para una red, mostrando los protocolos de red como estereotipos y también mostrando multiplicidades en los extremos de la asociación.


Nodo como contenedor
     Un nodo puede contener otros elementos, como componentes o artefactos. El siguiente diagrama muestra un diagrama de despliegue para una parte del sistema embebido y muestra un artefacto ejecutable como contenido por el nodo madre (motherboard).




Ventajas

-          Muestra un conjunto de nodos y sus relaciones.
-          Se utilizan para describir la vista de despliegue estática de un sistema.
-    Se relacionan con los diagramas de componentes, ya que un nodo normalmente incluye uno o más componentes.

Desventajas

-          La posible falla en la modelación de un hardware.
-          Tales sistemas contienen a menudo varias versiones de componentes software, alguno de los cuales pueden incluso migrar de un nodo a otro.El diseño de tales sistemas requiere tomar decisiones que permitan un cambio continuo de la topología del sistema.

Estándares

Executable: especifica un artefacto que se puede ejecutar en un nodo.
Library: Biblioteca de objetos estática o dinámica.
File: artefacto que representa un documento que contiene condigo fuente o datos.
Document: artefacto que representa un documentos.

Antecedentes
-     -Diagrama de Componentes: permiten modelar sistemas de software de cualquier tamaño y complejidad.  Permite especificar un componente como unidad modular con interfaces bien definidas.
-          Diagrama de Paquetes: más que un diagrama constituyen una herramienta para mostrar los elementos que se integran en un sistema, aplicación o módulos. Muestra como el sistema esta dividido en agrupaciones lógicas mostrando las dependencias entre agrupaciones.

Ejemplo de la aplicación

            Empresa Zoé Esports Departamento de ventas



RESUMEN
Diagrama de despliegue

Definición.-

     Los Diagramas de Despliegue muestran las relaciones físicas de los distintos nodos que componen un sistema y el reparto de los componentes sobre dichos nodos.

Dependencias.-

     Un nodo es un objeto físico en tiempo de ejecución que representa un recurso computacional, generalmente con memoria y capacidad de procesamiento.

Las instancias de componentes de software muestran unidades de software en tiempo de ejecución y generalmente ayudan a identificar sus dependencias y su localización en nodos.

Nodo

Un nodo es un objeto físico en tiempo de ejecución que representa un recurso computacional, generalmente con memoria y capacidad de procesamiento.Un Nodo es un elemento de hardware o software.

Instancia de nodo

Una instancia se puede distinguir desde un nodo por el hecho de que su nombre esta subrayado y tiene dos puntos antes del tipo de nodo base. Una instancia puede o no tener un nombre antes de los dos puntos.

Estereotipo de nodo

Estereotipo, son cosas u objetos q se repiten sin variación.El estereotipo de un nodo es la manera de poder verificar que tipo de nodo es el que se esta observando.

Artefactos

Un artefacto es un producto del proceso de desarrollo de software, que puede incluir los modelos del proceso (modelos de Caso de uso, modelos de Diseño, etc.), archivos fuente, ejecutables, documentos de diseño, reportes de prueba, prototipos, manuales de usuario etc. Donde un artefacto es un conjunto de componentes.


Asociación
Una asociación representa una ruta de comunicación entre los nodos. Donde esta asociación va incluida con misma dependencia del diagrama de componentes.

Estándares
Executable: especifica un artefacto que se puede ejecutar en un nodo.
Library: Biblioteca de objetos estática o dinámica.
File: artefacto que representa un documento que contiene condigo fuente o datos.
Document: artefacto que representa un documentos.

Ventajas
Muestra un conjunto de nodos y sus relaciones.
Se utilizan para describir la vista de despliegue estática de un sistema.
Se relacionan con los diagramas de componentes, ya que un nodo normalmente incluye uno o más componentes.

Desventajas
La posible falla en la modelación de un hardware.
Tales sistemas contienen a menudo varias versiones de componentes software, alguno de los cuales pueden incluso migrar de un nodo a otro.El diseño de tales sistemas requiere tomar decisiones que permitan un cambio continuo de la topología del sistema.


SUMARY

Deployment diagram
Definition.-
     Deployment diagrams show the physical relationship of the various nodes that make up a system and the distribution of the components on these nodes.

Dependencias.-
     A node is a physical object at runtime that represents a computational resource, generally with memory and processing power.
Instances of software components shown units runtime software and generally help to identify dependencies and location nodes.

Node
A node is a physical object at runtime that represents a computational resource, generally with memory and procesamiento.Un Node is a piece of hardware or software.

Instance node
An instance can be distinguished from one node by the fact that his name is underlined with two points before the base node type. An instance may or may not have a name before the colon.

Stereotype node
Stereotype, they are things or objects are repeated q variación.El stereotype of a node is the way to verify that the node type is being observed.

artifacts
An artifact is a product of the software development process, which may include process models (Use Case models, design models, etc.), source files, executables, design documents, test reports, prototypes, manuals user etc. Where an artifact is a set of components.

Association
An association represents a communication path between nodes. Where the association is included with same dependency diagram components.

standards
Executable Specifies an artifact that can be run on a node.
Library: Library static or dynamic objects.
File: artifact that represents a document containing condigo or data source.
Document: artifact representing documents.

Advantages
It shows a set of nodes and relationships.
They are used to describe the static view of deployment of a system.
They relate to component diagrams as a node typically includes one or more components.

disadvantages
The possible failure of a hardware modeling.
Such systems often contain multiple versions of software components, some of which may even migrate from one node to otro.El design of such systems requires decisions that allow a continuous change of the system topology.


RECOMENDACIONES

Identifique los nodos donde correra nuestro sistema.
Identifique las asociaciones fisicas entre los nodos.
Distribuya los componentes en los nodos.
Represente las dependencias entre los componentes.
Valide el modelo.

CONCLUSIÓN


Los diagramas de despliegue se usan para razonar sobre la topología de procesadores y dispositivos sobre los que se ejecuta el software.

APRECIACIÓN DEL EQUIPO

Bueno para concluir podemos afirmar que por medio de estos diagramas podemos llevar la trazabilidad del hardware y software por medio de los componentes que nos permite el mismo diagrama, tambien nos permite modelar el sistema a nivel de hardware de tal forma que un ingeniero de sistema pueda especificar la plataforma sobre la cual va ejecutar el software , creando asi una relacion software y hardware y entendiendo la topologia que va utilizar para determinado sistema.

GLOSARIO DE TERMINOS

Inclusión: Introducción de una cosa en el interior de otra o dentro de sus límites.

Extracción:
   Cosa, sustancia o materia extraída.
Transiciones:
 Paso de un estado o modo de ser a otro distinto: escritura de transición.

LINKOGRAFIA

http://www.ecured.cu/Diagrama_de_despliegue
https://prezi.com/rlkisxp6jy09/diagrama-de-despliegue/
http://umldaniel.blogspot.pe/2009/05/diagrama-de-despliegue.html

Vídeo de Referencia


Link de la diapositiva


martes, 16 de febrero de 2016

Diagrama de Estados

DIAGRAMAS DE ESTADO


1.      DEFINICIÓN

Los diagramas de estado son una técnica conocida para describir el comportamiento de un sistema. Describen todos los estados posibles en los que puede entrar un objeto particular y la manera en que cambia el estado del objeto, como resultado de los eventos que llegan a el. En la mayor parte de las técnicas Orientadas a Objetos, los diagramas de estado se dibujan para una sola clase, mostrando el comportamiento de un solo objeto durante todo su ciclo de vida.

Existen muchas formas de diagramas de estado, cada una con semántica ligeramente diferente. La mas popular que se emplea en las técnicas de OO se basa en la tabla de estados de David Harel (Vol. 8). OMT fue quien la uso por primera vez para los métodos de OO y fue adoptada por Grady Booch en su segunda edición (1994).


El estado en el que se encuentra un objeto determina su comportamiento. Cada objeto sigue el comportamiento descrito en el Diagrama de Estados asociado a su clase. Los Diagramas de Estados y escenarios son complementarios, los Diagramas de Estados son autómatas jerárquicos que permiten expresar concurrencia, sincronización y jerarquías de objetos, son grafos dirigidos y deterministas. La transición entre estados es instantánea y se debe a la ocurrencia de un evento.


2.      DEPENDENCIAS

Un objeto permanece en un estado por un tiempo finito, hasta que se cumpla la condición de cambio. Se construyen a partir del Diagrama de Estructura Estática (Diagramas de clases), identificando cuáles objetos cambian de estado, cual es le estado inicial y el final, definiendo a qué eventos puede responder el objeto, y qué transacciones ejecutará
Este diagrama muestra la secuencia de los estados de un objeto durante su ciclo de vida, en respuesta a un estímulo recibido. Los estados de los objetos están dados por el valor de sus atributos (estados) lo cual cambia sus comportamientos (métodos).
Los estados hacen referencia a una condición durante la vida de un objeto o a una interacción durante la cual se satisface alguna condición (ejecutar alguna acción, esperar algún evento, etc.), por ejemplo una validación de una captura.

3.      NOTACIÓN

Dentro de la notación se utilizan los siguientes símbolos:



De los cuales los mas utilizados son:

3.1  Estado    

Identifica un periodo de tiempo del objeto (no instantáneo) en el cual el objeto está esperando alguna operación, tiene cierto estado característico o puede recibir cierto tipo de estímulos. Se representa mediante un rectángulo con los bordes redondeados, que puede tener tres compartimientos: uno para el nombre, otro para el valor característico de los atributos del objeto en ese estado y otro para las acciones que se realizan al entrar, salir o estar en un estado (entry, exit o do, respectivamente).
Tipos de Estado
 Inicio: Es el estado inicial en el que se inicia el objeto en su ciclo de vida, ningún evento puede retornar un objeto a este estado. Gráficamente está representado con un circulo negro.
Fin: Es el estado final en el que queda un objeto al final de su ciclo de vida, ningún evento puede sacar a un objeto de este estado. Gráficamente está representado con un círculo negro rodeado de otro círculo.
 Estado: Son los diferentes estados por lo que puede pasar un objeto a lo largo de su ciclo de vida, de ellos se puede salir, quedarse en el y retornar. Gráficamente está representado por un rectángulo.

3.2  Eventos

Es una ocurrencia que puede causar la transición de un estado a otro de un objeto. Esta ocurrencia puede ser una de varias cosas:
·         Condición que toma el valor de verdadero o falso
·         Recepción de una señal de otro objeto en el modelo
·         Recepción de un mensaje
·         Paso de cierto período de tiempo, después de entrar al estado o de cierta hora y fecha particular
El nombre de un evento tiene alcance dentro del paquete en el cual está definido, no es local a la clase que lo nombre.

3.3  Envío de mensajes

Además de mostrar la transición de estados por medio de eventos, puede representarse el momento en el cual se envían mensajes a otros objetos. Esto se realiza mediante una línea punteada dirigida al diagrama de estados del objeto receptor del mensaje.



3.4  Transición simple

Una transición simple es una relación entre dos estados que indica que un objeto en el primer estado puede entrar al segundo estado y ejecutar ciertas operaciones, cuando un evento ocurre y si ciertas condiciones son satisfechas.

3.5  Transición interna

Es una transición que permanece en el mismo estado, en vez de involucrar dos estados distintos. Representa un evento que no causa cambio de estado. Se denota como una cadena adicional en el compartimiento de acciones del estado.

3.6  Acciones:

Podemos especificar la solicitud de un servicio a otro objeto como consecuencia de la transición. Se puede especificar el ejecutar una acción como consecuencia de entrar, salir, estar en un estado, o por la ocurrencia de un evento.



3.7  Generalización de Estados:

·         Podemos reducir la complejidad de estos diagramas usando la generalización de estados.
·         Distinguimos así entre superestado y subestados.
·         Un estado puede contener varios subestados disjuntos.
·         Los subestados heredan las variables de estado y las transiciones externas.
·         La agregación de estados es la composición de un estado a partir de varios estados independientes. 



3.8  Subestados

Un estado puede descomponerse en subestados, con transiciones entre ellos y conexiones al nivel superior. Las conexiones se ven al nivel inferior como estados de inicio o fin, los cuales se suponen conectados a las entradas y salidas del nivel inmediatamente superior.

3.9  Transacción Compleja

Una transición compleja relaciona tres o más estados en una transición de múltiples fuentes y/o múltiples destinos. Representa la subdivisión en threads del control del objeto o una sincronización. Se representa como una línea vertical de la cual salen o entran varias líneas de transición de estado.


3.10  Transición a estados anidados

Una transición de hacia un estado complejo (descrito mediante estados anidados) significa la entrada al estado inicial del subdiagrama. Las transiciones que salen del estado complejo se entienden como transiciones desde cada uno de los subestados hacia afuera (a cualquier nivel de profundidad).




3.11  Transiciones temporizadas

·         Las esperas son actividades que tienen asociada cierta duración.
·         La actividad de espera se interrumpe cuando el evento esperado tiene lugar.

Este evento desencadena una transición que permite salir del estado que alberga la actividad de espera. El flujo de control se transmite entonces a otro estado.



4.1 Diagramas de estados concurrentes


Un modelo dinámico describe un conjunto de objetos concurrentes, cada cual con su propio estado y con su propio diagrama de estados. Los objetos de todo sistema pueden cambiar de estado independientemente. El estado de todo el sistema no se puede representar mediante un solo estado de un único objeto; es el producto de los estados de todos los objetos que lo componen. En muchos sistemas, además, el número de objetos puede cambiar dinámicamente.
Ventajas

-          El Diagrama de Estados tiene éxito en sistemas interactivos, ya que expresa la intención que tiene el actor (su usuario) al hacer uso del sistema.

-          Como técnica de extracción de requerimiento permite que el analista se centre en las necesidades del usuario, qué espera éste lograr al utilizar el sistema, evitando que la gente especializada en informática dirija la funcionalidad del nuevo sistema basándose solamente en criterios tecnológicos.

-          A su vez, durante la extracción (elicitation en inglés), el analista se concentra en las tareas centrales del usuario describiendo por lo tanto los casos de uso que mayor valor aportan al negocio. Esto facilita luego la priorización del requerimiento.

Desventajas

-          La inclusión de estas relaciones hace que los diagramas sean más difíciles de leer, sobre todo para los clientes.


EJEMPLO DE DIAGRAMA DE ESTADOS



RESUMEN

DIAGRAMAS DE ESTADO

DEFINICIÓN
 Los diagramas de estado son una técnica conocida para describir el comportamiento de un sistema.

DEPENDENCIAS
 Un objeto permanece en un estado por un tiempo finito, hasta que se cumpla la condición de cambio.

ELEMENTOS
Identifica un periodo de tiempo del objeto (no instantáneo) en el cual el objeto está esperando alguna operación, tiene cierto estado característico o puede recibir cierto tipo de estímulos.

Ø  Eventos
Es una ocurrencia que puede causar la transición de un estado a otro de un objeto. Esta ocurrencia puede ser una de varias cosas.

Ø  Envío de mensajes
Además de mostrar la transición de estados por medio de eventos, puede representarse el momento en el cual se envían mensajes a otros objetos.

Ø  Transición simple
Una transición simple es una relación entre dos estados que indica que un objeto en el primer estado puede entrar al segundo estado y ejecutar ciertas operaciones, cuando un evento ocurre y si ciertas condiciones son satisfechas.

Ø  Transición interna
Es una transición que permanece en el mismo estado, en vez de involucrar dos estados distintos.

Ø  Acciones:
Podemos especificar la solicitud de un servicio a otro objeto como consecuencia de la transición.

Ø  Generalización de Estados
La agregación de estados es la composición de un estado a partir de varios estados independientes.

Ø  Subestados
Un estado puede descomponerse en subestados, con transiciones entre ellos y conexiones al nivel superior.

Ø  Transacción Compleja
Una transición compleja relaciona tres o más estados en una transición de múltiples fuentes y/o múltiples destinos.

Ø  Transición a estados anidados
Una transición de hacia un estado complejo (descrito mediante estados anidados) significa la entrada al estado inicial del subdiagrama.


Ø  Transiciones temporizadas
Este evento desencadena una transición que permite salir del estado que alberga la actividad de espera.

Ø  Diagramas de estados concurrentes
Un modelo dinámico describe un conjunto de objetos concurrentes, cada cual con su propio estado y con su propio diagrama de estados.

SUMARY

State diagrams

DEFINITION
 State diagrams are a technique known to describe the behavior of a system.

UNITS
 An object remains in a state for a finite time until the change condition is met.

ELEMENTS
It identifies a period of time the object (not instant) in which the object is waiting for an operation, has a certain characteristic state or you may receive certain types of stimuli.

Events
It is an occurrence that can cause the transition from one state to another of an object. This occurrence may be one of several things.

 Messaging
In addition to showing the state transition through events, it may represent the point at which messages are sent to other objects.

simple transition
A simple transition is a relationship between two states indicating that an object in the first state to the second state can enter and perform certain operations when an event occurs and if certain conditions are met.

internal transition
It is a transition that remains in the same state, instead of involving two different states.

Actions:
You can specify a service request to another object as a result of the transition.

Generalization United
Aggregation of states is the composition of a state from several independent states.


 substates
A state can be decomposed into sub-states, with transitions between them and the top level connections.

 Complex transaction
A complex transition connects three or more states in a transition from multiple sources and / or multiple destinations.

 Nested transition states
A transition to a complex state (described by nested states) means the input to the initial state of the subdiagram.


timed transitions
This event triggers a transition that exits the state that is home activity expected.

 Diagrams concurrent states
A dynamic model describes a set of concurrent objects, each with its own status and its own state diagram.

RECOMENDACIONES

Las interfaces gráficas de usuario no son la única manera de trabajar en un sistema informático. Para usuarios avanzados podría no ser un problema trabajar en un ambiente bajo una consola utilizando comandos o instrucciones que desencadenen procesos o acciones determinadas.

CONCLUSIÓN

Es necesario contar en el diseño del software con diagramas de estado dado que permiten a los analistas, diseñadores  y desarrolladores comprender el  comportamiento de los objetos de un sistema.

APRECIACIÓN DEL EQUIPO

Los diagramas de estado en el caso de los automatas finitos, además de mejorar su legibilidad, comprensión, e incluso visualizar una especie de primera aproximación material a su implementación física o computacional; también ayudan a visibilizar las propiedades del AF más intuitivamente que en la notaciones de la 5-tupla o la de la tabla de transiciones.

GLOSARIO DE TÉRMINOS

Es un procedimiento algoritmico o computacional.
Acoplamiento
Es la cantidad de relaciones que se establecen entre los módulos de un programa.
Activación
Es la ejecución de una acción.

Actor
Es un tipo con un estereotipo predefinido, que denota una entidad externa al sistema que interactúa con casos de uso

Es el grado en que se ha conseguido la total implementación de las funciones requeridas.


Es un módulo de software ejecutable que tiene identidad y una interface bien definida. 

BIBLIOGRAFÍA

http://markblogs-markmendoza.blogspot.pe/2010/12/diagramas-de-estado.html
http://www.ecured.cu/Diagrama_de_estado
http://jms32.eresmas.net/tacticos/UML/UML08/UML0801.html


Video de Referencia


Link de la Diapositiva