Programación Avanzada

Slides:



Advertisements
Presentaciones similares
DIAGRAMAS DE CLASES Completando los diagramas de interacción, es posible identificar la especificación de las clases que participarán en la solución indicando.
Advertisements

Fundamentos de programación
Unified Modeling Language (UML) Unified Modeling Language (UML) Lenguaje Unificado de Modelado ConceptosBásicos.
Diagrama de Clases SPI 2016.
Diseño (Diagrama de Clases) Francisco Valdés Souto 2 al 6 de marzo 2009 © Avantare Consultores S. A. de C. V. – Derechos.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Sonia.
Construcción del diagrama de componentes y Generación automática de código fuente por Racional. Laboratorio # 2. Ingeniería Software II Curso
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
Programación Avanzada
Programación Avanzada
INGENIERÍA DE INFORMACIÓN Y APLICACIONES
Programación Avanzada
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Programación Avanzada
Unidad Didáctica 11 Reutilización Versión 1.0.0
Clases y Objetos.
El Lenguaje de Modelación Unificado
METODOLOGÍA DE SISTEMAS
Programación Avanzada
Programación Avanzada
Programación Avanzada
Ingeniería Directa. Generar código a través de modelos se le conoce como ingeniería directa.
Ingeniero en Computación José Alfredo Cobián Campos
Programación Avanzada
Programación Avanzada
Programación Avanzada
Programación Avanzada
SEGURIDAD SQL Usuarios, privilegios y perfiles.
Programación Orientada a Objetos
¿ Que hemos aprendido? Análisis Entendimiento del problema
Fundamentos de la programación orientada a objetos
TIPOS DE DATOS ABSTRACTOS
Introducción a programación web Martin Esses
Diagramas de clases Modelan la vista estática del sistema
Programación orientada a objetos
Curso de Lenguaje de Modelado Unificado Multiplataforma Adaptativo basado en la Teoría de Respuesta al Item Margarita Rojas Rojas Pedro Salcedo Lagos.
Tecnicatura Superior en Programación
Ingeniería de Software Somerville
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
DIAGRAMA DE CLASES 2016 Ramos, Pablo.
Tema 3. Lenguaje unificado de modelado UML
DIAGRAMA DE CLASES.
Diagrama de flujo y Algoritmo
Diagrama de flujo y algoritmo
Índice temático 2.1 Análisis de problemas. 2.2 Representación de algoritmos: gráfica y pseudocódigo. 2.3 Diseño de algoritmos aplicados a problemas 2.4.
PROGRAMACION CON SCHATCH Y MICROMUNDOS
Resumen: Análisis de requerimientos
DIAGRAMA DE CLASE.
Modelo de interacción de usuario.  El Desarrollo basado en modelos de la interfaz de usuario, en inglés Model-based User Interface Development (MB-UID),
DISEÑO WEB Sesion 1.
Universidad Nacional de Colombia - Leguajes de Programación
Customización en ADempiere
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
ANALISIS DE SISTEMAS ANALISIS ORIENTADO A OBJETOS.
INTRODUCCIÓN A UML Y AL ADOO 1 Diagramas en UML ◦Diagramas de casos de uso ◦Diagramas de clases y objetos ◦Diagramas de secuencia ◦Diagramas de colaboración.
LICENCIATURA EN SISTEMAS COMPUTACIONALES EN ADMINISTRACION
DIAGRAMA DE COLABORACIÓN
Diagrama de Clases Un diagrama de clases esta compuesto por los siguientes elementos: Clase: atributos, métodos y visibilidad. Relaciones: Herencia, Composición,
M. en TI. Omar Téllez Barrientos DOCENTE DE INFORMÁTICA GENERACIÓN DE PSEUDOCÓDIGOS Y ALGORITMOS
Diagramas de clases Modelan la vista estática del sistema
INGENIERIA DE SOFTWARE
Diagramas de Interacción. Escuela de Ingeniería en Sistemas Computacionales Facultad de Ciencias Matemáticas y Físicas Universidad Estatal
CONTROLES Y ESTRUCTURAS BÁSICAS DE PROGRAMACIÓN  1. Algoritmos: conjunto de instrucciones programadas para resolver una tarea específica.  2. Datos:
1 UMLUML Wilson Peláez Hernández. 2 LAS CLASES – DIAGRAMAS DE CLASES.
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS. INTRODUCCION. ¿ Qué es UML ?. UML, por sus siglas en Ingles, Unified Modeling Languaje.(Lenguaje Unificado.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
INTRODUCCIÓN A UML.  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Estudio de Viabilidad del Sistema (EVS). Estudio de Viabilidad del Sistema Cuestiones ¿Qué es la viabilidad de un sistema? ¿Cuáles son los objetivos del.
Unida III: Análisis y Diseño de Sistemas Orientado a Objetos
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Transcripción de la presentación:

Programación Avanzada Diseño Diseño de la Estructura de una Colaboración

Contenido Introducción Diagrama de Clases de Diseño Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Introducción La asignación de responsabilidades ha sido completada La parte dinámica de la colaboración que se está diseñando ha sido determinada Habiendo finalizado la construcción de los diagramas de comunicación es posible especificar la parte estructural de la colaboración Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Introducción (2) Esta especificación se realizará mediante los diagramas de clases de UML Estos diagramas: Ilustran la estructura de la solución Están anotados con información de diseño, como por ejemplo operaciones y navegabilidades Al artefacto resultante lo llamamos Diagrama de Clases de Diseño (DCD) y será incluido en el Modelo de Diseño Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Diagrama de Clases de Diseño Un Diagrama de Clases de Diseño especifica la estructura de una colaboración Los elementos que contiene son representaciones gráficas de algunos elementos de diseño contenidos en el modelo Los elementos a incluir son solamente aquellos que sean necesarios para solucionar el/los caso/s de uso realizado/s por la colaboración Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Diagrama de Clases de Diseño (2) Elementos de diseño a incluir: Clases, asociaciones y atributos Navegabilidades de asociaciones Operaciones de clases y existencia de métodos Interfaces con sus operaciones Información acerca del tipo de los atributos y de los valores devueltos por las operaciones (incluyendo datatypes) Generalizaciones entre clases o interfaces Dependencias entre elementos Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Construcción de un DCD Para la construcción de un DCD: Identificar todas las clases que participan de la solución de los casos de uso. Hacer esto analizando los diagramas de comunicación Incluirlas en un el diagrama de clases Replicar los atributos de los conceptos correspondientes en el Modelo de Dominio, agregando aquellos nuevos que sean necesarios Agregar las operaciones correspondientes a cada clase analizando los diagramas de comunicación Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Construcción de un DCD (2) Para la construcción de un DCD (cont.): Agregar la información de tipos a los atributos y operaciones Agregar las asociaciones necesarias para permitir las visibilidades por atributo requeridas en los diagramas de comunicación Agregar navegabilidades para indicar la dirección de cada visibilidad por atributo Agregar dependencias para reflejar los demás tipos de visibilidades existentes Agregar interfaces, fábricas y datatypes Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Construcción de un DCD Información Previa (Dominio) Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Construcción de un DCD Información Previa (Interacciones) Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Identificar las Clases e Ilustrarlas Pasos 1, 2 y 3 Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Agregar Operaciones y Métodos Paso 4 Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Agregar Información de Tipos Paso 5 Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Agregar Asociaciones y Navegabilidad Pasos 6 y 7 Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Agregar Dependencias Paso 8 Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Agregar interfaces, fábricas y datatypes Paso 9 Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Inclusión de Operaciones Operación create: La operación create es utilizada para la creación de instancias Esta forma es propia de UML e independiente de todo lenguaje de programación Este mensaje se corresponde con los constructores de clases Los constructores están siempre presentes en las clases por lo que es común omitirlos en los diagramas de clases de diseño Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Inclusión de Operaciones (2) Operaciones de acceso: Son utilizados para obtener el valor de un atributo (get) o para modificarlo (set) Lo usual es declarar los atributos como privados y necesitar este tipo de operaciones Sin embargo se las excluye de los diagramas Por defecto se asume que un atributo tiene su get y set asociado Es posible indicar que para un atributo no se brindará la operación set correspondiente aplicándole la restricción {readOnly} Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Inclusión de Operaciones (3) Operaciones de acceso (cont.) Ejemplo: la implementación de la clase Empleado contendrá las operaciones calcularAportes() asignarCliente() getNombre() setNombre() getSueldo() Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Inclusión de Colecciones Las colecciones (tratadas como fuera indicado) usualmente disponen todas de las mismas operaciones Por tal razón no aportarían mayor información al diagrama y es común omitirlas La necesidad de una colección se deriva de las multiplicidades Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Inclusión de Colecciones (2) Ejemplo Una sola transacción actual Un ATM tendrá asociado: Una colección de transacciones finalizadas Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración

Diseño de la Estructura Errores Comunes No incluir las dependencias existentes Omitir la definición de los datatypes No incluir interfaces, controladores ni fábricas Sobrecargar el diagrama con operaciones omitibles (create, set, etc.) Incluir colecciones como clases innecesariamente Programación Avanzada - Curso 2017 Diseño: Diseño de la Estructura de una Colaboración