Los informáticos usan modelos del software para aplicaciones

Los informáticos usan ya modelos del software a la hora de comprender, diseñar, analizar y mantener una aplicación. Incluso más, los modelos pueden usarse para generar el código final en muchos casos.

Ya no es sólo el código Java, C++ o Python el único artefacto que compone una aplicación, sino que también hay modelos de alto nivel. Y al igual que ocurre con las ingenierías tradicionales, dichos modelos permiten razonar sobre la aplicación y deducir muchas de sus propiedades antes de desarrollar nada de código.

Dichos modelos permiten razonar sobre la aplicación y deducir muchas de sus propiedades antes de desarrollar nada de código.

¿Y cómo son los modelos del software?

Los hay de muchos tipos, cada uno centrado en un aspecto concreto del sistema. Por ejemplo:

  • El modelo de estructura describe con detalle los datos que maneja la aplicación.
  • Otros modelos se encargan de especificar el comportamiento y las interacciones con los usuarios.
  • Hay modelos para diseñar e implementar la apariencia de la aplicación (pantallas, diseño, etc.).
  • Otros se encargan de la arquitectura software. En el caso de las aplicaciones distribuidas.
  • Modelos que expresan cómo los componentes que conforman la aplicación han de desplegarse en los nodos (ordenadores) en donde han de correr para que lo hagan de la forma más eficiente.
  • Otros modelos permiten razonar sobre las prestaciones de la aplicación (rendimiento, tiempo de respuesta, uso de recursos compartidos, etc.).

Si no fuera usando modelos de alto nivel, cada uno centrado en un aspecto, sería imposible razonar sobre el sistema completo, analizar su comportamiento antes y después de construirlo, mantenerlo, o incluso desarrollarlo garantizando que va a cumplir con los requisitos del usuario (que también se recogen usando modelos).

Hay modelos que expresan cómo los componentes que conforman la aplicación han de desplegarse en los nodos en donde han de correr para que lo hagan de la forma más eficiente.

Todo esto es lo que se conoce como Ingeniería del Software Basada en Modelos (o MBSE por sus siglas en inglés, Model-Based Software Engineering) y que ya se está imponiendo en muchas empresas de software para poder desarrollar, operar y mantener cualquier tipo de aplicación medianamente compleja con ciertas garantías de éxito.

También está permitiendo abaratar significativamente los costes de desarrollo de aquellas aplicaciones que pueden generarse automáticamente a partir de modelos (como muchas de las aplicaciones Web que se anuncian en la televisión que se realizan “en 3 clicks”) así como reducir los errores y aumentar significativamente la calidad y mantenibilidad de las aplicaciones al ser generadas de forma casi automática.

Por eso, si usted tiene una empresa y necesita que le vendan o le desarrollen una aplicación a medida, pida los planos. No deje que le convenzan de que no son necesarios, porque sí lo son. Y más, si van a describir de forma detallada y precisa la estructura, el comportamiento y la funcionalidad de lo que va a ser su aplicación durante muchos años.

También te interesa