escuela politÉcnica del ejÉrcito maestrÍa en ingenierÍa de software ingenierÍa del software...

25
ESCUELA POLITÉCNICA DEL EJÉRCITO ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB METODOLOGÍAS PARA EL DESARROLLO WEB UWA” UBIQUITUOS WEB APPLICATIONS UWA” UBIQUITUOS WEB APPLICATIONS DDDP” DESIGN DRIVEN REQUIREMENTS ELICITATION DDDP” DESIGN DRIVEN REQUIREMENTS ELICITATION Ing. Jorge Alarcón MSc. (I.S.) Luis Guerra – Fausto Meneses – Washington Pérez

Upload: chucho-vasques

Post on 23-Jan-2016

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

ESCUELA POLITÉCNICA DEL EJÉRCITOESCUELA POLITÉCNICA DEL EJÉRCITO

MAESTRÍA EN INGENIERÍA DE SOFTWAREMAESTRÍA EN INGENIERÍA DE SOFTWARE

INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB

METODOLOGÍAS PARA EL DESARROLLO WEBMETODOLOGÍAS PARA EL DESARROLLO WEB““UWA” UBIQUITUOS WEB APPLICATIONSUWA” UBIQUITUOS WEB APPLICATIONS

““DDDP” DESIGN DRIVEN REQUIREMENTS ELICITATIONDDDP” DESIGN DRIVEN REQUIREMENTS ELICITATION

Ing. Jorge Alarcón MSc. (I.S.)

Luis Guerra – Fausto Meneses – Washington Pérez

Page 2: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

AGENDAAGENDA

1.1. Introducción.Introducción.2.2. Fundamentos e Ideas que las rigen.Fundamentos e Ideas que las rigen.3.3. Puntos Relevantes.Puntos Relevantes.4.4. Pasos para su Implementación.Pasos para su Implementación.5.5. Soporte de las Metodologías para el Soporte de las Metodologías para el

Desarrollo y Diseño Web.Desarrollo y Diseño Web.6.6. Comparativa entre las Metodologías Comparativa entre las Metodologías

UWA & DDDP.UWA & DDDP.1.1. Conclusiones.Conclusiones.2.2. Referencias.Referencias.

Page 3: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAS WEBMETODOLOGÍAS WEBINTRODUCCIÓNINTRODUCCIÓN

La innovación de las Tecnologías, Internet y las comunicaciones ha provocado en los últimos años el nacimiento de nuevas propuestas Metodológicas para la Ingeniería Web.

Estas propuestas Metodológicas para la Ingeniería Web sustentan su trabajo en el tratamiento de Requisitostratamiento de Requisitos, las etapas de etapas de análisis, diseño e implementaciónanálisis, diseño e implementación.

Page 4: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAS WEBMETODOLOGÍAS WEBINGENIERÍA DE REQUISITOSINGENIERÍA DE REQUISITOS

El tratamiento de RequisitosEl tratamiento de Requisitos es el proceso mediante el cual se especifican y validan los servicios que debe proporcionar el sistema así como las restricciones sobre las que se deberá operar.

Consiste en un proceso iterativo y cooperativo de análisis del problema, documentando los resultados en una variedad de formatos y probando la exactitud del conocimiento adquirido

Page 5: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAS WEBMETODOLOGÍAS WEBINGENIERÍA DE REQUISITOSINGENIERÍA DE REQUISITOS

Page 6: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

FUNDAMENTOS E IDEAS QUE LA RIGENFUNDAMENTOS E IDEAS QUE LA RIGEN

Estas Aplicaciones Web UbicuasAplicaciones Web Ubicuas tienen su presencia por la colaboración de varios grupos de trabajo; en tal razón, consiste en un grupo de propuestas y técnicas.

Su fase de tratamiento de Requisitostratamiento de Requisitos se basa en los roles de usuario y en ir refinando los requisitos en un proceso iterativo mediante el que se clasifican los objetivos según su carácter.

Page 7: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

PUNTOS RELEVANTESPUNTOS RELEVANTES

• Elicitación de Requisitos.• Diseño del Modelo de Información.• Diseño del Modelo de Navegación.• Diseño Transaccional o de Servicios• Diseño de la Personalización.

Page 8: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓNIMPLEMENTACIÓN

El proceso de captura de requisitos:El proceso de captura de requisitos:1.Definición de los diferentes Roles de Usuario que Roles de Usuario que pueden interactuar con el sistemapueden interactuar con el sistema.

2. Definición de los Objetivos Globales del SistemaObjetivos Globales del Sistema y la relación entre éstos.

2.1. Para definir los objetivos, UWA propone una notación propia, basada en una plantilla.

2.2. La definición de los actores y la relación con los objetivos se hace usando un diagrama basado en casos de uso.

Page 9: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓNIMPLEMENTACIÓN

3. Refinamiento de los objetivos globales, concretándolos en subobjetivos.

4. Análisis y refinamiento de los subobjetivos con el fin de detectar conflictos entre ellos.

4.1. Para definir y refinar los subobjetivos y los requisitos, utiliza una notación gráfica propia denominada grafo de refinamiento de objetivosgrafo de refinamiento de objetivos.

4.2. El refinamiento de este grafo permite ir representando la relación entre los requisitos y hacer un seguimiento para validar la consecución de los objetivos del sistema.

Page 10: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓNIMPLEMENTACIÓN

5. Concretización de los Subobjetivos en Requisitos.5. Concretización de los Subobjetivos en Requisitos.

5.1. Una vez que los requisitos son detectados, la metodología hace uso de XML para definirlos de una manera formal.

Page 11: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓN IMPLEMENTACIÓN

6. Los Requisitos son clasificados en varios tipos:6. Los Requisitos son clasificados en varios tipos:

6.1. Requisitos de contenido: responden a la pregunta de ¿qué información debe almacenar y administrar el sistema?

6.2. Requisitos de estructura de contenido: responden a la pregunta de ¿qué información debe almacenar el sistema?

Page 12: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓNIMPLEMENTACIÓN

6.3. Requisitos de acceso: describen ¿cómo debe responder el sistema en función de qué usuario interactúe con él? y de la descripción actual de dicho usuario.

6.4. Requisitos de navegación: recogen las necesidades de navegación del usuario.

6.5. Requisitos de presentación: describen ¿cómo debe adaptarse el sistema en función de qué usuario interactúe con él?

Page 13: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓN IMPLEMENTACIÓN

6.6. Requisitos de operaciones de usuario: responden a la pregunta de ¿cómo va a interactuar el usuario con el sistema?

6.7. Requisitos de operaciones del sistema: responden a la pregunta ¿qué debe hacer el sistema de forma interna, sin incluir aspectos de interfaz o interacción?

Page 14: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

IMPLEMENTACIÓNIMPLEMENTACIÓN

7. De esta forma, los requisitos se van refinando hasta que solo pertenezcan a uno de estos grupos.

8. Finalmente los Requerimientos son asignados a artefactos de diseño o a reglas de customización.

Page 15: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAS WEBMETODOLOGÍAS WEBINGENIERÍA DE REQUISITOS DE UWA INGENIERÍA DE REQUISITOS DE UWA

Page 16: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

SOPORTE DE “UWA” PARA EL DESARROLLO Y DISEÑO SOPORTE DE “UWA” PARA EL DESARROLLO Y DISEÑO WEB EN CLASE SE SUSTENTA EN LA ELICITACIÓN DE WEB EN CLASE SE SUSTENTA EN LA ELICITACIÓN DE

REQUERIMIENTOSREQUERIMIENTOS

1. Partiendo del Usuario1. Partiendo del Usuario - Razones de dificultades que pueden presentarse:• Poca claridad del usuario para transmitir su conocimiento.• Diferencias entre usuario y analista.2. Análisis de Objetivo y Meta:2. Análisis de Objetivo y Meta:• Clara comprensión en el dominio del problema.• Requerimientos del problema en un contexto mayor.

Page 17: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

SOPORTE DE “UWA” PARA EL DESARROLLO Y DISEÑO SOPORTE DE “UWA” PARA EL DESARROLLO Y DISEÑO WEB EN CLASE SE SUSTENTA EN LA ELICITACIÓN DE WEB EN CLASE SE SUSTENTA EN LA ELICITACIÓN DE

REQUERIMIENTOSREQUERIMIENTOS

3. Escenarios:3. Escenarios:• Descripción idealizada pero detallada de una instancia específica de interacción hombre-máquina.• Sustentada en texto, dibujos, diagramas.• Estructurados en diálogos o narrativas.• Similitud con los prototipos.4. Análisis de Formularios:4. Análisis de Formularios:• Colección estructurada de variables que están formateadas para soportar ingreso y recuperación de datos.• Sus instrucciones de uso encierran conocimiento sobre el dominio.

Page 18: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“UWA” UBIQUITUOS WEB APPLICATIONS“UWA” UBIQUITUOS WEB APPLICATIONS

SOPORTE DE “UWA” PARA EL DESARROLLO Y DISEÑO SOPORTE DE “UWA” PARA EL DESARROLLO Y DISEÑO WEB EN CLASE SE SUSTENTA EN LA ELICITACIÓN DE WEB EN CLASE SE SUSTENTA EN LA ELICITACIÓN DE

REQUERIMIENTOSREQUERIMIENTOS

5. Reuso de Requerimientos:5. Reuso de Requerimientos:• Los requerimientos para alguna aplicación pueden usarse en otra aplicación similar.• Permiten una mejora global del proceso.• Disponibilidad, accesibilidad, testeabilidad y modificabilidad de los requerimientos existentes.• Similitud del nuevo sistema software con uno existente.• Calidad del producto software.

Page 19: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“DDDP” DESIGN DRIVEN REQUIREMENTS “DDDP” DESIGN DRIVEN REQUIREMENTS

ELICITATIONELICITATION

FUNDAMENTOS E IDEAS QUE LA RIGENFUNDAMENTOS E IDEAS QUE LA RIGEN

Basada en la propuesta de Lowe & Eklund. Consiste en la captura, definición y validación de requerimientos, durante el proceso de diseño, el mismo que se podrían llevar a cabo, conjuntamente.

Se basa en prototipos, siendo un proceso iterativo para reducir las dudas de los usuarios.

Metodología con énfasis en el Proceso y la Técnica aunque no se preocupa mucho del Producto.

Page 20: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

METODOLOGÍAMETODOLOGÍA“DDDP” DESIGN DRIVEN REQUIREMENTS “DDDP” DESIGN DRIVEN REQUIREMENTS

ELICITATIONELICITATION

PUNTOS RELEVANTESPUNTOS RELEVANTES

Consta de tres fases: evaluación, especificación y construcción.

Se basa en las mejores prácticas de desarrollo de aplicaciones comerciales WEB. Los requerimientos son tratados, todos de la misma manera y pueden ser: de contenido, protocolos, estructura de navegación, representación interna de datos, seguridad y control de acceso, funcionalidad, etc., sin haber una clasificación específica.

NDT, UWA y DDDP son las únicas metodologías que se preocupan de todos los aspectos de requerimientos del desarrollo. Las técnicas utilizadas para procesar requerimientos son: Entrevistas y prototipos.

Page 21: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

COMPARATIVA QUE PERMITE ANALIZAR COMPARATIVA QUE PERMITE ANALIZAR LOS REQUISITOS QUE CUBREN LOS REQUISITOS QUE CUBREN

LAS METODOLOGÍAS “UWA & DDDP”LAS METODOLOGÍAS “UWA & DDDP”

METODOLOMETODOLOGÍASGÍAS

REQ DATOSREQ DATOS REQ REQ INTERFAZ INTERFAZ

AL USUARIOAL USUARIO

REQ REQ NAVEGACIONAVEGACIO

NN

REQ REQ PERSONALIPERSONALI

ZACIÓNZACIÓN

REQ REQ TRANSACCIOTRANSACCIO

NALESNALES

REQ NO REQ NO FUNCIONALFUNCIONAL

UWAUWA √√ √√ √√ √√ √√ √√

DDDPDDDP √√ √√ √√ √√ √√ √√

Page 22: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

COMPARATIVA QUE PERMITE PRESENTAR LAS COMPARATIVA QUE PERMITE PRESENTAR LAS FASES DENTRO DEL PROCESO DE TRATAMIENTO DE FASES DENTRO DEL PROCESO DE TRATAMIENTO DE

REQUISITOS QUE LAS METODOLOGÍAS “UWA & REQUISITOS QUE LAS METODOLOGÍAS “UWA & DDDP” AFRONTAN Y LAS TÉCNICAS QUE PROPONENDDDP” AFRONTAN Y LAS TÉCNICAS QUE PROPONEN

FASESFASES ACTIVIDADACTIVIDAD UWAUWA DDDPDDDP

CAPTURA DE CAPTURA DE REQUISITOSREQUISITOS

ENTREVISTAS Tratan éste proceso como parte de la definición de requisitos

PROTOTIPOS √

OTRAS TÉCNICAS Grupos de Propuestas Mejores Prácticas Comerciales

DEFINICIÓN DE DEFINICIÓN DE REQUISITOSREQUISITOS

PATRON/PLANTILLAS √

ESCENARIOS √

CASOS DE USO √ Consideran necesario obtener Modelos más Concretos

LENGUAJE FORMAL XML

PROTOTIPOS √

OTRAS TÉCNICAS Grafo de Requisitos

VALIDACIÓN DE VALIDACIÓN DE REQUISITOSREQUISITOS

PROTOTIPOS Revisión de Modelos √

OTRAS TÉCNICAS Grafo de Requisitos

Page 23: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

COMPARATIVA QUE PERMITE EVALUAR COMO DE COMPARATIVA QUE PERMITE EVALUAR COMO DE DETALLADA ES LA METODOLOGÍA “UWA & DDDP” A DETALLADA ES LA METODOLOGÍA “UWA & DDDP” A

LA HORA DE DEFINIR SU PROCESO DE LA HORA DE DEFINIR SU PROCESO DE DESARROLLO, DESARROLLO,

LAS TÉCNICAS QUE APLICAN Y SUS RESULTADOSLAS TÉCNICAS QUE APLICAN Y SUS RESULTADOS

METODOLOGÍA

ORIENTACIÓN AL PROCESO

ORIENTACIÓN A LA TÉCNICA

ORIENTACIÓN AL PRODUCTO

SOFTWARE

UWADescribe claramente los pasos a seguir

Enumera las Técnicas a aplicar

No comenta nada sobre el Producto Software Resultante

DDDPDescribe claramente los pasos a seguir

Enumera las Técnicas a aplicar

No comenta nada sobre el Producto Software Resultante

Page 24: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

CONCLUSIONESCONCLUSIONES

• Por ser la Ingeniería Web muy dinámica, sus metodologías de soporte deberán enfocarse principalmente a la Ingeniería de requisitos, análisis, diseño e implementación para obtener un producto eficiente.

• Los grupos involucrados en la Ingeniería Web deberán incluir desde sus primeras instancias a los usuarios en sus propuestas.

• Podemos afirmar que las metodologías que existense centran en el diseño de sistemas web encomparación con las que contemplan la especificación de requisitos.

• El desarrollo de sitios web no cuenta con el soporte deherramientas CASE que brinden apoyo para el tratamiento de requisitos en aplicaciones para la Web.

Page 25: ESCUELA POLITÉCNICA DEL EJÉRCITO MAESTRÍA EN INGENIERÍA DE SOFTWARE INGENIERÍA DEL SOFTWARE ORIENTADA A LA WEB METODOLOGÍAS PARA EL DESARROLLO WEB “UWA”

REFERENCIASREFERENCIAS

UWA (2001), UWA Requirements Elicitation: Model, Notation, and Tool

Architecture. www.uwaproject.org

http://www.lsi.us.es/docencia/get.php?id=2086

http://www.pst.ifi.lmu.de/~kochn/ideas03escalona-koch.pdf