Aspectos Avanzados de la Tecnología de Objetos

Slides:



Advertisements
Presentaciones similares
BASES DE DATOS ORIENTADA A OBJETOS (BDOO).
Advertisements

“Planificación de Aplicaciones Web”
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
1 LA UTILIZACION DE LAS TIC EN LAS PYMES GALLEGAS AÑO Resumen. 24 de Junio de 2005.
Caso de Éxito: Team System, CMMI, Metodologías Ágiles
Desarrollo de Software Orientado a Objeto Ingeniería de Software Alfonso Vega Is-in-400.blogspot.com.
Conexión a Internet a través de un ISP
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Trascendencia de este curso Curso Introducción a la Computación 1
ANALISIS ESTRUCTURADO Ing. Sonia Godoy Hortua 1. E SPECIFICACIÓN DE REQUERIMIENTOS 1. Requerimientos funcionales y no funcionales 2. Especificación de.
Educación para todos con calidad global PROYECTO DE GRADO UNIDAD 2. PLANEACIÓN Y DISEÑO CONCEPTUAL DE LA INVESTIGACIÓN Valledupar Agosto del 2013 CARLOS.
Una Introducción Básica a Sistemas de Tipos Estáticos
Aplicación de diseño de clases y generación de código, orientado hacia la arquitectura multicapas y el mapeo objeto/relacional Juan Timoteo Ponce Ortiz.
Ingeniería de Requerimientos
Sintaxis básica del lenguaje
Proceso de Originación de Crédito: Banco de los Alpes
Java 2 Platform Enterprise Edition
Proyecto Fin de Carrera E.T.S. Ingeniería Informática 26 de Septiembre de 2006 DESARROLLO DE UN COMPONENTE TECLADO ALUMNO: Fco. Javier Sánchez Ramos TUTORES:
Ingeniería del Software
Diagrama de CLASES Alfredo Rodríguez Rojas
Ingeniería del Software
Versión 2004 Enrique Bañuelos Gómez
RICARDO DE J. BOTERO TABARES
Reunión de los requerimientos de la red
Análisis y Diseño O.O. Click to add notes Preguntas del diseño :
Aspectos Avanzados de la Tecnología de Objetos
1  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy IMPLEMENTACION DE APLICACIONES INTERNET.
Aspectos Avanzados de la Tecnología de Objetos
1  2008 Universidad de Las Américas - Ingeniería de Software : Dr. Juan José Aranda Aboy ACI491: Ingeniería de Software Unidad 7: Proceso de Ingeniería.
Erique Gaspar, Carlos Alfredo
LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN
Requerimientos No Funcionales
Análisis de Sistemas Presentación de la asignatura.
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Modelado de Procesos en la Ingeniería de Requerimientos
Análisis y Diseño de Sistemas
El Proceso Software Ingeniería en Informática
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
ING. PERCY OQUENDO CARREÑO PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE.
CARRERA ING.DE SISTEMAS INTEGRANTE: DANIEL SORIA MURILLO DOCENTE: ING. ERVIN FLORES MATERIA: INGENIERIA DE SOFTWARE GESTION 2009.
Análisis de Sistemas Introducción al Curso. ¿Qué es el Análisis de Sistemas? James Senn “Analisis y Diseño de Sistemas” 1999 El análisis de sistemas,
Ingeniería de Software
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Rational Unified Process (RUP)
Análisis y Diseño del Software
Universidad Nacional de la Patagonia San Juan Bosco Facultad de Ingeniería Cátedra: Análisis y Diseño de Sistemas Presentación.
3.- Introducción a Patrones de Diseño
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Rational Unified Process (RUP)
Ingeniería de Software: Parte 2 Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
GESTIÓN DE PROYECTOS DE SOFTWARE
Lenguajes de Programación M.C. Juan Carlos Olivares Rojas Agosto, 2009.
5/8/2015Metamodelamiento1 METAMODELADO Carlos Mario Zapata J.
1 Ingeniería del Software Curso German Rigau Ingeniería Técnica en Informática de Sistemas.
Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad.
Introducción al Proceso de Desarrollo de Software
Daniel Correa Botero José López Vélez Universidad de Antioquia 2013-II.
ANÁLISIS Y DISEÑO DE SISTEMAS II
1 Ingeniería del Software Curso German Rigau Ingeniería Técnica en Informática de Sistemas.
Sistemas de Información Agosto-Diciembre 2007 Sesión # 10.
Introducción a UML Departamento de Informática Universidad de Rancagua
Conceptos Fundamentales
Adaptar el proceso. Equilibrar prioridades. Demostrar valor iterativamente. Colaboración entre equipos. Elevar el nivel de abstracción. Enfocarse.
Unified Modeling Language (Lenguaje de Modelamiento unificado)
2-oct-15Ingeniería de Requisitos1 INGENIERÍA DE REQUISITOS Carlos Mario Zapata J.
1 Ingeniería del Software Curso German Rigau Ingeniería Técnica en Informática de Sistemas.
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
Modelado Orientado a Objetos Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
Transcripción de la presentación:

Aspectos Avanzados de la Tecnología de Objetos Presentación del curso

Propósito y descripción Esta asignatura guía al estudiante en el uso apropiado de las metodologías de Análisis y Diseño Orientado a Objetos (A/D OO). Entrega los conocimientos necesarios para analizar, diseñar, desarrollar e implementar aplicaciones utilizando las metodologías actuales a partir de la orientación a objetos, permitiendo a los alumnos adecuarse a los requerimientos técnicos que les presente su problemática específica de trabajo. Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Objetivos generales Al término de la asignatura, el estudiante será capaz de: Consolidar y desarrollar los conocimientos sobre análisis, diseño e implementación de sistemas orientados a objeto. Modelar y Construir software usando Orientación a Objetos, mediante enfoques de desarrollo apropiados. Conocer los últimos avances y técnicas que se han propuesto para el desarrollo de aplicaciones utilizando orientación a objetos. Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Metodología Clases expositivas, ejemplificando las distintas materias con apoyo de material físico: talleres, presentaciones y uso de computador. Desarrollo de casos prácticos en grupo, tanto en clases de laboratorio como fuera de la sala de clases mediante las herramientas disponibles para colaboración: foro, chat, blog y wiki. Desarrollo de proyectos en grupos. Controles relacionados con los tópicos estudiados y el estado del avance de cada proyecto por unidad. Dr. Juan José Aranda Aboy

Sistema de evaluación Evaluación teórica: 2 Pruebas solemnes: Promedio 70% 6 Controles: Promedio 30% (sin eliminación) Evaluación práctica: Proyecto de Análisis y Diseño: 100% Nota: [ Solemnes (70%) + Controles (30%) + Proyecto (100%) ] / 2 Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Contenidos Introducción: Ideas de calidad de software, modularidad y tipos abstractos de datos. Fundamentos del modelo de objetos Modelo de objetos representados en los lenguajes de programación Métodos de análisis y diseño orientado a objetos a través del estudio de casos. Aspectos avanzados de programación orientada a objetos. Objetos y componentes de software. Persistencia en el modelo de objetos. Tópicos avanzados: Concurrencia, distribución, desarrollo bajo el modelo cliente servidor e Internet. Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy 1. Introducción Calidad de Software: ¿Qué es un buen sistema? ¿Se tienen buenos sistemas? ¿Cómo son los buenos sistemas? ¿Cómo se construye un buen sistema? Modularidad. Tipos abstractos de datos. El proceso de desarrollo. Sistema, diseño, modelo, diagrama. Dr. Juan José Aranda Aboy

1. Objetivos específicos Definir qué se entiende por un buen sistema. Caracterizar la problemática de los sistemas existentes. Conocer cómo el enfoque de análisis y diseño orientado a objetos contribuye a la construcción de buenos sistemas. Dr. Juan José Aranda Aboy

2. Fundamentos del modelo de objetos Ingeniería del software con componentes. Conceptos de objetos. El proceso de desarrollo. El lenguaje unificado de modelado (Unified Modeling Language – UML): Fundamentos de los modelos de casos de uso. Fundamentos de los modelos de clases. Fundamentos de los diagramas de interacción y colaboración. Fundamentos de los diagramas de estado y de actividad. Diagramas de implementación. Paquetes, subsistemas, modelos. Dr. Juan José Aranda Aboy

2. Objetivos específicos Definir los conceptos de objeto, clase y componente. Caracterizar el proceso de desarrollo. Conocer y emplear adecuadamente el lenguaje unificado de modelado (UML). Dr. Juan José Aranda Aboy

3. Modelo de objetos representados en los lenguajes de programación Identificación de requisitos. Diseño de objetos con responsabilidades: Patrones GRASP. Patrones de diseño de la “pandilla de los cuatro” (Gang of Four - GoF). Diagramas de secuencia y contratos de operaciones. Dr. Juan José Aranda Aboy

3. Objetivos específicos Conocer cómo definir apropiadamente los requisitos del sistema. Definir los patrones. Aprender a aplicar los patrones GRASP y GoF al diseño de casos. Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy 4. Métodos de análisis y diseño orientado a objetos a través del estudio de casos Casos para analizar y diseñar: Una Calculadora. Una Biblioteca. Juegos con tablero: Tres en Raya (gato) y Ajedrez. Simulación de un Elevador. Puntos de venta. Gestión de calificaciones. Almacenamiento y Comunicación de señales e imágenes biomédicas Hacia la Web semántica: Repositorio de prácticas institucionales: Taxonomías y Ontología. Dr. Juan José Aranda Aboy

4. Objetivos específicos Desarrollar el análisis y diseño de los diferentes casos. NOTA: Esta unidad se realiza prácticamente en las horas de laboratorio durante todo el curso. Dr. Juan José Aranda Aboy

5. Aspectos avanzados de programación orientada a objetos Análisis arquitectural y el Documento de la Arquitectura del Software (Software Architecture Document – SAD). Diseño de un entorno de trabajo (framework) de persistencia con patrones. 4to Control Dr. Juan José Aranda Aboy

5. Objetivos específicos Conocer y aplicar prácticamente cómo se diseña la arquitectura de los sistemas. Explicar y manejar apropiadamente la arquitectura lógica. Mostrar la arquitectura utilizando los diagramas de paquetes de UML. Conocer como se diseña un framework. Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy 6. Objetos y componentes de software. Persistencia en el modelo de objetos Bases de datos orientadas a objetos. Estándares de objetos de datos: Patrones utilizados para resolver el Modelo de Negocio y su Acceso Patrones utilizados para resolver el Mapeo de la Persistencia Patrones utilizados para resolver la Arquitectura de la Persistencia Patrones utilizados para resolver el Comportamiento de la Persistencia Motores de persistencia. Opciones disponibles. Dr. Juan José Aranda Aboy

6. Objetivos específicos Describir la correspondencia (mapping) objeto – relacional. Conocer y aplicar apropiadamente los patrones utilizados. Emplear apropiadamente los motores de persistencia. Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy 7. Tópicos avanzados Concurrencia. Patrones utilizados para resolver la Concurrencia Distribución: CORBA y RMI. Patrones utilizados para resolver la Distribución Patrones utilizados para resolver la Presentación Desarrollo bajo el modelo cliente - servidor e Internet. Dr. Juan José Aranda Aboy

7. Objetivos específicos Conocer, describir y aplicar apropiadamente los patrones utilizados para resolver la concurrencia y la distribución. Explicar las características de CORBA y Java RMI, comparándoles adecuadamente. Utilizar el modelo Cliente – Servidor para construir sistemas. Dr. Juan José Aranda Aboy

Tópicos para investigación Integración con la programación funcional: Metodología funcional y Orientada a Objetos. Programación extrema (eXtreme Programming – XP) y buenas prácticas. Desarrollo de sistemas Seguros. Dr. Juan José Aranda Aboy

Bibliografía en castellano Stevens, P. “Utilización de UML en Ingeniería del Software con Objetos y Componentes”, Addison Wesley, 2002 (en inglés: “Using UML: software engineering with objects and components”) Larman, C. “UML y Patrones” 2da ed. Pearson Prentice Hall, 2004 Amescua, A. et. al. “Análisis y Diseño Estructurado y Orientado a Objetos de Sistemas Informáticos”, Mc Graw Hill, 2003 Schmuller, J. “Aprendiendo UML en 24 horas”, Prentice Hall, 2001 Universidad Carlos III de Madrid: “Modelado con UML” Deitel y Deitel, “Java: ¿Cómo programar?, Mc Graw Hill, 2004 Connolly,T. y Begg,C. “Sistemas de Bases de Datos” 4ta edición, Pearson, 2005 Alonso,A. et al “Ingeniería del Conocimiento: Aspectos Metodológicos”, Pearson, 2004 Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Textos POO en inglés Shoval, P. “Functional and object oriented analysis and design : an integrated methodology”, Idea Group Inc., 2007 Cockburn, A. “Writing Effective Use Cases”, Addison Wesley, 2000 Reynolds-Haertle, R. A. “OOP with Microsoft Visual Basic .NET and Microsoft Visual C# Step by Step”, Microsoft Press, 2002 Bruce, K.B. “Foundations of Object-Oriented Languages: Types andSemantics”, The MIT Press, 2002 Taylor, A. D. “Object Technology”, Addison Wesley, 1997 Hunt, J. “Smalltalk and Object Orientation: An Introduction” Champeaux,D.; Lea,D. y Faure,P. “Object-Oriented System Development”, Addison Wesley, 1993 Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Textos UML en inglés Grady Booch, James Rumbaugh, Ivar Jacobson “The Unified Modeling Language User Guide”, Addison Wesley, 1998 OMG Unified Modeling Language Specification, Version 1.3, June 1999 Gross, H-G. “Component-Based Software Testing with UML”, Springer, 2005 Rosenberg, D. y Scott, K. “Applying Use Case Driven Object Modeling with UML: An Annotated e-Commerce Example”, Addison Wesley, 2001 Kruchten, P. “The Rational Unified Process”, Addison Wesley, 2000 Dr. Juan José Aranda Aboy

Textos Patrones en inglés Eckel, B. “Thinking in Patterns, with JAVA”, MindView Inc., 2000 Eckel, B. “Thinking in C++”, MindView Inc., 2000 Evitts, P. “A UML Pattern Language”, New Riders Publishing, 2000 Hubert, R. “Convergent Architecture - Building Model-Driven J2EE Systems with UML”, John Wiley & Sons, 2002 Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Textos XP en inglés Wake, W. C. “Extreme Programming Explored”, Addison Wesley, 2000 Beck, K. “Extreme Programming Explained: Embrace Change”, Addison Wesley, 2004 Beck, K.; Fowler, M. y Martin,R. “Planning Extreme Programming”, Addison-Wesley, 2000 Dr. Juan José Aranda Aboy

Conceptos importantes Programación Extrema Extreme Programming: A gentle introduction. XProgramming > Software Downloads Rapid application development (RAD) Refactoring Scrum Arquitectura de Software Dr. Juan José Aranda Aboy

Artículos recomendados Software quality development and assurance in RUP, MSF and XP: A comparative study Introducing an agile process to an organization The V-Model The spiral model as a tool for evolutionary acquisition Quality in an agile world Agile software testing in a large-scale project Agile software development with Scrum Project management and Scrum: A side by side comparison Dr. Juan José Aranda Aboy

Dr. Juan José Aranda Aboy Artículos … (2) Improve competitive quality with extreme programming Best practices in Scrum project management and XP agile software development Rational Unified Process: Best practices for software development teams Agile modeling and the Rational Unified Process (RUP) RUP in the dialogue with Scrum Test-driven development, a portable methodology Test-driven development in .NET Test-driven C#: Improve the design and flexibility of your project with extreme programming techniques Dr. Juan José Aranda Aboy

Otras referencias en Internet Wikipedia: Programación Orientada a Objetos Patrón de diseño Wikibooks: Computer programming/Object oriented programming Topic: Object-Oriented Programming The Object Oriented Programming Web The Object Management Group (OMG) Introducing UML: Object-Oriented Analysis and Design Design with ArgoUML Architecture & Design: Overview Dr. Juan José Aranda Aboy