1 Diseño Orientado al Objeto Agustín J. González ELO-326: Seminario de Computadores II 2do. Sem. 2001.

Slides:



Advertisements
Presentaciones similares
Ciclo de Vida de Desarrollo de los Sistemas de Información
Advertisements

MODELOS ORIENTADOS A OBJETOS
Plan de Implantación Sistemas de Información III
Lenguaje Unificado de Modelado
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
Pruebas Orientadas a Objeto
MODELADO DE ANALISIS Y DISEÑO
Fundamentos de Ingeniería de Software
Prof. César Luza Montero
Rational Unified Process (RUP)
Ingeniería del Software
Ingeniería del Software
Versión 2004 Enrique Bañuelos Gómez
Análisis y Diseño O.O. Click to add notes Preguntas del diseño :
Aspectos Avanzados de la Tecnología de Objetos
Evaluación de Productos
Erique Gaspar, Carlos Alfredo
Ingeniería de Software Orientada a Objetos
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
Ingeniería de Software
* FRAUSTO JIMENEZ GABRIELA * * HERNANDEZ TORRES ANA LAURA * * MANDUJANO JUAN CARLOS * * NOVA MARIN YARELI PAULINA * * ZAVALA CORTE JOCELYN ARELI *
Ingeniería de Software
Ingeniería de Software Orientado a Objetos
UNIDAD 3: “Desarrollo Orientado a Objetos con UML”
DISEÑO DE SOFTWARE 1ª. Parte
Fundamentos de programación
Diseño e Implementación
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Las etapas de un proyecto
1 Diseño Orientado a Objetos Agustín J. González ELO-329: Diseño y Programación Orientados a Objetos 1er. Sem
Comunicación y Multimedia
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ingeniería de Software: Parte 2 Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ximena Romano – Doris Correa
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
Importancia en la efectividad del:
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
Desarrollo de Software Orientado a Objetos (deficiencias)
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
Diagramas de Interacción.
Alexander Aristizabal Ángelo flores herrera
Diseño de Sistemas.
Taller de Sistemas de Programas Clase 5 Dpto. de Computación y T.I.
Ingeniería de Requisitos
DIAGRAMA DE SECUENCIA Y ACTIVIDADES.
IDENTIFICACIÓN DEL CICLO DE VIDA DEL SOFTWARE. POLITÉCNICO COLOMBIANO JAIME ISAZA CADAVID.
UML.
Relación con otras asignaturas del plan de estudio
Unidad 3 MODELO DE ANALISIS.
Actividades en el Proceso de desarrollo de Software
Proceso de Diseño de Interfaces
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Proceso de desarrollo de Software
CONCEPTO DE CICLO DE VIDA 1 En los departamentos de Sistemas se debe definir un marco de referencia común que debe ser:  Pueda ser empleado por todos.
Especificación del Problema Partimos del hecho de un programador no puede resolver un problema que no entiende. Por esta razón, la primera etapa en todo.
Software de Comunicaciones
ELO-329: Diseño y Programación Orientados a Objetos1 Proceso de Desarrollo de SW Agustín J. González ElO329: Diseño y Programación Orientados a Objeto.
Fundamentos de Ingeniería de Software
1 Tema 2: Introducción al proceso unificado de desarrollo de software.
Propósito Introducción Actividad de Consolidación Actividad de Consolidación Fuentes consultadas Fuentes consultadas Ciclo de Vida del Software Ciclo.
1 Qué es UML Es un Lenguaje de Modelado Unificado basado en una notación gráfica que permite especificar,construir, visualizar y documentar los objetos.
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
Entregables del Proyecto
Universidad Nacional de Ingeniería Comprendiendo los Fundamentos de
Seminario de Sistemas Distribuidora Autores: Silvana Bassi Federico Albera Director: Lic. José A. Peralta Febrero de 2008.
Flujos de Trabajo Fundamentales Proceso Unificado de Desarrollo de Software.
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Fase de Inicio Proceso Unificado de Desarrollo de Software.
Transcripción de la presentación:

1 Diseño Orientado al Objeto Agustín J. González ELO-326: Seminario de Computadores II 2do. Sem. 2001

2 Generalidades ¿Qué es la programación orientada al objeto?. La respuesta normalmente apunta a enfatizar características de los lenguajes como C++ en comparación con C, por ejemplo. Se habla de clases, herencia, paso de mensajes y métodos virtuales y estáticos. Un aspecto de de gran importancia (tal vez el más importantes) en OOP es una técnica de diseño, la cual se caracteriza por la determinación y delegación de responsabilidades. Responsabilidad implica no interferencia. Cuando un objeto se hace responsable por acciones específicas, esperamos cierto comportamiento. Programación en pequeño versus en grande: Pequeño: Una sola persona o un pequeño grupo. Una persona puede comprender todo. El mayor problema es el diseño y el desarrollo de algoritmos. Grande: Hay un gran equipo de personas. Los diseñadores pueden ser distintas personas a los implementadores. El mayor problema es la administración de los detalles y la comunicación entre las partes del proyecto.

3 Proceso de desarrollo de software Un proceso de desarrollo de software es una serie estructurada de actividades que cubren la manera en la cual una organización desarrolla proyectos de software. Hay varios modelos para desarrollo de software: modelo de cascada, modelo por flujo de tareas, modelo unificado. El modelo por flujo de tareas identifica las actividades que el equipo del proyecto debe realizar. Éstas son: –Establecimiento de Requerimientos (Conceptualización) –Desarrollo de un modelo para el comportamiento deseado (Análisis) –Crear una arquitectura (Diseño) –Implementación (Evolución) –Pruebas –Administrar la evolución posterior a la entrega (Mantención) Conceptualización Análisis Mantención Implementación/pruebas Diseño

4 Proceso de desarrollo de software Por otro lado, en una visión del modelo Unificado, las mayores fases son: Comienzo, Elaboración, Construcción y Transición. Estas fases están mas en relación con el avance temporal del proyecto. Cada fase puede ser dividida en incrementos que cubren las actividades del modelo por flujo de trabajo.

5 Tareas Requerimientos: el propósito es establecer los requerimientos básicos para un sistema nuevo o las modificaciones mayores de uno ya existente. Análisis: el propósito es desarrollar un modelo de los comportamientos deseados del sistema. Diseño: el propósito es crear una arquitectura para desarrollar la implementación. Implementación: El propósito es hacer evolucionar la implentación a través de sucesivos refinamientos de la arquitectura del sistema. Pruebas: Su propósito es verificar el cumplimiento de los requerimientos. Mantención: su propósito es administrar la evolución posterior ala entrega del producto. Una forma de trabajar en cada iteración menor es la siguiente: Identificar clases y objetos Identificar semánticas de clases y objetos Identificar relaciones entre clases y objetos Especificar interfaces e implementación

6 Actividades y resultados Primero que todo: En mi opinión no existe una técnica de diseño universalmente aceptada. Mas bien creo en el estudio de estas técnicas para que cada uno tome lo que le parece más útil en su caso. Estudiaremos algunas de estas técnicas y las aplicaremos en un ejemplo. Requerimientos: normalmente se obtienen en comunicación con el usuario solicitante del sistema. Normalmente es en lenguaje natural (español). Se debe esperar gran informalidad y bajo nivel de detalles. Análisis: Se sugiere 1.- hacer estudio de algunos escenarios representativos. 2.- hacer un análisis del dominio. Una herramienta usada en esta etapa son las tarjetas CRC (Class, Responsabilities, Collaborators). Para hacer un análisis del dominio puede ser necesario entrevistar expertos en el dominio o área del problema. ¿Qué sabemos nosotros de medicina, en el diseño de un equipo médico? Nombre de la Componente Responsabilidades:Colaboradores: Aquí va la descripción de las responsabilidades asignadas a esta componente Lista de otras componentes con las cuales se relaciona

7 Actividades y resultados Análisis (cont.) Como resultado del análisis se generan: Una descripción del contexto del sistema. Define los bordes del sistema, las cosas que están dentro y que queda fuera del sistema. Una colección de escenarios que definen el comportamiento del sistema. Cada escenario específica algún(os) comportamiento(s) del sistema. Un escenario es una instancia de un caso de uso del sistema. Un modelo del dominio. Es un modelo del mundo que el sistema computacional está creando. Éste captura nuestro entendimiento de cómo las cosas trabajan (o deberían trabajar). Colección de tarjetas CRC, Diagramas de interacciones (paso de mensajes), diagrama de clases.