Model driven development of pervasive systems. Building a software factory
Javier Muñoz Ferrara · Dialnet (Universidad de la Rioja) · 2008
El trabajo presentado en esta tesis aborda el problema del desarrollo de software para sistemas pervasivos, Los sistemas pervasivos pretenden construir entornos donde los elementos de computacion desaparecen desde el punto de vista del usuario pero su funcionalidad se continua proporcionando. Esta vision fue inicialmente descrita por Weiser en los 90. La mayoria de los prototipos de sistemas pervasivos actuales se desarrollan ad-hoc, ya que el reto es conseguir sistemas funcionales, pero no aplican metodos de ingenieria de software. Este enfoque puede ser util para construir pruebas de concepto o los primeros sistemas comerciales, pero esta manera de desarrollar sistemas pervasivos no es escalable. Los enfoques artesanales aplicados al desarrollo de software son propensos a errores y el producto resultante suele ser defectuoso y dificil de evolucionar. Esta tesis presenta un enfoque metodologico para el desarrollo de sistemas pervasivos siguiendo los principios ingenieriles de la propuesta de las Factorias de Software y las guias del estandar MDA (Model Driven Architecture). Etas propuestas tienen puntos fuertes y debiles, pero un enfoque integrado puede aprovechar lo mejor de cada una. De las Factorias de Software se obtiene su objetivo de la reutilizacion mediante el desarrollo especifico de dominio (lenguajes especificos, frameworks de implementacion, etc.), mientras que de MDA se obtiene su objetivo de aumentar el nivel de abstraccion mediante lenguajes de modelado y las tecnicas estandar que propone. Por lo tanto, para aplicar estas propuestas al desarrollo de sistemas pervasivos, en esta tesis se realizan las siguientes contribuciones: un lenguaje de modelado para el dominio de los sistemas pervasivos. El lenguaje, que se ha llamado PervML, proporciona las primitivas conceptuales necesarias para describir los sistemas pervasivos desde su analisis (utilizando primitivas como servicio e interaccion) hasta su diseno (proporcionando primitivas como dispositivo).