2.1.2.Principios de modelado

Los cuatro principios del modelado

El modelaje tiene una rica historia en todas las disciplinas de ingeniería. Los cuatro principios de modelado son derivados de esa historia.

  1. El tipo de modelo que se crea influye la manera en que el problema es atacado.
  2. Cada modelo puede ser expresado en diferentes niveles de precisión.
  3. Los mejores modelos están conectados con la realidad.
  4. Un solo modelo no es suficiente.

 

Principio 1: La selección del tipo de modelo es importante

Los modelos correctos alivian los problemas de desarrollo más demandantes, ofreciendo detalles que de otra manera no se tendrían. En cambio los modelos incorrectos nos confunden, enfocándonos en detalles irrelevantes.

En software, los modelos que se seleccionan afectan de manera importante la vista de la realidad. Por ejemplo, si usted construye un sistema a través de los ojos de un DBA, probablemente termine con un modelo entidad-relación que asocie la conducta del sistema con procedimientos almacenados y disparadores. Si usted construye un sistema a través de los ojos de un desarrollador O.O., terminará con un sistema que tenga una arquitectura centrada alrededor de clases y patrones de interacción que definen como los objetos participan.

Cada tipo de vista nos lleva a diferentes tipos de sistemas con diferentes costos y beneficios.

 

Principio 2: El nivel de precisión puede variar

Cada modelo puede ser expresado en diferentes niveles de precisión. 
 
Si usted estuviese construyendo chips de computadora, en ocasiones necesitará modelos de alto nivel, por ejemplo cuando desee mostrar el producto final a su comunidad de clientes, en otras ocasiones necesitará bajar hasta el nivel de compuertas, cuando por ejemplo requiera optimizar la operación.

Cuando se desarrolla un sistema con interfase gráfica de usuario, en ocasiones, contar con un ejecutable burdo de la interfase sería necesario para transmitir el “look and feel”, mientras que en otras ocasiones, cuando por ejemplo esté diseñando interfases de conexión vía red entre sistemas sea requerido bajar hasta el nivel de bits para definir el protocolo de comunicación.

En cualquier caso, los mejores tipos de modelos son aquellos que permiten seleccionar el nivel de grado de detalle dependiendo de:

  • Quién está viendo el modelo.
  • Para qué lo necesita ver.

                                     

 

Principio 3: Los mejores modelos están conectados a la realidad

  • Todos los modelos simplifican la realidad.
  • Un buen modelo debe reflejar características potencialmente fatales.

Un modelo físico de un edificio que no reacciona de la misma forma que lo haría uno real con el mismo tipo de materiales sería de poca utilidad.

Es siempre mejor tener modelos que estén conectados fuertemente a la realidad. Cuando esta conexión es débil se debe tener una clara percepción de donde se encuentran estas carencias. Todos los modelos simplifican la realidad, en consecuencia, el truco es asegurar que esta simplificación no oculta detalles importantes o características potencialmente fatales.

 

Principio 4: Un solo modelo no es suficiente

La palabra clave de “modelos independientes”, significa que éstos pueden ser desarrollados y estudiados por separado, pero que mantiene un nivel de interrelación importante.  

Para entender la arquitectura de sistemas orientados a objetos, es necesario contar con un conjunto de vistas complementarias y sincronizadas del sistema. Una vista arquitectónica puede ser definida como una descripción simplificada (una abstracción) de un sistema desde una perspectiva o punto de vista particular. Que cubre ciertos aspectos de interés y omite elementos que no son de importancia para ese tipo de interesados. Las vistas son “rebanadas” de modelos.

Cada vista puede contener aspectos estáticos y dinámicos. En conjunto representan los planes del sistema de software.

  • Vista de casos de uso. Expone los requerimientos del sistema.
  • Vista lógica. Captura el vocabulario del espacio del problema y la solución.
  • Vista de procesos. Modela la distribución del sistema en procesos e hilos de ejecución (threads).
  • Vista de implantación. Modela la realización física del sistema en archivos y librerías.
  • Vista de distribución. Se enfoca en los aspectos de hardware y redes necesarios para operar el sistema.

Es importante aclarar que no todos los sistemas requieren todas las vistas. El número de vistas es dependiente del sistema que se está construyendo, por ejemplo, un sistema que se ejecutará en un solo equipo con un procesador tal vez no requiera una vista de distribución.