ingsoftorientadaobjetos 2014 2 v1

19
Ingeniería de Software Orientada a Objetos Pág. 1 UNIVERSIDAD ESTATAL DE MILAGRO Facultad de Ciencias de la Ingeniería Carrera de Ingeniería en Sistemas Computacionales SILABO 1. DATOS BÁSICOS DE LA ASIGNATURA Carrera: Ingeniería en Sistemas Computacionales Nivel: VI – Sexto Modalidad: Presencial Asignatura: Ingeniería de Software Orientada a Objetos Periodo Académico: Septiembre 2014 – Febrero 2015 Código: Créditos: 4 (créditos) Horas Presenciales: 72 horas Horas Estudio Autónomas: 108 horas Prerrequisitos: Ingeniería de Software II Correquisitos: Ingeniería Web Responsable: Ing. Miguel Botto Tobar, MSc. Correo electrónico: [email protected] / [email protected] Eje de formación: Humanístico ( ) Básico ( ) Profesional ( X ) Optativo ( ) Servicio Comunitario ( ) 2. ENFOQUE GENERAL DE LA ASIGNATURA Y CAMPO DE ESTUDIO El énfasis de la ingeniería de software está en las dos palabras: ingeniería y software. Un ingeniero es capaz de construir un producto de alta calidad usando componentes ya elaborados e integrándolos bajo restricciones de tiempo y presupuesto. El ingeniero se enfrenta a menudo con problemas mal definidos y con soluciones parciales, y tiene que apoyarse en métodos empíricos para evaluar soluciones. La visión actual de desarrollo de software toma una perspectiva orientada a objetos. En este enfoque, el principal bloque para construir sistemas de software es el objeto o clase. El desarrollo orientado a objetos proporciona la base fundamental para ensamblar sistemas a partir de componentes utilizando tecnologías como J2EE, .Net, PHP, etc. El modelo es una técnica de la ingeniería que ha sido probada y bien aceptada. Por ello, para visualizar la fortaleza del enfoque orientado a objetos se hace uso del Lenguaje Unificado de Modelado UML (del inglés Unified Modeling Language), que es un lenguaje estándar de la industria que nos permite comunicarnos con claridad los requisitos, arquitecturas y diseños. El UML fue creado originalmente por Rational Software y ahora es mantenido por el Grupo de gestión de normas organización de objetos OMG (del inglés Object Management Group). Una metodología es una colección de métodos para la resolución de una clase de problemas. Las metodologías de desarrollo de software descomponen el proceso en actividades. RUP (del inglés Rational Unified Process) es un proceso basado en los modelos en Cascada y por Componentes, el cual presenta las siguientes características: Es dirigido por los casos de uso, es centrado en la arquitectura, iterativo e incremental (Booch, Rumbaugh y Jacobson, 2000), lo cual es fundamental para el proceso de desarrollo de software. RUP es una guía para saber cómo utilizar eficazmente el Lenguaje Unificado de Modelado (UML). Esta asignatura tiene como propósito impartir los conocimientos de la Ingeniería de Software Orientada a Objetos (ISOO), teniendo como base la metodología RUP y UML para el modelado del sistema de software. La metodología que se va a usar es impartir las bases en clases y profundizar en el tema será por parte de los estudiantes. Esta forma de trabajo permite tener a futuro estudiantes con espíritu y pensamiento de investigador. La evaluación se realiza a través de criterios de instrumentos que permitan medir objetivamente los resultados del aprendizaje, mediante la elaboración de diseños en UML, que tienen como guía RUP; donde se ha de valorar el estilo y calidad, del profesionalismo y dedicación del estudiante. La asignatura es base para su vida profesional, cuyo objetivo es aportar al perfil del Ingeniero de Sistemas Computaciones la capacidad de desarrollar software de forma metodológica, es decir, de manera ordenada y planificada. El estudiante es capaz de trabajar con herramientas que son utilizadas, a la fecha, por las mejores universidades del mundo.

Upload: miguel-botto-tobar

Post on 21-Dec-2015

15 views

Category:

Documents


1 download

DESCRIPTION

silabo de la asignatura en UNEMI

TRANSCRIPT

Page 1: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 1

UNIVERSIDAD ESTATAL DE MILAGRO

Facultad de Ciencias de la Ingeniería

Carrera de Ingeniería en Sistemas Computacionales

SILABO

1. DATOS BÁSICOS DE LA ASIGNATURA

Carrera: Ingeniería en Sistemas Computacionales

Nivel: VI – Sexto

Modalidad: Presencial

Asignatura: Ingeniería de Software Orientada a Objetos

Periodo Académico: Septiembre 2014 – Febrero 2015

Código:

Créditos: 4 (créditos)

Horas Presenciales: 72 horas

Horas Estudio Autónomas: 108 horas

Prerrequisitos: Ingeniería de Software II

Correquisitos:

Ingeniería Web

Responsable: Ing. Miguel Botto Tobar, MSc.

Correo electrónico: [email protected] / [email protected]

Eje de formación: Humanístico ( )

Básico ( )

Profesional ( X )

Optativo ( )

Servicio Comunitario ( )

2. ENFOQUE GENERAL DE LA ASIGNATURA Y CAMPO DE ESTUDIO

El énfasis de la ingeniería de software está en las dos palabras: ingeniería y software. Un ingeniero es capaz de construir un producto

de alta calidad usando componentes ya elaborados e integrándolos bajo restricciones de tiempo y presupuesto. El ingeniero se enfrenta

a menudo con problemas mal definidos y con soluciones parciales, y tiene que apoyarse en métodos empíricos para evaluar soluciones.

La visión actual de desarrollo de software toma una perspectiva orientada a objetos. En este enfoque, el principal bloque para construir

sistemas de software es el objeto o clase. El desarrollo orientado a objetos proporciona la base fundamental para ensamblar sistemas

a partir de componentes utilizando tecnologías como J2EE, .Net, PHP, etc.

El modelo es una técnica de la ingeniería que ha sido probada y bien aceptada. Por ello, para visualizar la fortaleza del enfoque

orientado a objetos se hace uso del Lenguaje Unificado de Modelado UML (del inglés Unified Modeling Language), que es un lenguaje

estándar de la industria que nos permite comunicarnos con claridad los requisitos, arquitecturas y diseños. El UML fue creado

originalmente por Rational Software y ahora es mantenido por el Grupo de gestión de normas organización de objetos OMG (del inglés

Object Management Group).

Una metodología es una colección de métodos para la resolución de una clase de problemas. Las metodologías de desarrollo de

software descomponen el proceso en actividades. RUP (del inglés Rational Unified Process) es un proceso basado en los modelos en

Cascada y por Componentes, el cual presenta las siguientes características: Es dirigido por los casos de uso, es centrado en la

arquitectura, iterativo e incremental (Booch, Rumbaugh y Jacobson, 2000), lo cual es fundamental para el proceso de desarrollo de

software. RUP es una guía para saber cómo utilizar eficazmente el Lenguaje Unificado de Modelado (UML).

Esta asignatura tiene como propósito impartir los conocimientos de la Ingeniería de Software Orientada a Objetos (ISOO), teniendo

como base la metodología RUP y UML para el modelado del sistema de software.

La metodología que se va a usar es impartir las bases en clases y profundizar en el tema será por parte de los estudiantes. Esta forma

de trabajo permite tener a futuro estudiantes con espíritu y pensamiento de investigador.

La evaluación se realiza a través de criterios de instrumentos que permitan medir objetivamente los resultados del aprendizaje, mediante

la elaboración de diseños en UML, que tienen como guía RUP; donde se ha de valorar el estilo y calidad, del profesionalismo y

dedicación del estudiante.

La asignatura es base para su vida profesional, cuyo objetivo es aportar al perfil del Ingeniero de Sistemas Computaciones la capacidad

de desarrollar software de forma metodológica, es decir, de manera ordenada y planificada. El estudiante es capaz de trabajar con

herramientas que son utilizadas, a la fecha, por las mejores universidades del mundo.

Page 2: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 2

3. OBJETIVOS DE LA ASIGNATURA

Impartir los conceptos y de la ingeniería de software orientada a objetos, de tal manera que los estudiantes desarrollen una visión de

diseños objetual.

Diseñar correctamente el modelo de objetos de aplicaciones de software en UML, bajo diferentes perspectivas.

Conocer la metodología RUP, basada en UML, con el fin de desarrollar software planificadamente, sin dejar a un lado otras

metodologías, también orientadas a objetos, que permiten hacer lo mismo, simplemente desde particularidades propias.

Fomentar en los estudiantes el pensamiento y espíritu de investigador responsable, ético y moral.

4. RESULTADOS DEL APRENDIZAJE DEL PERFIL DEL EGRESADO

Aplicar el análisis y diseño de sistemas en la formulación y solución de modelos y problemas organizacionales que describen el

comportamiento y operación de procesos en la toma de decisión.

Evaluar la factibilidad de los proyectos informáticos considerando las restricciones establecidas e implicadas en el diseño tales como

estándares y normas de calidad con el fin de determinar objetivamente la mejor alternativa de solución.

Manejar diferentes arquitecturas y plataformas tecnológicas incluyendo sistemas operativos, gestores de bases de datos, lenguajes

de programación, equipos e instrumentos, y la utilización de recursos que figuran dentro del portafolio del profesional de sistemas.

Trabajar en equipo y poner en práctica las habilidades interpersonales para la comunicación efectiva, que se oriente hacia la

adaptación y transformación ética a nuevas situaciones personales y profesionales.

Evidenciar interés por el conocimiento del entorno y el desarrollo de aprendizaje continuo que se exprese también en la capacidad de

establecer líneas estratégicas para la consecución de objetivos y metas personales y profesionales.

5. OPERATIVIZACIÓN DEL PERFIL

Resultados del aprendizaje de la

asignatura

Evaluación Productos de la

asignatura Ponderación

Criterio Instrumentos

UNIDAD 1 Explica cuestiones importantes que todos los ingenieros de software deben entender para realizar bien su trabajo.

Explicará cuestiones importantes que todos los ingenieros de software deben entender para realizar bien su trabajo.

Mapa conceptual Lluvia de ideas

Nivel Alto Explicará cuestiones importantes que todos los ingenieros de software deben entender para realizar bien su trabajo. Nivel Medio Explicará cuestiones importantes que todos los ingenieros de software deben entender para realizar bien su trabajo. Nivel Bajo Explicará cuestiones importantes que todos los ingenieros de software deben entender para realizar bien su trabajo.

10 8,5 7

UNIDAD 2 Revisa un área importante de la tecnología: programación orientada a objetos.

Revisará un área importante de la tecnología: programación orientada a objetos.

Mapa conceptual Lluvia de ideas

Nivel Alto Revisará un área importante de la tecnología: programación orientada a objetos. Nivel Medio Revisará un área importante de la tecnología: programación orientada a objetos.

10 8,5

Page 3: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 3

Nivel Bajo Revisará un área importante de la tecnología: programación orientada a objetos.

7

UNIDAD 3 Explica la comprensión del problema, analiza información y describe la solución a través de técnicas de recolección y análisis de información.

Explicará la comprensión del problema, analiza información y describe la solución a través de técnicas de recolección y análisis de información.

Mapa conceptual Lluvia de ideas

Nivel Alto Explicará la comprensión del problema, analiza información y describe la solución a través de técnicas de recolección y análisis de información. Nivel Medio Explicará la comprensión del problema, analiza información y describe la solución a través de técnicas de recolección y análisis de información. Nivel Bajo Explicará la comprensión del problema, analiza información y describe la solución a través de técnicas de recolección y análisis de información.

10 8,5 7

UNIDAD 4 Examina diagramas de clase en profundidad, utilizando varios ejemplos adicionales.

Examinará diagramas de clase en profundidad, utilizando varios ejemplos adicionales.

Mapa conceptual Lluvia de ideas

Nivel Alto Examinará diagramas de clase en profundidad, utilizando varios ejemplos adicionales. Nivel Medio Examinará diagramas de clase en profundidad, utilizando varios ejemplos adicionales. Nivel Bajo Examinará diagramas de clase en profundidad, utilizando varios ejemplos adicionales.

10 8,5 7

UNIDAD 5 Examina el estudio de la visión estática del software observando los patrones típicos de diagramas de clase.

Examinará el estudio de la visión estática del software observando los patrones típicos de diagramas de clase.

Mapa conceptual Lluvia de ideas

Nivel Alto Examinará el estudio de la visión estática del software observando los patrones típicos de diagramas de clase. Nivel Medio Examinará el estudio de la visión estática del software observando los patrones típicos de diagramas de clase. Nivel Bajo

10 8,5 7

Page 4: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 4

Examinará el estudio de la visión estática del software observando los patrones típicos de diagramas de clase.

UNIDAD 6 Muestra cómo diseñar software para los usuarios y cómo mantener a los usuarios involucrados en el proceso de diseño.

Mostrará cómo diseñar software para los usuarios y cómo mantener a los usuarios involucrados en el proceso de diseño.

Mapa conceptual Lluvia de ideas

Nivel Alto Mostrará cómo diseñar software para los usuarios y cómo mantener a los usuarios involucrados en el proceso de diseño. Nivel Medio Mostrará cómo diseñar software para los usuarios y cómo mantener a los usuarios involucrados en el proceso de diseño. Nivel Bajo Mostrará cómo diseñar software para los usuarios y cómo mantener a los usuarios involucrados en el proceso de diseño.

10 8,5 7

UNIDAD 7 Examina el modelado de sistemas dinámicos, centrándose en dos aspectos: interacción y comportamiento.

Examinará el modelado de sistemas dinámicos, centrándose en dos aspectos: interacción y comportamiento.

Mapa conceptual Lluvia de ideas

Nivel Alto Examinará el modelado de sistemas dinámicos, centrándose en dos aspectos: interacción y comportamiento. Nivel Medio Examinará el modelado de sistemas dinámicos, centrándose en dos aspectos: interacción y comportamiento. Nivel Bajo Examinará el modelado de sistemas dinámicos, centrándose en dos aspectos: interacción y comportamiento.

10 8,5 7

UNIDAD 8 Examina principios generales de diseño, así como varios patrones que pueden utilizarse para construir la arquitectura de un sistema de alto nivel.

Examinará principios generales de diseño, así como varios patrones que pueden utilizarse para construir la arquitectura de un sistema de alto nivel.

Mapa conceptual Lluvia de ideas

Nivel Alto Examinará principios generales de diseño, así como varios patrones que pueden utilizarse para construir la arquitectura de un sistema de alto nivel. Nivel Medio Examinará principios generales de diseño, así como varios patrones que

10 8,5

Page 5: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 5

pueden utilizarse para construir la arquitectura de un sistema de alto nivel. Nivel Bajo Examinará principios generales de diseño, así como varios patrones que pueden utilizarse para construir la arquitectura de un sistema de alto nivel.

7

Page 6: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 6

6. PROGRAMACIÓN PARA CADA RESULTADO DEL APRENDIZAJE UNIDAD 1: INGENIERÍA DE SOFTWARE (8 horas) RESULTADOS DEL APRENDIZAJE: Explica cuestiones importantes que todos los ingenieros de software deben entender para realizar bien su trabajo.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 1

Presentación de la asignatura Objetivos Motivación Evaluación y Metodología

del docente Bibliografía

Revisión Repaso y Test de nivel de

estudiante Ética del Ingeniero de

Software Software e Ingeniería de Software 1.1. La naturaleza del software

Tipos de software y sus diferencias

1.2. ¿Qué es ingeniería de software? Solución de problemas Evolución y desarrollo sistemático Sistemas software de alta calidad Costos, tiempos y otras restricciones

1.3. Ingeniería de software como una rama de la profesión de ingeniería

1.4. Stakeholders en ingeniera de software

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 2

1.5. Calidad de software Atributos de calidad Criterios internos de calidad

Page 7: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 7

Calidad a corto y largo plazo 1.6. Proyectos de ingeniería de

software Proyectos evolucionarios Proyectos desde cero Proyectos que involucran la construcción de un framework o un conjunto de componentes existentes

1.7. Actividades en los proyectos de software Requerimientos y especificación Diseño Modelado Programación Aseguramiento de la calidad Gestión de configuración Gestión de procesos

EVALUACION UNIDAD 1

Page 8: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 8

UNIDAD 2: REVISION DE LA ORIENTACIÓN A OBJETOS (8 horas) RESULTADOS DEL APRENDIZAJE: Revisa un área importante de la tecnología: programación orientada a objetos.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 3

Revisión de la Orientación a objetos 2.1. ¿Qué es la orientación a

objetos? Proceso abstracto y paradigma procedimental Abstracción de datos

2.2. Clases y objetos Objetos Clases y sus interfaces Nombre de clases

2.3. Variables de instancias Atributos y asociaciones Variables vs objetos Variables de instancias vs variables de clases

2.4. Métodos, operaciones y polimorfismo

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 4

2.5. Organización de clases dentro de jerarquías de herencias

2.6. El efecto de la jerarquía de herencias en el polimorfismo y la declaración de variables Clases abstractas y métodos abstractos Overriding Variables y binding dinámico Interfaces

2.7. Conceptos que definen la orientación a objetos

EVALUACION UNIDAD 2

Page 9: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 9

UNIDAD 3: REQUISITOS (8 horas) RESULTADOS DEL APRENDIZAJE: Explica la comprensión del problema, analiza información y describe la solución a través de técnicas de recolección y análisis de información.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 5

Requisitos 3.1. Análisis de dominio 3.2. El punto de partida para los

proyectos de software 3.3. Definición del problema y el

alcance 3.4. ¿Qué es un requisito? 3.5. Tipos de requisitos

Requisitos funcionales Requisitos no-funcionales (calidad) Requisitos de plataforma Requisitos de procesos

3.6. Casos de uso Como describir un simple caso de uso Diagramas de casos de uso Los beneficios de desarrollo de software basado en casos de uso Escenarios

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 6

3.7. Algunas técnicas para recopilar los requisitos Observación Entrevista Brainstorming (lluvia de ideas) Prototipo

3.8. Tipos de documentos de requisitos

3.9. Revisión de requisitos 3.10. Gestión de cambio de

requisitos

EVALUACION UNIDAD 3

Page 10: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 10

UNIDAD 4: MODELADO CON UML (8 horas) RESULTADOS DEL APRENDIZAJE: Examina diagramas de clase en profundidad, utilizando varios ejemplos adicionales.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 7

Modelado 4.1. ¿Qué es UML?

Por qué usar un lenguaje estándar de modelado

4.2. Conceptos básicos de diagramas de clases UML Clases

4.3. Las Asociaciones y la multiplicidad Etiquetas de asociaciones Análisis y validación de asociaciones Clases asociación Asociación reflexiva Enlaces como instancias de asociaciones Direccionalidad en asociaciones

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 8

4.4. Generalización Evitar generalizaciones innecesarias Manejo de múltiples generalizaciones Evitar objetos que cambien a clases

4.5. Diagramas de Objetos Asociaciones vs generalizaciones en el contexto de los diagramas de objetos

4.6. Características más avanzadas de los diagramas de clase Agregación Interfaces

Page 11: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 11

Restricciones, notas y texto descriptivo

4.7. Fundamentos del lenguaje de restricciones de objetos (OCL)

EVALUACION UNIDAD 4

Page 12: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 12

UNIDAD 5: DISEÑO USANDO PATRONES (8 horas) RESULTADOS DEL APRENDIZAJE: Examina el estudio de la visión estática del software observando los patrones típicos de diagramas de clase.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 9

DISEÑO USANDO PATRONES 5.1. Introducción a patrones 5.2. Patrón de abstracción –

ocurrencia 5.3. Patrón general de jerarquía 5.4. Patrón player-role 5.5. Patrón Singleton

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 10

5.6. Patrón observer 5.7. Patrón de delegación 5.8. Patrón adaptador 5.9. Patrón fachada 5.10. Patrón inmutable 5.11. Patrón de la interfaz de

sólo lectura 5.12. Patrón Proxy 5.13. Patrón de fábrica

EVALUACION UNIDAD 5

Page 13: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 13

UNIDAD 6: USUARIOS Y SUS TAREAS (8 horas) RESULTADOS DEL APRENDIZAJE: Muestra cómo diseñar software para los usuarios y cómo mantener a los usuarios involucrados en el proceso de diseño.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 11

USUARIO Y SUS TAREAS 6.1. Diseño centrado en el

usuario Formas para desarrollar software centrado en el usuario La importancia de centrarse en los usuarios

6.2. Características de los usuarios

6.3. Diseño de interfaz básica para usuarios Usabilidad vs Utilidad Aspectos de usabilidad Terminología básica del diseño de interfaces de usuario

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 12

6.4. Principios de usabilidad Los 12 principios Ejemplos de interfaces de usuario

6.5. Evaluación de interfaces de usuario Evaluación heurística Testeo de usabilidad

EVALUACION UNIDAD 6

Page 14: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 14

UNIDAD 7: MODELADO DE INTERACION Y COMPORTAMIENTO (8 horas) RESULTADOS DEL APRENDIZAJE: Examina el modelado de sistemas dinámicos, centrándose en dos aspectos: interacción y comportamiento.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 13

MODELADO DE INTERACION Y COMPORTAMIENTO 7.1. Diagramas de interacción

Diagramas de secuencia Diagramas de comunicación Como seleccionar entre un diagrama de secuencia y un diagrama de comunicación

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

Semana: 14

7.2. Diagramas de estado Transiciones en tiempo transcurrido Transiciones provocadas Actividades y acciones en diagramas de estado Sub-estados anidados y condiciones protegidas

7.3. Diagramas de actividad 7.4. Implementación de clases

basadas en diagramas de interacción y estado

EVALUACION UNIDAD 7

Page 15: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 15

UNIDAD 8: ARQUITECTURA Y DISEÑO DE SOFTWARE (8 horas) RESULTADOS DEL APRENDIZAJE: Examina principios generales de diseño, así como varios patrones que pueden utilizarse para construir la arquitectura de un sistema de alto nivel.

Semana Bloque Epistemológico Estrategias de aprendizaje Bibliografía

Recursos Básica Complementaria

Semana: 15

ARQUITECTURA Y DISEÑO DE SOFTWARE 8.1. El proceso de diseño

Diseño como una series de decisiones Partes de un sistema: sub-sistemas, componentes, módulos. Diseño top-down vs bottom-up Diseño de tipos especiales

8.2. Principios llevando a buen diseño Divide y vencerás Incrementar la reutilización donde sea posible Reutilizar código y diseños existentes donde sea posible Diseño para la flexibilidad Anticipar obsolescencia Diseño para la portabilidad Diseño de Testeabilidad Diseño defensivamente Aumentar la cohesión en lo posible Reducir en lo posible el acoplamiento Mantener el nivel de abstracción más alto posible

Actividades de Inicio Observación Lluvia de ideas

Actividades de desarrollo Exposición de los temas

por el profesor Trabajo individual o grupal

Actividades finales o de consolidación Explicación de cierre Preguntas Trabajo autónomo:

Investigación

Object-Oriented Software Engineering, Lethbridge T; Laganière R., McGraw-Hill, 2002.

Ingeniería de Software Orientada a Objetos, Bruegge B.; Dutoit AH.; Faudón R.; María SL., Prentice Hall, 2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Weitzenfeld A., Thomson, 2002.

El proceso unificado de desarrollo de software, Jacobson I.; Booch G.; Rumbaugh J., Addison Wesley, 2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA, Jacobson I.; Booch G.; Rumbaugh J., Pearson, 2006.

Ingeniería del software: un enfoque práctico., Pressman R.S.; Martin R.O., McGraw-Hill, 2010.

Laboratorio de cómputo Aula Virtual Eclipse Software para

presentaciones y tareas de investigación.

ARQUITECTURA Y DISEÑO DE SOFTWARE 8.3. Arquitectura software

Page 16: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 16

Semana: 16

La importancia del desarrollo en un modelo de arquitectura Contenidos de un buen modelo de arquitectura Como desarrollar un modelo de arquitectura Describir una arquitectura usando UML Paquetes Diagrama de componentes

8.4. Patrones arquitectónicos Múltiples capas Cliente – servidor y distribuidos Broker Procesamiento de transacciones Pipe-and-filter Modelo-vista-controlador (MVC) Arquitectura orientada a servicios (SOA) Orientado a mensajes

Page 17: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 17

7. CARÁCTER DE INVESTIGACIÓN EN LOS CONTEXTOS DE APLICACIÓN Y SU SISTEMA DE EVALUACIÓN

Las carreras ponen énfasis en la investigación formativa, para lo cual se utilizarán cuatro tipos de trabajo de investigación: ensayos,

informes, proyectos, trabajos de campo.

Con el propósito de organizar el trabajo del estudiante, el director de la Carrera establecerá el tipo de trabajo de investigación para

las respectivas asignaturas. El docente tiene la obligación de entregar al estudiante una guía de investigación para cualquiera de los

documentos y realizar seguimiento y acompañamiento, en atención a los siguientes aspectos:

Los ensayos para la evaluación, considerarán el cumplimiento del formato que considere: antecedentes, desarrollo, conclusiones

y recomendaciones.

Los informes considerarán los siguientes aspectos: datos informativos, la situación o problema al que se refiere, el contexto, el

objetivo, las actividades, las conclusiones y las recomendaciones.

Los proyectos responderán al siguiente esquema: diagnóstico, objetivos del proyecto, estrategias, programación. Para cada

estrategia se debe plantear actividades, responsable, recursos, tiempo, fecha. Todos los trabajos de investigación considerarán

bibliografía citada de acuerdo con las normas APA.

El trabajo de campo es una investigación que contempla: tema, situación o problema a investigar, contexto (del problema),

marco teórico, marco metodológico (método, técnica, instrumento), resultados de la aplicación (procesamiento de la información,

análisis), conclusiones, recomendaciones.

Cada uno de los trabajos de investigación se calificará con 10 puntos.

El Coordinador de Investigación de cada Unidad Académica trabajará en coordinación con el Director de Carrera para apoyar en la

metodología, seguimiento y evaluación de los diversos documentos de investigación.

8. COMPONENTES

8.1. EVALUACION PARA LA ACREDITACIÓN DEL ESTUDIANTE

Referentes % Calificación Descripción

Examen 60 60 Se medirá objetivamente a través de dos exámenes escritos (uno por cada parcial), en función de los contenidos de la asignatura y de acuerdo con el reglamento de evaluación de la universidad.

Gestión en el aula 20 20 Mediante ejercicios de aplicación, trabajo grupal, laboratorio, exposiciones, investigaciones, trabajo de campo, estudios de caso, participación en clases, tareas escritas u orales, pruebas, proyectos de aula, u otros.

Investigación 20 20 Mediante ensayos, informes, proyectos presentados por el estudio de trabajos de campo, individuales o grupales, de equipo,

Vinculación con la colectividad

Los estudiantes de los dos últimos semestres cumplirán, como requisito previo al grado, con 50 horas de actividades en la comunidad a través de proyectos organizados por la Dirección de Vinculación con la Colectividad de la Universidad.

8.2. COMPROMISOS

Académicos

La asistencia en una obligación reglamentada la misma que establece el 70% mínimo de asistencia, por lo tanto no se considerará

puntaje adicional.

Las tareas, trabajos autónomos u otros de investigación, que sean solicitados por el docente, deberán ser entregados el día y hora

señalada, de forma oportuna y documentados. En caso de no hacerlo, podrán ser recibidos hasta 24 horas después con una

penalización del 50% de la calificación.

La presentación de los trabajos deberá ser clara y precisa; se tomará en cuenta el desenvolvimiento, el dominio del tema y la

contribución del estudiante.

En caso de que se detectaré algún intento de plagio/copia en la gestión académica y de investigación, se procederá con la toma de

medidas correctivas y se calificará con la mínima calificación.

Al finalizar cada unidad temática se realizará una evaluación de los contenidos desarrollados y aprendidos a través de una evaluación

escrita.

Las evaluaciones y examen final tendrán efecto en la fecha y hora indicada, si el estudiante no se presenta, estas evaluaciones o

examen quedarán anulados obteniendo la mínima calificación.

Page 18: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 18

Por ningún concepto se calificará una evaluación o examen en el que se observe que el estudiante consulto a su compañero o

efectuó algún otro tipo de consulta.

El estudiante que no se presente a una evaluación o examen podrá solicitarlo con la presentación de una justificación (solo por

enfermedad y/o fallecimiento de algún familiar) y autorización emitida por la autoridad de la Facultad.

Éticos

Puntualidad al ingresar a clases.

No se permitirá el uso de teléfonos celulares en clases.

No se permitirá el ingreso de alimentos al salón de clase.

El estudiante deberá ingresar al salón de clase con una vestimenta adecuada, se prohíbe usar gafas, gorras, pirsin u otros accesorios

no acordes al ámbito educativo.

Durante el desarrollo de las actividades académicas, se atenderá con diligencia las enseñanzas del docente, lo que implica a no

realizar otras tareas o actividades que no sean indicadas por el profesor o ajenas a la asignatura.

La interacción docente – estudiante debe ser aplicando valores. Cualquier acto de indisciplina dentro o fuera del aula de clases, será

sancionado conforme a lo dispuesto en los Reglamentos y Códigos de Ética o Manual de Convivencias Institucional.

Está terminantemente prohibido valerse de mediadores para cualquier asunto de calificaciones.

8.3. BREVE CURRICULUM VITAE DEL PROFESOR

Miguel Ángel Botto Tobar

Ingeniero en Sistemas Computacionales

Universidad Estatal de Milagro – Ecuador

Máster en Ingeniería del Software, Métodos Formales y Sistemas de Información

Universitat Politècnica de València – España

Conocimientos Profesionales

Desarrollo de Aplicaciones Web (HTML, PHP, ASP, ASP.Net, Joomla, AJAX, JAVA)

Desarrollo de Software Dirigido por Modelos (UML, Transformación de Modelos M2M, M2T)

Arquitectura Orientada a Servicios (SOA)

Cloud Computing

Calidad

Data Mining

Publicaciones

Botto, M.; Gonzales-Huerta J.; Insfrán, E.: “Are Model–Driven Techniques Used As A Means To Migrate SOA Applications To Cloud

Computing?”, 10th International Conference on Web Information Systems and Technology, Barcelona, Spain (WEBIST 2014).

Botto, M.; Insfrán, E.; Abrahão S.: “Migrating Service – Oriented Applications to Cloud Computing: A Systematic Mapping Study”, 14th

International Conference on Web Engineering, Touluse, France (ICWE 2014).

Proyecto de Investigación

Desarrollo Incremental de Servicios Cloud Dirigido por Modelos y Orientado al Valor del Cliente – Grupo de Ingeniería del Software y

Sistemas de Información – Universitat Politècnica de València – Ministerio de Ciencia e Innovación – Gobierno de España

Contacto

Celular: 099 305 4421

Correo electrónico: [email protected] / [email protected]

9. BIBLIOGRAFÍA

Object-Oriented Software Engineering,

Lethbridge T; Laganière R.,

McGraw-Hill,

2002.

Page 19: IngSoftOrientadaObjetos 2014 2 v1

Ingeniería de Software Orientada a Objetos Pág. 19

Ingeniería de Software Orientada a Objetos,

Bruegge B.; Dutoit AH.; Faudón R.; María SL.,

Prentice Hall,

2002.

Ingeniería de Software Orientada a Objetos con UML, Java e Internet,

Weitzenfeld A.,

Thomson,

2002.

El proceso unificado de desarrollo de software,

Jacobson I.; Booch G.; Rumbaugh J.,

Addison Wesley,

2000.

El lenguaje Unificado de modelado MANUAL DE REFERENCIA,

Jacobson I.; Booch G.; Rumbaugh J.,

Pearson,

2006.

Ingeniería del software: un enfoque práctico.,

Pressman R.S.; Martin R.O.,

McGraw-Hill,

2010.

ELABORADO POR:

_______________________________ Ing. Miguel Botto Tobar, MSc. Profesor de la Asignatura

Fecha: __/__/__

REVISADO POR:

_______________________________ Ing. Miguel Cedillo

Director de Carrera Fecha: __/__/__

APROBADO POR:

_______________________________ Lsi. Moisés López

Sub-Decano Fecha: __/__/__