La Estrategia del Diseño Simple
Plataforma Tecnológica de Gestión de Calidad
José
Enrique González Cornejo
23 de marzo 2011
La estrategia de diseño de
DocIRS, es
desarrollar el sistema de la forma más simple posible, siempre con
el patrón de satisfacer las necesidades de información de los
clientes, quienes son los actores de los las iniciativas, proyectos,
correcciones y actividades de control y seguimiento. La estrategia
de diseño está enmarcada en el meta lenguaje
Simple-DocIRS.
El diseño de
la Plataforma
Tecnológica de Gestión de Calidad y de la gran
mayoría de aplicaciones DocIRS, está centrado en el registro
estructurado de las actividades e interacción comunicativa de sus
protagonistas, evitando todo colorido gráfico en su
presentación, como así mismo en la lógica de programación. La idea
de la sencillez, es lograr flexibilidad y agilidad, para disminuir
tiempos de desarrollo y costos, pasando rápidamente a producción.

Cada aplicación de la
Plataforma
Tecnológica de Gestión de Calidad
está diseñada e implementada de tal
manera, que los cambios se pueden
acomodar fácilmente. Este objetivo lo
hemos logrado mediante las siguientes
características:
-
El modelo de datos es reducido, basado en
una tabla maestra de 4 campos, que son: una llave
única bien definida que genera el árbol de relaciones, una
cadena XML que contiene los formularios completos y 2
campos de información ambiental. El modelo está dotado con
sólo un par de relaciones en torno a la tabla maestra, que
son un tablón de parámetros, y un limitado numero de
procedimientos almacenados.

-
Las funciones y rutinas son segmentos,
que van constituyendo objetos, cuyo código es transferible
de componente en componente, mediante argumentos
parametrizados, conteniendo el menor número posible de
clases y métodos.
-
El lenguaje de construcción es
intencionalmente en código es ASP, ASPX, Dom Javascript, JQuery,
SQL Server con una sola pagina de CSS. Estos códigos
establecen la intención de ser un modelo de solución y
programación rápida y repetitiva. Sólo algunas componentes
de carga de archivos son desarrolladas en .NET dada su
potencia. Se realiza una especial revisión cross-browser,
para asegurar la compatibilidad del sistema con los
diferentes navegadores.
-
El conocimiento compartido y socializado
de los códigos, permite que todos los programadores
comprendan la lógica relacionada con el sistema, y de ese
modo contar con múltiples recursos, para los cambios y
la permanente evolución durante la vida de proyecto. Este
aprendizaje de equipo, se refleja precisamente por la
simplificación del diseño. Es decir, cualquier programador
del Equipo de Desarrollo puede intervenir rutinas del
sistema en cualquier momento, siempre que se utilicen los
estándares de ambiente de prueba y se comenten los cambios.
-
Las vistas de presentación son
minimalistas, con la pretensión de dar énfasis al contenido.
A este efecto, se estable un conjunto de viñetas e iconos,
con una cajita de ayuda explicativa en el la parte inferior
de la pantalla, para posteriormente replicar estos accesos
en cada componente, siempre con la misma lógica de solución,
a fin que el usuario se vaya apropiando de la idea y
gradualmente realice requerimientos utilizando la
metodología y combinaciones de objetos que él mismo utiliza.
-
Se programan tareas nocturnas y diarias
que mantienen aquellos informes complejos en duro, de modo
que el usuario tiene la percepción de rapidez en los tiempos
de respuesta. La generación de estos informes también puede
realizarse por demanda desde el sistema.
-
Los informes y reportes permiten la
filtración de datos sobre la pantalla o la vista, desde su
propia celda. Este enfoque es muy útil para los clientes,
dado que permite agrupar e ir intersectando conjuntos, sin
tener la necesidad de cargar nuevas consultas desde la base
de datos.
-
Se ha evitado añadir objetos compilados,
a fin de reparar los errores en forma directa e inmediata
por cualquier miembro del equipo, se trabaja sobre ambiente
de prueba y producción, respaldando día a día las versiones
de la carpeta completa. No se cambia ninguna infraestructura
o versiones, si esto pudiese significar un cambio en
el diseño.
-
Se está permanentemente buscando
optimizar el código, factorizando e intentando no duplicar y
limpiar las funciones, rutinas, clases y métodos. Documentar
y comunicar para fortalecer la capacidad del mantenimiento
de la aplicación.
-
Tener siempre alta disponibilidad,
asegurando un grado máximo de continuidad operacional y
también alta disponibilidad, para ir actualizando el sistema
de acuerdo a los intereses del negocio. Las iteraciones de
requerimiento-solución son cortas ya que el objetivo es
lograr rapidez en la entrega de desarrollos al
cliente, mientras más feedback mejor calidad del
producto.
Artículos Relacionados
|