El desarrollo orientado a problemas es un paradigma emergente de la informática que pone el énfasis en los problemas (en lugar de en los requisitos) como el principal tema de análisis de los ingenieros de software. Como tal, el desarrollo orientado a problemas se ocupa de:
- Investigar la estructura de los problemas organizacionales abordados por la Ingeniería de Software;
- Proporcionar formalismos para modelar y representar problemas;
- Proporcionar orientación y marcos para el análisis y descomposición de problemas;
- Definir técnicas para justificar formalmente soluciones (por ejemplo, asociando componentes del problema con componentes de la solución);
- Apoyar la reutilización de conocimientos durante el análisis de problemas (por ejemplo, a través de patrones de problemas).
Enfoques específicos
- La ingeniería de software orientada a problemas proporciona una definición formal de los problemas y un marco para asociar problemas con soluciones a través de argumentos formales y lógicos; [1]
- Los marcos de problemas proporcionan un marco para definir modelos empíricos de problemas de ingeniería de software que se basan en el mundo físico. El enfoque de los marcos de problemas también proporciona un conjunto de patrones de problemas elementales;
- La teoría del dominio [2] plantea la hipótesis de un conjunto de "estructuras profundas" cognitivas que corresponden a los componentes del conocimiento del dominio y se basa en ellas para proporcionar un marco para modelar problemas de software.
Influencias de la investigación sobre el desarrollo orientado a problemas
La ingeniería del conocimiento es un campo de la informática que ofrece un importante volumen de trabajo sobre métodos de resolución de problemas. Los métodos de resolución de problemas son patrones de razonamiento que se aplican para resolver problemas específicos. [3] Por lo tanto, el trabajo sobre abstracciones de problemas dentro de la ingeniería del conocimiento puede proporcionar una base para la investigación en ingeniería de software.
La ciencia cognitiva , que puede definirse como el estudio de la naturaleza de la inteligencia, ofrece una base para estudiar las estructuras cognitivas que los expertos en un dominio desarrollan en relación con los problemas, así como para comprender mejor los enfoques humanos para la resolución de problemas. La teoría de dominios es un ejemplo de la influencia de la ciencia cognitiva en la investigación del desarrollo orientado a problemas.
Eventos
- El Primer Taller Internacional sobre Desarrollo Orientado a Problemas (POD-2009) será organizado por la conferencia TOOLS-EUROPE 2009.
Referencias
- ^ J. Hall, L. Rapanotti, M. Jackson, "Ingeniería de software orientada a problemas: solución del problema de control del enrutador de paquetes", IEEE Transactions on Software Engineering, vol. 34, número 2.
- ^ A. Sutcliffe, La teoría del dominio: patrones para la reutilización del conocimiento y del software , CRC Press, marzo de 2002
- ^ D. Fensel, E. Motta, "Desarrollo estructurado de métodos de resolución de problemas", IEEE Transactions on Knowledge and Data Engineering, vol. 13, número 6