• No se han encontrado resultados

Capítulo 2: Análisis y Diseño

2.3 Diagramas del Análisis y el Diseño

2.3.1 Definiciones de Diagramas.

Como ha sido enunciado en uno de los objetivos específicos de nuestro trabajo de diploma, esta primera versión modelará solo los Diagramas de Casos de Uso del Sistema, Diagrama de Actividades, así como Diagrama de Clase. A continuación se hará alusión a cada uno de ellos mediante un abreve descripción de dichos artefactos. Diagrama de Casos de Uso del Sistema.

Un diagrama de Casos de Uso muestra las distintas operaciones que se esperan de una aplicación o sistema y cómo se relaciona con su entorno (usuario u otras aplicaciones). Es una herramienta esencial para la captura de requerimientos y para la planificación y control de un proyecto interactivo. Es una colección de escenarios de

Capítulo 2: Análisis y Diseño

éxito y fracaso relacionados que describe a los actores que usan un sistema para conseguir un objetivo.

Diagrama de Clases

Un diagrama de clases es el modelo que se utiliza para obtener una visión del sistema sobre los requisitos funcionales, expresados en un lenguaje más técnico, representan la abstracción a un concepto donde las operaciones y atributos son poco detallados. En los que se muestran tan sólo las clases generadas a partir de los casos de uso incorporados.

Son los más utilizados en el modelado de sistemas orientados a objetos. Un diagrama de clases muestra un conjunto de clases, interfaces y colaboraciones, así como sus relaciones, se utilizan para modelar la vista de diseño estática de un sistema. Además son importantes no sólo para visualizar, especificar y documentar modelos estructurales, sino también para construir sistemas ejecutables, aplicando ingeniería directa e inversa.

Diagramas de Actividades.

El diagrama de actividades contiene estados en que puede hallarse una actividad, describe un proceso que explora el orden de las tareas o actividades que logran los objetivos del negocio. Por tanto, un diagrama o grafo de actividad puede contener estado de actividades, transiciones, vías alternativas, calles, barras de sincronización entre otros. Generalmente modelan los pasos de un algoritmo y puede dar detalle a un caso de uso, un objeto o un mensaje en un objeto.

Diagrama de Casos de Uso para la herramienta jMDA.

Capítulo 2: Análisis y Diseño

Se define como Actor al Analista del Sistema, que es el encargado de identificar a los actores y casos de uso que permiten modelar completa y consistentemente el sistema, como casos de uso se definió Modelar PIM y Generar PSM.

Descripción de los casos de uso.

Nombre del CU Crear PIM

Actor(es) Analista del sistema

Propósito Crea el modelo independiente de la plataforma(PIM)

Descripción: El caso de uso de inicia cuando el actor ejecuta doble clic sobre el JTree Diagrama UML y aparecen los nodo del árbol nombrados Diagrama de Actividades, Diagrama de Clases y Diagrama de Casos de Uso, seguidamente permite dar clic derecho sobre estos nodos y aparece una ventana que permite editar el diagrama seleccionado a crear.

Referencia Precondiciones

Nombre del CU Generar PSM Actor(es) Analista del sistema

Propósito Generar un nuevo diagrama de clase mas detallado.

Descripción: El caso de uso se inicia cuando el actor ejecuta clic derecho sobre las clases ya editadas en el diagrama de clases y selecciona la opción Transformar a JAVA, seguidamente se muestra en la misma ventana el diagrama ya con los atributos y los métodos de escritura y lectura de los atributos declarados en el diagrama creado con anterioridad.

Referencia Caso de uso Crear PIM Precondiciones

Capítulo 2: Análisis y Diseño

Diagrama de Clases.

Figura 12 Diagrama de Clases del CASE propuesto.

Como aparece en la figura 12, se definen diferentes clases, las más importantes, serán descritas según la lógica de nuestra herramienta.

Clases mas importantes: - Diagrama - DiagramaClases - DiagramaCUS.

- DiagramaActividades. Como clase principal tenemos:

Diagramas: la cual tendrá como atributo principal, el nombre del diagrama, además de definir 3 operaciones como AñadirDiagramaCUS, AñadirDiagramaClase, AñadirDiagramaActividades.

Se relacionan con esta clase principal, 3 clases mediante una relación de composición, DiagramaClases, DiagramaCUS y DiagramaActividades.

Capítulo 2: Análisis y Diseño

DiagramaClases: tiene como atributo el nombre del diagrama y define 3 operaciones como son AñadirClase, AñadirRelación y TransformarAJava.

Esta clase, está relacionada con 2 clases, no menos importantes que son Relación y Clase y esta última se relaciona con las clases Atributo y Operación, quienes tienes atributos como nombre, tipodato, tipoDatoRetorna, parámetros y modificador.

DiagramaCUS: el nombre del diagrama actúa como atributo y define 3 operaciones como son AñadirCU, AñadirActores, AñadirRealciones.

Dicha clase, esta relacionada con 3 clases, no menos importantes, CasosUso, Actores, Relaciones, quienes tienes atributos como nombre, tipo.

DiagramaActividades: cuyo único atributo es el nombre del diagrama y define 7 operaciones como son AñadirCalle, AñadirInicio, AñadirFin, AñadirActividad, AñadirTransición, AñadirBarrasSincronización, y AñadirDesición. Cada una de estas operaciones, define una clase, que esta relacionada con la clase DiagramaActividades.

Diagrama de Actividades.

Figura 13: Diagrama de Actividades de la operación AñadirAtributo.

Este diagrama refleja como funciona la operación AñadirAtributo, se ejecuta cuando se acciona con clic derecho sobre el esteriotipo de la clases y selecciona la opción del menú Adicionar Atributo, lo adiciona creando una objeto de la clases atributo y lo agrega a la forma de la clase para ser modificado.

Capítulo 2: Análisis y Diseño

Ejemplo de código al que responde:

public void addAttribute(Attribute attr) { if (!attributes.contains(attr)) {

attributes.add(attr); //repaint();

this.add(new JLabel(attr.toString())); }

Figura 14: Diagrama de Actividades de la operación Tranformar_a_JAVA Este diagrama refleja como funciona el método TranformarAJava para un atributo, primeramente carga el objeto de tipo atributo, entonces compara los datos que le fueron asignados y a la vez los transforma a tipos de datos propios del lenguaje de programación, agrega las operaciones get y set de cada atributo, crea un nuevo objeto de tipo atributo que será al que le asignara los nuevos datos modificados y agregados y finalmente los muestra en diagrama de clases más detallado.

Capítulo 2: Análisis y Diseño

A continuación ejemplo del código correspondiente:

private void transformarAtributos(LinkedList<Attribute> attributes){ for (int i = 0; i < attributes.size(); i++) {

Attribute attr = attributes.get(i); if (attr.type.equals("Cadena")) { attr.type = "String"; } else if (attr.type.equals("Entero")) { attr.type = "int"; } else if (attr.type.equals("Booleano")) { attr.type = "boolean"; } else if (attr.type.equals("Flotante")) { attr.type = "float"; } else if (attr.type.equals("Doble")) { attr.type = "double"; } else if (attr.type.equals("Objeto")) { attr.type = "Object"; } else if (attr.type.equals("Caracter")) { attr.type = "char"; }

String aux = (attr.getName().trim().charAt(0) + "").toUpperCase() + attr.getName().substring(1);

Method m = new Method("get" + aux, publicModifier, attr.getType()); LinkedList<Attribute> a = new LinkedList<Attribute>();

a.add(attr);

Method m2 = new Method("set" + aux, publicModifier, "void", a); if (!(methods.contains(m) || methods.contains(m2))) {

methods.add(m); methods.add(m2); }

Capítulo 2: Análisis y Diseño

Documento similar