Diseño e implementación de un prototipo de mercado virtual utilizando la tecnología de agentes (2003)
Los paradigmas de programación han sido la base en la evolución de la ingeniería del software como disciplina que intenta ofrecer un proceso estructurado para el diseño y construcción de software de calidad. Un paradigma de programación refleja la forma en que se visualizan los procesos y actividades que desean ser modelados y automatizados, basándose en conceptos esenciales como actores, tareas, datos, relaciones, entre otros. Durante el tiempo, han surgido paradigmas de programación que han orientado los trabajos en diferentes épocas y que aun con el nacimiento de nuevos enfoques, han logrado prevalecer gracias a la fortaleza de su estructura y a su definición de conceptos. Entre los mas importantes podemos destacar dos de ellos que hoy en día son reconocidos por su alta implementación y que gracias a su aporte individual han logrado fusionar conceptos que permiten enriquecer los procesos de desarrollo en las diferentes áreas donde el software se encuentra presente. Ellos son el paradigma de programación estructurada y el paradigma de programación orientada a objetos. Como anteriormente se menciono, los paradigmas de programación se diferencian en la visión y representación individual que tienen acerca de las actividades y procesos llevados a cabo por el ser humano y la naturaleza. En este orden de ideas, para la Ingeniería del software orientada a objetos como lo cita Roger Pressman [1], vivimos en un mundo de objetos. Estos últimos, existen en la naturaleza, en entidades hechas por el hombre, en los negocios y en los productos que usamos. Ellos pueden ser clasificados, descritos, organizados, combinados, manipulados y creados. Por esto no sorprende la existencia de una visión Orientada a Objetos para la creación de software, que modela el mundo de forma tal que nos ayuda a entenderlo y gobernarlo mejor, añadiendo a su vez conceptos como la herencia y el polimarfismo, que permiten la reutilización de código para agregar una mejora en el desarrollo y desempeño de los sistemas. En tanto, el paradigma de programación estructurada se centra en que los programas computarizados pueden ser escritos con un alto grado de estructuración, lo cual les permite ser mas fácilmente comprensibles en actividades tales como pruebas, mantenimiento y modificación de los mismos, obteniendo una programación de alta precisión.