Sie sind auf Seite 1von 2

JOCB AESM Tema complementario II

MDD Model Driven Development


Qu significa desarrollo de software dirigido por modelos?
Tras darse cuenta de que la programacin orientada dispona de poca expresividad, demasiado bajo nivel y resultaban programas muy complejos, se decidi elevar el nivel de abstraccin tal y como lo hacen el resto de ingenieras tradicionales como civiles o de arquitectura. De esto modo, siempre se construyen modelos antes de implementar realmente la construccin. Dichos modelos abstractos enfatizan y ocultan aspectos, son ms comprensibles, precisos, predictivos y muy baratos de construir. En cuanto a los modelos de software, es cierto que tienen algunas limitaciones, entre ellas, que solo se usan como documentacin que no se actualiza. Tambin se pueden dar grandes diferencias entre el modelo y la implementacin, ya que el modelo no se vuelve a utilizar tras la primera implementacin. Por tanto, en un desarrollo de software dirigido por modelos (MDD) las entidades en primer nivel son los modelos y las transformaciones de modelos. Por otro lado, la implementacin es casi automtica y comienza siempre a partir del modelo. En MDD son claves los lenguajes, tanto de modelado como de transformacin de modelos. Los modelos son conformes a metamodelos.

Conoces algn estndar relacionado?


Junto con MDD, se encuentra ligado el trmino MDA. Esta es la propuesta que hace Grupo de Gestin de Objetos, conocido como OMG de sus siglas en ingls (Object Management Group), es un consorcio dedicado al cuidado de diversos estndares de tecnologas orientadas a objetos. Dicho grupo recomienda sus estndares OCL, XMI, QVT, MOF, UML, estos dos ltimos permiten definir nuevas familias de lenguajes. La arquitectura dirigida a modelos pretende separar la especificacin de la funcionalidad de un sistema, sin importar su implementacin en cualquier plataforma tecnolgica. Algunas de Las ventajas que ofrece dicha arquitectura son, por ejemplo: Que permite abordar mejor sistemas complejos, protegiendo la inversin ante los cambios de tecnologas. Tambin hace posible la simulacin y la implementacin automtica de modelos y una integracin con los sistemas existentes. En cuanto a los estndares, podemos destacar: UML: Es un lenguaje grfico para visualizar, especificar, construir y documentar un sistema que ofrece un estndar para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales y aspectos concretos como expresiones de lenguajes de programacin, esquemas de bases de datos y componentes reutilizables.

JOCB AESM Tema complementario II UML es un "lenguaje de modelado" para especificar o para describir mtodos o procesos. Se utiliza para definir un sistema, para detallar los artefactos en el sistema y para documentar y construir. En otras palabras, es el lenguaje en el que est descrito el modelo. Se puede aplicar en el desarrollo de software entregando gran variedad de formas para dar soporte a una metodologa de desarrollo de software (tal como el Proceso Unificado Racional o RUP), pero no especifica en s mismo qu metodologa o proceso usar. UML no es programacin, solo se diagrama la realidad de una utilizacin en un requerimiento. Mientras que, programacin estructurada, es una forma de programar como lo es la orientacin a objetos, sin embargo, la programacin orientada a objetos viene siendo un complemento perfecto de UML, pero no por eso se toma UML slo para lenguajes orientados a objetos. Por ltimo, cabe aadir que UML cuenta con varios tipos de diagramas, los cuales muestran diferentes aspectos de las entidades representadas. MOF: El estndar MOF describe un marco de trabajo genrico que permite definir la sintaxis abstracta de lenguajes de modelado. Este estndar persigue la definicin de los conceptos bsicos que son utilizados en procesos de desarrollo de software dirigidos por modelos: qu es un modelo, qu es un metamodelo, qu es reflexin en un marco de trabajo basado en MOF, etc. Sin embargo, la mayora de estos conceptos carecen de una semntica formal en la versin actual del estndar MOF. Adems, OCL se utiliza como un lenguaje de definicin de restricciones que permite aadir semntica a un metamodelo de tipo MOF. Desafortunadamente, la relacin entre un metamodelo y sus restricciones OCL tambin carece de una semntica formal. Este hecho es debido, en parte, a que los metamodelo s slo pueden ser definidos como dato en un marco de trabajo basado en MOF.

Conclusin
Se puede decir que MDD ha elevado el nivel de abstraccin de programas a modelos, estos modelos tiene las ventajas de ser ms comprensibles, precisos, predictivos y muy baratos de construir. Por otro lado, MDA es la propuesta de OMG para hacer MDD, usando sus estndares: UML, MOF, XMI, OCL, QVT, los cuales facilitan el desarrollo simplificando el trabajo debido a que estn orientados a objetos. Para terminar, algunos puntos dbiles de MDD y MDA pueden ser: Las herramientas y tecnologas no son de todo maduras, la compatibilidad y portabilidad entre modelos no funciona del todo bien y actualmente encontramos pocas experiencias.

Bibliografa y enlaces:
Diapositivas UNICAN, sobre MDD y MDA UML Wikipedia RIUNET UPV, sobre MOF

Das könnte Ihnen auch gefallen