INGENIERIA DE SOFTWARE

Slides:



Advertisements
Presentaciones similares
Prof. César Luza Montero
Advertisements

Prof. Joel Moreno Molina
INTRODUCCIÓN:. La programación consiste en desarrollar programas para procesar información. Una computadora es totalmente inútil si no dispone de un programa.
Modelado UML Diagramas de Secuencia Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
UML Lenguaje Unificado de Modelado. Unified Modeling Language UML es un lenguaje de propósito general para el modelado orientado a objetos. Es un lenguaje.
Modelo del Proceso de Negocio Francisco Valdés Souto 2 al 6 de marzo 2009 © Avantare Consultores S. A. de C. V. – Derechos.
ANÁLISIS Y DISEÑO DE SISTEMAS Desarrollo de Conceptos Básicos Ing. Linda K. Masias M.
Entrega final de proyecto Software para la gestión de inscripciones en cursos Universidad Nacional de Colombia Maestría en Ingeniería de Sistemas y Computación.
Diseño (Diagrama de Clases) Francisco Valdés Souto 2 al 6 de marzo 2009 © Avantare Consultores S. A. de C. V. – Derechos.
MANUALES DE PROCEDIMIENTOS ¿¿Que son los manuales ?? Manuales de procedimientos.
Análisis y Especificación de Requisitos
TESIS DE GRADO DESARROLLO DEL SISTEMA WEB PARA LA ADMINISTRACIÓN DE LAS ACTIVIDADES ACADÉMICAS DE ALUMNOS, PROFESORES Y RESPONSABLES DE LOS DEPARTAMENTOS.
El Lenguaje de Modelación Unificado
METODOLOGÍA DE SISTEMAS
LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS
Modelos y Sistemas.
Conferencia # 3 Ingeniería de Software II
Programación Avanzada
METODOLOGÍA DE SISTEMAS
. Primera Open Class Asignatura: Programación Estructurada Tema:
Flujo de trabajo: Requerimientos
METODOLOGÍAS DE DESARROLLO DE SOFTWARE
Unidad 2: LAS ETAPAS DE LA SIMULACION NUMERICA. Tema: 2
Ingeniería de Software: Metodologías
Proyecto de Software. t07
Fundamentos de programación
EJERCICIOS DE DIAGRAMA DE FLUJO
Federico Rodriguez Bravo Ing. Jaime A. Pavlich-Mariscal Ph.D
Proyecto de Software. Clase 06
Proceso de Desarrollo de SW
INTRODUCCIÓN Elmasri: Pág
Hola que tal, mi nombre es Martín Morales… egresado de la carrera de Ing. de Software en la Univ. Politecnica de Amozoc en el Edo. de Puebla en México.
METODOLOGÍA DE SISTEMAS
TÍTULO DEL PROYECTO Plataformas Computacionales de Entrenamiento, Experimentación, Gestión y Mitigación de Ataques a la Ciberseguridad.
Ingeniería de Sistemas Requerimientos
DIAGRAMACIÓN.
UML 2,0 Christian Sáenz.
Fundamentos de programación
Eliana matallana – mónica yate
Diagramas del modelo uml
Resumen: Análisis de requerimientos
Especificación de requerimientos por: Sonia Cristina Gamboa Sarmiento
Proceso Unificado de Desarrollo de Software
Simulación de procesos.
UML - Diagramas de interacción
Empresa: Software ABC Colombia
Proceso de Desarrollo de SW
Actividad 5 Diagramas de interacción Dra. Anaisa Hernández González
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.
Ing. Francisco Rodríguez Novoa
PROCESO UNIFICADO DE DESARROLLO R.U.P.
Equipo 2 Arellano Catalán Marco A. Damián Contreras Ma. Guadalupe
INGENIERIA DE SOFTWARE
MSc. Lisett Pérez Quintero Ing. Jorge Carrera Ortega
Requisitos Ing. Maribel Valenzuela Beltrán 1.
INGENIERÍA DE SOFTWARE I MODELACIÓN DE NEGOCIO
Nombre del Docente: María Guadalupe Salazar Chapa
INGENIERIA DE SOFTWARE
INGENIERIA DE SOFTWARE
DISEÑO DE SOFTWARE 1ª. Parte
Universidad Autónoma del Estado de México Facultad de Ingeniería Ingeniería en Computación Unidad de aprendizaje: Análisis de Sistemas Elementos Básicos.
Casos de Uso Análisis de requisitos con casos de uso.
Diagrama de componentes
Diagramas de Interacción. Escuela de Ingeniería en Sistemas Computacionales Facultad de Ciencias Matemáticas y Físicas Universidad Estatal
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS. INTRODUCCION. ¿ Qué es UML ?. UML, por sus siglas en Ingles, Unified Modeling Languaje.(Lenguaje Unificado.
Unida III: Análisis y Diseño de Sistemas Orientado a Objetos
INTRODUCCIÓN A UML.  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
PRUEBAS DE CAJA NEGRA. -Internationa Software Testing Qualification Board (ISTQB) Internationa Software Testing Qualification Board (ISTQB) Técnica de.
Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Copyright 2019 Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Derechos reservados UML.
Transcripción de la presentación:

INGENIERIA DE SOFTWARE UNT – INGENIERIA INDUSTRIAL INGENIERIA DE SOFTWARE Ing. Francisco Rodríguez Novoa

Ing. Francisco Rodríguez Tema 8 Modelo de Diseño Ing. Francisco Rodríguez 2

Rational Unified Process (RUP) 3 3

AGENDA Diseño Diseño Orientado a Objetos Artefactos de Diseño Trabajadores Actividades del Diseño Orientado a Objetos

VISION GENERAL

Diseño – Diagramas UML

Flujo de trabajo del DOO El objetivo del diseño es entender la solución refinando el modelo de análisis con la intención de desarrollar un modelo de diseño que permita una transición sin problemas a la fase de construcción. En el diseño, nos adaptamos al entorno de implementación y despliegue.

Descomponer el modelo de análisis en subsistemas que VISION GENERAL Acercar el modelo de análisis al modelo de implementación “Los milagros más comunes de la ingeniería del software son las transiciones desde el análisis hasta el diseño y desde el diseño al código” (Richard Due). Identificar requisitos no funcionales y restricciones en relación a: lenguajes de programación, reutilización de componentes, sistemas operativos, tecnologías de: distribución, concurrencia, bases de datos, interfaces de usuario, gestión de transacciones, etc. Descomponer el modelo de análisis en subsistemas que puedan desarrollarse en paralelo. Definir la interfaz de cada subsistema. Derivar una representación arquitectónica del sistema

Actividades del Diseño

Actividades del Análisis y diseño

Artefactos del Diseño Modelo de Diseño. Elementos del modelo de diseño: capas, subsistemas con clases de diseño (como servlets, beans y otras) e interfaces, librerías con clases utilitarias, y realizaciones de diseño de casos de uso. Diagramas de realizaciones de diseño de casos de uso: diagrama de clases y diagramas de secuencia. Diagrama de componentes, cuyos elementos son los componentes de la aplicación. Modelo de Despliegue. Diagrama de despliegue, cuyos elementos son artefactos y nodos

Artefactos del Diseño

Artefactos del Diseño

ARTEFACTOS Y TRABAJADORES ARQUITECTO MODELO DE DISEÑO DESARROLLO DESCRIPCION DE LA ARQUITECTURA INGENIERO DE CASOS DE USO REALIZACION DE CASOS DE USO - ANALISIS COMPONENTES SUBSISTEMA DE DISEÑO INTERFAZ CLASES Responsable de

Arquitecto ARQUITECTO RESPONSABLE DE VISTA DE LA ARQUITECTURA

Ingeniero de Casos de Uso Realización de caso de Uso - diseño INGENIERO DE CASOS DE USO RESPONSABLE DE

Ingeniero de Componentes Clase de Diseño Interfaz RESPONSABLE DE

Workers - Diseño Arquitecto: responsable de la integridad del modelo de Análisis y de crear una vista arquitectónica que permita avanzar en el desarrollo. Ingeniero de Casos de Uso: responsable de la integridad de las realizaciones de casos de uso. Ingeniero de Componentes: responsable de la integridad de clases de análisis y sus relaciones, y la integridad de paquetes de análisis

Realizar los Diagramas de Interacción de los casos de uso del sistema. Especificación del Caso de Uso del Negocio Solicitar Servicio 1.Actores 1.1Artista 2.Propósito Solicitar los servicios de la galería para realizar una exposición de arte. 3.Breve Descripción El caso de uso comienza cuando el Artista se dirige a la galería para solicitar los servicios para una exposición de arte. Se entrevista con el Anfitrión quien le pide los datos necesarios y llena la solicitud de servicio de la galería. El caso de uso termina cuando el Artista recibe una copia de la Solicitud de Servicio o del Documento de Rechazo de Pedido. 4.Flujo Básico de Eventos Acción del Actor Respuesta del Proceso del Negocio 1.El Artista solicita el servicio de para una exposición 2.El Anfitrión solicita los datos personales del Artista 3.El Artista entrega sus datos personales al Anfitrión 4.El Anfitrión busca si los datos del Artista están registrados previamente en la galería 5.El Anfitrión solicita información de las obras de arte al Artista. 6.El Artista entrega la información de las obras al Anfitrión 7.El Anfitrión registra la información de las obras de arte. 8.El Anfitrión busca la información sobre las técnicas que maneja la galería en el sistema LogiSis 9.El sistema LogiSis entrega la información sobre las técnicas que maneja la galería. 10.El Anfitrión recibe la información sobre las técnicas y determina si la galería maneja las técnicas de las obras de arte. 11.El Anfitrión llena la solicitud de servicio. 12.El Anfitrión archiva la Solicitud de Servicio y entrega una copia al Artista 13.El artista recibe la copia de la Solicitud de Servicio : Profesor : GestorTutorias asignatura : TutoriaAsignatura nuevoPeriodoTutoria : Periodo setAsignaturaEnTutoria( ) setEnTutoria( ) enTutoria := estaEnTutoria( ) [enTutoria] create( ) setInicioPerido( ) setPeridoActual(PeriodoTutoria) Mantener cliente : Profesor : GestorTutorias asignatura : TutoriaAsignatura nuevoPeriodoTutoria : Periodo 1: setAsignaturaEnTutoria( ) 3: enTutoria := estaEnTutoria( ) 5: create( ) 6: setInicioPerido( ) 7: setPeridoActual(PeriodoTutoria) 2: setEnTutoria( ) 4: [enTutoria]

Diagrama de Colaboración Realizar los Diagramas de Interacción de los casos de uso del sistema. Los Diagramas de Interacción describen la interacción o intercambio de mensajes entre los objetos que participan en cada caso de uso. Existen dos tipos de Diagramas de Interacción. Diagrama de Secuencia Diagrama de Colaboración

Diagrama de Colaboración Diagrama de Secuencia Diagrama de Colaboración Describe el intercambio de mensajes ordenado en el tiempo. Describe el intercambio de mensajes organizado por los objetos participantes.

Ejemplo de Diagrama de Secuencia.

Muestra la interacción de mensajes entre los objetos que participan en un caso de uso. Ordenados según la secuencia de ocurrencia en el tiempo. Vista gráfica de la mecánica de interacción de los objetos a través del intercambio de mensajes de las clases a que pertenecen en un determinado escenario. Diagrama de Secuencia Describe el intercambio de mensajes ordenado en el tiempo.

Diagrama de Secuencia Está formado por. Objetos. Líneas de vida. Barra de tiempo. Mensaje. Diagrama de Secuencia Describe el intercambio de mensajes ordenado en el tiempo. 16/02/2019

Objeto Barra de tiempo Mensaje Línea de vida A1:Clase1 Mensaje() B1:Clase2 Barra de tiempo Mensaje Línea de vida

Objeto. Se muestra en la parte superior sobre la línea punteada vertical (línea de vida). Representa a los objetos que participan en el caso de uso. Se coloca una columna por cada clase que participa en el caso de uso. Clase1

Representa la vida del objeto durante la interacción. Línea de vida. Representa la vida del objeto durante la interacción. Da idea del tiempo de vida de los objetos de la clase en el caso de uso. El tiempo se lee de arriba hacia abajo. Se modela utilizando una línea discontinua que se desplaza hacia abajo. Clase1

Barra de tiempo. Representa el conjunto de mensajes que mantienen relación consecutiva. Se modela utilizando una barra blanca encima de la línea de vida y la longitud de la barra se interpreta como la duración de la secuencia. Clase1 16/02/2019

Mensaje. Se modela utilizando una línea continua con punta de flecha entre las líneas de vida de los objetos de las clase. Encima se coloca el nombre del mensaje. El nombre significa el propósito de la operación. A1:Clase1 Mensaje() B1:Clase2

Diseño de las clases Identificar las responsabilidades de las clases de diseño (papeles en los casos de uso) Identificar: Operaciones Atributos relaciones en las que participa estados (diagramas de estados) métodos que soportan sus operaciones Requisitos nuevos…

Diseño de las clases Identificar operaciones En el lenguaje de implementación Mirar responsabilidades que tiene en los casos de uso Identificar atributos Describirlos en el lenguaje de programación Considerar los atributos de las clases de análisis de las que se derivan

Diseño de las clases Identificar asociaciones y agregaciones Las interacciones en los diagramas de secuencia precisan de asociaciones entre las clases que interactúan. Minimizar el número de relaciones entre clases (disminuir el acoplamiento). Refinar multiplicidad, papeles, etc. Refinar la navegabilidad (dirección) de las asociaciones en base a los diagramas de secuencia. Identificar generalizaciones-especializaciones

Diseño de las clases Describir métodos Algoritmos para implementar alguna operación (lenguaje natural). Esqueletos de métodos generado por la herramienta. En general, esto se suele hacer en implementación. Describir estados Algunos objetos reaccionan en función de su estado actual. Utilizar diagramas de transición de estados

DIAGRAMA DE CLASES 1..n realiza 1 0..n reside está compuesta Factura noFactura : Integer fecha : Date = DATE() igv : Double = 18.00 descuento : Currency = 0 Cliente codCliente : Integer direccion : String telefono : Long Producto codProducto : Integer descripcion : String um : String pu : Currency = 0.00 presentacion : String DetalleFactura noItem : Integer cantidad : Integer = 0 descuento : Double Pais codPais : Integer Descripcion : String PersonaNatural nombre : String dni : String PersonaJuridica razonSocial : String ruc : String 1..n realiza 1 0..n reside está compuesta está asociada

Importancia del diseño Porque no se va directo a la implementación? Modelo de análisis no es suficientemente formal así nosotros necesitamos para: Refinar el análisis de clases Determinar operaciones Determinar como las clases deben de comunicarse El sistema debe estar adaptado a la implementación del entorno. Nosotros queremos validar los resultados del análisis Cuán bien el modelo de análisis y el modelo de requerimientos dsecriben el sistema? 39 39

FIN