You are on page 1of 10

El modelado de datos es uno de los elementos ms

importantes a la hora de iniciar el desarrollo de cualquier


proyecto. Esta es la estructura, sobre la que realmente
reside la verdadera esencia de la aplicacin. Incluso
determina si el proyecto va a cumplir con su verdadero
objetivo. (Juan Manuel Lemus ).
1

Por qu optimizar

Creo firmemente que la labor como desarrolladores es que los


productos, superen las expectativas de nuestros clientes. La
optimizacin de la base de datos no escapa al proceso de
optimizacin.
Un mal proceso de optimizacin a la Base de Datos, generar
que el sistema sea inestable, poco fiable, con posibilidad de la
informacin duplicada, lento para las transacciones, etc.
Ahora bien, en el Modelo de Desarrollo la razn por la cual es
necesario optimizar, es por que el modelo ve que cada
aplicacin no est exenta a ser actualizada.
Las aplicaciones, entornos de desarrollo y tecnologas van
cambiando considerablemente. No podemos pretender que
nuestro proyecto, siga funcionando por la eternidad en la
versin del sistema en la que lo dejamos. El hacer tal cosa,
solamente demostrar una mala calidad de trabajo y poca
visin sobre el futuro de nuestra aplicacin.

1 http://www.maestrosdelweb.com/modelado-de-datos-e-implementacionde-la-base-de-datos-primer-nivel-l5/

Dentro de los SGBD, existen muchas soluciones que nos


brindan diferentes capacidades y caractersticas. Es muy
comn en la actualidad que los entornos de trabajo, se
desarrollen para cumplir con metas a corto plazo y a medida
que la aplicacin, su entorno de trabajo y sus usuarios van en
aumento; la aplicacin debe responder a esas demandas,
brindando mayor soporte a una mayor demanda de servicios.
Una aplicacin, atada por completo a una sola plataforma,
est condenada a desaparecer junto con la misma. Como
desarrolladores,

debemos

ser

previsores

de

tales

acontecimientos, haciendo sistemas escalables.


Cuando separamos el modelado de Datos, estamos relegando
al SGBD de turno, las operaciones de manipulacin, control y
actualizacin de los datos. Todos los sistemas actuales,
ofrecen capacidades de programacin de vistas, funciones,
procedimientos y los tan famosos triggers.

El modelo L5
El modelo L5, es un modelo orientado, completamente, al
desarrollo de aplicaciones para Internet. Es una divisin
completa de las partes de integran el proceso de realizacin de
cualquier proyecto orientado a Internet en el cual, la divisin

la constituye las ramas de tecnologas que intervienen en una


aplicacin orientada a Internet. As, el modelo se divide en 5
grandes reas:
Modelado de Datos
Lgica de Programacin
Estructura de Contenido
Diseo de la Interfaz
Maquetacin e Implementacin
Estos

cinco

puntos

son

el

pilar

de

este

modelo.

Adicionalmente, cada uno tiene un grado de divisin que


puede ser propuesto por el equipo de desarrollo, dependiendo
de la complejidad del proyecto.
Aqu no est incluido la fase de Anlisis y la definicin de
Metas que es obvio que necesita existir para que estos puntos
puedan llevarse a cabo; la gua sobre la que descansa
cualquier proyecto de desarrollo.
La justificacin de separar el modelo en cinco entidades, es
bastante sencilla. Consideremos el desarrollo tradicional de un
proyecto sencillo como por ejemplo un sitio de una pequea
empresa con un administrador de contenidos.
Trabajando con un administrador de contenidos

Si contamos con un administrador de contenidos, lo ms


comn es que usemos una implementacin de Base de Datos
(MySQL, Oracle, SQL Server), relacionada con el contenido
y accedida a travs del lenguaje de scripting que hemos
implementado (PHP, ASP.Net, Java, Ruby).
Debemos contar con un diseo de interfaz y el producto final
es la pgina vista en el explorador (HTML, CSS, JavaScript).
Si nos damos cuenta, existen varias tecnologas involucradas
en el producto final. Todas con una tarea especfica. Este
modelo es aplicable en cualquier nivel de definicin y
complejidad de un proyecto.
El punto de inicio de cada proyecto se centra en la definicin
del modelo de la Base de Datos y del modelo de relaciones de
los datos. Esta filosofa se enfoca en el hecho de que separar
cada uno de los puntos mencionados, proporcionar el
verdadero dinamismo que debe tener una aplicacin.
Por ejemplo: en el apartado de la definicin de la base de
datos, relegamos por completo el manejo del almacenamiento
y las funciones de manejo de datos al SGBD, sea cual sea.
Con esto nos garantizamos un rendimiento absoluto y un
mximo aprovechamiento.
Tambin, el punto que se quiere destacar es que cada uno de
los elementos y tecnologas que integran el modelo puede ser

reemplazo sin que esto afecte por completo los procesos


subsiguientes.
La programacin adaptada a mdulos

Para el segundo punto, la programacin, elegimos tecnologas


que se adapten a cada mdulo que se desarrolle. Con esto
podemos aprovechar al mximo el uso de una tecnologa para
una parte del esquema y utilizar diferentes tecnologas dentro
del proyecto, con lo cual, cada mdulo se puede hacer de una
manera ptima, y sencilla porque estamos utilizando la mejor
tecnologa para su desarrollo.
La Estructura de Contenido es uno de los ms importantes y
por as decirlo el punto de inflexin dentro del desarrollo.
Aqu generamos un esquema de modelado de contenido. Es
decir, en el desarrollo de la base de datos, optimizamos el
manejo de la informacin, en el rea de programacin
optimizamos los procesos y construimos el punto de unin
entre el contenido y el almacenamiento.
En la programacin no debemos generar consultas completas
a la base de datos (sino llamadas a funciones y vistas
almacenadas en el SGBD). Las salidas deben estar en un
formato estndar entre tecnologas como XML.

El contenido debe estar en un formato estndar. Esto permitir


su manipulacin a cualquier dispositivo. El Diseo Grfico de
la Interfaz es la definicin de plantillas para el diseo general
del sitio y el ltimo punto es la maquetacin general del sitio
con la integracin y la interpretacin del contenido generado.
Este aspecto tambin es reemplazable. En s, todos los puntos
son reemplazables y escalables.
Diseo inicial:

MySQL
PHP
XML
Diseo a Tres Columnas
XHTML 1
Reemplazar por:

SQL Server
PHP
XML
Diseo a Tres Columnas
XHTML 1
Actualizacin

Sin cambiar toda la estructura, en una nueva actualizacin


podramos quedar como:
SQL Server
ASP.Net
XML
HTML 5
Un cambio radical, pero el modelo sigue bastante intacto,
como al principio.
Ventajas

Son muchas las ventajas que se desprenden de realizar un


proyecto basado en esta metodologa. El modelo es fcilmente
utilizable en proyectos sencillos y complejos. Simplemente
bastar con saber identificar de manera clara a los actores
dentro del proceso y definir las funciones.
Muchas soluciones de terceros que podamos utilizar pueden
ser fcilmente agregadas al proyecto dentro del nivel
correspondiente sin afectar el desarrollo de los dems niveles.
La combinacin de tecnologas puede ser una gran ventaja.
Muchas de las soluciones realmente ptimas para nuestro
proyecto, si son de terceros, podran no estar disponibles en

nuestro lenguaje de scripting principal, por lo cual su


utilizacin sera imposible.
Pero,

no

necesariamente

debemos

utilizar

mltiples

tecnologas dentro del proyecto. Si el proyecto no lo requiere


o contamos con todos los elementos disponibles, podremos
fcilmente, elegir por una solucin.
Lo importante del desarrollo es que el producto final, cumpla
con las necesidades requeridas. La optimizacin es muy
importante.
El

modelo L5,

hace mucho nfasis en ello. Al final, de

cada desarrollo se pretender que hayamos construido una


estructura de programacin estable y sobre todo reutilizable.
Podemos dividir asimismo, los desarrollos de sub-mdulos
por clases, mdulos y paquetes completos, con sus
caractersticas dependencias. Siempre la estructura es
interdependiente. El mayor reto sera crear una base slida
multinivel.
Desventajas

Las desventajas aparentes estn relacionadas, dentro del


proyecto en s. El utilizar mltiples tecnologas, demandar un
mayor grado de conocimiento por parte del grupo de

desarrolladores. Recordemos, que este punto no es necesario,


pero s muy til a la hora de hacer aplicaciones escalables.
La metodologa demanda que el equipo est conformado por
profesionales

con

mayor

conocimiento

en

todas

las

tecnologas: desde la implementacin de la Base de Datos,


hasta la Maquetacin.
El otro punto, consistir en que posiblemente necesitemos
mayores recursos para poder disear un proyecto. Muchos,
podramos tener un proyecto publicado en algn servidor
compartido, y esto podra llegar a ser desventajoso, debido el
grado de personalizacin y requerimientos que podramos
llegar a alcanzar dentro de la aplicacin.
Oportunidades

Todos las metodologas, brindan un sin nmero de


oportunidades. Algunas son nicas para cada mtodo.
Entre las oportunidades destacan un mejor control dentro del
proyecto, sencillez de actualizacin y de proceso de
depuracin y mantenimiento, y que, preferiblemente, al final
de cada desarrollo, contaremos con mejores herramientas,
reutilizables en posteriores proyectos o en la escalabilidad de
antiguos desarrollos.
Retos

Si somos profesionales en tal o cual filosofa de desarrollo,


siempre el cambio de perspectiva, nos causar cierto grado de
incertidumbre y malestar. Es normal. Uno de los retos para los
nuevos emprendedores, ser la tentacin de volver a las viejas
prcticas. El sistema, demandar cierto grado de disciplina.
Si no nos guiamos dentro de los parmetros de desarrollo,
podramos estropear el proceso. Talvez, no lo veamos dentro
del producto final, pero en un futuro, podremos toparnos con
serios problemas dentro de la estructura de la aplicacin. La
optimizacin, puede ser un proceso laborioso, pero debemos
recordar que al final, este punto es vital para cualquier
aspecto.
Las

tecnologas

en

el

Internet,

estn

cambiando

constantemente. Como ancdota personal, antes de la


redaccin de este artculo, recin me entero de otro lenguaje
de programacin, mucho ms rpido que ofrece muchas
oportunidades.
Realizar una aplicacin que sea optima para el presente y que
pueda ser sujeta de grandes cambios, dentro del ciclo de
funcionamiento, puede ser un gran reto, pero ciertamente,
como equipo o como profesional independiente, nos brindar
ms de una satisfaccin.

You might also like