Está en la página 1de 3

IVAN GABRIEL MARTINEZ HUERTA 2013

8 razones que hacen del desarrollo basado en modelos (Model-driven Development) algo excepcional: Por Gastn Milano, gerente de desarrollo #GeneXus

11 de Marzo/2013 Este artculo est inspirado en conversaciones que he tenido, en el transcurso de conferencias, con algunos potenciales clientes que me han expresado su preocupacin acerca de los peligros del desarrollo basado en modelos, lo cual me ha dejado pensando al respecto.
En mi opinin, existen numerosos artculos publicados acerca de los peligros del desarrollo basado en modelos, muchos de los cuales se basan en argumentos vlidos, mientras que otros tienen un carcter ms histrico y una naturaleza repetitiva, y donde no se toman en cuenta los recientes adelantos en este tema. Es difcil encontrar artculos que refieran a 8 razones por las que escribir cdigo de forma manual es sumamente peligroso. Por cierto que existen ms de ocho razones que enumerar, y hasta me sent tentado de poner por escrito algunas de ellas. Por su parte el desarrollo basado en modelos implica muchos peligros, muchos de los cuales se originan en la no comprensin de su valor real. Por tanto, a la vez que admito que muchos riesgos expresados en distintos artculos existen en realidad, tambin quisiera enumerar algunas de las cosas buenas que trae consigo el desarrollo basado en modelos, conocido bajo el nombre de Model-driven Development (MDD).

1. El MDD es portador de mucha flexibilidad


Por cierto, el MDD implica una gran flexibilidad para empresas y negocios, entendida la flexibilidad como capacidad de respuesta a los cambios y adaptabilidad, tanto en el aspecto tcnico como en el comercial. Cuando a partir de un lenguaje seleccionado se escribe una solucin a mano, all tenemos un tipo de flexibilidad (que se relaciona con el poder dentro del lenguaje elegido ?) en el corto plazo, pero a su vez se est introduciendo una gran dosis de rigidez a largo plazo. Por ello, es menester tener en cuenta, antes de definir los pasos a seguir, el tiempo que se pretende que dure la inversin que es objeto de desarrollo. Cuando la eleccin es Silverlight, Flash, Visual Basic, Fox, tanto en el pasado como en el presente es necesario crear aplicaciones HTML5 iOS. En tal caso: qu grado de flexibilidad tenemos?, y cuntos conceptos pueden ser reutilizados a partir del cdigo existente? (siempre y cuando eso sea posible).

ISC

603 3

Pgina 1

IVAN GABRIEL MARTINEZ HUERTA 2013


Cuando el cdigo se crea a mano, todo lo que se obtiene es cdigo, que se podr reutilizar o tal vez, y ms probablemente, no se reutilice. En el desarrollo basado en modelos, existe un modelo y la posibilidad de reutilizar conceptos. Quienes crean una aplicacin Android a partir del modelo FoxPro Win son quienes, A la larga, disponen de una mayor flexibilidad. As que, a la pregunta de si el desarrollo basado en modelos es flexible o no, la respuesta es: depende. Para el caso de empresarios o compaas que planean su actividad para el largo plazo, la respuesta a esa pregunta es que s, el desarrollo basado en modelos permite una excelente flexibilidad.

2. Modelos modernos con grandes posibilidades de expansin


En la actualidad existen modelos con gran capacidad para extenderse en distintos niveles, y cuyo diseo est pensado para su interaccin con el cdigo escrito a mano en todos los niveles. Comnmente sucede que gran parte de ese cdigo, en el mediano plazo (si es realmente muy comn), se incorpora al modelo en algn momento. No existen los modelos perfectos, aunque muchos de ellos resultan tiles y tienen gran capacidad para extenderse. Lo interesante es encontrar una manera en que cuente con la ventaja de productividad de los MDD, adems de la posibilidad de extensin cuando no alcanza con el modelo.

3. Los programadores pueden concentrarse ms en el qu que en el cmo


Es formidable el permitir a los dems quienes no tienen idea alguna acerca de Objective-C crear aplicaciones de negocios para iPhone e iPad que cumplen los lineamientos de Apple y se basan en un modelo, que tambin puede usarse para generar aplicaciones en Android, BlackBerry o Windows 8 cuando se necesita. Y todo esto con un mnimo esfuerzo. Realmente fantstico.

4.

Existen plataformas MDD que soportan control de versiones e integracin continua

Contrariamente a lo que establecen las tpicas quejas acerca del desarrollo basado en modelos, el mismo puede en realidad soportar el control de versiones, la colaboracin y otros aspectos. Un ejemplo de ello es el hecho de que venimos trabajando desde hace muchos aos para lograr la actual situacin, y es verdaderamente interesante contar con la versin completa de un sistema de control integrado con herramientas de integracin continua.

5. Existen muy buenas herramientas alrededor del MDD


Casi todas las industrias recurren al software para aumentar su productividad y mejorar la eficacia y eficiencia de todos sus niveles operativos. Se trata de un enfoque obvio. Sin embargo, la industria del software es la nica que se rehsa a crear software mediante la aplicacin de software para cumplir con iguales objetivos (aumentar la productividad y mejorar su eficacia y eficiencia). Afortunadamente existen muchas empresas que estn abocadas a un cambio de paradigma. La nica manera de lograr tal cambio es mediante la creacin de ms herramientas deslumbrantes que creen software mediante la utilizacin de software. 6.

El equipo que trata las necesidades debe concentrarse solamente en aspectos comerciales

El equipo encargado de considerar las necesidades puede concentrar su trabajo en el aspecto comercial sin tener que involucrarse con la parte tcnica. Es comn que el satisfacer ciertas necesidades se vuelva

ISC

603 3

Pgina 2

IVAN GABRIEL MARTINEZ HUERTA 2013


imposible a causa de limitaciones del modelo. Pero esto tambin sucede en el caso de soluciones de cdigo escrito a mano. Cuando se pide que en un formulario exista la posibilidad de un scroll dentro de otro scroll en una solucin Android, esto ser muy difcil de lograr, pero la causa de tal imposibilidad no deriva del desarrollo basado en modelos. Mi argumento aqu se basa en el hecho de que, como lo expres anteriormente, una de las mayores ventajas de los modelos actuales es su interoperabilidad con el cdigo escrito a mano. Y en el peor de los casos, se necesitar escribir algo a mano. Pero ello no invalida la mayora de las veces, en que los equipos slo deben concentrarse sobre el aspecto comercial de la ecuacin en vez de preocuparse por cmo programar una solucin en particular.

7. Se debe vender la solucin, no el paradigma de MDD


El desarrollo basado en modelos constituye una manera eficiente de crear soluciones, y no es necesario dar explicaciones al usuario final, ya que el mismo se encargar de cosechar los beneficios. Se puede presentar la solucin como algo extremadamente flexible en el largo plazo, donde se guarda cuantiosa informacin del negocio (representada a travs de modelos) que ser utilizada en el futuro. 8.

Ya no es necesario preocuparse por la evolucin tecnolgica

Cuando se maneja una empresa, es lgico pretender aplicar la mejor tecnologa disponible en todo momento. Pero cuando ello implica tener que considerar los detalles de cada nueva tecnologa, se estar quitando el foco del aspecto central del negocio. El recurrir al desarrollo basado en modelos permite concentrarse nicamente en el modelo del negocio sin tener que preocuparse por los continuos cambios de tendencias de la tecnologa subyacente. Hasta aqu mi enfoque inicial sobre el tema, aunque la lista de razones es perfectible. Johan den Haan describe aqu otras razones para justificar el uso de Model Driven Development.

REFERENCIA
http://www.genexus.com/noticias/leer-noticia/8-razones-que-hacen-del-desarrollo-basado-enmodelos-model-driven-development-algo-excepcional-por-gaston-milano-gerente-de-desarrollogenexus?es

ISC

603 3

Pgina 3

También podría gustarte