EspañaInglaterraAlemaniaItaliaPortugalFranciaEspañaInglaterraAlemaniaItaliaPortugalFrancia
Enseñar al mundo nociones de arquitectura, complejidad y formas de actuar

Presentación

Seguramente la gente no tiene claro lo que significa la palabra arquitectura unida a un proceso de desarrollo y despliegue ágil.

Intentaré resaltar la complejidad arquitectónica del modelo y hacer mención de todo lo que puede estar involucrado en una arquitectura de portales.

El producto elegido es Drupal, pero no es Drupal el centro de la arquitectura, sino un enclave en la misma.

Una buena arquitectura debe poder adaptarse a otro producto sin complejidad excesiva y manteniendo su base firme.

Vamos a describir todo lo que consideramos que es arquitectura. Para ello vamos a ir de la parte de sistemas avanzando hacia un desarrollo y terminando en una comunidad de portales.

Cinco Enclaves

k.- Enclaves arquitectónicos : La gestión de los componentes y el control de los portales es arquitectura

Hemos hablado de las relaciones entre componentes, pero también hay que señalar la organización de los mismos.

Conseguir un sistema que permita una sencilla localización de los componentes y una sencilla incorporación a un entorno de desarrollo de dicho componente o funcionalidad que agrupe un abanico de componentes es mérito de una buena arquitectura.

Sin duda a nivel estructural un sistema de vínculos simbólicos facilitan dicha labor.

Comentaremos a continuación la estructura recomendada a Vector SF y otros colaboradores para Red.es y la que se está siendo usada en los servidores Brqx.

La estructura tiene un carácter de encaje inequívoco en cualquier sistema. El vocablo inicial "brqx" independientemente que sea identificativo, cumple con dos propósitos :

1.- Nunca se confundirá con un directorio de cualesquiera sistemas donde se instale ( Unix, Mac, Windows ).

2.- Nunca se confundirá con ningún proyecto definido, pues nunca se realizará ningún proyecto que se llame brqx.

El segundo vocablo de la cadena define el nivel :

- Base : Nivel de productos ( Products level )

- Lnk : Nivel de enlaces (Link level )

- Proy : Nivel de proyectos (aquí el inglés es distinto : Project Level)

- Pers : Personalizaciones

- www : Nivel final de los sites ( Web level )

El tercer vocablo de la cadena define el producto. Partimos de Drupal, pero la estructura está pensada para adaptarse a cualquier producto.

/brqx/base/drupal

El cuarto vocablo define la versión del producto. Se antepone una letra debido a que muchos sistemas tienen problemas si una carpeta comienza por número.

- v50

- v60

- v70

Una vez seleccionada la versión se han definido tres niveles:

- core ' Core invariable de Drupal

- modules ' Módulos de Drupal

- themes ' Temas de Drupal

De momento no vamos a ahondar más en la estructura. Simplemente vamos a indicar un ejemplo de la misma:

/core

/core/v612

/core/v615

/modules/abc/c/captcha/captcha_2_1

Hablamos ahora del nivel 2.

En este nivel indicaremos los componentes que están certificados y/o las versiones finales que se están usando.

La ruta inicial es similar:

/brqx/lnk/drupal/v60/modules/abc/c/captcha

Aquí se indicarán los núcleos funcionales, formados con enlaces (versiones ya certificadas).

Podemos ver el núcleo bas (base de módulos) que define la funcionalidad básica exigida para todos los portales de la arquitectura.

La ruta de esta funcionalidad común es:

/brqx/proy/drupal/v60/base

Los módulos que lo forman:

a/ajax ' /brqx/lnk/drupal/v60/modules/abc/a/ajax

c/cck ' /brqx/lnk/drupal/v60/modules/abc/c/cck

...

Esta información actualmente está obsoleta, pero sin duda enseña un camino a la hora de organizar un completo y complejo enfoque arquitectónico válido para un sistema de desarrollo multi site con una filosofía de simplicidad.

La ventaja de usar una estructura homogénea es que los procesos se pueden automatizar, por tanto tanto aplicaciones como Drush como nuestra arquitectura de scripting nos permite una agilidad en la elaboración de sites fuera de lo común.Aunque no está totalmente actualizada, dicha arquitectura es descargable desde internet :

Scripting Unix Brqx

Las políticas de scripts permiten dar una agilidad que no se pueden obtener en un proceso web. Drupal lo sabe. Los drupaleros lo saben.

Le invito a aprender a crear shell scripts, a automatizar procesos, a personalizar entornos.

Es tanto lo que hay que aprender que engrandece el producto final.

j.- Enclaves arquitectónicos : La decisión de reutilización de componentes es arquitectura

Hay multitud de factores que nos pueden impedir la re utilización de un componente. Desde motivos meramente estéticos, aspectos de funcionalidad, necesidad de innovación.

Llegar a decidir si se va a reutilizar un componente de nuestra biblioteca o un componente aportado por un módulo es una decisión de arquitectura.

Sin duda es una gran ventaja que llegue ese momento, pues tendremos la opción de innovar pero también la de reutilizar.

Sin un buen sistema documental y sin una buena arquitectura, esta segunda opción no sería posible.

A nivel de módulos y otros productos directos de Drupal la linea de acción debe ser la de colaborar, pero de momento, hasta que no se estandarice algún sistema de compartimiento de entidades que permita reutilizar entidades de la misma forma que se reutilizan módulos, deberá ser la propia jerarquía interna de cada departamento la que auto gestione dichos componentes.

Sin duda una buena linea de acción para el futuro de Drupal es la de incrementar la funcionalidad de los módulos con los componentes más comunes, al igual que disponen del módulo de localización , pues seguramente se creará un módulo llamado persona o people, que permita desplegar todas las características de la persona.

Ante esta carencia, esa creación del componente persona, nos corresponde a nosotros, entonces debemos decidir si todos nuestros portales deben usarlo o hay algunos que sólo usarían algunas características del mismo.

El abanico de posibilidades es infinito.

Hablamos de otra de tantas importantes decisiones de arquitectura que enfocarán el éxito de los proyectos y el triunfo de una metodología ágil de componentes.

q.- Enclaves arquitectónicos : La relación de dichas necesidades con la de los componentes a utilizar es arquitectura

Cuando valoramos un proyecto, debemos considerar hasta que punto es importante uno de los requisitos.

La relación de esa necesidad provocada por el requisito y un supuesto componente que lo va a satisfacer es un aspecto arquitectónico muy importante para poder equilibrar el proceso de creación del site.

Puede haber ocasiones donde el componente cumplimenta perfectamente esas necesidades. Será importante llegar a comparar con los posibles candidatos que también llegan a cumplimentarlas.

Es el momento de analizar los componente ya creados o existentes para poder decidir si es necesario un nuevo componente en el sistema.

Y si llega ese caso, hay que analizar el coste de implementación en razón a la importancia de dicho requisito.

Por tanto no todas las necesidades son iguales y no siempre es la mejor opción llegar a intentar solventarlas.

Es muy necesario hacer un estudio de componentes existentes, su estado del arte actual y los cambios futuros que van a conllevar.

Puede ser la mejor opción un aplazamiento de esa funcionalidad antes de involucrarse en un desarrollo cuyos beneficios son dudosos.

Y si realmente es necesario, sin duda la opción nunca será hacer un desarrollo independiente, sino unirse a la comunidad, acercarse a los creadores de dichos componentes o al que realmente puede solventar la necesidad y o bien solicitar sus servicios o bien colaborar con el para conseguir que esa colaboración permita solucionar el requisito. Esta debe ser la linea de acción.

Esta ha sido la que ha hecho grande el software libre, la colaboración y es la que permite anticiparse a problemas de compatibilidad y la que engrandece el producto y lo enfoca en un sistema de calidad cuyo único fin es mejorar la propia sociedad.

m.- Enclaves arquitectónicos : Los parámetros de usabilidad y seguridad aplicados a los componentes elegidos son arquitectura

Hablamos de usabilidad como conjunto de técnicas que simplifican el manejo de una web y la acercan a las necesidades de los usuarios o clientes.

La capacidad para encapsular un producto como Drupal en un conjunto de abstracciones que simplifiquen el modelo ya acerquen el resultado al negocio del cliente es arquitectura.

Por defecto, un usuario jamás debería adivinar que es Drupal el producto que hay tras su site.

Por tanto es importante gestionar adecuadamente los roles del portal y asignar visibilidad en razón de las necesidades de cada rol.

Consideramos necesarios los siguientes 4 roles :

- Administrador : Conocedor de Drupal. Tiene permiso para hacer cualquier acción en el portal.

- Supervisor : Conocedor del Negocio. Debe poder realizar cualesquiera acciones que manejen el negocio. No necesita tener conocimiento alguno de Drupal.

- Usuario autenticado : Permiso para modificar , insertar y eliminar algunas facetas del negocio

- Usuario anónimo : Cualquier visitante del portal

Estos roles se podrán incrementar en razón de las necesidades del site.

El papel de cada rol juega un factor determinante en la seguridad del site.

El administrador deberá constatar todos los nuevos parches de seguridad que se puedan aplicar con objeto de intentar que las medidas de seguridad aplicadas sean las adecuadas.

El arquitecto del sistema debe definir adecuadamente las acciones a realizar en razón del rol de cada acción , cerciorándose de respetar criterios de privacidad del negocio.

En razón a la usabilidad, en Brqx Group, disponemos de dos metodologías de diseño aplicables :

Light Potals - Portales ligeros

El objetivo de dicha metodología es minimizar las opciones disponibles ajustándolas a las necesarias.

A su vez aplicamos la metodología Liquid Potals - Portales ágiles

Su fundamento es disponer de la máxima cantidad de información sin necesidad de usar scrolling de pantalla. La filosofía es que todas las acciones estén a vista del usuario, dar agilidad a los movimientos como si fuera un líquido.

Estas metodologías están a disposición de una adecuada arquitectura que desee apostar por la sencillez y la facilidad de manejo de un site.

A su vez un arquitecto debería intentar fomentar un sistema orto normal de forma que en todos los portales, los procedimientos de actuación sean similares.

h.- Enclaves arquitectónicos : La categorización de la ruta de los componentes es arquitectura

La informática es una rueda que rara vez deja de ser redonda, sino que se disfraza con múltiples capas.

Durante años se ha identificado los componentes por una ruta específica, así pues en múltiples sistemas se han organizado niveles jerárquicos para organizarlos.

Esos mismos niveles indicaban una forma inequívoca de localizar un componente, como puede ser por ejemplo el fichero host en un sistema windows localizado en :

\System32\Drivers\Etc

Cada uno de estos parámetros aportaba valor y permite organizar el sistema.

También suponía una forma de localizar dicho archivo.

Buscando sistemas algo más potentes, podemos conseguir con enlaces simbólicos tanto en Unix como en particiones NTFS de windows distintos formas de acceder a dicho archivo.

Esa estructura tan estricta desaparece con el formato de BBDD, donde para localizar el contenido ya no es tan importante la ruta, sino más bien los campos por los que se busque.

Veamos un ejemplo :

/tierra/animales/domesticos/perro/caniche

Su categorizacion sería :

Planeta / Ser Vivo / Tipo Animal / Animal Domestico / Tipo Perro

Haciendo una query con estos vocablos sin duda accedemos al contenido, por tanto ya no es tan importante la ruta.

Pero tal como adelanté, volvemos a la misma rueda cuando lo que usamos es una URL.

Vuelve a ser importante la ruta.

Incluso con un sistema de meta tags, acaba siendo trascendente la ruta de los contenidos.

Hace un tiempo tenía un sueño, poder categorizar las rutas en razón a meta tags.

Les invito a ver lo que pedía en su día.

Brqx dream: Traceabilidad documental automatizada por taxonomías

Hoy en día esto ya es posible.

Y es más importante aún que esta idea ya irá directamente en el núcleo de Drupal en se versión 7.

Toda esa información categorizada nos permite llevar un control de los componentes de nuestro site, y a su vez aportar un valor documental extraordinario con objeto de fomentar políticas de posicionamiento.

Si, la capacidad de tracear rutas unida a la funcionalidad de abstracción de contenidos similares propia de Drupal con mod_rewrite incrementa notoriamente el valor documental de nuestro site.

Estos parámetros de traceabilidad ya fueron declarados y explicados en uno de mis primeros portales:

Idea Traceabilidad - Brqx

Sin duda ha sido una de mis obsesiones y de mis mejores aportes de arquitectura a todos y cada uno de los portales implementados.

Por tanto definir adecuadamente la ruta y el nombre de los contenidos con módulos como pathauto , token y auto_nodetitle es una labor de gran importancia para cualquier planteamiento arquitectónico con Drupal.

Arquitecto Ricardo Cabello Torres

Estoy a disposición laboral para trabajar como Arquitecto Metodologías Ágiles Drupal o bien ofrecer mis servicios de diseño de portales en Portales Profesionales.

Invito a que conozcan a su vez un enfoque revolucionario de posicionamiento basado en arquitectura : El mejor posicionamiento - Brqx

Es un placer compartir con ustedes mis inquietudes en la sociedad y mi lucha unánime por un mundo mejor. Les invito a conocer Costumbres Sociales Actuales - Brqx.

También si les gusta el coleccionismo de calidad, les invito a participar en proyectos como Mis Palillos o Mis presentaciones.

Sin otro particular, gracias por tu visita.

Facetas de Drupal - Enclaves del Éxito

a.- Enclaves arquitectónicos : La definición de la estructura del producto es arquitectura
b.- Enclaves arquitectónicos : La relación con otros productos que permitan un mejor despliegue es arquitectura
c.- Enclaves arquitectónicos : La correcta definición de necesidades a nivel de sistema es arquitectura
d.- Enclaves arquitectónicos : La interrelación entre distintos sistemas es arquitectura.
e.- Enclaves arquitectónicos : La elección de los componentes es arquitectura
f.- Enclaves arquitectónicos : La definición de los nombres de los componentes es arquitectura
g.- Enclaves arquitectónicos : La presentación y composición de dichos componentes también es arquitectura
h.- Enclaves arquitectónicos : La categorización de la ruta de los componentes es arquitectura
i.- Enclaves arquitectónicos : La relación entre componentes comunes para los portales es arquitectura
j.- Enclaves arquitectónicos : La decisión de reutilización de componentes es arquitectura
k.- Enclaves arquitectónicos : La gestión de los componentes y el control de los portales es arquitectura
l.- Enclaves arquitectónicos : La necesidad de conocimiento de los componentes disponibles es arquitectura
m.- Enclaves arquitectónicos : Los parámetros de usabilidad y seguridad aplicados a los componentes elegidos son arquitectura
n.- Enclaves arquitectónicos : La capacidad para prevenir los cambios y la adaptación del sistema al futuro es arquitectura
o.- Enclaves arquitectónicos : La capacicidad de abstracción que permite interpretar un sistema complejo de forma simple, es arquitectura
p.- Enclaves arquitectónicos : La decisión de minimizar la documentación y agrupar las necesidades comunes es arquitectura
q.- Enclaves arquitectónicos : La relación de dichas necesidades con la de los componentes a utilizar es arquitectura
Distribuir contenido
[ZI 24C 128G SSD_4-SATA_1] - (CDN:XX) [SP:PM]26-Jul-2016 - 14:07:41 * - - - * Carga: 1.6139 ==> segundoss - Mem:308 Mb/12778M