Temas


"Experimentación en ingeniería de software, medición y repositorios de experiencia"

5 al 9 de abril de 2010

Carga horaria total: 20 horas

Objetivos

Comprender y aplicar métodos basados en la evidencia para la investigación en ingeniería de software. Aprender sobre el diseño y análisis de experimentos controlados para contrastar técnicas de ingeniería de software.


Contenidos

La mayor parte del conocimiento difundido sobre construcción de sistemas de software se basa en propuestas de autores, deducciones teóricas o pruebas de concepto que no tienen una base empírica formalizada. En cambio, en otras ciencias y ramas de la ingeniería es habitual la experimentación como medio para fundamentar el conocimiento generado. Este curso se propone desarrollar métodos formales de experimentación para validar lo que sabemos sobre técnicas para construir software. Concretamente aprender sobre el diseño y análisis de experimentos controlados que permitan contrastar distintas técnicas de ingeniería de software. En el marco de la semana intensiva del curso se tratarán enfoques de medición cuantitativa de la producción de software y la construcción de repositorios de experiencia.


Bibliografía

Juristo, N., Moreno, A. 2001. Basics of Software Engineering Experimentation. Springer.
Wohlin, Claes, et al. 1999. Experimentation in Software Engineering: An Introduction. Springer.
Antony, J. 2005. Design of Experiments for Engineers and Scientists. Butterworth-Heinemann.
Shull, F. et al. 2007. Guide.


Método de Evaluación

Se solicitará a los alumnos entrega de obligatorio.


"Gobernanza de TI. Un enfoque desde las pequeñas y medianas empresas (PYMEs)"

23 al 27 de noviembre de 2009

Carga horaria total: 20 horas

Objetivos

La importancia de un buen gobierno corporativo ha quedado de manifiesto a raíz de escándalos corporativos a nivel mundial y, especialmente, en el llamado credit crunch. Las TI, como elemento que gestiona, produce y manipula la información, son un elemento más del gobierno corporativo. En este sentido, las organizaciones deben implementar y gestionar mecanismos de gobernanza de TI que permitan que la información sea tratada de forma correcta, pero también gestionar las TI como un activo más de las organizaciones, de tal forma que aporten el máximo valor a las mismas, minimizando los riesgos. Este curso busca profundizar en la gobernanza de TI en las empresas, particularmente en las empresas pequeñas y medianas (PYMEs) las que suponen más del 90% del tejido mundial, y que tienen unas peculiaridades asociadas al tamaño.

Contenidos

1) Gobierno corporativo. De la gobernanza al gobierno corporativo, y a la gobernanza de TI.

2) Gobernanza de TI

3) Marcos de trabajo y estándares. IT Governance Institute, CISR, Forrester, Van Grembergen, ISO 38.500, Calder-Moir, CIGREF.

4) Elementos de la gobernanza de TI. Alineamiento estratégico, Aportación de valor, Procesos, Estructuras, Riesgo, Compliance, Gestión de recursos

5) Gobernanza de TI en empresas de tipo PyME


Método de Evaluación

Se realizará mediante el desarrollo de un tema que se propondrá a cada alumno. Estos trabajos serán remitidos a Madrid para su evaluación.


Bibliografía


- AECA (2.007). "Gobierno y responsabilidad social de la empresa."

- BancoMundial (1.994). "Managing development. The governance dimension." Banco Mundial.

- CIMA, I. (2.003). Enterprise Governance. Getting the balance right., CIMA, IFAC.

- COSO (2.004). Enterprise Risk Management – Integrated Framework (Executive Summary).

- FRC (2.005). Internal Control. Revised Guide for Directors on the Combined Code, The Financial Reporting Council.

- UNDP (1.996). "Public sector management, governance and sustainable human development." UNDP.

- OCDE (2004). "OECD Principles of Corporate Governance."

- Weill, P. y. R., J. W. (2.003). IT Governance. How top performers manage IT decision for superior results.

- Calder, A. (2.007). IT Governance Pocket Guide, IT Governance Publishing.

- ISO (2008). ISO / IEC 38500:2008. Corporate Governance for Information Technology. ISO.

- ITGI (2.006). Enterprise Value: Governance of IT Investments. The Val IT Framework. I. G. Institute.

- ITGI (2.007). Control Objectives for Information and Related Technology, versión 4.1, IT Governance Institute.

- ITGI (2.008). Enterprise Value: Governance of IT Investments. The Val IT Framework 2.0, IT Governance Institute.

- ITGI (2.009). Enterprise Risk: Identigy, govern and manage risk. The Risk IT Framework. IT Governande Institute.

- Van Grembergen, W. (2.004). Strategies for Information Technology Governance.

- Weill, P. y Broadbent, M. (1.998). Leveraging the new infrastructure. Harvard Business School Press.

- Weill, P. y. Ross, Jeanne W. (2.003). IT Governance. How top performers manage IT decision for superior results.

- ITGI (2.007). Control Objectives for Information and Related Technology, versión 4.1, IT Governance Institute.

- ITGI (2.008). Enterprise Value: Governance of IT Investments. The Val IT Framework 2.0, IT Governance Institute.

- Luftman, J. (2.000). "Assessing business-IT alignment maturity." Communications of the Association for Information Systems 4.

- Van Grembergen, W. (2.004). Strategies for Information Technology Governance.

- Weill, P. y. R., J. W. (2.003). IT Governance. How top performers manage IT decision for superior results.

- Westermann, G. y Hunter, R. (2.007). IT Risk. Turning Business Threats into competitive advantage. Harvard Business School Press.

- Olivares C., Giraldo O.L., Guía para apropiación de Gobierno de TI en Pymes colombianas, 4º Congreso Colombiano de Computación, Bucaramanga, Abril 23-25/2009

- Giraldo O. L., Rueda M. M., Diagnóstico de la Gobernabilidad de las Tecnologías de Información en la Pyme Colombiana, ALAS 2007, 2º encuentro regional de la Asociación Latinoamericana Sistémica, Ibagué- Colombia, Julio 26- 28 de 2007

- Arroyo, A., Carrillo, J. “Análisis de la Gobernanza de TI en las empresas españolas. Definición de un marco de trabajo en las PYMEs españolas”. 6ª Conferencia Iberoamericana en Sistemas, Cibernética e Informática. July, 12-15, 2.007. Orlando. USA.

- Arroyo, A., Carrillo, J. “Defining a framework to implement IT Governance in Spanish SMEs. From theory to the real world”. 5th Annual SEPG(SM) Australia Conference 2.007. August, 28-31. Goald Coast. Australia.

- Arroyo, A., Carrillo, J. “La gobernanza de las TI en las pequeñas organizaciones españolas. Definición de un marco de trabajo en las PYMEs españolas”. 2ª Conferencia Ibérica de Sistemas y Tecnologías de la Información. June 21-23, 2.007. Oporto (Portugal).

- Arroyo, A., Carrillo, J. “Buenas prácticas en la Gobernanza de las TI en las organizaciones pequeñas y PYMEs en España”. 3ª Conferencia Ibérica de Sistemas y Tecnologías de la Información. June 19-21, 2.008. Orense. Spain.

- Arroyo, A., Carrillo, J. “Identifying IT Governance best practices in Spanish Small and Medium Organizations. IADIS Conference”. February, 25-27. Barcelona. Spain.

Gestión cuantitativa de Procesos de Software

7 al 11 de setiembre de 2009

Carga horaria total: 20 horas

Objetivos

Se define proceso Cuantitativamente Gestionado como un proceso capaz que esta siendo ejecutado y mantenido por la organización, que la organización esta proponiendo mejoras para evolucionarlo, pero que además esta siendo controlado utilizando técnicas estadísticas u otras técnicas cualitativas de control.

Conseguir un proceso Cuantitativamente es un requisito básico para acceder a los niveles de madurez superiores del modelo de capacidad y madurez integrado (CMMI). Sin embargo, no todas las organizaciones de software que acceden a estos niveles de madurez consiguen resultados tangibles. En este curso veremos las técnicas para conseguir exprimir Alta performance de los procesos de Alta madurez.

Contenidos

1.- Procesos de Desarrollo de Software.

2.- Introducción al Capability Maturity Model Integration (CMMi).

3 – Áreas de Proceso de Alta Madurez.

4 – Framework de gestión de Procesos.

5.- Modelos de Medición y análisis de procesos de software.

6.- Técnicas de gestión cuantitativa de procesos.

7.- Análisis Causal.

Bibliografía

Textos

Chrissis, M.B., M. Konrad, and S. Shrum, CMMI : guidelines for process integration and product improvement. 2nd ed. SEI series in software engineering. 2007, Upper Saddle River, NJ: Addison-Wesley. xxiv, 676 p

Kasse, Tim. Practical Insight into CMMI. Artech House Publishers; 2 edition (August 31, 2008).

Wheeler, Donald, J. Undestandind Variation: The key to managing Chaos. SPC Press, Inc.; 2 Revised edition (January 2000). 187 p

Ebert , Christof. Dumke, Reiner. Software Metrics: Establish - Extract - Evaluate – Execute. Springer; 1 edition (August 30, 2007)


Método de Evaluación

Se propondrán dos trabajos independientes.

1) Análisis de Datos de proyectos de desarrollo.

2) Articulo de investigación.


Ingeniería Web: Evaluación y Análisis de Aplicaciones. Marco de Medición y Evaluación de Calidad: su Aplicabilidad

9 al 13 de febrero de 2008

Carga horaria total: 20 horas

Objetivos

El objetivo del curso consiste en introducir a los alumnos de posgrado en los conceptos de sitios y aplicaciones Web; en especificar requerimientos de calidad para la Web; en avanzar en la teoría de métricas e indicadores con una base ontológica; en comprender un marco de medición y evaluación en base a requerimientos, métricas e indicadores; e incursionar en estrategias y metodologías cuantitativas para la evaluación de sitios y aplicaciones Web. Dicho marco, estrategias y métodos serán desarrollados teniendo en cuenta principios de Ingeniería de Software e Ingeniería Web.

Como resultado los participantes deben ser capaces de identificar requerimientos de calidad tanto en proyectos Web en la fase operativa como en proyectos de desarrollo y, además, aplicar alguno de estos modelos, métodos, y herramientas para la medición, evaluación y comparación de la calidad de aplicaciones Web.

Contenido

1) Ingeniería de Software / Ingeniería Web. Definiciones. Ingeniería Web e Ingeniería de Software: Diferencias y Semejanzas. Propiedades del Software. Propiedades de los Sitios y Aplicaciones Web. Tipos de Aplicaciones Web.

2) Teoría de Métricas e Indicadores. Introducción Conceptual al dominio de Métricas e Indicadores: Ente, Atributo, Concepto Calculable, Métrica, Medida, Unidad, Escala y Tipo de Escala, Indicador Elemental y Global, Criterios de Decisión. Recolección de Datos. Análisis matemáticos y estadísticos permitidos conforme al tipo de escala. Modelo Conceptual para el dominio de Métricas e Indicadores. Fundamentación Ontológica. Análisis de Métricas Web. Ejemplos: Métricas de Enlaces, Métricas de Texto, de Gráficos, de Páginas, de Performance, de Accesibilidad, entre otras. Utilidad del empleo de métricas para actividades de desarrollo y mantenimiento. Métricas y Heurísticas Web. Catálogo de Métricas e Indicadores.

3) Procesos y Marcos para la Medición y Evaluación. Estándares de Proceso de Medición y Evaluación ISO 15939 e ISO 14598. Paradigma GQM (Goal-Question-Metric): Fortalezas y Debilidades. Marco INCAMI (Information Need, Concept model, Attribute, Metric and Indicador) de medición y evaluación. Definición de Requerimientos. Diseño y Ejecución de la Medición. Diseño y Ejecución de la Evaluación. Comparación de GQM con INCAMI. Fortalezas y Debilidades.

4) Aseguramiento y Certificación de Calidad para Productos y Procesos de Software/Web. Introducción al Aseguramiento de Calidad: Estrategias y Actividades. Calidad de Producto y de Proceso. Modelos de Calidad de Producto: Perspectivas. Modelo de Calidad ISO 9126-1. Modelo de Calidad en Uso (ISO 9126-1 y 4). Árbol de Requerimientos. Personalizando un Árbol de Calidad para varios Dominios y, particularmente, para E-commerce. Calidad de Procesos. Introducción a Modelos de Madurez de Procesos: CMMI, ISO 15504 (SPICE). CMMI por Niveles de Madurez. Áreas de Proceso (PA), Metas Específicas (SG), y Prácticas Específicas (SP), entre otros aspectos. Área de Proceso de Medición y Análisis. Utilidad de INCAMI para esta área de proceso.

5) Modelos y Métodos de Evaluación. Categoría de Métodos. Tipos de Métodos y Técnicas de Evaluación: Su aplicabilidad. Dos métodos de Inspección. Metodología WebQEM: Su aplicabilidad. Fases y Actividades. Perfil de Usuario a Evaluar. Diseño e Implementación de la Evaluación Elemental y Global. Recomendaciones. Herramientas desarrolladas. Método basado en revisiones Heurísticas. Fortalezas y Debilidades.

Bibliografía

1. Basili V., Rombach H.D. (1989) “The TAME Project: Towards Improvement-Oriented Software Environments”, IEEE Trans. on Software Engineering, 14(6), pp. 758-773.

2. Deshpande Y., Murugesan S., Ginige A., Hansen S., Schwabe D., Gaedke M., White B. (2002) “Web Engineering”, Journal of Web Engineering, Rinton Press, US, 1(1), pp. 61-73.

3. CMM-CMMI ver recurso SEI en http://www.sei.cmu.edu/cmm/ y en http://www.sei.cmu.edu/cmmi/models/ 4. Covella, G. Olsina, L. (2006). Assessing Quality in Use in a Consistent Way, In Proc. of ACM, Int'l Congress on Web Engineering, (ICWE05), SF, USA, pp.1-8.

5. Fenton, N.E.; Pfleeger, S.L., (1997) “Software Metrics: a Rigorous and Practical Approach”, 2nd Ed., PWS Publishing Company.

6. ISO/IEC 14598-1:1999 “International Standard, Information technology - Software product evaluation - Part 1: General Overview”.

7. ISO/IEC 9126-1 (2001) “International Standard, Software Engineering - Product Quality - Part 1: Quality Model”.

8. ISO/IEC DTR 9126-4 (2001) “Software Engineering - Software Product Quality - Part 4: Quality in Use Metrics”. 9. ISO/IEC 15939 (2002) “Software Engineering - Software Measurement Process”.

10. Kitchenham B.A., Hughes R.T., Linkman S.G. (2001) “Modelling Software Measurement Data”, IEEE Transactions on Software Engineering, 27(9), pp. 788-804.

11. Lafuente, G.H.; Oliveto, J.; Olsina, L.; (2000) Requerimientos de Calidad en Sitios de E-commerce. Proceed. JUCSE 00, Nuevas Tendencias en Ingeniería de Software, Universidad Católica de Santiago del Estero, Arg., ISBN 950-31-0045-3.

12. Molina H., Papa F., Martín M. de los A., Olsina L (2004), “Semantic Capabilities for the Metrics and Indicators Cataloging Web System”. In: Engineering Advanced Web Applications, Matera M. Comai S. (Eds.), Rinton Press Inc., US, pp. 97-109, ISBN 1-58949-046-0.

13. Nielsen, J., 1995-2008, La columna Alertbox (contiene columnas sobre evaluación heurística, entre otras) http://www.useit.com/alertbox/

14. Oliveto, J.; Lafuente, G.H.; Bernábe Ma B.; Olsina, L.; (2004) “Estudio de Atributos de Calidad en Sitios de E-commerce Argentinos” CACIC2004, X Congreso Argentino de Ciencias de la Computación, La Matanza, Arg. (artículo en CD-ROM)

15. Olsina, L.; Lafuente, G.; Rossi, G.; (2000), E-commerce Site Evaluation: a Case Study; In LNCS 1875 of Springer, 1st International Conference on Electronic Commerce and Web Technologies, EC-Web, London, UK, pp. 239-252, , ISBN 3-540-67981-2

16. Olsina L., Rossi G. (2002) “Measuring Web Application Quality with WebQEM”, IEEE Multimedia, 9(4), pp. 20-29. 17. Olsina L., Martín M. (2004) Ontology for Software Metrics and Indicators, Journal of Web Engineering, Rinton Press, US, Vol 2 Nº 4, pp. 262-281, ISSN 1540-9589.

18. Olsina L., Covella G., Rossi G. (2005) “Web Quality” (Chapter), In a Springer Book titled Web Engineering: Emilia Mendes & Nile Mosley (Eds).

19. Olsina L., Molina, H; Papa, F.; (2005); Organization-Oriented Measurement and Evaluation Framework for Software and Web Engineering Projects, In Lecture Notes in Computer Science of Springer, Int’l Congress on Web Engineering, (ICWE05), Sydney, Australia.

20. Olsina, L, Papa, F., Molina, H. (2007) How to Measure and Evaluate Web Applications in a Consistent Way. Chapter Thirteenth in Springer Book, Human-Computer Interaction Series, titled Web Engineering: Modelling and Implementing Web Applications; Rossi, Pastor, Schwabe, & Olsina (Eds.).

21. Olsina L.; Rossi, G; Garrido, A.; Distante, D.; Canfora, G.; (2007) Incremental Quality Improvement in Web Applications Using Web Model Refactoring, Proceed. of Springer LNCS 4832, 1st Int’l Workshop on Web Usability and Accessibility (IWWUA’07), M. Weske, M.-S. Hacid, C. Godart (Eds.): WISE 2007 Workshops, pp. 411–422.

22. Pfleeger, S. L., 1993, Lessons Learned in Building a Corporate Metric Program, IEEE Software, Vol. 10, No. 3, pp. 67-74.

23. Wohlin, C. et al (2000) “Experimentation in Software Engineering”, Kluwer Academic Publishers.

24. W3C, WWW Consortium, (2002) “RDF Primer”, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-primer-20040210/


Entornos Virtuales Inteligentes

27 al 31 de octubre de 2008

Carga horaria total: 20 horas

Objetivos:

-Conocer los diferentes tipos de Entornos Virtuales que existen

- Conocer las herramientas y lenguajes que se pueden utilizar para el desarrollo de entornos virtuales

- Conocer la arquitectura hardware y software necesaria para implementar un Entorno Virtual Distribuido

- Conocer los dispositivos de realidad virtual más utilizados

- Entender los principales problemas de interacción persona-ordenador que se presentan en un Entorno Virtual

- Entender los avatares como representaciones de los participantes en un Entorno Virtual

- Conocer el papel que los agentes inteligentes pueden desempeñar en un Entorno Virtual

- Conocer las principales aplicaciones de los Entornos Virtuales Inteligentes
- Conocer las posibilidades de la utilización de Agentes autónomos como supervisores del aprendizaje

- Conocer las posibilidades de la realidad virtual como herramienta de entrenamiento

Contenido: 1. Introducción a los Entornos Virtuales

a) Tipos. Conceptos básicos

b) Dispositivos de Realidad Virtual

c) Realidad Aumentada

d) Aplicaciones de los Entornos Virtuales: juegos, entornos sociales, simulación, formación y entrenamiento

2. Desarrollo de Entornos Virtuales

a) Herramientas para la construcción de un Entorno Virtual tridimensional

b) Metodologías de Desarrollo

3. Agentes Virtuales Inteligentes

a) Arquitecturas

b) Percepción

3. Razonamiento. Arquitectura COGNITIVA

4. Conocimiento del mundo. Creencias. Ontologías

5. Capacidades. Planificación del comportamiento.

6. Actuación. Navegación. Animación

7. Comunicación verbal y no verbal

4. Entornos Virtuales para Entrenamiento y Agentes Virtuales Pedagógicos

5. Proyectos y líneas de investigación en la UPM-LDC


Bibliografía: - Animated agents for procedural training in virtual reality: Perception, cognition and motor control. Rickel, J., Johnson, W. L. Applied Artificial Intelligence 13, 343-382, 1999.

- Virtual Reality: The Revolutionary Technology of Computer-Generated Artificial Worlds - And How it Promises to Transform Society, Howard Rheingold, Simon & Schuster, 1992

- Understanding Virtual Reality: Interface, Application, and Design, William R. Sherman, Alan Craig, Morgan Kaufmann, 2003

- Designing Virtual Worlds, Richard Bartle, New Riders Games, 2003

- 3D User Interfaces: Theory and Practice, Doug A. Bowman, Ernst Kruijff, Joseph J. LaViola, Ivan Poupyrev, Addison-Wesley Professional, 2004 * Gratch, J.; Rickel, J. et al “Creating Interactive Virtual Humans: some assembly required” IEEE Intelligent systems july/august 2002, pp.2-11.

- Bowman 1997. D.A. Bowman, L.F. Hodges (1997). An Evaluation of Techniques for Grabbing and Manipulating Remote Objects in Immersive Virtual Environments. Proceedings of the ACM Symposium on Interactive 3D Graphics, pp. 35-38.

- Proceedings, International Conference on Intelligent Virtual Agents (IVA)

- Proceedings, ACM Symposium on Virtual Reality Software and Technology (VRST)

- Proceedings, IEEE Virtual Reality (VR)

- Proceedings, Eurographics Symposium on Virtual Environments (EGVE)

- Proceedings, Virtual Reality International Conference (VRIC)

- Proceedings AAMAS 2008, Track on Virtual Agents

- Proceedings, International Conference on Intelligent Virtual Environments and Virtual Agents (IVEVA)

- Presence and Teleoperators in Virtual Environments journal

- Virtual Reality journal, Springer

- International Journal of Virtual Reality (IJVR)

- Journal of Autonomous Agents and Multiagent Systems

Método de Evaluación: Realización de un trabajo de investigación breve, de forma individual, sobre la temática de la asignatura.


Gestión de Calidad y Mejora del Proceso en Proyectos Informáticos

5 al 11 de agosto de 2008

Carga horaria total: 20 horas

Objetivos

La asignatura versa sobre la calidad y la mejora de los procesos. El propósito es trabajar sobre dos tópicos que son importantes para las empresas de tecnología de software. Las organizaciones actualmente están inmersas en un proceso de mejora continua para conseguir cuota de mercado y sobrevivir. Para ello, una estrategia es mejorar internamente sus procesos y obtener productos de calidad. Sin embargo, se necesita una formación es aspectos clave de la calidad como es la medición y enlace con los objetivos del negocio y la puesta en práctica de la mejora de procesos mediante la definición y evaluación de los mismos.

Contenido

1. Problemática de la situación actual a) Por qué no se alcanza la calidad y fallan las mejoras del proceso? b) Nuevo entorno para las IT (Information Technology)

2. Gestión de la Calidad a) Fundamentos de la calidad b) Medición de la Calidad c) Planificación de la Calidad d) Seguimiento y análisis de la calidad

3. Mejora del proceso a) Características de la mejora de procesos. b) Modelos de mejora del proceso software c) Evaluación de los procesos d) Definición y mejora de los procesos e) Aproximación práctica: Auto-evaluación.


Bibliografía

Watts S. Humphrey, Winning with Software: An Executive Strategy, SEI Series Addison Wesley, 2002 CMMI Survival Guide: Just Enough Process Improvement, Suzanne Garcia & Richard Turner, Addison Wesley, 2006. The Six Sigma WayTeam Fieldbook, Peter S. Pande & Robert P. Newman, McGrawHill 2002. Deriving Enterprise-Based Measures using the Balanced Scorecard and Goal-Driven Measurement Techniques, Wolfhart Goethert & Matt Fisher, October 2003, http://www.sei.cmu.edu/publications/documents/03.reports/03tn024.html


Método de Evaluación

Se propondrán diferentes temas a los participantes para que los preparen individual o de manera colaborativa. Estos trabajos necesitarán de una participación activa.


Ingeniería Web: Evaluación y Análisis de Aplicaciones. Marco de Medición y Evaluación de Calidad: su Aplicabilidad

11 al 15 de Febrero de 2008

Carga horaria total: 20 horas

Objetivos

El objetivo del curso consiste en introducir a los alumnos de posgrado en los conceptos de sitios y aplicaciones Web; en especificar requerimientos de calidad para la Web; en avanzar en la teoría de métricas e indicadores con una base ontológica; en comprender un marco de medición y evaluación en base a requerimientos, métricas e indicadores; e incursionar en estrategias y metodologías cuantitativas para la evaluación de sitios y aplicaciones Web. Dicho marco, estrategias y métodos serán desarrollados teniendo en cuenta principios de Ingeniería de Software e Ingeniería Web. Como resultado los participantes deben ser capaces de identificar requerimientos de calidad tanto en proyectos Web en la fase operativa como en proyectos de desarrollo y, además, aplicar alguno de estos modelos, métodos, y herramientas para la medición, evaluación y comparación de la calidad de aplicaciones Web.

Contenido

1) Ingeniería de Software / Ingeniería Web. Definiciones. Ingeniería Web e Ingeniería de Software: Diferencias y Semejanzas. Propiedades del Software. Propiedades de los Sitios y Aplicaciones Web. Tipos de Aplicaciones Web.

2) Teoría de Métricas e Indicadores. Introducción Conceptual al dominio de Métricas e Indicadores: Ente, Atributo, Concepto Calculable, Métrica, Medida, Unidad, Escala y Tipo de Escala, Indicador Elemental y Global, Criterios de Decisión. Recolección de Datos. Análisis matemáticos y estadísticos permitidos conforme al tipo de escala. Modelo Conceptual para el dominio de Métricas e Indicadores. Fundamentación Ontológica. Análisis de Métricas Web. Ejemplos: Métricas de Enlaces, Métricas de Texto, de Gráficos, de Páginas, de Performance, de Accesibilidad, entre otras. Utilidad del empleo de métricas para actividades de desarrollo y mantenimiento. Métricas y Heurísticas Web. Catálogo de Métricas e Indicadores.

3) Procesos y Marcos para la Medición y Evaluación. Estándares de Proceso de Medición y Evaluación ISO 15939 e ISO 14598. Paradigma GQM (Goal-Question-Metric): Fortalezas y Debilidades. Marco INCAMI (Information Need, Concept model, Attribute, Metric and Indicador) de medición y evaluación. Definición de Requerimientos. Diseño y Ejecución de la Medición. Diseño y Ejecución de la Evaluación. Comparación de GQM con INCAMI. Fortalezas y Debilidades.

4) Aseguramiento y Certificación de Calidad para Productos y Procesos de Software/Web. Introducción al Aseguramiento de Calidad: Estrategias y Actividades. Calidad de Producto y de Proceso. Modelos de Calidad de Producto: Perspectivas. Modelo de Calidad ISO 9126-1. Modelo de Calidad en Uso (ISO 9126-1 y 4). Árbol de Requerimientos. Personalizando un Árbol de Calidad para varios Dominios y, particularmente, para E-commerce. Calidad de Procesos. Introducción a Modelos de Madurez de Procesos: CMMI, ISO 15504 (SPICE). CMMI por Niveles de Madurez. Áreas de Proceso (PA), Metas Específicas (SG), y Prácticas Específicas (SP), entre otros aspectos. Área de Proceso de Medición y Análisis. Utilidad de INCAMI para esta área de proceso.

5) Modelos y Métodos de Evaluación. Categoría de Métodos. Tipos de Métodos y Técnicas de Evaluación: Su aplicabilidad. Dos métodos de Inspección. Metodología WebQEM: Su aplicabilidad. Fases y Actividades. Perfil de Usuario a Evaluar. Diseño e Implementación de la Evaluación Elemental y Global. Recomendaciones. Herramientas desarrolladas. Método basado en revisiones Heurísticas. Fortalezas y Debilidades.

Bibliografía

1. Basili V., Rombach H.D. (1989) “The TAME Project: Towards Improvement-Oriented Software Environments”, IEEE Trans. on Software Engineering, 14(6), pp. 758-773.

2. Deshpande Y., Murugesan S., Ginige A., Hansen S., Schwabe D., Gaedke M., White B. (2002) “Web Engineering”, Journal of Web Engineering, Rinton Press, US, 1(1), pp. 61-73.

3. CMM-CMMI ver recurso SEI en http://www.sei.cmu.edu/cmm/ y en http://www.sei.cmu.edu/cmmi/models/

4. Covella, G. Olsina, L. (2006). Assessing Quality in Use in a Consistent Way, In Proc. of ACM, Int'l Congress on Web Engineering, (ICWE05), SF, USA, pp.1-8.

5. Fenton, N.E.; Pfleeger, S.L., (1997) “Software Metrics: a Rigorous and Practical Approach”, 2nd Ed., PWS Publishing Company.

6. ISO/IEC 14598-1:1999 “International Standard, Information technology - Software product evaluation - Part 1: General Overview”.

7. ISO/IEC 9126-1 (2001) “International Standard, Software Engineering - Product Quality - Part 1: Quality Model”.

8. ISO/IEC DTR 9126-4 (2001) “Software Engineering - Software Product Quality - Part 4: Quality in Use Metrics”.

9. ISO/IEC 15939 (2002) “Software Engineering - Software Measurement Process”.

10. Kitchenham B.A., Hughes R.T., Linkman S.G. (2001) “Modelling Software Measurement Data”, IEEE Transactions on Software Engineering, 27(9), pp. 788-804.

11. Lafuente, G.H.; Oliveto, J.; Olsina, L.; (2000) Requerimientos de Calidad en Sitios de E-commerce. Proceed. JUCSE 00, Nuevas Tendencias en Ingeniería de Software, Universidad Católica de Santiago del Estero, Arg., ISBN 950-31-0045-3

12. Molina H., Papa F., Martín M. de los A., Olsina L (2004), “Semantic Capabilities for the Metrics and Indicators Cataloging Web System”. In: Engineering Advanced Web Applications, Matera M. Comai S. (Eds.), Rinton Press Inc., US, pp. 97-109, ISBN 1-58949-046-0.

13. Nielsen, J., 1995-2008, La columna Alertbox (contiene columnas sobre evaluación heurística, entre otras) http://www.useit.com/alertbox/

14. Oliveto, J.; Lafuente, G.H.; Bernábe Ma B.; Olsina, L.; (2004) “Estudio de Atributos de Calidad en Sitios de E-commerce Argentinos” CACIC2004, X Congreso Argentino de Ciencias de la Computación, La Matanza, Arg. (artículo en CD-ROM)

15. Olsina, L.; Lafuente, G.; Rossi, G.; (2000), E-commerce Site Evaluation: a Case Study; In LNCS 1875 of Springer, 1st International Conference on Electronic Commerce and Web Technologies, EC-Web, London, UK, pp. 239-252, , ISBN 3-540-67981-2

16. Olsina L., Rossi G. (2002) “Measuring Web Application Quality with WebQEM”, IEEE Multimedia, 9(4), pp. 20-29.

17. Olsina L., Martín M. (2004) Ontology for Software Metrics and Indicators, Journal of Web Engineering, Rinton Press, US, Vol 2 Nº 4, pp. 262-281, ISSN 1540-9589.

18. Olsina L., Covella G., Rossi G. (2005) “Web Quality” (Chapter), In a Springer Book titled Web Engineering: Emilia Mendes & Nile Mosley (Eds).

19. Olsina L., Molina, H; Papa, F.; (2005); Organization-Oriented Measurement and Evaluation Framework for Software and Web Engineering Projects, In Lecture Notes in Computer Science of Springer, Int’l Congress on Web Engineering, (ICWE05), Sydney, Australia.

20. Olsina, L, Papa, F., Molina, H. (2007) How to Measure and Evaluate Web Applications in a Consistent Way. Chapter Thirteenth in Springer Book, Human-Computer Interaction Series, titled Web Engineering: Modelling and Implementing Web Applications; Rossi, Pastor, Schwabe, & Olsina (Eds.).

21. Olsina L.; Rossi, G; Garrido, A.; Distante, D.; Canfora, G.; (2007) Incremental Quality Improvement in Web Applications Using Web Model Refactoring, Proceed. of Springer LNCS 4832, 1st Int’l Workshop on Web Usability and Accessibility (IWWUA’07), M. Weske, M.-S. Hacid, C. Godart (Eds.): WISE 2007 Workshops, pp. 411–422.

22. Pfleeger, S. L., 1993, Lessons Learned in Building a Corporate Metric Program, IEEE Software, Vol. 10, No. 3, pp. 67-74.

23. Wohlin, C. et al (2000) “Experimentation in Software Engineering”, Kluwer Academic Publishers.

24. W3C, WWW Consortium, (2002) “RDF Primer”, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-primer-20040210/

Método de Evaluación

El curso se aprueba mediante la presentación de un trabajo monográfico final, luego de la actividad presencial, como producto del proceso de aprendizaje teórico-práctico.

Fundamentos de Programación Lógica

1 al 17 de agosto de 2007

Carga horaria total: 24 horas

Objetivos

Se pretende transmitir a los participantes los fundamentos básicos del paradigma de programación lógica, presentando la lógica como herramienta para la resolución de problemas y la representación del conocimiento. Se impartirán las bases fundamentales para la utilización de lenguajes de programación lógicos, en particular del uso del lenguaje Prolog, presentando las técnicas clásicas de programación en este lenguaje, y las principales áreas de aplicación de las mismas.

Contenido

1. Elementos básicos de un programa lógico: hechos, consultas, variables, reglas.

2. Modelo computacional y semántica de los programas lógicos.

3. Prolog puro: técnicas y estilos de programación.

4. Predicados aritméticos, predicados extra-lógicos, cut, negación. 5. Aplicaciones y técnicas avanzadas de programación: estrategias de búsqueda, programación en segundo orden, gramáticas lógicas, intérpretes y meta intérpretes.


Bibliografía

L. Sterling, E. Shapiro: The Art of Prolog (2nd ed). The MIT Press, Cambridge, Massachusetts, London, England (1986)

Ulf Nilsson and Jan Maluszynski: Logic, programming and Prolog (2nd ed). John Wiley and Sons, New York, NY, 1995.

W. F. Clocksing and C. S. Mellish : Programming in Prolog (3ª ed) Springer-Verlag, Berlin 1987.

J. W. Lloyd: Foundations of Logic Programming (2nd ed). Springer-Verlag, Berlin, 1989.

R. Kowalski: Logic for Problem Solving. Artificial Intelligence Series. North Holland, New York, NY, 1979.

Método de Evaluación

Entrega de trabajo obligatorio


Nombre de la asignatura: Calidad del Software: Medidas y Modelos

5 al 9 de marzo de 2007
Duración: 20 horas

La calidad del software es un tema de actualidad y es necesario saber definir adecuadamente la calidad de un sistema informático y cómo evaluar dicha calidad mediante la utilización correcta de medidas. Las medidas constituyen un aspecto fundamental para todos los ingenieros y, por tanto, los ingenieros del software deben conocer algunos aspectos de la teoría de medidas aplicadas a la ingeniería del software. Se han publicado gran cantidad de medidas del software, que miden distintos aspectos del software, pero no siempre todas ellas resultan apropiadas. Los Modelos de Calidad permiten descomponer la calidad en diversos factores que permiten obtener una estimación del valor de calidad de un sistema, mediante la aplicación de las medidas oportunas. Por último, los resultados proporcionados por un modelo que evalúe la calidad del software pueden aprovecharse para mejorar el proceso software personal o corporativo.

Índice de contenidos

1. Introducción

2. Control de la Calidad del Software

3. Garantía de Calidad

4. Gestión de Calidad

5. Introducción a las Medidas

6. Teoría de Medidas

7. Medidas en Ingeniería del Software

8. Modelos de Calidad del Software

9. Mejora del Proceso Software

10. Experimentación

11. Conclusiones

12. Futuras Líneas de Investigación

Bibliografía:

Abreu, F. B.; Carapuça, R.: “Candidate Metrics for Object-Oriented Software within a Taxonomy Framework”, Journal of Systems and Software, 26(1), julio, 1994, págs. 87-96.

Alonso, F.; Fuertes, J. L.; Montes, C.; Navajo, R. J.: “A Quality Model: How to Improve the Object-Oriented Software Process”, Proc. IEEE Systems, Man, and Cybernetics 1998 (IEEE SMC’98), San Diego, octubre, 1998, págs. 4884-4889.

Andrews, A. A.: “Learning to Measure or Measuring to Learn?”, Proc. Seventh International Software Metrics Symposium (METRICS 2001), Londres, abril, 2001, págs. 2-3.

Balla, K.; Bemelmans, T.; Kusters, R.; Trienekens, J.: “QMIM: Quality through Managed Improvement and Measurement”, Proc. ESCOM 2001, Londres, abril, 2001, págs. 315-326.

Bansiya, J.; Davis, C. G.: “A Hierarchical Model for Object-Oriented Design Quality Assessment”, IEEE Transactions on Software Engineering, 28(1), 2002, págs. 4-17.

Basili, V. R.: Tutorial on Models and Metrics for Software Management and Engineering, IEEE Computer Society Press, Nueva York, 1980.

Berry, M.; Vandenbroeck, M. F.: “A Targeted Assessment of the Software Measurement Process”, Proc. Seventh International Software Metrics Symposium (METRICS 2001), Londres, abril, 2001, págs. 222-235.

Bobkowska, A.: “Quantitative and Qualitative Methods in Process Improvement and Product Quality Assessment”, Proc. ESCOM 2001, Londres, abril, 2001, págs. 347-356.

Boehm, B. W.; Brown, J. R.; Kaspar, H.; Lipow, M.; MacLeod, G. J.; Merrit, M. J.: Characteristics of Software Quality, North-Holland, Nueva York, 1978.

Boloix, G.: “System Evaluation and Quality Improvement”, Journal of Systems and Software, 36(3), marzo, 1997, págs. 297-311.

Briand, L. C.; Wüst, J.; Daly, J. W.; Porter, D. V.: “Exploring the Relationships between Design Measures and Software Quality in Object-Oriented Systems”, Journal of Systems and Software, 51(3), mayo, 2000, págs. 245-274.

Brooks, F. P.: “No Silver Bullets: Essence and Accidents of Software Engineering”, IEEE Computer, 20(4), abril, 1987, págs. 10-19.

Cavano, J. P.; McCall, J. A.: “A Framework for the Measurement of Software Quality”, Proc. ACM Software Quality Assurance Workshop, noviembre, 1978, págs. 133-139.

Chidamber, S. R.; Kemerer, C. F.: “A Metrics Suite for Object Oriented Design”, IEEE Transactions on Software Engineering, 20(6), junio, 1994, págs. 476-493.

Etzkorn, L.; Bansiya, J.; Davis, C.: “Design and Code Complexity Metrics for OO Classes”, Journal of Object-Oriented Programming, 12(1), marzo-abril, 1999, págs. 35-40.

Fenton, N. E.: Software Metrics: a Rigorous Approach, Chapman & Hall, Londres, 1991.

Fuertes, J. L.: “Calidad del Software”, Cuadernos de Informática, 1, Federación Española de Sociedades de Informática, Madrid, marzo, 1999, págs. 19-72.

Gillies, A. C.: Software Quality: Theory and Management, Chapman & Hall, Londres, 1992.

Hall, T.; Baddoo, N.; Wilson, D. N.: “Measurement in Software Process Improvement Programmes: An Empirical Study”, en Dumke/Abran New Approaches in Software Measurement, Springer Publ., 2001, págs. 73-82.

Halstead, M. H.: Elements of Software Science, Elsevier North-Holland, Nueva York, 1977.

Henderson-Sellers, B.: “OO Software Process Improvement with Metrics”, Proc. 6th International Symposium on Software Metrics (METRICS’99), Boca Ratón, Florida, noviembre, 1999, págs. 2-8.

Humphrey, W. S.: Managing the Software Process, Addison-Wesley, Reading, Massachusetts, 1989. ISO: Software Quality Characteristics and Metrics– Part 1: Quality Characteristics and Sub-characteristics, ISO/IEC 9126-1, International Organization of Standardization, 1997.

Jones, C.: “Software Quality in 2001– A Survey of the State of the Art”, Proc. International Conference on Practical Software Quality Techniques (PSQT 2001 East), Orlando, Florida, abril, 2001.

Kirsopp, C.: “Measurement and the Software Development Process”, Proc. ESCOM 2001, Londres, abril, 2001, págs. 165-173.

Li, W.; Henry, S.; Kafura, D.; Schulman, R.: “Measuring Object-Oriented Design”, Journal of Object-Oriented Programming, 8(4), julio-agosto, 1995, págs.48-55.

Saaty, T. L.: “How to Make a Decision: The Analytic Hierarchy Process”, European Journal of Operational Research, 48, 1990, págs. 9-26.

Weyuker, E. J.: “Evaluating Software Complexity Measures”, IEEE Transactions on Software Engineering, 14(9), septiembre, 1988, págs. 1357-1365.

Durante el curso se entregará un listado de bibliografía adicional.


"Ingeniería del Conocimiento y Gestión del Conocimiento"

12 al 16 de febrero de 2007

Docente: Juan Pazos Sierra

Duración: 20 horas

1. Definición de la Gestión del Conocimiento e Importancia de la Gestión de Conocimiento en el mundo actual.

2. El objeto de la Gestión: Los Conocimientos.

3. Conceptualizacion de Problemas.

4. Herramientas para la Gestión de Conocimientos: Mapas de Conocimientos,Matrices FADO, Memorias Instituciones, "Mapas de Carreteras", etc.

5. Metodología para la GC.


Bibliografía

"Ingeniería del Conocimiento". Asunción Gómez, Natalia Juristo, César Montes, Juan Pazos. Editorial Centro de Estudios Ramón Areces, S.A.

"Gestión del Conocimiento". Anselmo del Moral, Juan Pazos, Estebán Rodríguez, Alfonso Rodríguez-Patón, Sonia Suárez. Editorial Thomson-Paraninfo.


Introducción a la algorítmica y criptografía cuánticas

21 al 28 de setiembre de 2006

Duración: 18 horas

La Computación Cuántica es un área de investigación muy reciente. Arranca en la década de los ochenta, a propuesta de Paul Benioff, David Deutsch y Richard Feynman, y se consolida en la siguiente década con el descubrimiento, por parte de Peter W. Shor, de un algoritmo polinomial para factorizar números enteros. Su principal objetivo es el desarrollo de un ordenador que utilice la evolución de estados cuánticos como herramienta de cálculo.

Este curso discutirá las bases de la computación cuántica, la unidad básica de información cuántica: el qubit (quantum bit), las compuertas cuánticas y los estados entrelazados. Se detallarán los algoritmos cuánticos conocidos y los protocolos cuánticos más importantes de criptografía. En una segunda etapa se incluirán temas mas específicos como corrección de errores, entropía y medidas de información cuántica. Se piensa hoy en día que la propiedad denominada paralelismo cuántico y el entrelazamiento de estados, puede hacer que la computación cuántica sea más potente que la computación clásica.

Contenido del curso

Sesión 1: Modelo cuántico de computación: a) Representación de la información. b) Transformación de la información. c) Medida de la información. d) Algoritmos cuánticos. Ejemplo: problema de Deutsch.

Sesión 2: Algoritmos básicos: a) Problema de Deutsch-Jozsa. b) Problema de Simon. c) Algoritmo de Grover. d) Complejidad del problema de búsqueda no estructurada. e)Sesión de problemas 1.

Sesión 3: Transformada cuántica de Fourier (QFT): a) Algoritmos cuánticos para la QFT. b) Estimación de autovalores.

Sesión 4: Factorización de números enteros: a) Problema clásico de factorización. b) Algoritmo de Shor. c) Sesión de problemas 2.

Sesión 5: Criptografía cuántica: a) Protocolo BB84. b) Protocolo B92. c) Protocolo basado en pares EPR.

Sesión 6: Seguridad de los protocolos criptográficos: a) Demostración de Lo-Chau. b) Unificación de la clave. c) Aumento de la privacidad de la clave. d) Sesión de problemas 3.

Sesión 7: Códigos correctores: a) Esquema general. b) Códigos CSS.c) Códigos estabilizadores.

Sesión 8: Computación tolerante a fallos: a) Modelos de error. b) Teorema del threshold. c) Modelos continuos de error. d) Sesión de problemas 4.

Sesión 9: Medidas de información cuántica: a) Traza. b) Fidelidad. c) Entropía: información mutua y entrelazamiento. d) Sesión de problemas 5. Sesión Final

Bibliografía:

- "Quantum Computation and Quantum Information"; Michel A. Nielsen & Isaac L. Chuang; Cambridge University Press.


Metodología de la Investigación

14 al 24 de agosto de 2006
Carga horaria total: 18 horas

Objetivos: Guiar a candidatos a doctorado y estudiantes en general, sobre cómo desarrollar una investigación científica. No se trata de un curso teórico, más bien es un caso de estudio (mi experiencia doctoral).

Contenidos:

1. Los ciclos de aprendizaje

2. Identificación de la idea a investigar

3. Establecimiento de la propuesta inicial de investigación

4. Desarrollo del marco teórico

5. Revisión de la literatura

6. Construcción del marco teórico

7. Plantear el problema de investigación. Objetivos, preguntas de investigación, y justificación de la necesidad de la investigación

8. Definición de la estrategia de investigación. Detectar variables y relaciones. Qué tipo de experimentos emplear. Ejecutar el plan de trabajo. Recolección de datos. Validez y confiabilidad de la recolección. Muestreos. Análisis de resultados. Elaborar el documento. Defender los resultados.

9. Investigación Científica. El Método Científico. Identificar el problema. Formular hipótesis. Aplicar razonamiento deductivo. Colección de datos y análisis. Derivar conclusiones.

10. Ejemplo Parte 1: Propuesta de Investigación Repartido # 1

11. Ejemplo Parte 2: Planteo del Problema

12. El marco teórico. Ejemplo.

13. Tipos de Investigación. Investigaciones exploratorias. Investigaciones descriptivas. Investigaciones correlacionales. Investigaciones explicativas.

14. Experimentos y validación.

15. Análisis estadístico. Ejemplos.

16. Cómo escribir un paper.

Referencias

Hernandez et al., 1998. Metodología de la Investigación. McGraw Hill, 1998.

Campbell & Stanley, 1966. Experimental and Quasi-experimental Designs for Research. Rand McNally, 1966.

Cook & Campbell, 1976. The Design and Conduct of Quasi-Experiments and True Experiments in Field Settings. In Handbook of Industrial and Organizational Psychology. Rand-McNally. Dunnette (editor), 1976.


La Gestión de Carteras de Proyectos Informáticos

7 al 11 de agosto de 2006

La gestión de la Ingeniería de Software se desarrolla a tres niveles distintos dentro de una Organización: Gestión Organizacional, Gestión de Procesos/Proyectos y Gestión de Medida del Software Nivel Organizacional. Dentro del Nivel Organizacional uno de los procesos clave es la Gestión de Carteras de Proyectos (Portfolio Management) (Swebok,2004). En las gestión de estas carteras se utilizan técnicas financieras de análisis similares a las que se utilizan en la gestión de carteras de inversiones financieras en las organizaciones.

Sin embargo, la gestión de las Carteras de Proyectos Informáticos tiene aspectos específicos relacionados con las características de los proyectos, su alineamiento con las estrategias de la organización, su priorización y gestión de su desarrollo que tienen que ser tenidos muy en cuenta para rentabilizar las inversiones en los mismos. Todos estos aspectos serán estudiados durante el desarrollo de este curso.

Tema 1º La Gestión de la Ingeniería del Software y la gestión de carteras de proyectos (Portfolio Management).

Tema 2º La importancia estratégica de los sistemas de información.

Tema 3º Técnicas utilizadas en la definición de estrategias de sistemas de información y tecnología de información.

Tema 4º La gestión de la cartera de proyectos. Metodología de Implantación. Herramientas.

Tema 5º Técnicas para la valoración de proyectos de sistemas de información y tecnología de información.

Tema 6º Organización para la gestión de carteras de sistemas de información y tecnología de información.

Duración: 20 horas.

Desarrollo del Curso: Curso eminentemente participativo de los asistentes con presentaciones individuales y trabajo en grupo.

Evaluación del Curso: Se realizará mediante el desarrollo de un tema que se propondrá a cada alumno y la realización de un supuesto de análisis de una Cartera de Proyectos que se realizará en grupo. Estos trabajos serán remitidos a Madrid para su evaluación.

Bibliografía:

· Edwards Chris; John Ward; Bytheway Andy. "The essence of Informations Systems" 2ª Edición 1995 Editor : Adrian Buckley. Prentice Hall.

· Buss, Martin D. "How to Rank Computer Projects". Harvard Business Review. (enero-febrero 1983).

· García - Gutierrez Fernández, Carlos; Mascareñas Pérez, Inigo; Pérez Gorostegui, Eduardo. " Casos prácticos de inversión y financiación de la Empresa". Editorial Pirámide. 1999.

· Parker, Marylin ; Benson, Robert; "Information Economics". Prentice Hall 1988.

· Hares, John; Royle, Duncan; "Measuring the value of Information Technology". John Wiley & Sons 1994.

· Bisynger Bill; Knight, Ken; "Investing in Information Technology". Edit. Van Nostrand Reinhold. 1996.

· Cortada, James W.; "Best Practices in Information Technology ". Prentice Hall NJ. 1997 · McFarlan, F.W. "Connecting the Dots: Aligning Projects with Objectivs in Unpredictable Times". Harvard Business School . Boston. 2003.


Ingeniería Web: Evaluación y Análisis de Aplicaciones

6 al 10 de febrero de 2006
Carga horaria total: 20 horas

Objetivos: El objetivo del curso de postgrado consiste en sentar las bases de estrategias para especificación y evaluación de requerimientos de calidad; en especificar requerimientos de calidad centrados en modelos, considerando sus distintas perspectivas, para aplicaciones software y Web; en avanzar en la teoría de métricas e indicadores con una base ontológica de utilidad para procesos de medición y evaluación; en comprender un marco de medición y evaluación en base a requerimientos centrados en modelos, métricas e indicadores; e incursionar en estrategias y metodologías cuantitativas (y cualitativas) para la evaluación de aplicaciones software y Web.

Dichas estrategias, marco y métodos serán desarrollados teniendo en cuenta principios de Ingeniería de Software e Ingeniería Web. Como resultado los participantes deben ser capaces de identificar y especificar requerimientos de calidad para distintas necesidades de información, y aplicar el marco para la medición y evaluación, métodos y herramientas a distintos problemas de medición y análisis de procesos y productos software y Web.

Contenidos: 1) Ingeniería de Software / Ingeniería Web. Definiciones. Ingeniería Web e Ingeniería de Software: Diferencias y Semejanzas. Propiedades del Software. Propiedades de los Sitios y Aplicaciones Web. Tipos de Aplicaciones Web.

2) Teoría de Métricas e Indicadores. Introducción Conceptual al dominio de Métricas e Indicadores: Ente, Atributo, Concepto Calculable, Métrica, Medida, Unidad, Escala y Tipo de Escala, Indicador Elemental y Global, Criterios de Decisión. Recolección de Datos. Análisis matemáticos y estadísticos permitidos conforme al tipo de escala. Modelo Conceptual para el dominio de Métricas e Indicadores. Fundamentación Ontológica. Análisis de Métricas Web. Ejemplos: Métricas de Enlaces, Métricas de Texto, de Gráficos, de Páginas, de Performance, de Accesibilidad, entre otras. Utilidad del empleo de métricas para actividades de desarrollo y mantenimiento. Métricas y Heurísticas Web. Catálogo de Métricas e Indicadores.

3) Procesos y Marcos para la Medición y Evaluación. Estándares de Proceso de Medición y Evaluación ISO 15939 e ISO 14598. Paradigma GQM (Goal-Question-Metric): Fortalezas y Debilidades. Marco INCAMI (Information Need, Concept model, Attribute, Metric and Indicador) de medición y evaluación. Definición de Requerimientos. Diseño y Ejecución de la Medición. Diseño y Ejecución de la Evaluación. Comparación de GQM con INCAMI. Fortalezas y Debilidades.

4) Aseguramiento y Certificación de Calidad para Productos y Procesos de Software/Web. Introducción al Aseguramiento de Calidad: Estrategias y Actividades. Calidad de Producto y de Proceso. Modelos de Calidad de Producto: Perspectivas. Modelo de Calidad ISO 9126-1. Modelo de Calidad en Uso (ISO 9126-1 y 4). Árbol de Requerimientos. Personalizando un Árbol de Calidad para varios Dominios y, particularmente, para E-commerce. Calidad de Procesos. Introducción a Modelos de Madurez de Procesos: CMMI, ISO 15504 (SPICE). CMMI por Niveles de Madurez. Áreas de Proceso (PA), Metas Específicas (SG), y Prácticas Específicas (SP), entre otros aspectos. Área de Proceso de Medición y Análisis. Utilidad de INCAMI para esta área de proceso.

5) Modelos y Métodos de Evaluación. Categoría de Métodos. Tipos de Métodos y Técnicas de Evaluación: Su aplicabilidad. Dos métodos de Inspección. Metodología WebQEM: Su aplicabilidad. Fases y Actividades. Perfil de Usuario a Evaluar. Diseño e Implementación de la Evaluación Elemental y Global. Recomendaciones. Herramientas desarrolladas. Método basado en revisiones Heurísticas. Fortalezas y Debilidades.

Bibliografía: 1- Basili V., Rombach H.D. (1989) “The TAME Project: Towards Improvement-Oriented Software Environments”, IEEE Trans. on Software Engineering, 14(6), pp. 758-773.
2- Briand L., Morasca S. and Basili V. (2002) “An Operational Process for Goal-driven Definition of Measures”, IEEE Trans. on Software Engineering, 28(12), pp. 1106-1125.
3-CMM-CMMI ver recurso SEI en http://www.sei.cmu.edu/cmm/ y en http://www.sei.cmu.edu/cmmi/models/
4- Fenton, N.E., Pfleeger, S.L., (1997) Software Metrics: a Rigorous and Practical Approach, 2nd Ed., PWS Publishing Company
5- ISO/IEC 14598-5:1998, Information technology -- Software product evaluation -- Part 5: Process for evaluators
6- ISO/IEC 9126-1: 2001, International Standard, “Software Engineering – Product Quality – Part 1: Quality model”.
7- ISO/IEC 15939: 2002, Software Engineering - Software Measurement Process.
8- Kitchenham B.A., Hughes R.T., Linkman S.G., (2001) Modeling Software Measurement Data. IEEE Transactions on Software Engineering, 27(9), pp. 788-804.
9- Martín, M.; Olsina, L., (2003) “Towards an Ontology for Software Metrics and Indicators as the Foundation for a Cataloging Web System”, In proceed. of IEEE Computer Society (1st Latin American Web Congress), Santiago de Chile, pp 103-113, ISBN 0-7695-2058-8.
10- H. Molina, F. Papa, M. de los A. Martín, L. Olsina; (2004) Semantic Capabilities for the Metrics and Indicators Cataloging Web System. In: Engineering Advanced Web Applications, Matera M. Comai S. (Eds.), Rinton Press Inc., US, pp. 97-109, ISBN 1-58949-046-0.
11- Nielsen, J., 1995-2003, La columna Alertbox (contiene columnas sobre evaluación heurística, entre otras) http://www.useit.com/alertbox/
12- Olsina, L.; Lafuente, G.J; Rossi, G.; (2000) E-commerce Site Evaluation: a Case Study, LNCS of Springer-Verlag; 1st International Conference on Electronic Commerce and Web Technology, London Greenwich, UK.
13- Olsina L., Rossi G., (2002) Measuring Web Application Quality with WebQEM, IEEE Multimedia, Vol. 9, Nº 4, pp. 20-29.
14- Olsina, L.; Martín, M., (2004) Ontology for Software Metrics and Indicators, Journal of Web Engineering, Rinton Press, US, Vol 2 Nº 4, pp. 262-281, ISSN 1540-9589
15- Olsina L., Covella G., Rossi G., (2005) “Web Quality” (Chapter), To appear in a Springer Book titled Web Engineering: Theory and Practice of Metrics and Measurement for Web Development, Emilia Mendes and Nile Mosley Eds.
16- Olsina, L; Molina, H; Papa, F.; (2005) Organization-Oriented Measurement and Evaluation Framework for Software and Web Engineering Projects, In Lecture Notes in Computer Science of Springer, LNCS 3579, Int’l Congress on Web Engineering, (ICWE’05), Australia
17- Powell, T.; Jones, D; Cutts, D., (1998) “Web Site Engineering: Beyond Web Page Design”, Prentince Hall PTR.
18- W3C, WWW Consortium, (2002) “RDF Primer”, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-primer-20040210/
Método de Evaluación: El curso se aprueba mediante la presentación de un trabajo monográfico final, luego de la actividad presencial, como producto del proceso de aprendizaje teórico-práctico.


Entornos virtuales inteligentes

30 de enero al 3 de febrero de 2006

Carga horaria total: 15 horas


Contenidos

1) Introducción a la Realidad Virtual y los Entornos Virtuales.

2) Dispositivos de Realidad Virtual y Realidad Aumentada.

3) Desarrollo de Entornos Virtuales.

4) Agentes Virtuales Inteligentes.

5) Algunos Proyectos de la UPM


Bibliografía

Animated agents for procedural training in virtual reality: Perception, cognition and motor control. Rickel, J., Johnson, W.L. Applied Artificial Intelligence 13, 343-382, 1999.

Virtual Reality: The Revolutionary Technology of Computer-Generated Artificial Worlds - And How it Promises to Transform Society, Howard Rheingold, Simon & Schuster, 1992.

Understanding Virtual Reality: Interface, Application, and Design, William R. Sherman, Alan Craig, Morgan Kaufmann, 2003.

Designing Virtual Worlds, Richard Bartle, New Riders Games, 2003.

3D User Interfaces : Theory and Practice, Doug A. Bowman, Ernst Kruijff, Joseph J. LaViola, Ivan Poupyrev, Addison-Wesley Professional, 2004.

Wright, Ian Paul. Emotional Agents. Ph.D. Thesis. School of Computer Science.

Cognitive Science Research Centre. University of Birmingham. England (February 1997).

Bates, Joseph. The Role of Emotion. Believable Agents. Communications of the ACM. Vol. 37, No.7 (July 1994).

Perlin, K., Goldberg, A. (1996) Improv: A System for Scripting Interactive Actors in Virtual Worlds, Computer Graphics; Vol. 29 No. 3.

Método de evaluación: Realización de un trabajo de investigación breve, de forma individual, sobre la temática de la asignatura.


Redes de Neuronas Artificiales y Computación Evolutiva

1 al 5 de agosto de 2005

Resumen y objetivos: La asignatura tiene por objeto estudiar los diferentes modelos de redes neuronales, indicando las características definitorias de su arquitectura, sus elementos constituyentes y algoritmo de aprendizaje. Se describen las ventajas y se pone especial hincapié en los inconvenientes: elección de la arquitectura neuronal, velocidad de convergencia y caída en óptimos locales. Con el fin de superar estas dificultades, se describen las líneas de investigación actuales consistentes en establecer sinergias entre las redes de neuronas y la computación evolutiva: algoritmos genéticos y programación genética.

Programa: 1. Redes de Neuronas Artificiales. 2. Computación Evolutiva. 3. Técnicas de diseño automático de arquitecturas neuronales. 4. Los algoritmos genéticos como alternativa a los métodos de aprendizaje basados en el descenso del gradiente.

Bibliografía: · Neural Network Learning and Expert Systems. S.I. Gallant. Ed. Mit Press. Cambridge. 1.993 · Neural Networks. A Comprehensive Foundation. S. Haykin. Ed. Pretince Hall. New Jersey. 1.999 · Neural and Adaptative Systems: Fundamentals Throngh Simulations.- José C. Príncipe.- Ed I. Wiley and Sons,- N.Y. 2.000,- · Generic Algorithms + Data Structures = Evolution Programs,- Z. Michalewicz,- Ed. Springer Verlag,- N.Y. 1.999. · D. Manrique. Diseño de Redes de Neuronas y Nuevas Técnicas de Optimización mediante Algoritmos Genéticos. Tesis Doctoral. Facultad de Informática. Universidad Politécnica de Madrid. 2001. · D. Barrios, A. Carrascal, D. Manrique, J. Ríos. Cooperative Binary-Real Coded Genetic Algorithms for Generating and Adapting Artificial Neural Networks. Int. Journal of Neural Computing and Applications Vol 12, pp 49-60, 2003. · D. Barrios, A. Carrascal, D. Manrique, J. Ríos. Optimisation with Real-Coded Genetic Algorithms Based on Mathematical Morphology. Int. Journal of Computer Mathematics Vol 80, No 2-3, pp 20-41, 2002. · D. Barrios, D. Manrique, M.R. Plaza, J. Ríos. An Algebraic Model for Generating and Adapting Neural Networks by Means of Optimization Methods. Annals of Mathematics and Artificial Intelligence Vol 33, pp 93-111, 2001.

Método de evaluación: Realización de un trabajo relacionado con alguno de los temas tratados en la asignatura. Se valorará la participación en clase, exposición de ideas y propuestas de alternativas a los temas estudiados. Se obtendrá la calificación más alta en el caso de redactar un artículo original que pueda ser publicado en un Congreso o Revista Internacional.


Sistemas distribuidos

25 al 29 de julio de 2005

Resumen y Objetivos: El curso se centrará en la revisión de los principales paradigmas de programación de sistemas distribuidos haciendo especial énfasis en la tecnología de agentes móviles. Para ello se revisará la evolución histórica de los paradigmas de programación empleados en el desarrollo de sistemas distribuidos así como las tecnologías asociadas a estos desarrollos.

Se revisarán las tecnologías básicas de desarrollo tales como “sockets”, RPC y CORBA para introducir el desarrollo basado en agentes móviles, sus ventajas y inconvenientes, restando especial atención a la problemática de la seguridad.

El objetivo será tener una visión de la evolución y de la situación actual de de los principales paradigmas de programación empleados en el desarrollo de sistemas distribuidos, así como algunos de los temas de investigación abiertos en la actualidad.

Programa: 1. Fundamentos básicos de los sistemas distribuidos.

2. Agentes móviles.

3. Seguridad y Criptografía.

4. Seguridad en agentes móviles.

5. Sistemas de agentes móviles.

6. Agentes inteligentes.

Bibliografía: “http://halley.ls.fi.upm.es/?~jyaguez” “Internet y TCP/IP”, N. Barcia, J. Yaguez, L. Mengual, Servicio de publicaciones de la UPM, 2003.

“Sistemas Distribuidos: Conceptos y Diseño”, G. Coulouris, J. Dollimore, T. Kindberg, 3ª edición, Addison-Wesley, 2001.

“Distributed Computing Principles and Applications”, M. L. Liu, Pearson Addison-Wesley, 2003.

“Computación Distribuida. Fundamentos y Aplicaciones”, M. L. Liu, Pearson Addison-Wesley, 2004.

“Middleware for Communications”, Q. H. Mahmoud (editor), Wiley & Sons, 2004 RFC-2292: “Advanced Sockets API for IPv6”, W. Stevens, M. Thomas, February 1998.

RFC-1831: "RPC: Remote Procedure Call Protocol Specification Version 2", R. Srinivasan, August 1995.

RFC-1833: "Binding Protocols for ONC RPC Version 2", R. Srinivasan, August 1995.

“RMI Documentatión”, http://java.sun.com/products/jdk/rmi/index.html

“ONC RPC/XDR”, http://www.distinct.com/rpc/rpc.htm

"Client/Server Programming with Java and CORBA", Orfali, R. y Harley, D. (2º Edition) John Wiley & Sons, 1998. ISBN: 0-471-24578-X.

"Java Distributed Computing", J. Farley. O'Reilly. 1998.

"The CORBA Reference Guide, Understanding the Common Object Request Broker Architecture", A. Pope. Addison-Wesley, 1998

"CORBA: Document and Specifications", http://www.omg.org/technology/documents.index.htm. "Java Programming with CORBA", Andreas Voguel, Keith Duddy. Wiley Computing Publishing, 1997.

"The Common Object Request Broker: Architecture and Specification", Revision 2.3. OMG y X/Open Ltd. Junio 1999

“MICO”, http://www.mico.org/

“ORBit”, http://orbit-resource.sourceforge.net/

“ORBit – CORBA en GNOME”, Rodrigo Moya, http://www.es.gnome.org/documentacion/articulos/ORBit/ORBit/t1.html

“Undestanding Web Services: XML, WSDL, SOAP, and UDDI”, Eric Newcomer, Addison Wesley Professional; ; 1st edition (May 13, 2002).

“Web Services Essentials (O'Reilly XML)”, E. Cerami, O'Reilly & Associates; 1st edition (February 2002).

“Simple Object Access Protocol (SOAP) 1.1”: http://www.w3.org/TR/SOAP/

“Agent technology”, N.R., Jennings, M.J., Wooldridge, Springer-Verlag, 1998.

“The Agent Home Page”, . http://www.agent.org

“Mobile Agents”, Cockayne, W. R. and Zyda, M.. Manning. 1997.

“Is it an Agent or just a program? A Taxonomy for Autonomous Agents” Franklin, S., Greasser, A.. Universidad de Memphis. 1996.

“Mobile Agents: Are they a good idea?” Harrison, C.G., Chess, D.M. and Kershenbaum, A.

“Software Agents”, Camelia Chira, IDIMS Report, 21st February 2003

“Mobile Agents: Overcoming Early Hype and a Bad Name”, Robert S. Gray, Proceedings of the 2004 IEEE International Conference on Mobile Data Management (MDM’04)

“Seven good reasons for mobile agents”, Danny B. Lange and Mitsuru Oshim, March 1999, Vol. 42, No. 3 COMMUNICATIONS OF THE ACM

“Mobile Agents: Right Concept, Wrong Approach”, Dag Johansen, Proceedings of the 2004 IEEE International Conference on Mobile Data Management (MDM’04)

“Trend Wars”, IEEE Concurrency, July–September 1999

“Agentes Móviles Sistemas Distribuidos”, Erika Rosas Olivos, 27 de junio de 2005, Internet “NIST Special Publication 800-19 – Mobile Agent Security”, Wayne Jansen, Tom Karygiannis, National Institute of Standards and Technology, Internet

Método de evaluación: Por presentación de un trabajo. Se potenciará la publicación de artículos en congresos y revistas.


Sistemas de bases de datos interoperables

14 al 18 de febrero de 2005

Descripción del curso: En los últimos años han aparecido diversas soluciones aisladas para la integración de distintas aplicaciones. Sin embargo, tanto para aplicaciones como Data Warehouse, Workflow-Management-Systems, E-Commerce o también para acoplamiento directo de dos sistemas heterogéneos, la integración de datos resulta inevitable. En estos casos para lograr interoperabilidad hay que tratar la heterogeneidad que puede verse sobre todos los aspectos, desde el modelo de datos pasando por el modelado de los datos en sí. Este curso da una introducción al problema de la interoperabilidad de bases de datos heterogéneas así como también a las soluciones existentes.

Objetivos: Sensibilizar al estudiante en la problemática de la interconexión de sistemas de información, darle una visión general de las diferentes estrategias en la integración de bases de datos heterogéneas, así como proveerle las herramientas técnicas necesarias para la comprensión de las líneas de desarrollo futuras en el área.

Duración: 1 semana.

Carga horaria total de 20 hrs.

Conocimientos previos exigidos y recomendados: Buenos conocimientos en el área de bases de datos relacionales. Manejo de la filosofía de orientación a objetos. Preferiblemente con nociones sobre bases de datos distribuidas.

Plan del curso y cronograma: CLASE 1- Tema 1: Introducción y terminología. Conceptos de Distribución , Heterogeneidad, Autonomía, Interoperabilidad. Aspectos críticos de interoperabilidad. Tema 2: Arquitecturas: Esquema Global , Sistemas Federados, Multidatabases, Wrappers, Mediadores.

CLASE 2 Tema 3: Transformación de esquemas y lenguajes. Generación de mapeamientos entre esquemas. Tema 4: Problemas en la integración de esquemas: heterogeneidad semántica, discrepancias esquemáticas, reconciliación de valores. Clasificación de estrategias de integración de esquemas.

CLASE 3 Tema 5: Procesamiento de consultas: problemas de descomposición y de optimización. Tema 6: Transacciones: problemas de control de concurrencia y recuperación.

CLASE 4 Tema 7: Líneas de investigación relacionadas: Integración de información de la Web. Tema 8: Líneas de investigación relacionadas: Transactional Workflows y Data Warehouses.

CLASE 5 Tema 9: Prototipos y productos. Presentación de trabajos por los estudiantes.

Bibliografía: "Interconnecting heterogeneous information systems". A. Bouguettaya, B. Benatallah y A. Elmagarmid. Kluwer Academic, 1998.(ISBN 0-7923-8216-1) "Management of Heterogeneous and Autonomous Database Systems". Editores: A. Elmagarmid, M. Rusinkiewicz y A. Sheth. Morgan Kaufmann, 1999. (ISBN 1-55860-216-X) Artículos de conferencias recientes distribuidos en las clases.

Forma de evaluación: Realización de ejercicios y trabajos.


Paradigmas de Programación

24 al 28 de enero de 2005

Resumen y Objetivos: Tiene por objeto dar una visión al alumno de los diferentes paradigmas de programación que actualmente se consideran más importantes en este campo, y profundizar en cada uno de ellos. Se valorará altamente el planteamiento del alumno relativo al análisis de características específicas de un paradigma, estudios comparativos entre paradigmas y metodologías (o lenguajes) de interés aplicables a cada paradigma que se describe.

Programa
1. Los Paradigmas de Programación: Concepto y Tipos.
2. Paradigmas Procedimentales: Orientado a Objetos y Eventos, y Orientado a Agentes.
3. Paradigmas Declarativos: Funcional, Lógico y de Flujo de Datos.
4. Paradigmas Demostrativos: Genético.

Bibliografía: Alonso, F.; Martínez, L.; Segovia, J.: "Modelos de Desarrollo de Programas". Facultad de Informática. UPM, 2002. Alonso, F.; Martínez, L.; Segovia, J.: "Metodología Básica de Desarrollo Orientado a Objetos ". Facultad de Informática. UPM, 2003. Ambler, A. et al.: "Operational Versus Definitional: A Perspective on Programming". Sept. 1992, IEEE Computer. Booch, G.: "Object-Oriented Analysis and Design with Applications". Benjamin Cumming Pub., Santa Clara (California), 1994. Booch, G.; Rumbaugh, J.; Jacobson, I.: "El Proceso Unificado de Desarrollo de Software". Addison-Wesley, 2001. Clocksin, W.F.; Mellis, E.S.: "Programmer on Prolog". Editions Eyrolles, Paris, 1985. Du, W.; Wadge, W.: "A 3D Spreadsheet Based on Intensional Logic". IEEE, 1990. EURESCOM: "MESSAGE: Methodology for Agent-Oriented Software Engineering". European Institute for Research and Strategic Studies in Telecommunications. 2001 Field, J.; Harrison, G.: "Functional Programming". Addison-Wesley Pub. 1989. Floyd, R.: "The Paradigms of Programming". Comm. ACM, Vol. 22-8, 1979. Hertze, J. et al.: "Introduction to the Theory of Neural Computation". Addison-Wesley, 1991. Jennings, N.R.; Wooldridge, M.J.: "Agent_Oriented Software Engineering". Handbook of Agent Technology. AAAI/MIT Press. 2002. Kinny, D.; Georgeff, M.: "Modelling and Design of Multi-Agent Systems". Proc. International Workshop on Agent Theories, Architecture, and Language, 1998. Kowalski, R.: "Lógica, Programación e Inteligencia Artificial". Díaz de Santos, Madrid, 1979. Koza, J.: "Genetic Programming: On the Programming of Computers by means of Natural Selection and Genetics". MIT Press, 1992. Kruchten, P.: "Rational Unified Process. An Introduction". 2ª Edition. Addison-Wesley, 2000. Lee, G.: "Object-Oriented GUI Application Development". PTR Prentice Hall, California, 1993. Paulson, L.C.: "ML for the Working Programmer". Cambridge University Press, 1991. Wadge, W.W.; Ashcroft, E.A.: "Lucid, the Dataflow Programming Language." Academia Press, London, 1985. Watt, D.A.: "Programming Language, Concepts and Paradigms". Prentice Hall Int., London, 1990. Wooldrige, M.; Jennings, N.; Kinny, D.: "The Gaia Methodology for Agent-Oriented Analysis and Design". Autonomous Agents and Multi-Agent Systems. Sep. 2000 (Kluwer Academic Publishers).

Método de Evaluación: Por presentación de un trabajo. Se potenciará la publicación de artículos en congresos y revistas.


Gestión de la calidad y mejora del proceso en Proyectos Informáticos

2 al 6 de agosto 2004

Temario

1.- Conceptos básicos sobre gestión de calidad y procesos de mejora.
2.- Procesos de evaluación.
3.- Niveles de madurez y análisis de datos.
4.- Plan genérico de mejora
5.- Plan de Acción e Implantación en las organizaciones.

Duración: 20 horas

Evaluación del Curso: Se propondrán diferentes temas a los participantes para que los preparen individual o de manera colaborativa.

Bibliografía:

Carleton, A. et al., Engineering a Software Measurement Process for your Organization. Carnegie Mellon University/Software Engineering Institute.1994.
Florac, W. et al. Practical Software Measurement: Measuring for Process Management and Improvement. Carnegie Mellon University/Software Engineering Institute.1997.
Humphrey,W. A Discipline for Software Engineering.AddisonWesley.1995. International Standard Organization and International Electrotechnical Commission, ISO/IEC, ISO/IEC Information Technology - Software Process Assessment Version 3.3, JTC1/SC7/WG10, 1998.
Oman, P. y Pfleeger, S. Applying Software Metrics. IEEE.1997.
Paulk, M. et al. The Capability Maturity Model: Guidelines for Improving the software Process. Addison Wesley.1995.
SEI/CMU, Capability Maturity Model Integration, Staged and Continuous Representation, www.sei.cmu.edu/cmmi/models, 2004.
SEI/CMU. Common CMM Framework.1997.
SEI/CMU, SCAMPI Standard CMMI Appraisal Method for Process Improvement, www.sei.cmu.edu/cmmi, 2004.
SEI/CMU, Capability Maturity Model® for Software (Version 1.1), U/SEI-93-TR-024, http://www.sei.cmu.edu/publications/documents/93.reports/93.tr.024.html


La Gestión de Carteras de Proyectos Informáticos

26 al 30 de julio de 2004

La gestión de la Ingeniería de Software se desarrolla a tres niveles distintos dentro de una Organización: Gestión Organizacional, Gestión de Procesos/Proyectos y Gestión de Medida del Software Nivel Organizacional. Dentro del Nivel Organizacional una de los proceso clave es la Gestión de Carteras de Proyectos (Portfolio Management) (Swebok,2004). En las gestión de estas carteras se utilizan técnicas financieras de análisis similares a las que se utilizan en la gestión de careras de inversiones financieras en las organizaciones.

Sin embargo, la gestión de las Carteras de Proyectos Informáticos tiene aspectos específicos relacionados con las características de los proyectos, su alineamiento con loas estrategias de la organización, su priorización y gestión de su desarrollo que tienen que ser tenidos muy en cuenta para rentabilizar las inversiones en los mismos. Todos estos aspectos serán estudiados durante el desarrollo de este curso.

Tema 1º La Gestión de la Ingeniería del Software y la gestión de carteras de proyectos (Portfolio Management).

Tema 2º La importancia estratégica de los sistemas de información.

Tema 3º Técnicas utilizadas en la definición de estrategias de sistemas de información y tecnología de información.

Tema 4º La gestión de la cartera de proyectos. Metodología de Implantación. Herramientas.

Tema 5º Técnicas para la valoración de proyectos de de sistemas de información y tecnología de información.

Tema 6º Organización para la gestión de carteras de de sistemas de información y tecnología de información

Duración: 20 horas.

Desarrollo del Curso: Curso eminentemente participativo de los asistentes con presentaciones individuales y trabajo en grupo.

Evaluación del Curso: Se realizará mediante el desarrollo de un tema que se propondrá a cada alumno y la realización de un supuesto de análisis de una Cartera de Proyectos que se realizará en grupo. Estos trabajos serán remitidos a Madrid para su evaluación.

Bibliografía:

· Edwards Chris; John Ward; Bytheway Andy. "The essence of Informations Systems" 2ª Edición 1995 Editor : Adrian Buckley. Prentice Hall.
· Buss, Martin D. "How to Rank Computer Projects". Har-vard Business Review. (enero-febrero 1983).
· García - Gutierrez Fernández, Carlos; Mascareñas Pérez, Inigo; Pérez Gorostegui, Eduardo. " Casos prácticos de inversión y financiación de la Empresa". Editorial Pirámide. 1999.
· Parker, Marylin ; Benson, Robert; "Information Economics". Prentice Hall 1988.
· Hares, John; Royle, Duncan; "Measuring the value of Information Technology". John Wiley & Sons 1994.
· Bisynger Bill; Knight, Ken; "Investing in Information Technology". Edit. Van Nostrand Reinhold. 1996.
· Cortada, James W.; "Best Practices in Information Technology ". Prentice Hall NJ. 1997 · McFarlan, F.W. "Connecting the Dots: Aligning Projects with Objectivs in Unpredictable Times". Harvard Business School . Boston. 2003.


Nuevas Tendencias en Bases de Datos

9 al 13 de febrero de 2004

Parte I: DATA MINING 1.
¿Que es Data Mining?
1.1. Elementos que lo han potenciado
1.2. Elementos que lo hacen posible
1.3. Aplicaciones
1.4. Definición Intuitiva

2. El Proceso de Data Mining.
2.1. Definición
2.2. Pasos del Proceso
2.2.1. Preparación
2.2.2. Data Mining
2.2.3. Post-proceso

3. Modelo de referencia CRISP-DM
3.1. Entendimiento del proceso de negocio
3.2. Comprensión de los datos
3.3. Preparación de los Datos
3.4. Generación del modelo
3.5. Evaluación
3.6. Implantación

4. La entrada de Data Mining
4.1. ¿Que es un concepto?
4.2. Atributos: tipos de atributos
4.3. Instancias o ejemplos

5. Tipos de problemas de Data Mining
5.1. Predicción
5.2. Segmentación
5.3. Asociación

6. Posibles salidas de las herramientas de Data Mining
6.1. Arboles de Decisión
6.2. Listas de decisión
6.3. Clusters
6.4. Mapas de Kohonen

7. Escenarios de aplicación
7.1. Ejemplos de marketing
7.1.1. Fidelización de clientes
7.1.2. Análisis de la cesta de la compra
7.1.3. Segmentación de la cartera de clientes
7.1.4. Estimación del valor de un cliente
7.1.5. Perfiles de clientes

8. Algoritmos o técnicas
8.1. Algoritmos para clasificación
8.1.1. Enfoque basado en árboles de decisión ? C4.5 ? ID3 ? C5.0
8.1.2. Enfoque basado en la redes de neuronas ? Back propagation ? RBF
8.2. Algoritmos para cálculo de reglas de asociación
8.2.1. A priori
8.2.2. A priori TID
8.3. Algoritmos para segmentación de bases de datos:
8.3.1. Enfoque basados en la estadística: K-means
8.3.2. Minimal Spanning Tree
8.3.3. Redes neuronales: Mapas de Kohonen

9. Evaluación de los resultados de Data Mining.
9.1. Cross-Validation
9.2. Leave-one-out

10. Ejemplos de todos los algoritmos estudiados

11. Web Mining

Parte II: DATA WAREHOUSE
1. Introducción y motivación
2. Diferencias entre las Bases de Datos transaccionales y Bases de Datos de soporte a la decisión (Data Warehouse)
3. Por que separar los datos en un Data Warehouse. Introducción a los Data Marts
4. Procesos que aparecen en la construcción de un Data Warehouse a. Fuentes de datos b. Limpieza e integración de datos c. Base de datos de soporte d. Acceso: Data Mining y OLAP
5. El problema de la integración y limpieza de los datos
6. El diseño de la base de datos de soporte a la decisión a. Del modelo relacional al modelo multidimensional b. Arquitectura: Data Warehouse Bus i. Multiples Data Marts como origen de los datos c. Tablas fact y tablas de dimensiones d. Data Cubes e. Esquemas Stars, Starflakes y Snowflakes f. Problemas de diseño i. Tablas de hechos factless ii. Degenerate dimension iii. Junk dimension
7. Desde el Data Warehouse a las consultas. Toma de decisiones a. OLAP b. Data Mining
8. El problema del diseño de un Data Warehouse de soporte en Internet: Webhouse.


Ingeniería de Requisitos

2 al 6 de febrero 2004

La IR trata de los principios, métodos, técnicas y herramientas que permiten descubrir, documentar y mantener los requisitos para sistemas basados en computadora, de forma sistemática y repetible. En este curso se pretende introducir los principios fundamentales de lo que hoy es, quizá, el área más crítica en el desarrollo software. Temario: 1. Introducción,
2. Educción de Requisitos,
3. Análisis y negociación,
4. Especificación,
5. Validación de requisitos,
6. Gestión de Requisitos,
7. La Ingeniería de Requisitos hoy,
8. Ingeniería de Requisitos en sistemas críticos,
9. Ingeniería de Requisitos en sistemas orientados al mercado. Bibliografía: Leffingwell D., Widrig D. "Managing Software Requirements: A Use Case Approach", 2nd Edition. Addison-Wesley, 2003.
Alexander I., Stevens R., "Writing better requirements". Pearson Education, 2002.
S. Robertson, J. Robertson. "Mastering the Requirements Process", Addison-Wesley, 1999.
K. Wiegers "Software Requirements", Microsoft Press, 1999.
B. L. Kovitz "Practical Software Requirements: A Manual of Content and Style", Manning, 1999.
G. Kotonya, I. Sommerville. "Requirements Engineering. Processes and Techniques". Wiley, 1998.
I. Sommerville, P. Sawyer "Requirements Engineering. A Good Practice Guide", Wiley, 1998.
M. Jackson "Requirements and Specifications: A Lexicon of Practice, Principles and Prejudices" Addison-Wesley, 1995. A. Davis. "Software Requirements: Objects, Functions and States" Prentice-Hall, 1993.
D. C. Gause, G. M. Weinberg "Exploring Requirements: Quality Before Design" Dorset House, 1989.


Metodología de la Investigación 17 al 20 de febrero de 2003

Objetivo
Guiar a candidatos a doctorado y estudiantes en general, sobre cómo desarrollar una investigación científica.

Referencias
Hernandez et al., 1998. Metodología de la Investigación. McGraw Hill,1998.
Campbell & Stanley, 1966. Experimental and Quasi-experimental Designs for Research. Rand McNally, 1966.
Cook & Campbell, 1976. The Design and Conduct of Quasi-Experiments and True Experiments in Field Settings. In Handbook of Industrial and Organizational Psychology. Rand-McNally. Dunnette (editor), 1976.
Nogueira, 2000. A Risk Assessment Model for Software Engineering Projects. Naval Postgraduate School, Monterey, CA., 2000.

Contenido
Identificación de la idea a investigar
Establecer la propuesta inicial de investigación
Desarrollar el marco teórico
Revisión de la literatura
Construcción del marco teórico
Plantear el problema de investigación

Objetivos Preguntas de investigación Justificar la necesidad de la investigación Definir la estrategia de investigación Detectar variables y relaciones Qué tipo de experimentos emplear Ejecutar el plan de trabajo Recolección de datos Validez y confiabilidad de la recolección Muestreos Análisis Presentar resultados Elaborar el documento Defender los resultados

Ingeniería Web: Evaluación y Análisis de Aplicaciones Objetivo: El objetivo del curso es introducir a los alumnos de postgrado en los conceptos de servicios, aplicaciones y arquitecturas Web; profundizar en teoría de métricas e indicadores, atributos y características de calidad en la Web, y en el conocimiento de estrategias y metodologías cuantitativas para la evaluación de sitios y aplicaciones Web. Dichos conceptos, estrategias y métodos serán desarrollados teniendo en cuenta principios de Ingeniería de Software e Ingeniería Web. Como resultado los participantes deben ser capaces de identificar criterios de calidad tanto en proyectos Web en la fase operativa como en proyectos de desarrollo y además, aplicar estos métodos, métricas, indicadores y herramientas para la evaluación y comparación de la calidad de aplicaciones Web.

Duración: 45 horas (20 horas de clases teóricas y 25 horas de clases prácticas y elaboración de monografía).

Contenidos Generales: 1) Ingeniería Web. Servicios, Arquitecturas y Tecnologías en Internet. Funcionalidades Básicas en la Web: Exploración, Navegación y Búsqueda. Conceptos de Hipertexto, Hipermedia, Multimedia y la Web. Lenguajes de Codificación y Programación. Ingeniería Web e Ingeniería de Software: Diferencias y Semejanzas. Tipos de Aplicaciones Web. Introducción a Modelo Conceptual para Procesos. Procesos Web.

2) Requerimientos de Calidad para Diseño y Evaluación de Sitios y Aplicaciones Web. Aseguramiento de Calidad para Proyectos Web. Componentes en un Proceso de Evaluación. Categoría de Métodos. Tipos de Métodos y Técnicas de Evaluación: Su aplicabilidad. Modelos de Calidad. Modelo de Calidad ISO 9126-1. Árbol de Requerimientos. Personalizando un Árbol de Calidad para varios Dominios y, particularmente, para E-commerce. Métricas y Heurísticas. Navegación en sitios identificando atributos, criterios y reglas prácticas para el diseño y evaluación de sitios Web. Introducción al Modelo de Calidad en Uso (ISO 9126-1 y 4).

3) Métricas e Indicadores. Introducción Conceptual a Métricas e Indicadores: Ente, Atributo, Concepto Medible, Modelo de Concepto, Medida, Unidad, Escala, Indicador Elemental y Global, Criterios de Decisión, Método de Cálculo y Herramienta. Modelo Conceptual para el dominio de Métricas e Indicadores. Análisis matemáticos y estadísticos permitidos para los valores medidos. Estándares de Proceso de Medición y Evaluación ISO 15939 e ISO 14598. Necesidad de una Ontología en Métricas e Indicadores. Introducción a formalismos para especificar Ontologías. Análisis de Métricas Web: Métricas de Enlaces, Métricas de Texto, de Gráficos, de Páginas, de Performance, de Accesibilidad, entre otras. Utilidad del empleo de métricas para actividades de desarrollo y mantenimiento. Catálogo de Métricas e Indicadores. Utilidad

4) Modelos y Métodos de Evaluación. Dos métodos de Inspección. Metodología WebQEM: Su aplicabilidad. Fases y Actividades. Perfil de Usuario a Evaluar. Diseño e Implementación de la Evaluación Elemental y Global. Recomendaciones. Herramientas desarrolladas. Método basado en revisiones Heurísticas. Fortalezas y Debilidades.

5) Seguimiento de un Caso de Estudio de Evaluación y Análisis de Calidad de un sitio Web. Discusión de Alternativas.

Forma de Evaluación: El curso se aprueba mediante la presentación de un trabajo monográfico final, como producto del proceso de aprendizaje teórico-práctico. Material sugerido: 1- Fenton, N.E., Pfleeger, S.L., 1997, Software Metrics: a Rigorous and Practical Approach, 2nd Ed., PWS Publishing Company
2- Nielsen, J., 1995-2003, La columna Alertbox (contiene columnas sobre evaluación heurística, entre otras) http://www.useit.com/alertbox/
3- ISO/IEC 14598-5:1998 Information technology -- Software product evaluation -- Part 5: Process for evaluators
4- ISO/IEC 9126-1: 2001 International Standard, "Software Engineering - Product Quality - Part 1: Quality model".
5- ISO/IEC 15939: 2002 Software Engineering - Software Measurement Process.
6- Kitchenham B.A., Hughes R.T., Linkman S.G., 2001, Modeling Software Measurement Data. IEEE Transactions on Software Engineering, 27(9), pp. 788-804.
7- Martín M. de los A., Olsina L., 2003, An Ontology for Software Metrics and Indicators as the Foundation for a Cataloging Web System, IWWOST03, Spain.
8- Olsina, L., Godoy, D; Lafuente, G.J; Rossi, G.; 1999, Assessing the Quality of Academic Websites: a Case Study, New Review of Hypermedia and Multimedia (NRHM) Journal, Taylor Graham Publishers, UK/USA Vol 5. ISSN: 1361-4568
9- Olsina, L.; Lafuente, G.J; Rossi, G.; 2000, E-commerce Site Evaluation: a Case Study. LNCS of Springer-Verlag; 1st International Conference on Electronic Commerce and Web Technology, London Greenwich, UK.
10- Olsina, L.; 2000, Metodología Cuantitativa para la Evaluación y Comparación de la Calidad de Sitios Web. Tesis Doctoral, UNLP, Defendida en Abr. 2000.
11- Olsina, L.; Martin, Ma A.; Fons, J.; Abrahao, S.; Pastor, O. Towards the Design of a Metrics Cataloging System by Exploiting Conceptual and Semantic Web Approaches, To appear in proceed. of Springer. Int'l Conference on Web Engineering 2003 (ICWE'03), Oviedo, Spain.
12- Olsina L., Rossi G., 2002, Measuring Web Application Quality with WebQEM, IEEE Multimedia, Vol. 9, Nº 4, pp. 20-29.
13- Powell, T.; Jones, D; Cutts, D., 1998, "Web Site Engineering: Beyond Web Page Design", Prentince Hall PTR.
14- Tautz, C. and Von Wangenheim, C.; 1998, REFSENO: A Representation Formalism for Software Engineering Ontologies. Fraunhofer IESE-Report No. 015.98/E, version 1.1, October 20
15- WWW Consortium, 2001, "WAI Accessibility Guidelines: Page Authoring", W3C Working Draft, "WAI Accessibility Guidelines: Page Authoring",http://www.w3c.org/TR/WD-WAI-PAGEAUTH/


Técnicas de experimentación en ingeniería de software

10 al 14 de marzo de 2003

El curso trata sobre la aplicación de técnicas de realización de experimentos, para el caso concreto del desarrollo de sistemas software. El objetivo es que los alumnos aprendan distintas formas de conseguir datos empíricos sobre el uso de los distintos artefactos utilizados en el desarrollo de sistemas software, de manera que ésto les permita conocer las condiciones de aplicabilidad y mejor uso de dichos artefactos.

Temario
1. Introducción a la experimentación
1.1. Experimentación e Ingeniería del Software
1.2. ¿Por qué se debe experimentar?
1.3. ¿Cómo se debe experimentar?
2. Planteamiento de un experimento
2.1. Terminología
2.2. Variables a fijar en un experimento
2.3. Escalas de medida
2.4. El GQM
3. Diseño experimental
3.1. Tipos de diseños
3.2. Amenazas a la validez
4. Análisis de los datos
4.1. Análisis cuantitativo vs. Análisis cualitativo
4.2. Métodos de análisis paramétricos
4.3. Métodos de análisis no paramétricos
4.4. Confianza en los resultados
4.5. Consejos para un buen análisis cualitativo
5. Caso de estudio (este apartado se llevará en paralelo con el resto)

Forma de evaluación
Los alumnos deberán entregar un trabajo que les será propuesto durante el curso. El plazo de entrega de dicho trabajo será el 15 de Mayo. Las notas serán comunicadas el 15 de Julio.




Seguridad en los Sistemas de Información, Pago y Comercio Electrónico 5 al 9 de agosto de 2002

Temario del curso
1.Introducción histórica.
2.Métodos criptográficos y criptoanálisis clásicos.
3.Los cifradores simétricos actuales.
4.Los cifradores de flujo y el RC4.
5.Funciones de sentido único y Funciones Hash.
6.Funciones hash actuales: MD4, MD5 y SHA
7.Criptosistemas Asimétricos y Cifradores Exponenciales.
8.Conexiones Seguras y Redes Virtuales Privadas: SSL e IP-sec.
9.Infraestructuras de Clave Pública y Administración de Certificados digitales.
10.Dinero Digital


Sistemas Distribuidos: Fundamentos y Tecnología

22 de julio al 2 de agosto de 2002

Temario del curso
1.Introducción a los sistemas distribuidos y la tolerancia a fallos.
2.Radiado (multicast) atómico y fiable.
3.Transacciones. Estándares (Corba OTS, Enterprise JavaBeans, Microsoft MTS, etc.)
4.Replicación.
5.Tecnología. Bibliografia
Weikum, Vossen. Transactional Information Systems. Morgan-Kaufmann. 2002.
- Lewis, Bernstein, Kifer. Databases and Transaction Processing. Addison-Wesley. 2002.
- P. Veríssimo, Luís Rodrigues. Distributed Systems for System Architects. Kluwer, 2001.
- G.F. Coulouris, J. Dollimore y T. Kindberg, Distributed Systems: Concepts and Design, Addison-Wesley, 2000, 3rd Edition.
- R. Buyya, High Performance Cluster Computing, 1999.
- Karen Boucher, Fima Katz, Essential Guide to Object Monitors, John Wiley, 1999
- P. A. Bernstein, E. Newcomer, Principles of Transaction Processing, Morgan-Kaufmann, 1997.
- Kenneth P. Birman, Building Secure and Reliable Network Applications, Manning, 1996.
- J. Gray, A. Reuter, Transaction processing: concepts and techniques, Morgan-Kaufmann, 1993.
- Sape Mullender (Editor), Distributed Systems, Addison-Wesley, 1993, 2nd Edition.
- Pankaj Jalote, Fault Tolerance in Distributed Systems, Prentice-Hall, 1994.

Forma de evaluacion del curso

Presentación oral de un trabajo sobre algún trabajo de investigación sobre sistemas distribuidos (distribuiremos una colección de artículos al principio del curso para que lo alumnos puedan elegir los que le resulten más interesantes).


Sistemas de bases de datos interoperables

25 de febrero al 1 de marzo de 2002

Instructor:
Regina Motz motz@ort.edu.uy.

Descripción del curso:
En los últimos años han aparecido diversas soluciones aisladas para la integración de distintas aplicaciones. Sin embargo, tanto para aplicaciones como Data Warehouse, Workflow-Management-Systems, E-Commerce o también para acoplamiento directo de dos sistemas heterogéneos, la integración de datos resulta inevitable. En estos casos para lograr interoperabilidad hay que tratar la heterogeneidad que puede verse sobre todos los aspectos, desde el modelo de datos pasando por el modelado de los datos en sí. Este curso da una introducción al problema de la interoperabilidad de bases de datos heterogéneas así como también a las soluciones existentes.

Objetivos:
Sensibilizar al estudiante en la problemática de la interconexión de sistemas de información, darle una visión general de las diferentes estrategias en la integración de bases de datos heterogéneas, así como proveerle las herramientas técnicas necesarias para la comprensión de las líneas de desarrollo futuras en el área. Duración: 1 semana. Carga horaria total de 20 hrs.

Conocimientos previos exigidos y recomendados:
Buenos conocimientos en el área de bases de datos relacionales. Manejo de la filosofía de orientación a objetos. Preferiblemente con nociones sobre bases de datos distribuidas.

Plan del curso y cronograma:
CLASE 1- Tema 1: Introducción y terminología. Conceptos de Distribución , Heterogeneidad, Autonomía, Interoperabilidad. Aspectos críticos de interoperabilidad.
Tema 2: Arquitecturas: Esquema Global , Sistemas Federados, Multidatabases, Wrappers, Mediadores.
CLASE 2 Tema 3: Transformación de esquemas y lenguajes. Generación de mapeamientos entre esquemas. Tema 4: Problemas en la integración de esquemas: heterogeneidad semántica, discrepancias esquemáticas, reconciliación de valores. Clasificación de estrategias de integración de esquemas. CLASE 3 Tema 5: Procesamiento de consultas: problemas de descomposición y de optimización. Tema 6: Transacciones: problemas de control de concurrencia y recuperación. CLASE 4 Tema 7: Líneas de investigación relacionadas: Integración de información de la Web. Tema 8: Líneas de investigación relacionadas: Transactional Workflows y Data Warehouses. CLASE 5 Tema 9: Prototipos y productos. Presentación de trabajos por los estudiantes.

Bibliografía:
"Interconnecting heterogeneous information systems". A. Bouguettaya, B. Benatallah y A. Elmagarmid. Kluwer Academic, 1998.(ISBN 0-7923-8216-1) "Management of Heterogeneous and Autonomous Database Systems". Editores: A. Elmagarmid, M. Rusinkiewicz y A. Sheth. Morgan Kaufmann, 1999. (ISBN 1-55860-216-X) Artículos de conferencias recientes distribuidos en las clases.

Forma de evaluación:
Realización de ejercicios y trabajos.


Metodologías de la Investigación 10 al 13 de diciembre

Descripción:
Se presentan los métodos formales para conducir una investigación doctoral.

Contenido:
I. Recopilación bibliográfica Cómo empezar: la selección de temas Cómo construir la base de datos Sitios web referenciales Journals
II. Metodologías de validación Experimentos Cuasi-experimentos Demostración
III. Simulación Alcance y limitaciones Problemas de validación
IV. La disertación Contenido Formato Publicación de papers




Control y gestión del conocimiento 6 al 10 de agosto de 2001


1. Definición de la Gestión del Conocimiento e Importancia de la Gestión de Conocimiento en el mundo actual.
2. El objeto de la Gestión: Los Conocimientos.
3. Conceptualizacion de Problemas.
4. Herramientas para la Gestión de Conocimientos: Mapas de Conocimientos,Matrices FADO, Memorias Instituciones, "Mapas de Carreteras", etc.
5. Metodología para la GC.
Bibliografía "Ingeniería del Conocimiento". Asunción Gómez, Natalia Juristo, César Montes, Juan Pazos. Editorial Centro de Estudios Ramón Areces, S.A.


Paradigmas de Programación 30 de julio al 3 de agosto de 2001

Resumen y Objetivos:
Tiene por objeto dar una visión al alumno de los diferentes paradigmas de programación que actualmente se consideran más importantes en este campo, y profundizar en cada uno de ellos, especialmente en sus metodologías de desarrollo mediante la realización de un estudio sobre cada uno de ellos.

Programa:
- Los Paradigmas de Programación: Concepto y Tipos.
- Paradigmas Procedimentales
- Modelos de Desarrollo: Orientado a Objetos, a - Eventos, y a Agentes.
- Paradigmas Declarativos.
- Modelos de Desarrollo: Funcional, Lógico y de Flujo de Datos.
- Paradigmas Demostrativos.
- Modelos de Desarrollo: Genético.

Bibliografía:
Alonso, F.; Segovia, J.: "Entornos y Metodologías de Programación". Paraninfo, 1995. Ambler, A. et al.: "Operational Versus Definitional: A Perspective on Programming Paradigms". Sep./ 1992, IEEE Computer. Arnold, K. y Gosling, J. : "The Java Programming Lenguage". Addison-Wesley, Publishing Corgeny. 1996. Banzhaf W. et al: "Genetic Programming: An Introduction. On the Automatic Evolution of Computer Programs and Its Applications". Morgan Kaufmann, 1998. Booch, G.: "Object Oriented Analysis and Design with Applications". Benjamin Cumming Pub, 1994. Field, J. et al.: "Functional Programming". Addison Wesley Pub., 1989 Floyd, R.: "The Paradigms of Programming" Comm. ACM, 22:8,1979. Geoff, L. : "Object-Oriented GUI Application Development". Prentice-Hall, 1993. Hertze, J.et al.: "Introduction to the Theory of Neural Computation". Addison Wesley, 1991. Kenneth E, Kinnear, Jr.: "Advances in Genetic Programming II". MIT Press. Cambridge, Massachusetts., 1996. Kowalski, R.: "Lógica, Programación e Inteligencia Artificial". Diaz de Santos, Madrid, 1979. Koza, J.: "Genetic Programming: On the programming of computers by means of Natural Selection and Genetic". MIT press, 1992.


Gestión de la Calidad, Definición, Evaluación y Mejora del Proceso Software

31 de julio al 4 de agosto de 2000

1. La Ingeniería del Software
1.1. ¿Cómo surge la Ingeniería del Software?
1.2. Principios de la Ingeniería del Software
1.3. Componentes de la Ingeniería del Software
1.4. Las tres P de la Ingeniería del Software
2. El proceso de desarrollo de software
2.1. Definición de proceso software.
2.2. Ciclo de vida vs proceso software
2.3. Ciclos de vida
2.4. Procesos comunes en el desarrollo de software. Estándar de IEEE
3. Definición del proceso
3.1. Terminología y conceptos básicos
3.2. Modelado descriptivo
3.3. Ciclo de vida de un proceso
4. Evaluación del proceso
4.1. Madurez y capacidad del proceso de desarrollo de software. El modelo CMM
4.2. Otros modelos de evaluación. SPICE
4.3. Otros modelos de evaluación. SEMPAT
5. Mejora del proceso
5.1. El modelo IDEAL
5.2. Transición de tecnología
5.3. El modelo TXM. Actividades de alto nivel
5.4. El paquete de transición
6. El Proceso Software Personal
6.1. ¿Qué es el PSP?
6.2. El Curso PSP Forma de evaluación: Asistencia a clase y realización de un trabajo. Fechas de dictado del módulo en Montevideo 31 de Julio al 4 de Agosto de 2000

Fecha final de recepción de todo el trabajo del módulo
Dos meses después de la fecha de finalización del curso.

Fecha de comunicación del resultado y las calificaciones a los Coordinadores del Programa
Un mes después de la recepción de los trabajos

Bibliografía recomendada para el módulo

  • Royce, W.W.; Managing the development of Large Software Systems, Proc. 9th. International Conference on Software Engineering, IEEE Computer Society, pp. 328-338, 1987 (Publicado originalmente en Proc. WESCON 1970)
  • Basili, V.R., Turner, A.J.; Iterative Enhancement: A Practical Technique for Software Development, IEEE Transactions on Software Engineering, Vol.1, Nº 4, diciembre 1975
  • Tully, C.; Software Development Models, Proc. Software Process Workshop, IEEE Computer Society, 1984
  • Böehm, B.W.; A Spiral Model of Software Development and Enhancement, ACM Software Engineering Notes, Vol.11, Nº4, 1986
  • Budde, R., Kuhlenkamp, K, Mathiassen, L., y Zullinghoven, H.; Approaches to Prototyping, Springer-Verlag, New York, 1984
  • Special Issue on Rapid Prototyping, ACM Software Engineering Notes, Vol.7, Nº5, diciembre 1982
  • DOD-STD-2167A, Military Standard: Defense System Software Development, 1987
  • IEEE Standard Software Life Cycle Processes, IEEE Std. 1074-1989
  • ISO/IEC 12207:1995 Information Technology - Software Life Cycle Processes, Agosto 1995
  • IEEE/EIA 12207.0-1996 Industry Implementation of International Standard ISO/IEC 12207:1995, New York, Marzo 1998
  • IEEE/EIA 12207.1-1997 Industry Implementation of International Standard ISO/IEC 12207:1995 Software Life Cycle Processes - Life Cycle Data, New York, Abril 1998
  • IEEE/EIA 12207.2-1997 Industry Implementation of International Standard ISO/IEC 12207:1995 Software Life Cycle Processes – Implementation Considerations, New York, Abril 1998
  • Feiler, P.H., Humphrey, W.S.; Software Process Development and Enactment: Concepts and Definitions, SEI Technical Report CMU/SEI-92-TR-04, Septiembre 1992
  • Horning, J.J., Randell, B.; Process Structuring, ACM Computing Surveys, Marzo 1973, pp.5-24
  • Paulk, M., Curtis, B., Chrisis, M.B., Weber, C.V.; Capability Maturity Model for Software, Version 1.1, SEI Technical Report CMU/SEI-93-TR-24, Pittsburgh, 1993
  • Paulk, M., Weber, C.V.; Garcia, S.M., Chrisis, M.B., Bush, M.W.; Key Practices of the Capability Maturity Model, Version 1.1, SEI Technical Report CMU/SEI-93-TR-25, Pittsburgh, 1993
  • Capability Maturity Model - Integrated - Systems/Software Engineering, CMMI-SE/SW, Continuous Representation, Vol I y II, Version 0.2b, Septiembre 1999 (Public Release Draft)
  • Masters, S., Bothwell, C.; CMM Appraisal Framework, version 1.0, CMU/SEI-95-TR-001, Software Engineering Institute, Pittsburgh, 1995
  • Humphrey, W.S.; Software Process Management, Addison-Wesley, 1989
  • Paulk, M., Konrad, M.D.; An Overview of ISO's SPICE Project, American Programmer, Vol.7, Nº2, pp.16-20, Febrero 1994 (también en IEEE Computer, Vol.27, Nº4, pp.68-70, Abril 1994)
  • Baseline Practices Guide, ISO/IEC JTC1/SC7/WG10
  • Paulk, M., Konrad, M.D.; Measuring Process Capability Versus Organizational Process Maturity, Proc. 4th. International Conference on Software Quality, Octubre 1994
  • McFeeley, B.; IDEAL: A User's Guide for Software Process Improvement, Handbook CMU/SEI-96-HB-001, Software Engineering Institute, Pittsburgh, Febrero 1996
  • Satriani, G., Andrés, A. Escalante M.L., Marcaida, L.; Business Improvement Guide: SPICE - ISO9001 Version 1.0, European Software Institute, Technical Report, ESI-1998-TR-007, Mayo 1998
  • Ostolaza, E., Gallo, E., Escalante, M.L., Benguria, G.; Business Improvement Guide: BIG-TTM Version 1.0, European Software Institute, Technical Report, ESI-1999-TR-012, Febrero 1999
  • Ferrer, P., Sanz, J.M., Gallo, E., Vergara, M., Satriani, G.; Business Improvement Guide: BIG-CMM - Part A; User Manual, European Software Institute, Technical Report, ESI-1999-TR-007, Febrero 1999
  • Bottcher, P.; Total Quality Management and the Capability Maturity Model (CMM): What's the difference?, Proceedings of the IRIS20 Conference, Noruega, Agosto 1997, http://www.ifi.uio.no/iris20/proceedings/17.htm
  • Conti, T.; Building Total Quality: a guide for Management, Chapman & Hall, 1993
  • Humphrey, W.S.; A Discipline for Software Engineering, SEI Series in Software Engineering, Addison-Wesley, 1995
  • Humphrey, W.S.; Introduction to the Personal Software Process, SEI Series in Software Engineering, Addison-Wesley, 1997
  • Humphrey, W.S.; Three Dimensions of Process Improvement. Part III: The Team Software Process, Crosstalk, Abril 1998

    Lecturas o trabajos previos al módulo
    Ninguno


    Gestión del Coste y Tiempo de un Proyecto Software

    24 al 28 de julio de 2000

    Contextualización de la Gestión del Coste y Tiempo dentro de la Gestión de Proyectos. Técnicas de gestión de costes y tiempos más importantes del mercado: Puntos de Función y COCOMO II
    Casos Prácticos Experiencias Reales Forma de Evaluación: Asistencia a clase y trabajos
    Fechas de dictado del modulo: 24-28 Julio
    Fecha de la recepción del trabajo: 30 de Noviembre
    Fecha de comunicación del resultado: 30 Enero
    Bibliografía recomendada: En la documentación que se impartirá, se dará un listado detallado de bibliografía.