Professional Documents
Culture Documents
2004-2008
a software libre
a software libre
ndice
Captulo 1 Captulo 2
Coordinado y editado por
7
8
11
Captulo 3
Depsito Legal M-54647-2008 Traducido al ingls por Crown Communication, S.L.
C/. Archiduque Carlos, n65, 1 46018 - Valencia
17 22
Implementacin de Sistemas de Control de Versiones: CVS y Subversion 24 Implementacin de una herramienta de generacin de informes Migracin del portal web e Intranet Workflow para la tramitacin y seguimiento de expedientes 25 28 31
Licencia Esta obra est distribuida bajo la licencia Reconocimiento-No comercial-Compartir igual 2.5 Espaa de Creative Commons Para ver una copia de esta licencia, visite http://creativecommons.org/ licenses/by-sa/2.5/es/
37
38 40 43 44
47
48 49 52 63 64 65 66
PRLOGO
Por fin, en enero de 2004 se inicia gvPONTIS como un proyecto a desarrollar en cuatro aos y que deba incluir la migracin de todos los Sistema de Informacin de la conselleria, realizndose de forma ordenada, gradual y completa y establecindose dos principios que regirn todo el proceso: d El proyecto no se financiar con recursos nuevos. Slo se utilizarn los recursos ya asignados al Servicio de Organizacin e Informtica. d Debe minimizarse la repercusin del proyecto en el trabajo diario del personal de la conselleria. Lo fundamental es el trabajo y no la herramienta. Una vez iniciado el proyecto hemos comprobado que incluso aquellas herramientas ms verdes han evolucionado ms que satisfactoriamente. La progresin ha sido casi geomtrica y la implantacin de los Sistemas Interoperables, de los Estndares Abiertos y de las herramientas y Sistemas Libres estn ya en pie de igualdad en los Sistemas de Informacin. En 2008 slo los temas de multimedia y similares tienen una mayor cobertura en el software privativo. Como se explica en las siguientes pginas, hemos tenido problemas, los hemos conseguido resolver y todava tenemos algunos pendientes. Hemos dedicado un tiempo a la formacin, no slo de los usuarios, sino sobre todo para el personal propio del Servicio, formacin que se hace necesaria y continua en este negocio de la informtica. Debemos reconocer, tras los aos transcurridos, que el mayor problema ha sido el miedo al cambio. Es el miedo al cambio tecnolgico sin paraguas el que ms ha frenado el desarrollo de este proyecto, un miedo que es un reto al mismo tiempo y que nuestra experiencia nos dice que siempre se puede asumir. En nuestro caso con formacin, planificacin y siempre un plan B por si acaso. En diciembre del ao 2008 habremos finalizado el proceso de migracin. Nos quedarn algunos reductos y algunas aplicaciones obsoletas sin migrar, pero slo porque su coste no hace interesante econmicamente su migracin.
El tiempo eliminar esos restos que no influyen en el trabajo de la conselleria porque hemos conseguido que sigan funcionando en el nuevo entorno de trabajo. Ahora nos dicen que a esto se le llama caso de xito, pero para nosotros ha sido ms bien una experiencia profesional nica. Para finalizar, y como siempre, se hace necesaria la mencin a los agradecimientos. En primer lugar, y el ms importante, debo agradecer a todo el personal del Servicio de Organizacin e Informtica. Han trabajado en estos cuatro aos de forma admirable. El agradecimiento incluye a los tcnicos y tambin a los administrativos. Todos han colaborado en superar los problemas que han surgido. No puedo citarlos aqu a todos, pero tanto el personal interno como externo del Servicio se merecen mi reconocimiento. Tambin han apoyado y, en algunos momentos, protegido el proyecto las sucesivas Secretaras Generales Administrativas que han pasado por la conselleria durante estos aos. Isabel Villalonga que lo impuls al principio con su caracterstica energa. Jos Manuel Palau que tambin apreci la importancia del proyecto. Ana Climent, que lo ha sufrido el mayor tiempo, pero que lo ha impulsado de forma decidida y continuada. Durante estos cuatro aos tambin han influido los dos Consellers que ha tenido la conselleria. Jos Ramn Garca Antn lo aprob en su momento y en algunas ocasiones tuvo que sufrirlo, y Mario Flores que lo ha conocido ya con los problemas resueltos pero que se ha involucrado sobre todo en la parte ltima y definitiva. Slo una persona ha estado estos cuatro aos como responsable ltimo, Gaspar Peral, subsecretario de la conselleria, l ha sido el impulsor continuo del proyecto. Sin su apoyo y cobertura esta memoria no hablara de un caso de xito sino de un proyecto fallido o inacabado.
Parte 1
CAPTULO 1
Otro aspecto significativo a solucionar era la obtencin de datos por las aplicaciones procedentes de dos SGBD distintos, siendo uno de ellos Oracle. Nos vimos en la obligacin de desarrollar una herramienta que realizase replicaciones a nivel de tabla. Actualmente se est reemplazando esta solucin por el empleo de WebServices. No podemos dejar de sealar los problemas que an no se encuentran ptimamente resueltos. Entre estos, que son la base de nuestras principales lneas de actuacin, se encuentran la bsqueda de mejores herramientas de administracin y monitorizacin de PostgreSQL, as como la mejora de la gestin de la seguridad y control de accesos. En los prrafos anteriores se ha hecho referencia a los cambios tecnolgicos llevados a cabo en el proyecto de migracin. Pero tambin resultaba necesario realizar cambios culturales que contribuyeran a racionalizar la interaccin de mltiples y diversos perfiles que colaboraran en las diversas fases de nuestros desarrollos, bien fuera por la migracin de gran parte del inventario de aplicaciones (con la reingeniera que se decidi realizar a muchas de ellas debido a que se haban desarrollado bastantes aos atrs), as como para afrontar con mayores garantas de xito los nuevos desarrollos que por necesidades de la conselleria fueran surgiendo. Se impona pues, en primer lugar, la necesidad de adoptar una metodologa de desarrollo, que entre otros objetivos permitiera: d Generar una sistemtica de trabajo con tareas claramente definidas y asignadas a los diversos perfiles colaboradores. Con ello conseguiramos integrar los trabajos realizados por el personal de Organizacin e Informtica que participaba en cada uno de los proyectos de desarrollo. d Homogenizar la documentacin de los productos de salida que cada una de las tareas transmita a la siguiente con objeto de aumentar la eficiencia de los proyectos. Siguiendo las recomendaciones del documento de conclusiones, result MTRICA la metodologa adoptada debido a que soporta todo el ciclo de vida del software adems de dar cobertura al desarrollo orientado a objetos. Se inicia pues el proyecto gvMTRICA
con el objetivo de adaptar MTRICA Versin 3 a las necesidades de la Conselleria de Infraestructuras y Transporte. A medida que avanza el proyecto y va siendo puesto en prctica en las fases de anlisis y diseo de nuevas aplicaciones, se evidencia la necesidad de proveerse de una herramienta CASE1 que le d soporte a su implantacin, minimizando en la medida de lo posible el empleo de plantillas propias. Este es el germen de gvCASE, un subproyecto integrado en el proyecto gvPONTIS que tiene como objetivo desarrollar MOSKitt, una herramienta CASE libre desarrollada sobre la plataforma Eclipse. En la fase de programacin, un aspecto importante a considerar cuando se van a desarrollar numerosas aplicaciones es el de proveerse de un framework2. Surge con ello gvHIDRA, otro subproyecto integrado en gvPONTIS que tiene como objetivo convertirse en el marco de trabajo que sirva de base para el desarrollo en PHP de aplicaciones de gestin en entornos web siguiendo la Gua de Estilo3 de la conselleria.
gvCASE, un subproyecto integrado en el proyecto gvPONTIS que tiene como objetivo desarrollar MOSKitt, una herramienta CASE libre desarrollada sobre la plataforma Eclipse
Respecto al desarrollo de aplicaciones en Java la decisin sobre el framework a utilizar an est en fase de anlisis, si bien inicialmente se realizaron pruebas con Struts y Turbine. Actualmente se est trabajando con una combinacin modular de JSF en capa de presentacin, Spring en capa de negocio e Hibernate en capa de persistencia de datos.
1 Las herramientas CASE (Computer Aided Software Engineering, Ingeniera de Software Asistida por Ordenador) son aplicaciones informticas destinadas a aumentar la productividad en el desarrollo de software en todos los aspectos del ciclo de vida. 2 Entorno de trabajo que agrupe un conjunto de programas, bibliotecas y lenguaje interpretado predefinidos que ayuden a desarrollar y unir los diferentes componentes de un proyecto. 3 Una gua para unificar los criterios de aspecto y usabilidad en el proceso de desarrollo de aplicaciones.
Una de las funcionalidades ms importantes al contar con varios desarrolladores que concurren en el desarrollo de una aplicacin es el de contar con un sistema de control de versiones que permita mediante un repositorio comn, almacenar los ficheros que se estn programando, as como comparar cambios que se hayan podido realizar en ellos. Para ello se adopt inicialmente CVS. Actualmente, estamos implantando Subversion por las ventajas que presenta frente a CVS, al incorporar un control mediante permisos para acceder a los proyectos y mejorar el versionado de los archivos. Para facilitar las labores de programacin de aplicaciones se requera proveerse de un Entorno de Desarrollo Integrado. Eclipse se constitua como el IDE4 de cdigo abierto ms maduro en el momento de la toma de decisin. Tiene, entre otras ventajas, el contar con una gran comunidad de usuarios as como, mediante el empleo de plugins5, permitir programar con varios lenguajes y ampliarle funcionalidades. Hasta la fecha no hemos hecho ms que disfrutar de las ventajas de la aplicacin y de su evolucin, proporcionando cada vez mejores caractersticas. El tiempo ha confirmado el acierto en la eleccin de esta herramienta. El proyecto MOSKitt est siendo desarrollado como un plugin de Eclipse. Otro aspecto que debamos cubrir era la generacin de informes en cdigo abierto. La herramienta seleccionada por la conselleria, iReport que incluye el motor JasperReports, se ha mostrado, por su madurez, ampliamente solvente. Es una herramienta multiplataforma desarrollada en Java que de entre sus principales ventajas ha destacado por su facilidad de uso para generar informes de mucha riqueza (grficos, tablas cruzadas, etc.) con contenido dinmico, y por los mltiples formatos a los que es capaz de exportar la informacin, XML o PDF entre otros. Se pueden extraer los datos desde orgenes muy diversos, entre los que figuran todas las Bases de Datos, e incorpora un visor que permite previsualizar en pantalla los informes.
4 Programa compuesto por un conjunto de herramientas que ha sido empaquetado como un programa de aplicacin, es decir, consiste en un editor de cdigo, un compilador, un depurador y un constructor de interfaz grfica de usuario. 5 Aplicacin informtica que interacta con otra aplicacin para aportarle una funcin o utilidad especfica. Constituye una forma de expandir programas de forma modular, de manera que se puedan aadir nuevas funcionalidades sin afectar a las ya existentes ni complicar el desarrollo del programa principal.
Por ltimo, el portal web y la intranet tambin han sufrido su correspondiente migracin. Se ha procedido a realizar un rediseo y reestructuracin de la informacin adoptndose Typo3 como gestor de contenido. Actualmente queda pendiente acoger soluciones para el desarrollo de formularios rellenables en PDF, as como para aspectos de edicin avanzada de imgenes que no cubre GIMP. En resumen, hasta la fecha las principales lneas de trabajo en el mbito de Desarrollos Corporativos y web, enmarcados en el proyecto gvPONTIS, son las que se detallan a continuacin: > Actuaciones de mbito general: d gvDADES. Experiencias con Sistemas de Gestin de Bases de Datos. d gvMTRICA y MOSKitt. Definicin de una metodologa de desarrollo y su soporte. d gvHIDRA. Desarrollo de un framework para PHP. d Implantacin de Sistemas de Control de Versiones. CVS y Subversin. d Implantacin de una herramienta de generacin de informes. d Migracin del portal web e Intranet. > Como principales actuaciones especficas y a modo de ejemplos ilustrativos encontramos: d Migracin de MASTIN. Workflow para la tramitacin y seguimiento de expedientes. d gvADOC. Sistema de gestin documental.
A continuacin, en cada uno de los siguientes captulos, se amplan los detalles de cada una de las actuaciones acometidas.
10
CAPTULO 2
Cuando
En dicha fecha no exista versin alternativa en programas de oficina, pero para el uso como gestor de base de datos se vio que se poda conectar mediante ODBC con MySQL o PostgreSQL, con lo cual exista la posibilidad de realizar instalaciones de dichos programas en los ordenadores de los usuarios o en servidores, si necesitaban compartir datos. 2. Alternativas para el uso de Microsoft Access como herramienta de desarrollo de aplicaciones, consultas, informes, etc. MS Access tena dos ventajas: era fcil de usar por usuarios finales, los cuales podan definirse sus propias tablas, consultas e informes, era fcil desarrollar e implantar pequeas aplicaciones departamentales. No se encontr ninguna herramienta alternativa que cumpliera estas expectativas en aquel momento. El desarrollo de aplicaciones se hara con otras herramientas, por ejemplo, PHP y como base de datos se usara PostgreSQL o MySQL. 3. Alternativas para el uso de ODBC/OLE para el acceso desde aplicaciones como Word, Excel o desarrollos propios a las bases de datos.
11
En este caso no hubo problema para decidir pues exista una alternativa madura, UnixODBC, resultando fcil la realizacin de conexiones ODBC desde aplicaciones que lo soportaran, como OpenOffice. Por ello, se instal en los ordenadores que lo precisaron, haciendo uso de los drivers ODBC proporcionados por los propios fabricantes. En las aplicaciones Java que lo han permitido, se han usado drivers JDBC estndar. 4. Alternativas para el sistema de bases de datos corporativo, Oracle, as como su uso sobre Linux. Nos marcamos dos objetivos primordiales: d Convivencia de Oracle con Linux. Debamos conseguir que el sistema operativo sobre el que corriera Oracle fuera libre. ramos conscientes que no podamos suprimir al 100% el uso de la base de datos de Oracle por dos motivos: la existencia de desarrollos antiguos la relacin con otras administraciones de la Generalitat Valenciana que usan Oracle en sus soluciones.
que permitiera la migracin de cdigo. Aunque desebamos hacer los desarrollos sin cdigo en la base de datos, resultaba obligatorio para mantener las aplicaciones existentes que dispusiese de soporte para objetos grandes (raw, long, lob, etc.) que dispusiese de herramientas de conexin y administracin.
d Eleccin de otro SGBD alternativo con las siguientes caractersticas: que cumpliera con los requisitos de los SGBD corporativos (administrador de transacciones, consultas, gestin de usuarios, gestin de almacenamiento, integridad, cdigo en base de datos, as como escalabilidad, portabilidad, rendimiento, disponibilidad) existencia de clientes ODBC/JDBC existencia de software para conectarse desde clientes Windows, para aquellos casos en que no se pueda migrar que permitiera la migracin de datos
12
que permita el mantenimiento de datos geoespaciales, muy importantes en nuestra conselleria. Este estudio nos llevo a tomar la decisin de implantar PostgreSQL en su versin 7.3 como SGBD alternativo a Oracle, sin perjuicio de hacer un seguimiento de MySQL, dado que, al ser la ms usada, imaginbamos que se le iran aadiendo funcionalidades.
esquemas, objetos de la base de datos, usuarios, grupos, tablespaces, gestin de la seguridad, etc.) d desarrollamos procedimientos para el mantenimiento de la base de datos (arranque, parada, copias de seguridad, respaldo, gestin de sesiones, etc.). Hemos ido avanzando con PostgreSQL en sus sucesivas versiones, llegando desde la 7.3 hasta la 8.2 (pasando por la 7.4 y la 8.1). En dichas migraciones de versiones no hemos tenido ningn problema para realizar las actualizaciones.
13
volcados completos de datos de una base de datos a otra. Esta solucin no resultaba satisfactoria por los siguientes motivos: d Eran volcados completos, es decir, se borraban los datos de la tabla destino y se volvan a volcar, de modo que, para tablas pequeas no haba problema, pero si haba muchas tablas y grandes, el sistema poda resultar ineficiente. d Al borrarse datos de las tablas, no se podan definir claves ajenas a las tablas, pues impediran el borrado de los datos. d Al ser volcados completos, se ejecutaban una vez al da, con lo que no disponamos de la replicacin instantnea, necesaria o conveniente en algunos casos. En la actualidad, hemos desarrollado una herramienta para mantener la replicacin a nivel de tabla, tanto en modo refrescos completos como en modo refresco rpido, que consiste bsicamente en la definicin de un repositorio de tablas maestras y tablas copias, un sistema de triggers que se usan para los refrescos rpidos y unos programas en PHP que realizan los refrescos y el control de las replicaciones. Este sistema lo tenemos ya en produccin y lo usamos para aquellos casos que no podemos resolver con WebServices.
cionalizacin de los conjuntos de caracteres, de modo que hemos pasado de soportar slo el conjunto de caracteres ISO8859-1 (Latin1) a soportar UTF8.
2.2.4 MySQL
Adems, iniciamos una pequea implantacin de MySQL4, ya que hemos adquirido productos, como Typo3 e IdentityManager de SUN que usan esta base de datos como repositorio, lo cual nos sirve para ver funcionalidades de este motor de base de datos.
2.2.3 Internacionalizacin
En las sucesivas migraciones de versiones de bases de datos, hemos llegado a la versin 8.2.3 de PostgreSQL, y durante estas migraciones hemos aprovechado para abordar el tema de la interna-
14
2.2.6 Formacin
Al inicio del proyecto de migracin, se organiz un curso en la Universitat Politcnica de Valncia sobre Administracin de PostgreSQL. A partir de aqu, hemos avanzado nosotros mismos, consultando la documentacin y practicando. En estos momentos, ya desde la conselleria, se est en condiciones de preparar un curso de Administracin de Bases de Datos con PostgreSQL. El manual del curso est disponible en la web de gvPONTIS.
til para programadores y flojo para administradores. pgAdmin3 PostgreSQL Dispone de versin web en PHP (phpPgAdmin3). Funciona en Linux y Windows.
Propia de Oracle, certificada para conectar a versiones 9.x y 10.x. SQLDeveloper Oracle MySQL Requiere JDK. Funciona en Linux y Windows. til para programadores.
Squirrel
GPL, se pueden hacer plugins para incorporar funcionalidades. hecha en Java, funciona en Linux y Windows. se conecta por JDBC a cualquier SGBD.
isqlplus
Oracle
Lo cierto es que, aunque perdiendo funcionalidades respecto a TOAD, hemos trabajado satisfactoriamente con las tres primeras, y ya es gusto personal de cada uno la preferencia sobre una u otra. Otro aspecto a considerar es el punto de vista del Administrador de Base de Datos. Para Oracle 10g no ha existido problema, pues Oracle proporciona una interfaz web para Enterprise Manager 10g muy potente. Para PostgreSQL, en cambio, no hemos encontrado herramientas GPL y gratuitas que nos satisfagan, sobre todo en el campo de la monitorizacin de la base de datos.
Evidentemente, estas dificultades ya las imaginbamos cuando empezamos con el proyecto y las asumimos.
15
El cambio se ha hecho con mucho respeto, pero sin miedo. Hay que tener claro que cambiar a Software Libre es un cambio de mentalidad grande. No se puede pretender obtener las mismas prestaciones en PostgreSQL que las que se tienen con Oracle. Ello no quita que veamos que nos est siendo muy til esta migracin. Asumimos determinadas prdidas, que se pueden ver compensadas por las ganancias, tanto econmicas como de colaboracin en proyectos que son de inters para la sociedad y la conselleria.
prestaciones, por ejemplo para poder implementar clusters de bases de datos, alta disponibilidad, etc.
2.4 Recomendaciones
d Si se usa Access o similares como motor de base de datos en pequeas bases de datos, podemos sustituirlo por MySQL o PostgreSQL, pues resultan de fcil instalacin y coste cero en licencias. d Si se necesitan crear muchas bases de datos departamentales, por ejemplo, una organizacin que tiene muchos centros, y en cada uno debe tener una base de datos, si instalamos PostgreSQL, ahorramos costes, adems de resultar muy fcil administrarlo en remoto desde un nodo centralizado. d La implantacin en una gran organizacin de estos sistemas, como es nuestro caso, implica la convivencia de varios sistemas de bases de datos heterogneos que deben relacionarse entre ellos. En este caso, es muy importante convencerse de que no slo consiste en un cambio de bases de datos, sino que se deben realizar procesos de modernizacin en los desarrollos de software, de modo que se supla desde las aplicaciones las carencias que se dan al no usar un nico proveedor de software. Es fundamental una separacin de los desarrollos en capas, para evitar acoplamientos. d Perder el miedo a las novedades, estos gestores de bases de datos tienen la mayora de las funcionalidades que se necesitan en muchos entornos. Animamos a las universidades a que empleen estos gestores de bases de datos, tanto para la enseanza como para su trabajo, as como a muchas empresas tecnolgicas para que vean que existen oportunidades de negocio con este software desarrollando mejoras o prestando soporte. d Preguntarnos por las prestaciones que le vamos a solicitar a nuestras bases de datos puede evitar, si optamos por las alternativas libres existentes, tener que asumir los elevados costes de licencias y soportes de aplicaciones privativas.
16
CAPTULO 3
En
Se consensuaron los siguientes criterios2 antes de abordar los trabajos: d La metodologa a adoptar deber ser una adaptacin de MTRICA Versin 33. d Aunque la metodologa propuesta deber cubrir todo el proceso de desarrollo, se prioriza la adaptacin de las fases de anlisis y diseo. d Se debern potenciar las tcnicas de orientacin a objetos en estas dos fases. De todo esto se deduce que el objetivo que se quiere alcanzar es el de definir para la CIT y sus empresas colaboradoras un enfoque especialmente adecuado para construir diversos sistemas de informacin similares, que automatizan procedimientos administrativos u otros procesos diseados por los ingenieros de procesos de la CIT.
2 La justificacin a cada una de estas decisiones se puede encontrar en el documento de conclusiones elaborado por el Grupo Linux.
1 Ver Captulo 2, las alternativas para los nuevos Desarrollos Corporativos y Desarrollos Web con herramientas Linux del documento de conclusiones.
3 MTRICA Versin 3 es una metodologa desarrollada por el MAP (Ministerio de Administraciones Pblicas) y de obligado cumplimiento en las Administraciones Pblicas que divide el proceso de desarrollo en las siguientes fases, a las que denomina tambin procesos: Planificacin, Estudio de Viabilidad, Anlisis, Diseo, Construccin, Implantacin y Mantenimiento. Para ms informacin ver www.csi.map.es/csi/metrica3/index.html
17
grandes rasgos consiste en el uso de gforge para la gestin de los proyectos y de Plone como Gestor de Contenidos para la Publicacin de la documentacin de los mismos. A continuacin se inicia una fase de pruebas para validar la metodologa. Aqu se pone de manifiesto la imposibilidad de abordar los desarrollos haciendo uso exclusivamente de las plantillas definidas por gvMTRICA ya que la gestin de la documentacin (su edicin y posterior actualizacin), en muchos casos, terminaba siendo ms costosa que los propios anlisis. Se puso de manifiesto tambin la densidad de las plantillas, haba demasiada informacin a rellenar en cada caso y no siempre era necesario, de modo que se tom la decisin de revisar su publicacin para facilitar su aprendizaje. Surgi entonces la necesidad de iniciar una nueva fase en el proyecto, cuyo objetivo principal era el de facilitar la aplicacin de la metodologa. Para conseguirlo haba que (1) dotar a la CIT de herramientas para poder aplicar la metodologa de una forma ms eficiente, (2) definir los requisitos mnimos que deben cumplir los anlisis en la CIT para equilibrar el esfuerzo entre las fases y (3) mejorar la documentacin del proceso para hacerla ms intuitiva y que, de este modo, resulte ms sencilla la aplicacin de la metodologa. Los trabajos que se realizaron durante esta fase fueron los que se detallan a continuacin: d Se establece UML como el estndar a emplear en la especificacin de los sistemas de informacin. d Se decide dar un mayor peso a los modelos UML en detrimento de las plantillas. d Se determina qu elementos del lenguaje UML van a ser utilizados para modelar los sistemas de informacin en la CIT. d Se especifican los perfiles de UML necesarios para adaptar los modelos UML a los sistemas de informacin de la CIT y se determina el subconjunto de Plantillas de gvMTRICA que van a ser sustituidas por estos modelos.
18
gvMTR ICA y MOS Kitt: definicin de una metodologa de des arrollo y su soporte
d Se selecciona PowerDesigner v.114 como herramienta de anlisis, principalmente por ser una herramienta ya conocida en la CIT. Hasta el momento haba sido muy utilizada por los analistas en el marco de la definicin e implementacin de Bases de Datos Relacionales a partir de modelos conceptuales basados en modelos Entidad-Relacin. An siendo una solucin privativa, se considera vlida como solucin temporal, de este modo se evita incluir un elemento nuevo ms y se deja para ms adelante el abordar este tema. d Se define la estructura completa, aplicando los criterios establecidos en gvMTRICA, que debe poseer cualquier proyecto modelizado en PowerDesigner. d Se implementan los perfiles UML antes mencionados con la herramienta y se proporcionan los mecanismos necesarios para completar los anlisis, enlazando los modelos con las plantillas que no pueden ser reemplazadas. d Por ltimo, se definen informes orientados a los usuarios y a los programadores. Llegados a este punto del proyecto, se considera que, aunque hay puntos que completar y otros se pueden mejorar, la metodologa est ya lo suficientemente madura como para ser aplicada en la Consellera y se dispone de herramientas para hacerlo. Se inicia, por tanto, una fase de monitorizacin para detectar fallos y, sobre todo, priorizar las posibles mejoras. Esta tarea es continua durante todo el proyecto, celebrando reuniones peridicas y realizando un seguimiento y apoyo directo a todos y cada uno de los implicados. Paralelamente, muchos de los proyectos iniciados en gvPONTIS tambin alcanzan su primera versin, como es el caso de gvHIDRA (implementacin de la Gua de Estilo de la CIT en PHP) con lo que ya es posible el abordar la fase de integracin de la Metodologa con las arquitecturas de soporte sobre las que deban construirse los desarrollos de la CIT. En este sentido:
4 Soporta UML 1.5.
d Se amplia el catlogo de modelos UML para incluir un perfil UML que facilite la definicin de las Interfaces de Usuario, tomando como base los Patrones definidos por la Gua de Estilo e implementados por gvHIDRA. d Se define un nuevo perfil UML para aplicarlo en los desarrollos, cuyo objetivo es el de la automatizacin de los procedimientos administrativos sobre un motor de Workflow. Siguiendo el enfoque defendido en la estrategia de DSDM5 (Desarrollo Dirigido por Modelos), y ms concretamente MDA6 (Model Driven Architecture), se intenta mantener a los modelos a un nivel de abstraccin que permita describir los sistemas de informacin de la forma ms independiente posible de la plataforma sobre la que se van a construir. Desgraciadamente esto no siempre es posible, debido, principalmente, a que no se dispone de las guas necesarias que recopilen todas las reglas que deben aplicar los programadores para transformar en cdigo toda la informacin que reciben en los modelos. Esto ltimo obliga a los analistas a incluir esta informacin de implemetacin en los diagramas (los modelos) para hacrsela llegar a los programadores. Y es, en este punto, en la generacin de las guas de implementacin, en la que se encuentra actualmente el proyecto. Paralelamente, en la CIT se vuelve a revisar la herramienta escogida para aplicar la metodologa por varias razones: d El uso de PowerDesigner, una herramienta privativa que slo funciona sobre Windows, plantea problemas de incoherencia con la estrategia general de gvPONTIS. d La dificultad de abordar todo el proceso propuesto por gvMTRICA, haciendo uso exclusivamente de modelos UML. UML y los perfiles definidos resultan insuficientes para es5 MDD es una aproximacin al desarrollo de software basado en el modelado de sistemas software y su generacin a partir de los modelos. 6 MDA es un estndar de OMG (Object Management Group) que promueve el MDD y agrupa varios lenguajes que pueden usarse para seguir este enfoque (UML es uno de ellos). MDA promueve explcitamente elevar el nivel de abstraccin a la hora de describir los sistemas de informacin.
19
pecificar las Interfaces de Usuario de los sistemas; por otra parte, algunas de las plantillas siguen tenindose que definir sobre documentos OpenOffice. d Se construye una base terica para documentar los distintos modelos UML que se consideran necesarios para completar el anlisis de un Sistema de Informacin con PowerDesigner. Estos modelos estn relacionados entre s de forma que entre todos completan la informacin correspondiente a los distintos conceptos planteados por la metodologa: hay un modelo para especificar las funcionalidades del sistema, un modelo para definir la entidades necesarias para satisfacer dicha funcionalidad, un modelo que determina la interfaz grfica a travs de la cual el usuario puede acceder a dicha funcionalidad y cmo afecta esto a las distintas entidades del sistema etc. Sin embargo, estas relaciones entre los distintos modelos no puede ser definidas en PowerDesigner y, por tanto, no pueden construirse unos modelos a partir de los otros, ni por supuesto mantenerlos sincronizados entre s de forma automtica. Los principales problemas que plantea este punto son que, adems de suponer un sobrecoste para los analistas (editores de los modelos), impide garantizar la consistencia y la correccin de los anlisis realizados haciendo uso de la metodologa. d En este momento, la metodologa es ya conocida por la mayora del personal del Servicio. Por ello, plantear un cambio de una herramienta CASE a otra distinta ya resulta asumible.
Un primer estudio pone de manifiesto la inexistencia de una herramienta CASE de Software Libre de este tipo que cubriese mnimamente los requerimientos propuestos por la CIT. Como parte del EVS se establece un proyecto de colaboracin entre el grupo OO-Method del DSIC (Departamento de Sistemas Informticos y Computacin) de la U.P.V. (Universidad Politcnica de Valencia) y la CIT para elaborar un estudio de soluciones candidatas al desarrollo de una herramienta CASE libre que proporcione soporte a la metodologa gvMTRICA. De este estudio se desprende, como primera conclusin, que es posible el uso de una plataforma existente para el desarrollo del proyecto, en lugar de empezar desde cero o de adaptar una herramienta CASE libre. Esta plataforma es Eclipse, incluyendo los plug-ins propuestos por el proyecto EMP (el Eclipse Modeling Project unifica los plug-ins relacionados con el modelado que estn desarrollados directamente dentro del proyecto Eclipse).
MOSKitt permitir dotar a la CIT, y en general a las organizaciones, de herramientas que permitan aplicar Ingeniera del Software en sus procesos de desarrollo
Como documento final de la fase de EVS se obtiene el Pliego de Condiciones Tcnicas del proyecto gvCASE. Esto da lugar, en mayo de 2007, al inicio del proyecto gvCASe cuyo objetivo es la construccin de MOSKitt, una herramienta CASE libre, basada en Eclipse, para dar soporte a la metodologa gvMTRICA. El proyecto gvCASE queda tambin integrado en gvPONTIS. Este objetivo inicial del proyecto ha evolucionado para convertirlo en la primera Plataforma de Modelado en Software Libre para la construccin de herramientas CASE, con soporte al proceso de desarrollo establecido para distintas organizaciones. Es decir, dota de versatilidad a la herramienta para poder dar soporte a la aplicacin de metodologas, orientadas a diferentes tipos de sistemas de
20
gvMTR ICA y MOS Kitt: definicin de una metodologa de des arrollo y su soporte
informacin. Se trata de un proyecto con un fuerte componente Investigador e Innovador. MOSKitt permitir dotar a la CIT, y en general a las organizaciones, de herramientas que permitan aplicar Ingeniera del Software en sus procesos de desarrollo, siguiendo el paradigma del Desarrollo de Software Dirigido por Modelos (DSDM), una propuesta en la que se le atribuye a los modelos el papel principal de todo el proceso, frente a las propuestas tradicionales basadas en lenguajes de programacin y plataformas de objetos y componentes software: d Seleccionando aquellas tcnicas (UML2, BPMN etc.), que mejor se adapten al tipo de sistemas que se deseen construir en cada organizacin. d Definiendo y dando soporte a los procesos de desarrollo de software para aplicar el mtodo de desarrollo que mejor se ajuste a su organizacin y a los sistemas de informacin a desarrollar.
21
CAPTULO 4
La
22
del framework emplean tiempo, tanto en su mantenimiento y desarrollo, como en la construccin de aplicaciones sobre el mismo. Este doble perfil del equipo permite ver de cerca los problemas del framework, pero dilata en el tiempo el aporte de mejoras y soluciones.
Debimos aprender a buscar antes de hacer, dado que en el mundo open source siempre hay alguien que ha intentado algo parecido, y del cual puedes aprovechar como mnimo su experiencia. Esto nos ha enseado a contemplar el estado del arte antes de acometer nuevas tareas
soletos. Se apuntaba hacia modelos de arquitectura software diversos: anlisis orientado a servicios, orquestacin de servicios y un amplio etctera, que tiene como base la orientacin a objetos en todo el ciclo de vida del software. En esta lnea existen proyectos concretos como gvMTRICA y MOSKitt, con los que hemos de coordinarnos necesariamente. d La migracin de una aplicacin existente, no es simplemente analizar cmo funciona y ponerle encima una nueva interfaz a travs del navegador. Implica siempre una revisin de la misma con el usuario, que siempre aprovecha para aadir funcionalidad. En la mayora de los casos dichas revisiones no han ido acompaadas de ningn anlisis (o por lo menos dicho anlisis ha sido informal y no ha quedado documentacin sobre el mismo). Este escollo tambin se ha abordado desde el proyecto gvMTRICA. La hoja de ruta de gvHIDRA siempre contempla como objetivo facilitar la labor a los programadores e incorporar funcionalidades al framework. Dicha evolucin continua se basa en las nuevas necesidades internas que surgen de las distintas aplicaciones, tanto en las de nuevo desarrollo como en el mantenimiento de las existentes. Otra fuente de mejoras se obtiene por la vigilancia tecnolgica del exterior para detectar nuevas tendencias y alternativas.
d Implantar la gua de estilo tuvo una doble problemtica. El aspecto de la gua de estilo limitaba la audiencia del framework al personal de la CIT, perdiendo el potencial externo que todo proyecto, basado en Software Libre debe tener. Por otro lado, la gua de estilo slo eran colores y aspecto sobre el papel, en ningn sitio se explicaba el CMO deba funcionar, ni su interaccin con el usuario. Este escollo se va resolviendo en colaboracin con el equipo de gvMTRICA. d El SQL y el paradigma de anlisis y diseo estructurado del que partan PowerBuilder y MS-Access, resultaban ob-
23
CAPTULO 5
Una
di no migrar todo el repositorio de proyectos (como inicialmente estaba previsto) manteniendo en el repositorio CVS las aplicaciones que no precisaban dicho control de acceso de los usuarios, y ubicando en el repositorio de Subversion aquellas que s lo requiriesen. En esta ocasin las necesidades de formacin fueron menores, puesto que la prctica en el uso de Subversion es muy similar a la del uso de CVS. Aunque las herramientas tienen operativas distintas, las tareas que realiza el usuario resultan muy similares en el uso da a da de cualquiera de las dos. Actualmente seguimos considerando que no compensa la migracin de todas las aplicaciones a Subversion, mientras no surjan otros condicionantes que lo contradigan. Por tanto, se puede decir que la situacin actual se mantendr en el futuro inmediato. Por nuestra experiencia en el uso de ambas herramientas, recomendamos encarecidamente el uso de cualquiera de estas dos herramientas de control de versiones (CVS y Subversion son las ms difundidas en el mundo del Software Libre) para compartir cdigo entre programadores, sobre todo si se encuentran dispersos geogrficamente. Una vez vencida la curva de aprendizaje, compensa con creces los beneficios que se obtienen con su uso.
24
CAPTULO 6
25
de informes y transformarlo automticamente en un diseo JasperReports. d traduccin. Existe un proyecto open source de traduccin, por el que gente desinteresadamente colabora traduciendo el programa. En el caso del espaol, esta traduccin se orienta a la forma de hablar hispanoamericana y de momento se centra en los programas. La mayor parte de la documentacin escrita producida por JasperSoft slo est en ingls. d Compilaciones. Al tratarse de un proyecto open source que utiliza a otros, si hay que modificar y compilar algn fuente que proviene de otro proyecto, te obliga a buscar la documentacin de otros productos de los que se aprovecha, ya que JasperSoft no ofrece una documentacin integrada de todo el conjunto sino que cuando desees cambiar las configuraciones o modificar algo de otros proyectos te remite a ellos. Eso complicara la compilacin completa de todos los fuentes en el caso de que sta fuera necesaria, puesto que cada subproyecto tiene su propia compilacin documentada en su propio espacio web. Afortunadamente, JasperSoft ya ofrece versiones compiladas que contienen las compilaciones de todos los subproyectos. Una vez analizadas las ventajas e inconvenientes de la aplicacin optamos por adoptarla y se procede a su implantacin, proceso que an se encuentra en sus estadios iniciales.
Para cuando se planifique la migracin de los informes creados con Oracle Developer, JasperReports incorpora otra herramienta open source externa que permite ejecutar cdigo PL/SQL de Oracle como si fuera cdigo SQL estndar, lo que facilita la reutilizacin de todo el cdigo PL/SQL que contengan los informes de Oracle Developer, si bien esta herramienta no ha sido todava probada porque todava no hemos necesitado migrar ninguno de estos informes.
Al no resultar posible convertir automticamente los informes ya existentes al formato JaserReports, y dado que no existe ninguna limitacin en cuanto a la cantidad de herramientas de generacin de informes que pueden coexistir en un mismo equipo, hace que inicialmente no sea necesario establecer ningn plan de conversin paulatina
JasperReports ha tenido una introduccin rpida entre nuestros desarrolladores al constatar la gran cantidad de herramientas complementarias disponibles para JasperReports como JasperServer, JaperAnalysis y JasperETL, que incorporan funcionalidades en los diseos de informes que no existan en las herramientas presentes hasta la fecha en la conselleria. Asimismo, otra de las cosas que ms ha impulsado la introduccin de JasperReports ha sido el buen soporte de grficos que presenta, el cual est resultando muy del agrado de los usuarios finales, que ya demandan que se les entregue la mayor cantidad posible de informacin grfica.
26
para que se obtengan datos actualizados, control de quin puede acceder a los informes que se obtengan como resultado, etc.), y permite que mediante estndares abiertos, como web services, cualquier programa lo invoque o bien se utilice una pgina web provista por la propia herramienta para hacerlo interactivamente (con lo que el informe no tiene por qu estar accesible desde ninguna aplicacin concreta) y permite tambin la ejecucin planificada y automtica de los informes para que se aprovechen determinados horarios en los que los ordenadores estn infrautilizados,
recogiendo informes automticamente de todas las incidencias que se produzcan. d JaperAnalysis. Herramienta muy potente para realizar Data Warehouse. d JasperetL. Herramienta para automatizar las migraciones de datos, etc., que recoge informes automticamente de todas las incidencias que se produzcan. Permite tambin la conversin de informacin entre formatos muy distintos.
> Recomendaciones
d Nuestra experiencia nos recomienda no limitarse exclusivamente al empleo de la herramienta iReport. Si se desea explotar toda la funcionalidad de JasperReports se puede programar directamente sobre la librera de JasperReports. Muchas funciones han sido documentadas mediante el uso de la herramienta jdk. La documentacin de todas estas funciones se distribuye gratuitamente y adems est accesible al pblico general en Internet. d Mostrar las posibilidades de generacin de grficas de la herramienta as como las herramientas complementarias como JasperAnalysis para Datawarehouse, para despertar el inters por ellos. d Estudiar los ejemplos que acompaan tanto a iReport como a JasperReport. Hay que hacer notar que la web de JasperReports ofrece una instalacin de esta herramienta e incorpora ejemplos adicionales que pueden ser modificados tambin con la herramienta iReport. d Consultar el propio foro de JasperSoft cuando se tenga una duda sobre la programacin con esta herramienta.
27
CAPTULO 7
28
TYPO3 result elegido como gestor de contenidos. TYPO3 es un Sistema de Gestin de Contenidos (CMS) de cdigo abierto y desarrollado bajo licencia GPL. Se consider en su momento que era el que mejor se ajustaba a las necesidades del equipo de trabajo. Algunas de sus caractersticas que nos resultaron ms relevantes tras su anlisis fueron: d Eficacia en la gestin de contenidos y creacin de workflows simplificados. d Flexibilidad debido a que se adapta a diferentes necesidades e instalaciones. d Rapidez y simplicidad gracias a la utilizacin de una interfaz prctica e intuitiva. d Multilinge, ya que tiene total integracin en ms de 16 lenguas. d Calidad profesional de los resultados. La tecnologa que emplea TYPO3 es un paquete comnmente denominado LAMP (Linux, Apache, MySQL y PHP). El acrnimo LAMP se refiere a un conjunto de subsistemas software necesarios para alcanzar una solucin global, en este caso configurar los portales web. Los subsistemas que se utilizan son Linux, como sistema operativo, Apache, como servidor web, MySQL, para la gestin de bases de datos y Perl, PHP o Python, como lenguajes de programacin. En nuestro caso utilizaremos PHP. TYPO3 se ejecuta en un navegador, por lo que no requiere ningn software especial en el lado del usuario. Cualquier navegador actual con soporte de grficos es vlido. Durante el transcurso del proyecto gvPONTIS, los portales web corporativos, al igual que otros proyectos del departamento de informtica, tambin han sido migrados a Software Libre, intentando
alcanzar casi la totalidad del uso herramientas de Software Libre para el desarrollo de los portales web corporativos en el trabajo del da a da. Algunas de estas herramientas son la base de datos, el servidor de pginas web, el lenguaje de programacin interpretado para la creacin de pginas web dinmicas y el gestor de contenidos web (CMS). Aunque en la fase inicial del proyecto gvPONTIS, por parte del equipo de base de datos, se descart el uso de la base de datos MySQL1, con posterioridad hemos incorporado su uso dado que as garantizbamos un mayor rendimiento por parte de TYPO3. En la actualidad, trabajamos con diferentes versiones para cada una de las herramientas. Esto es debido a la diferencia en el tiempo, desde 2005 hasta la fecha, para la implantacin de los diferentes portales que actualmente ofrece la conselleria.
Aunque en la fase inicial del proyecto gvPONTIS, por parte del equipo de base de datos, se descart el uso de la base de datos MySQL, con posterioridad hemos incorporado su uso dado que as garantizbamos un mayor rendimiento por parte de TYPO3
Los primeros portales que hemos puesto en marcha con la tecnologa LAMP+TYPO3 son www.cit.gva.es, www.gvsig.gva.es y www.gvPONTIS.gva.es. Actualmente estn con la versin de TYPO3 3.8.1, Apache 2.0.59, PHP 4 y MySQL 4.1. Con posterioridad se han desarrollado los portales web www.paseoponiente.es y www.jornadasgvsig.gva.es, y ya disponen de una versin ms actualizada de TYPO3, pero la misma configuracin base de LAMP. Los portales ms recientes son www.moskitt.org y www.ideacv. gva.es. Este ltimo tiene la misma configuracin base para LAMP que los anteriores, pero con una versin ms nueva y estable de TYPO3, concretamente la versin 4.1.5.
1 Consultar informe de Conclusiones.
29
Cabe destacar el portal web www.moskitt.org, ya que se diferencia de los dems por las versiones que se utilizan en este portal en algunas de las herramientas. Concretamente se ha utilizado la misma versin de TYPO3 que en ideacv, pero el paquete LAMP difiere en las versiones de los productos. Para MySQL y PHP se ha instalado la versin 5 y como servidor web se ha configurado el producto NGINX, que tambin est basado en cdigo abierto. La combinacin de herramientas a la que hemos llegado y con las que actualmente trabajamos, nos ha permitido una mayor flexibilidad a la hora de mantener, actualizar los portales web que tenemos, as como tambin nos permite desarrollar portales nuevos. Diseamos las web con compatibilidad para diferentes versiones de navegador, Firefox e Internet Explorer principalmente y adems tuvimos en cuenta Mozilla. Para Linux, la versin de Internet Explorer es una versin beta, que funciona bien, pero no lo hace igual que en Windows, por lo que es necesario disponer de un Internet Explorer bajo Windows para realizar las pruebas de funcionamiento y aspecto de las pginas. En lo que ha diseo grfico se refiere, en Software Libre, disponemos del programa GIMP, el cual es un buen candidato
para sustituir a la herramienta Adobe Photoshop. El inconveniente que le hemos encontrado es que tiene una curva de aprendizaje alta y no conseguimos los mismos resultados que con Adobe Photoshop. En el mbito del mantenimiento de los portales web, una de las tareas que se realiza es la generacin de estadsticas. La herramienta de Software Libre elegida ha sido Awstats, pero no llega a alcanzar todo el potencial, en comparacin con la que se utilizaba en Windows. En la herramienta para la revisin de enlaces rotos, nos ha ocurrido el mismo problema que con las estadsticas. No hemos encontrado una herramienta de Software Libre que funcione de forma similar a como lo hace la herramienta de pago Linkbot. Como conclusin, a fecha de hoy empleamos bsicamente Software Libre para desempear nuestro trabajo diario, exceptuando determinados puntos como son la confeccin de formularios rellenables, elaborados con Adobe Acrobat Writer, as como la edicin avanzada de imgenes con Adobe Photoshop. Tambin, resulta necesario disponer de una plataforma Windows por la necesidad de realizar comprobaciones de navegabilidad y apariencia de las pginas web empleando el navegador Internet Explorer.
30
CAPTULO 8
31
slo funcionaban en Windows, para que funcionen en Linux. A pesar de que la ejecucin de la aplicacin ya pueda realizarse en Linux, el desarrollo en Developer de formularios y listados slo puede realizarse en Windows. La CIT est convirtiendo paulatinamente los documentos Word a OpenOffice, marcados por el paso a Linux en los Servicios en los que se va instalando progresivamente. Tras finalizar este proceso la aplicacin podr ser ejecutada totalmente en Linux. d El empleo de OpenOffice en la generacin de documentos de salida (propuestas, resoluciones y notificaciones) del WorkFlow en sustitucin de MSOffice, ha resultado costoso en el tiempo debido a los siguientes problemas o desventajas: Ha sido necesario modificar todas las consultas de los documentos Word que tenan condiciones y crear funciones de base de datos nuevas para obtener los datos que deban mostrarse en el documento. Todo ello por no existir el tratamiento de las condiciones en OpenOffice. Esto supone una duracin extra en la creacin y modificacin de documentos para MASTIN. Ha sido necesario recalcular las frmulas existentes en los documentos Word, ya que OpenOffice no saba interpretar algunas de ellas. Problemas de compatibilidad de versiones de OpenOffice. Los documentos creados con una versin de OpenOffice no pueden generarse con cualquier versin instalada en el PC del usuario sin una modificacin en todos esos documentos. El tiempo de diseo y creacin de los documentos en OpenOffice es mayor, ya que es ms complicado dibujar e insertar todo lo necesario.
d El empleo de Linux, en algn aspecto puntual, presenta el problema de que lo que funciona en una distribucin Linux puede no funcionar con otra, como es el caso del cdigo de barras que usan los documentos de pago, que en Xaloc funciona y en Lliurex no. Respecto a la segunda fase (evolucin a una versin que emplee PostgreSQL como SGBD y Java como herramienta de desarrollo), actualmente se est implementando dicha versin.
La primera de las fases se ha concluido con xito, mentras que la migracin a Java, independientemente de las bases de datos, an se encuentra en curso
Previamente se ha aprovechado para realizar reingeniera de los procesos organizacionales que actan en la tramitacin de los expedientes y a los que da soporte MASTIN, con objeto de maximizar la eficiencia de las tareas, una vez implantada la herramienta. d Los beneficios que se obtendrn con esta versin sern: Renovacin tecnolgica. Eliminacin de licencias. d Para ello se debern solventar los siguientes problemas: Readaptar el personal informtico a las nuevas tecnologas/ herramientas utilizadas en la nueva aplicacin. Readaptar y formar a los usuarios en la tecnologa utilizada en la nueva aplicacin.
32
CAPTULO 9
Dentro
ciudadanos implicados en el expediente, siempre y cuando se cumplan las condiciones de seguridad preestablecidas. La aplicacin permite y facilita, de una manera sencilla, la definicin y puesta en marcha de nuevas reas Documentales en el resto de Servicios de la conselleria, con una inversin mnima en tiempo y personal informtico. gvADOC es un aplicativo hecho a la medida de nuestras necesidades, resultante de la suma de aquellas funcionalidades que de la aplicacin anterior se haban demostrado necesarias, junto a la incorporacin de nuevas sugeridas por los usuarios.
Dentro del plan de migracin a Software Libre, gvADOC se convirti en la primera experiencia de migracin de una aplicacin privativa
Para determinar dichas funcionalidades fueron encuestados todos los usuarios de la conselleria que empleaban el anterior aplicativo. Se aprovech para realizar un cambio de entorno tecnolgico muy importante, que adems pretenda eliminar la dependencia con las empresas propietarias externas y productos del mercado. De tal forma que el aplicativo deba ser totalmente mantenible por la propia conselleria.
33
d Directamente a travs de la aplicacin gvADOC. d Con un navegador en Internet donde, a modo de ejemplo, un ciudadano puede ver directamente la informacin de un Contrato Administrativo en Licitacin (pliegos de condiciones...) e informacin sobre una expropiacin en concreto. El mayor problema que se ha tenido que abordar se ha localizado en las interfaces de los escneres. Para conseguir una aplicacin multiplataforma/GPL, a la hora de la digitalizacin de imgenes, se opt por una solucin hardware (caja AXIS). Esta solucin, que resulta econmicamente ms cara, se impone a otras soluciones software en el entorno Linux y GPL que han sido descartadas, de momento, por la inexistencia de drivers de escneres actualizados a los ltimos modelos de mercado. Otra dificultad fue la de convencer a la empresa que realiz la aplicacin para que liberara en GPL sus propias libreras utilizadas en el desarrollo de gvADOC. En el lado positivo destacar que el SGBD PostgreSQL ha solucionado sobradamente las necesidades referidas a la base de datos. Poco a poco nuevos Servicios/Departamentos van incorporando al sistema sus archivos manuales. Asimismo, se tiene previsto la evolucin de la herramienta con nuevas funcionalidades, por ejemplo, incorporacin de procesos de Firma Electrnica y mejora de los accesos externos a travs de Web Services.
Como servidor de aplicaciones emplea TOMCAT. Inicialmente slo se implant en dos servicios de la conselleria, y en la actualidad, ya se ha extendido su uso a siete servicios. Cada una de estas reas tiene sus propias caractersticas, pues uno de los principales valores de la herramienta es su versatibilidad. La organizacin de los armarios digitales y la forma de las fichas de los documentos se define segn las necesidades de cada servicio. El volumen de informacin digitalizada en la actualidad alcanza los 114 GB de memoria, en formatos tan dispares como: tif, pdf, doc, odt, etc. El acceso a la documentacin se puede realizar de varias formas segn las necesidades: d A travs de la correspondiente aplicacin departamental de seguimiento de expedientes, de forma que de manera rpida y sin pasos intermedios se visualiza la documentacin requerida del expediente actual en pantalla.
34
Parte 2
36
37
CAPTULO 10
38
10
que no ramos capaces de crear nuevas versiones estables de Xaloc, al ritmo que los cambios de hardware (por ejemplo, de discos IDE a discos SATA), las nuevas versiones de las herramientas (por ejemplo, de Mozilla a Firefox y Thunderbird) y la demanda de nuevas funcionalidades exigan. Decidimos abandonar esta lnea y acogernos a algn otro proyecto que tuviera personal especializado y con dedicacin exclusiva a la labor de generar la distribucin. Por suerte, en la Generalitat Valenciana maduraba LliureX, un proyecto que se ajustaba a nuestras necesidades. Aunque ste est muy enfocado al entorno de la educacin, nos permita incorporar nuestras necesidades a esa distribucin. As se dise un plan de implantacin de LliureX en todos los PCs de la conselleria (que finalizar en diciembre de 2008). En la actualidad se est instalando la versin 7.11 de LliureX, que es una distribucin basada en la UBUNTU 7.04 Feisty. Esta distribucin, que entre otras aplicaciones incorpora el paquete ofimtico OpenOffice, navegador Firefox y gestor de correo Thunderbird, al estar pensada para entornos educativos, tiene una lista de paquetes ms orientada a tal fin y por eso nos hemos visto obligados a complementarlos aadiendo los siguientes: d Kprinter. d Java 1.5. d Adobe Acrobat Reader. d emulador VMware. Con todo este conjunto de paquetes se ha generado una imagen para configurar los ordenadores de la CIT. Respecto al mantenimiento de las distribuciones en el cliente, y debido a estos cambios excesivos, en la actualidad en la conselleria conviven varias distribuciones: SUSE 9.0, SUSE 10 y Xaloc. Estas distribuciones, por economa de tiempo, se mantienen en los PCs de los usuarios sin pasar a LliureX, mientras no generen ningn problema.
En el momento en que se necesita hacer cualquier cambio al usuario de una de estas distribuciones, se aprovecha para migrarlo a la nueva. Para el control remoto de ordenadores se utiliza VNC, programa de Software Libre basado en una estructura cliente-servidor. ste nos permite tomar el control total de cualquier ordenador-servidor remotamente a travs de un ordenador-cliente, tambin llamado software de escritorio remoto. VNC permite que el sistema operativo en cada ordenador sea distinto: es posible compartir la pantalla de una mquina de cualquier sistema operativo conectndose desde cualquier otro ordenador o dispositivo que disponga de un cliente VNC. Esto es especialmente til en nuestro caso, debido a la coexistencia de distintos sistemas operativos y de distintas distribuciones de los mismos.
Por suerte, en la Generalitat Valenciana maduraba LliureX, un proyecto que se ajustaba a nuestras necesidades, permitindonos incorporarlas a esa distribucin. As, se dise un plan deimplantacin de LliureX en todos los PCs de la conselleria (que finalizar en diciembre de 2008
Para resolver la problemtica de las aplicaciones que slo se ejecutan en entorno Windows se ha optado por el software VMware, que consiste en un sistema de virtualizacin por software, es decir, un programa que simula un sistema fsico con unas caractersticas hardware determinadas. Cuando se ejecuta el programa simulador, proporciona un entorno de trabajo similar, a todos los efectos, a un ordenador fsico, excepto en el puro acceso fsico al hardware simulado. VMware es un producto que permite correr mquinas virtuales creadas con otros productos de VMware, pero no permite crearlas l mismo. Las mquinas virtuales se pueden generar con productos ms avanzados, como VMware Workstation.
39
CAPTULO 11
40
11
Partamos de una estructura de servidores PDC (Primary Domain Controler) en red, con el sistema operativo Windows 2000 SP4 (un total de 14 servidores). Son servidores de ficheros e impresin en red, donde los usuarios de los servicios centrales y territoriales validan la seguridad de permisos y la sesin de red para poder acceder a los recursos compartidos e impresoras. Los clientes iniciaban la sesin bajo Windows 98 SE, Windows 2000 estacin de trabajo y Windows XP SP1/SP2, obteniendo los permisos necesarios de los controladores de dominio principales (PDC) y secundarios (BDC), donde se mantenan las bases de datos en Active Directory de los usuarios, grupos y mquinas de la red Windows. Los accesos a la estructura de la red eran anunciados por los controladores de dominio de Windows 2000 SP4 PDCs y BDCs, con sus funciones de servidores de nombres (DNS) que resuelven los nombres de las mquinas de nuestra red en los distintos dominios de la CIT. La seguridad est proporcionada por la estructura del LDAP propietaria de Microsoft (es decir, Active Directory). Para la autentificacin de usuarios en la red local elegimos OpenLDAP. En este caso el objetivo era doble, ya que la tendencia en las nuevas aplicaciones n-capas tambin era autenticarse contra servicios LDAP, de manera que pensamos que podramos integrar ambos repositorios de usuarios. A continuacin se describen los servicios incluidos en esta nueva infraestructura.
as y otros atributos necesarios para la administracin de perfiles de usuario. Encontrar la solucin apropiada en el ao 2004 no fue nada fcil, ya que los fabricantes no tenan productos maduros ni experiencia en proyectos de gestin de identidades. El servidor LDAP Linux es un OpenLDAP2, que es el encargado de mantener la base de datos con todos los usuarios, grupos de usuarios y mquinas de nuestra red en Linux. Aqu se almacenan todos los datos necesarios de cada usuario y mquina, siendo as como los usuarios con Linux se validan en la red (aproximadamente 500, de un total de 900). A medida que se avanzaba en el proyecto, nuestro objetivo se concretaba en disponer de una interfaz comn de provisin de usuarios. Buscamos la manera de administrar los usuarios de forma nica, es decir, que los usuarios de Windows y de Linux sean los mismos, independientemente de la mquina desde la que se conectan a la red.
El servidor LDAP Linux es un OpenLDAP2, que es el encargado de mantener la base de datoscon todos los usuarios, grupos de usuarios y mquinas de nuestra red en Linux
Para conseguir este objetivo, iniciamos un proyecto de gestin de identidades con el producto de Sun Identity Manager, al no haber encontrado productos equivalentes de Software Libre. Hemos hecho un gran esfuerzo tcnico y organizativo de integracin de nuestros repositorios de usuario en la conselleria: Active Directory, OpenLDAP y Oracle. En este momento tenemos un nico punto de provisin de usuarios y el Identity Manager mantiene los repositorios sincronizados. El siguiente paso en este entorno ser integrar tambin otros repositorios de usuario dentro de la Generalitat Valenciana, como las cuentas de correo electrnico y los usuarios de otras aplicaciones de otras consellerias.
11.1 LDAP
En ese momento de migracin, una vez optado por OpenLDAP, se inicia un proyecto de gestin de identidades que pretende unificar en un slo metadirectorio el repositorio de usuarios de directorio activo de Windows, el de autenticacin de usuario en la red Linux, el de usuarios de base de datos para las aplicaciones antiguas y el de usuario de aplicacin para las nuevas aplicaciones y portales. Conocamos la dificultad de controlar la autenticacin de usuarios, derechos y restricciones de acceso, perfiles de cuentas, contrase-
41
11.2 CUPS1
Para el servicio de impresin se ha utilizado un servidor CUPS, que puede gestionar las impresoras remotas de una red. Este servicio de impresin trabaja a travs del protocolo IPP, permitiendo utilizar impresoras configuradas desde clientes Linux. Por lo que hace referencia a la administracin y control de la impresin, CUPS posee una interfaz web bastante amigable, mediante la cual permite administrar las impresoras instaladas en el servidor CUPS, ver todos los trabajos impresos en cada impresora, cambiar cuotas y permisos, modificar dispositivas, manejar colas de impresin y trabajos, crear nuevas impresoras, configurarlas, etc., desde cualquier punto de nuestra red (Intranet). El nico problema que se ha detectado es la falta de drivers para algunas impresoras muy antiguas. Pero al final se han resuelto los problemas con la instalacin de dispositivos de emulacin de impresoras HP modo GIMP+CUPS, o dispositivos genricos (estilo Postcript). Este escollo se ha ido suavizando ya que las impresoras nuevas disponen en su totalidad de drivers para Linux.
1 CUPS son las siglas de Sistema de Impresin Comn de Unix (Common Unix Printing System). Se trata de un sistema que permite que un ordenador central acte como servidor de impresin, y as centralizar la gestin de las impresoras y listados dentro de un entorno de red local. Utiliza el protocolo IPP (Internet Printing Protocol) como base para tareas de impresin y de colas de impresin, y se distribuye bajo licencia GNU General Public License.
11.3 BInD
Para el servicio de nombres elegimos BIND, que ya se empleaba con anterioridad en la CIT para publicar nuestras mquinas en Internet y en la red corporativa de la Generalitat.
11.4 SAMBA
Para la comparticin de archivos utilizamos SAMBA2, que ya era un producto ms que probado en la conselleria. Actualmente se sigue empleando, aunque la intencin final es prescindir de este producto, detectar y analizar las necesidades de comparticin de conocimiento y disear alguna estrategia con la intencin de hacer desaparecer el trasiego de ficheros entre PCs. Nuestro deseo es evitar prdidas de datos por falta de copia de seguridad, dispersin de datos personales en PCs sin conocimiento de los responsables de seguridad, etc. La estrategia se orientar a buscar una herramienta colaborativa junto con un portal, de manera que los usuarios puedan intercambiar ficheros y datos, pero dentro de un entorno controlado por los administradores.
2 SAMBA es una implementacin sobre TCP/IP de un conjunto de protocolos y servicios propietarios de Microsoft, que constituyen lo que se llama NetBIOS o SMB. Permite que un equipo Linux se comporte como un cliente y/o servidor Windows.
42
CAPTULO 12
Como resumen del mbito de comunicaciones y networking, dado que antes de que comenzara el proyecto de migracin ya se utilizaban aplicaciones y entornos Linux, no podemos hablar de migracin como tal, sino de un proceso normal de actualizacin y mejora de dichos entornos, exceptuando el caso del firewall, para el cual, aprovechando la necesidad de actualizar el hardware, se pas de un entorno Solaris a un entorno basado en Linux.
43
CAPTULO 13
44
13
Storagetek L20, con una capacidad terica de 4 terabytes, que ms tarde fue sustituida por el modelo L40 de Storagetek, alcanzando as los 8 terabytes tericos de capacidad de almacenamiento para respaldo.
Se busc una solucin cuyo servidor corriera sobre Linux, pero que fuera lo suficientemente heterognea para permitirnos hacer copias de respaldo, tanto de los nuevos swervidores Linux como de los Windows existentes en la conselleria
Actualmente estamos en proceso de ampliar los sistemas de respaldo lgico con una solucin basada en mquinas Intel, sistema operativo Red Hat y el software Bacula, cuya licencia es GPL. Por suerte, el mercado tambin ha ido cambiando y los fabricantes han ido poniendo mquinas cada vez ms potentes y con ms facilidades para implantar alta disponibilidad, clusters y balanceo de carga en los entornos Intel y Linux.
45
Parte 3
47
CAPTULO 14
gvSIG: introduccin
Los
programas de CAD son aplicaciones orientadas a la edicin vectorial de precisin, cuyo usuario tipo son los ingenieros, arquitectos y otros profesionales del diseo. Estos programas gestionan una base de datos de entidades geomtricas (puntos, lneas, arcos, etc.) con la que se puede operar a travs de una pantalla grfica en la que se muestran stas, el llamado editor de dibujo. La interaccin del usuario se realiza a travs de comandos, de edicin o dibujo, o a travs de una interfaz grfica de usuario, que automatiza el proceso. Aunque los programas de CAD tienen un amplio abanico de usos, en el caso de la CIT su utilizacin est orientada. Mayoritariamente, a la edicin de cartografa como paso previo a su uso por aplicaciones SIG. Los SIG son programas que permiten analizar, gestionar, manipular, mantener y capturar informacin georreferenciada, es decir, relacionada espacialmente con el territorio. El SIG funciona como una base de datos con informacin geogrfica (datos alfanumricos), que se encuentra asociada por un identificador comn a los objetos grficos de un mapa digital. De esta forma, sealando un objeto se conocen sus atributos e, inversamente, preguntando por un registro de la base de datos se puede saber su localizacin en la cartografa. La razn fundamental para utilizar un SIG es la gestin de informacin espacial. El sistema permite separar la informacin en diferentes capas temticas y las almacena independientemente, permitiendo trabajar con ellas de manera rpida y sencilla, y facilitando al profesional la posibilidad de relacionar la informacin existente a travs de la topologa de los objetos, con el fin de generar otra nueva que no podramos obtener de otra forma. En el caso de la CIT (con competencias directamente relacionadas con el territorio, en materia de obras pblicas, transporte, puertos, aeropuertos y energa, adems de actuaciones propias en materia de arquitectura, patrimonio arquitectnico y urbano, equipamientos, y suelo y costas) los SIG se convierten en una herramienta fundamental.
Los SIG son programas que permiten nalizar, gestionar, manipular, mantener y capturar informacin georreferenciada, es decir, relacionada espacialmente con el territorio
Por tanto, para la CIT, se entienden las tecnologas SIG y CAD como herramientas que se integran en los flujos de trabajo, directamente relacionadas y sin nichos de uso independientes.
48
CAPTULO 15
El
d Tanto en el campo del CAD como del SIG no exista una uniformidad en el uso de formatos, utilizndose una variedad de versiones y formatos que dificultaban el intercambio de informacin entre el personal de la CIT y con el exterior. Se trabajaba con ficheros en local, no se usaban estndares ni bases de datos espaciales. Una vez conocida la realidad en la CIT, era preciso saber el estado de estos productos en el mundo Linux. La situacin inicial presentaba un panorama de lo ms rido en el proyecto de migracin global, por la ausencia de soluciones maduras dentro del Software Libre que cubriera los requisitos de los usuarios de tecnologas SIG y CAD dentro del seno de la conselleria. El estudio de las soluciones disponibles en el mercado y la comunidad del Software Libre nos llev a las siguientes conclusiones: d En la comunidad del Software Libre, en el campo del CAD, existan algunos proyectos destacados, aunque no lo suficiente evolucionados como para suplir a las herramientas privativas que se utilizaban. De entre todos los proyectos destacaban, principalmente, QCAD y SAGCAD. d En cuanto a formatos en el campo de CAD, no hay un estndar de uso comn eficiente. Est extendido el uso del formato privativo y cerrado DWG, lo que dificultaba ms, si cabe, el encontrar una alternativa libre.
49
d Dentro de la SIG se utilizaban clientes de escritorio, no siendo la CIT usuaria de tecnologas SIG como servidores de mapas, bases de datos espaciales, etc. d En el campo del SIG no exista ninguna aplicacin lo suficientemente evolucionada, potente y de uso amigable para sustituir a las herramientas privativas de uso comn en la CIT. Las aplicaciones ms destacadas eran GRASS y JUMP. Si bien GRASS es un software excelente, tiene una orientacin ms raster que vectorial y, en aquel momento, no dispona de una interfaz amigable. Con JUMP haba un problema de potencia y rendimiento que desaconsejaba optar por dicha opcin. d Sin embargo, en la comunidad del Software Libre, existan un gran nmero de libreras y cdigo, de amplio uso por distintas aplicaciones (incluso privativa, como es el caso de la librera GDAL por tecnologa de ESRI) que podran servir de base para el desarrollo de aplicaciones. d En cuanto a formatos, en el campo del SIG, empezaba a hablarse de forma generalizada de las Infraestructuras de Datos Espaciales y los estndares definidos por el Open Geospatial Consortium (en su da, Open GIS Consortium) que permitan el acceso a datos geogrficos en remoto. Adems, los formatos de fichero ms habituales tenan sus especificaciones abiertas, por lo que este aspecto no supona una barrera para llevar a cabo la migracin. d Exista una iniciativa de la Comunidad Europea, que finalmente se ha convertido en directiva, denominada INSPIRE, enfocada al acceso de cartografa de las administraciones de los pases miembros mediante estndares OGC. Partiendo de la relacin de ambos estudios (necesidades y soluciones disponibles) se llegaron a las siguientes conclusiones: d En el caso de la CIT se poda abordar de forma conjunta la migracin de las herramientas SIG y CAD, ya que el uso de los CAD, como editores de cartografa, era parte del proceso del uso de herramientas SIG.
d Si bien no se encontraban aplicaciones de sustitucin directa, haba un amplio conocimiento (cdigo, libreras, proyectos...) en la comunidad del Software Libre que hacan posible el construir una herramienta libre que cubriera las necesidades de la gran mayora de usuarios de la CIT. d Haba que orientar la solucin hacia nuevas formas de trabajo ms eficientes, trabajando con estndares, datos accesibles en remoto y almacenados en bases de datos espaciales. d Si bien haba que centrar los esfuerzos en el escritorio, no deba dejarse de lado el estudio de posibles usos del resto de familias SIG, como los servidores de mapas, que podan ampliar las posibilidades de gestin de la informacin territorial. Por tanto, el desarrollo de un cliente de escritorio deba abordarse con la visin de ser parte de un sistema ms amplio, una apuesta por las denominadas Infraestructuras de Datos Espaciales (IDE). Por todo ello, la situacin inicial tena como hito inicial, principal y a desarrollar durante el proceso de migracin gvPONTIS, el desarrollo de una aplicacin SIG que cumpliera con una serie de requisitos bsicos: d Ser una aplicacin que integrara el mundo del SIG y del CAD. d Ser libre. Se parta de un conocimiento albergado y construido por la comunidad del Software Libre, que iba a ser ampliado y potenciado y, por tanto, deba ser devuelto a esa comunidad. La licencia por la que se opt fue la GNU GPL. d Multiplataforma. La aplicacin deba funcionar independientemente del sistema operativo del usuario. El motivo principal era el proceso de migracin, de cuatro aos de duracin, tiempo durante el cual en la CIT iban a convivir usuarios de distintos sistemas operativos, en concreto Windows, Linux y Mac OS X. Esto llevo a tomar la decisin de utilizar Java como lenguaje de programacin.
50
15
d Seguimiento de estndares OGC y de la Directiva InSPIRe (en aquel entonces Iniciativa). d extensible. Desde un principio se plantea el proyecto con una arquitectura escalable, que permita su evolucin hacia nuevos campos de uso de la informacin geogrfica.
d Interfaz amigable. La interfaz deba tener como objetivo el fcil aprendizaje por parte de los usuarios, de modo que la migracin fuera lo menos traumtica posible y no presentara problemas de comprensin respecto a los hbitos adquiridos durante aos de uso de otras aplicaciones. d Multiidioma. La aplicacin deba disponer de la posibilidad de ser traducida, con facilidad, a otros idiomas, estando disponible inicialmente en castellano, valenciano e ingls. El proyecto de desarrollo de esta herramienta, as como el nombre de la misma, se denomin gvSIG.
En el caso de la CIT se poda abordar de forma conjunta la migracin de las herramientas SIG y CAD, ya que el uso de los CAD, como editores de cartografa, era parte del proceso del uso de herramientas SIG
51
CAPTULO 16
El
52
16
de acceso, localizacin y bsqueda de informacin espacial. Este apartado se ampliara con el desarrollo de herramientas que permitieran la publicacin de datos segn estndares. d gvSIG+CAD. Proyecto que busca prescindir del uso de herramientas CAD de modo independiente a las herramientas SIG, llevando a cabo el desarrollo de funciones de edicin cartogrfica avanzada dentro del propio gvSIG. d gvSIG raster. Con el abaratamiento de las imgenes satlite, ortofotos, etc., as como con el acceso a una multitud de datos raster ubicados en servidores remotos y accesibles mediante estndares OGC, se amplan las posibilidades de acceso a informacin raster y, por tanto, se plantea el desarrollar funciones para su anlisis dentro de gvSIG. Adems, esta lnea de trabajo permitir la integracin con otro proyecto de Software Libre orientado al anlisis territorial, denominado SEXTANTE1. d gvSIG 3D. Consiste en aadir la tercera dimensin como una forma adicional de analizar el territorio, incluyendo en este apartado funciones relacionadas con la animacin y simulacin. d gvSIG vectorial avanzado. Es la evolucin directa de la primera fase, complementndola con herramientas avanzadas de gestin de cartografa en formato vectorial, como es la construccin de simbologa espacial o la dotacin al gvSIG de la capacidad de generar informes de manera automtica. d gvSIG mobile. gvSIG para dispositivos mviles, complementando al cliente de escritorio y permitiendo llevar el SIG al campo para la toma y comprobacin de datos. Pasamos a continuacin a describir con ms detalle la capacidad tcnica lograda en cada una de estas reas.
1 SEXTANTE (Sistema Extremeo de Anlisis Territorial) es un proyecto desarrollado por la Universidad de Extremadura y financiado por la Junta de Extremadura, y que se distribuye con licencia GNU/GPL.
53
INSPIRE3, con la que el proyecto mantiene una estrecha relacin en forma de colaboracin directa con la Direccin General que la promueve (Joint Research Centre). La Directiva INSPIRE reconoce el hecho de que la mayora de la informacin espacial de calidad se produce y est disponible a nivel local y regional, pero que dicha informacin es difcil de utilizar en un contexto ms amplio. Los problemas ms importantes de la situacin de la informacin espacial en Europa son la fragmentacin, la falta de informacin homognea entre estados miembros, la duplicacin de esfuerzos en la creacin de la informacin y problemas para identificar la informacin existente y poder acceder a la que est disponible.
> Vista de gvSIG con acceso a datos vectoriales.
Para poder hacer frente a estos problemas INSPIRE define una serie de principios fundamentales, los cuales sern seguidos al construir el sistema y los datos en l contenidos. Estos principios se resumen en la siguiente tabla: > Principios de INSPIRE d Los datos deben ser recogidos slo una vez y ser mantenidos en el nivel donde se logre efectividad. d Debe ser posible combinar IG con total continuidad para toda Europa desde fuentes diversas, y compartirla entre usuarios y aplicaciones. d Debe ser posible que la informacin recogida en un nivel sea compartida por otros niveles. d La IG debe ser abundante y disponible bajo condiciones que no inhiban su uso extensivo. d Debe ser fcil descubrir la IG disponible, y en qu condiciones puede conseguirse y usarse. d Los datos geogrficos deben ser fciles de entender e interpretar, y ser seleccionables amigablemente.
3 El objetivo principal de la Directiva Europea 2007/2/EC del 14 de marzo de 2007 INSPIRE (INfrastructure for SPatial InfoRmation in Europe) es el de proporcionar informacin geogrfica relevante, homognea y de calidad con el fin de dar soporte a la formulacin, implementacin y evaluacin de las polticas comunitarias.
trabajan en un proceso colaborativo y consensuado para mejorar y conseguir la interoperabilidad en el campo de las geotecnologas. La visin del OGC es un mundo en el que todos se beneficien de servicios e informacin espacial disponibles a travs de cualquier red, aplicacin o plataforma. La misin del OGC es la de proporcionar interfaces espaciales y especificaciones de codificacin de forma abierta y pblicamente disponibles para su uso generalizado y que se materializa en las OpenGIS Specifications. Es decir, OGC no produce estndares sino especificaciones tcnicas, de forma similar al W3C. El OGC fue creado en 1994 para ayudar a la industria SIG a escapar del aislamiento en el que se estaba quedando en el contexto ms general de las Tecnologas de la Informacin.
54
16
De acuerdo a estos principios, INSPIRE visiona una red distribuida de repositorios de informacin, unidos por estndares y protocolos que aseguren la compatibilidad e interoperabilidad de los datos y servicios geoespaciales. De esta forma, al asegurar que los datos y servicios electrnicos residen en organizaciones regionales y nacionales y que se implementan con estndares comunes, estos deben ser fcilmente accesibles y pueden ser combinados independientemente de fronteras administrativas, creando con ello la parte tcnica de la IDE. Para poder alcanzar la armonizacin de las distintos IDE Nacionales existe un grupo de trabajo encargado de definir la arquitectura y estndares de INSPIRE. En Espaa ese grupo de trabajo est coordinado por el Instituto Geogrfico Nacional y el proyecto gvSIG, por medio de la Conselleria de Infraestructura y Transportes, es miembro de oficial del grupo de trabajo, as como de algunos subgrupos destacados como el de UNSDI (Infraestructura de Datos Espaciales de Naciones Unidas). Dentro de la arquitectura de INSPIRE, gvSIG juega el papel de cliente pesado o rico de acceso a informacin espacial. gvSIG, como cliente avanzado de las IDE, pasa a formar parte de una familia de programas que permiten montar el sistema IDE en Software Libre. Existen aplicaciones como MapServer, GeoServer, Deegree, PostGIS o Geonetwork, que junto con gvSIG ponen a nuestra disposicin un abanico de posibilidades, en definitiva, de eleccin, para no estar subordinados al software privativo. gvSIG se desarrolla alrededor del concepto de Sistema Integral de Informacin Geoespacial. Esto significa que en gvSIG podemos encontrar una gran variedad de herramientas para analizar, gestionar y trabajar con informacin geoespacial de todo tipo. El ser un cliente IDE va a permitir que no sea discriminatorio el origen de los datos a la hora de aplicar esas herramientas, permitiendo trabajar tanto con datos remotos como locales. gvSIG es cliente compatible con varias especificaciones de interfaces OGC: WMS, WFS, WCS, catlogo y nomencltor.
d WMS es el acrnimo de Web Map Service. Produce mapas de datos espaciales referidos de forma dinmica a partir de informacin geogrfica. Este estndar internacional define un mapa como una representacin de la informacin geogrfica en forma de un archivo de imagen digital conveniente para la exhibicin en una pantalla de ordenador. Un mapa no consiste en los propios datos. Los mapas producidos por WMS se generan normalmente en un formato de imagen como PNG, GIF o JPEG. En gvSIG podremos acceder a estos servicios WMS y cargar estas imgenes de mapa como una capa ms. d WFS es el acrnimo de Web Feature Service. Si el WMS utiliza formatos raster (PNG, GIF, JPEG) para compartir las capas, el estndar WFS utiliza GML, Geography Markup Language. El WFS permite el acceso avanzado a informacin vectorial, lo que se traduce en gvSIG en poder trabajar con los datos como si fuera informacin vectorial local, realizando anlisis, leyendas temticas, geoprocesamientos, etc. d WCS es el acrnimo de Web Coverage Service. En este caso la informacin son capas raster en formatos SIG originales. Con gvSIG podremos cargar estas capas, normalmente imgenes satlite u ortofotos, y realizar las acciones propias que gvSIG permite sobre cualquier capa raster. As pues, gvSIG permite, como cliente IDE, aadir, cruzar con informacin local, y trabajar con capas remotas de distintos orgenes en cualquiera de las variantes propuestas por el Open Geospatial Consortium (OGC), WMS, WFS y WCS. Adems de estos servicios, dentro de la Infraestructuras de Datos Espaciales podemos encontrar lo que se denominan servicios de descubrimiento que, como su nombre indica, nos van a servir para encontrar informacin que cumpla unos criterios de bsqueda. Existen dos servicios de descubrimiento para las IDE, ambos implementados en gvSIG:
55
Actualmente el proyecto gvSIG sigue evolucionando la rama de cliente IDE, con el fin de soportar nuevos estndares y facilitar el trabajo con el resto de piezas de una IDE. As, recientemente se ha desarrollado el estndar WFS-T y una extensin de publicaciones, cuyo objetivo es poder exportar las Vistas de gvSIG a los distintos servidores de mapas libres del mercado, segn los estndares OGC.
1. Servicio de Catlogo. Nos va a permitir la bsqueda de recursos cartogrficos mediante campos clave como nombre, escala, temadevolviendo una lista de metadatos (datos que definen los recursos cartogrficos) coincidentes. El acceso a estos recursos puede ser directo, cargndolo gvSIG como una capa, o indirecto, mostrando una referencia del modo de obtener ese recurso. Por tanto, al utilizar gvSIG como cliente de catlogo, introduciendo unos criterios de bsqueda, la aplicacin nos devolver como resultado aquellos recursos, ubicados en el servidor indicado, que los cumplen. 2. Servicio de nomencltor. Un nomencltor, en nuestro caso, es una lista de topnimos georreferenciados, es decir, una lista en el que cada topnimo contiene informacin de las coordenadas geogrficas donde se ubica. Con gvSIG podemos utilizar el servicio de nomencltor para buscar la ubicacin de un determinado topnimo, devolvindonos la aplicacin un zoom a la zona geogrfica a la que se refiere dicho topnimo. Adems de poder trabajar con los estndares, gvSIG implementa servicios no estndar, como el ArcIMS de ESRI o el ECWP. gvSIG permite interoperar los distintos servicios IDE dentro de un cliente SIG avanzado, poniendo a disposicin del usuario las herramientas necesarias para cubrir desde las necesidades bsicas de consulta a las complejas de anlisis espacial.
56
16
Es interesante resear que, normalmente, se aborda el mundo del SIG y del CAD como contrapuestos, cuando son, en realidad, complementarios. Por eso, desde gvSIG lo que se busca es su integracin. En prximas versiones aparecern nuevas herramientas de CAD, que completen a las actuales (alargar, recortar, autocompletar polgonos, etc.) y que vayan consolidando a gvSIG como una herramienta destacada para la edicin cartogrfica de precisin.
Algunas de sus utilidades son: anlisis de puntos, anlisis de patrones, anlisis hidrolgico bsico, estadsticas de celda para mltiples capas raster, estadsticas por vecindad para una capa raster, geoestadstica, geomorfometra y anlisis del relieve, herramientas bsicas de anlisis y clculo para capas raster, herramientas para capas discretas e informacin categrica, iluminacin y visibilidad, perfiles, ndices de vegetacin e hidrolgicos, etc., ampliando con cada nueva versin el nmero de funcionalidades.
57
58
16
El estudio de los resultados obtenidos como fruto de estas tareas nos da unos indicadores de la evolucin del proyecto que conviene conocer.
500
400
300
200
100
0
1as Jornadas gvSIG Comparte el Conocimiento 2as Jornadas gvSIG Construyendo realidades 3as Jornadas gvSIG Consolidar y Avanzar
En palabras de Don Gaspar Peral Ribelles, subsecretario de la Conselleria de Infraestructuras y Transporte: En tan slo cuatro aos las jornadas de gvSIG se han convertido en un referente internacional en el mundo de los Sistemas de Informacin Geogrfica y de las Infraestructuras de Datos Espaciales. Otro de los indicadores del xito de las Jornadas y, por tanto, del proyecto es el nmero de patrocinadores y colaboradores con el que cuenta. Un indicador importante, adems, por marcar el crecimiento del tejido empresarial directamente relacionado con la inclusin de gvSIG como parte del modelo de negocio de las empresas. Las jornadas de gvSIG han contado, en estos aos, con la participacin de ilustres ponentes como Max Craglia, responsable de INSPIRE en el Joint Research Centre de la Comisin Europea. Toda la informacin de las 4as Jornadas, as como de las anteriores, se puede encontrar en: www.jornadasgvsig.gva.es
59
d Publicacin de artculos. Las principales revistas de tecnologa SIG y software, tanto nacionales como internacionales, han dedicado espacios a publicar artculos sobre el fenmeno gvSIG, como lleg a ser descrito en la revista Directions Magazine. Algunas de estas revistas son: AutoCAD Magazine (Espaa), Mapping (Espaa y Latinoamrica), GIS Business (Alemania), GIS Development (Mundial), GEOinformatics (Europa), GIM internacional (Europa y Norteamrica), TodoLinux (Espaa), Revista IGP (Portugal), etc. En libros como los de las Jornadas de Infraestructuras de Datos Espaciales de Espaa de 2006 y 2008, se le ha dedicado un captulo al proyecto. d noticias en prensa. La aparicin de gvSIG en distintos medios de prensa, principalmente especializados, ha sido constante y abundante. El medio milln de entradas en Google son un indicador de ello y se estima que ha aparecido en ms de un centenar de medios distintos, tanto de presa digital como escrita.
> 3as Jornadas de gvSIG. Palacio de Congresos.
d Google trends. Una herramienta de Google que marca las tendencias de bsqueda de los usuarios y de aparicin de un trmino en la red, en nuestro caso gvSIG, es otro indicador a evaluar para ver la difusin del proyecto. En el siguiente grfico tenemos una comparacin de tendencias con uno de los programas privativos de SIG clsicos y ms difundidos (Geomedia):
60
16
d En un primer estadio gvSIG era usado por un nmero mnimo de usuarios de la CIT, que gradualmente fue avanzando hasta superar considerablemente a los usuarios iniciales de tecnologas SIG; de los 90 usuarios iniciales en la actualidad hay ms de 400 en el seno de la conselleria. d En una segunda fase fue adoptndose en otras consellerias como la Conselleria de Medio Ambiente, Agua, Urbanismo y Vivienda, la Conselleria de Industria, Comercio e Innovacin o la Conselleria de Educacin. En definitiva, pas a ser lo que se denomin como el SIG libre de la Generalitat. d En una tercera etapa se extendi su uso a una amplia variedad de administraciones, a nivel mundial, de un nmero creciente: Ayuntamiento de Munich, Centro Nacional de Tecnologas de la Informacin de Venezuela, Instituto Geogrfico Nacional Agustn Codazzi de Colombia, Instituto Geogrfico Militar de Argentina, Joint Research Centre de la Comisin Europea, EMSHI, Ayuntamiento de Valencia, Ministerio de Fomento, Gobierno Vasco, Colegio de Registradores de la Propiedad, Cabildo Insular de La Palma, etc. Adems de su introduccin en la Administracin Pblica, gvSIG se est convirtiendo en una herramienta cada vez ms usada en el mbito universitario. Algunas de las universidades directamente relacionadas con el proyecto son la Universidad Politcnica de Valencia, Universidad Jaume I, Universidad de Castilla-La Mancha, Universidad Politcnica de Madrid, Universidad de Girona, Universitat Oberta de Catalunya, Universidad de la Patagonia, Universidad de Rennes, Univesidad de Salzburgo... Otras organizaciones, como Ingeniera Sin Fronteras o Gegrafos Sin Fronteras, son usuarios del proyecto y lo utilizan en las acciones de cooperacin que llevan a cabo en pases de frica y Latinoamrica. Todo ello ha conllevado una serie de tareas orientadas a mantener una relacin de colaboracin con dichos organismos. Muchos de estos usuarios no slo utilizan gvSIG como tal, sino que, bien por medios propios o mediante empresas, estn desarrollando
61
personalizaciones y mejoras de la aplicacin adaptadas a sus necesidades. Ejemplos de esto ltimo tenemos en la propia CIT, en la que se han desarrollado proyectos como la personalizacin de gvSIG para la Divisin de Puertos y Costas para llevar a cabo la
gestin costera, o la de Seguridad Vial para la gestin de toda la infraestructura de carreteras. El siguiente mapa muestra aquellos pases en los que se han producido descargas de la aplicacin gvSIG:
62
CAPTULO 17
gvSIG: conclusiones
Como
conclusiones principales podemos decir que: d El proyecto gvSIG ha conllevado el conocimiento de las Infraestructuras de Datos espaciales dentro de la CIt, se ha implementado la propia, como un nodo de la IDE de Espaa y acorde a la directiva europea INSPIRE. Esto ha permitido optimizar la gestin de la informacin espacial, pasando de trabajar con ficheros a trabajar con bases de datos espaciales y estndares. d El proyecto ha sido adoptado por la Generalitat primero y por la comunidad de Software Libre despus, convirtindose en una herramienta de referencia a nivel internacional. d La Comunidad Valenciana se ha convertido en un centro de referencia de la Geomtica Libre, y con ello las empresas y universidades valencianas que estn desarrollando el proyecto.
d Ha aumentado el nmero de usuarios de tecnologas SIG/ CAD en la CIT, pasando de 90 a 400. No slo se han cubierto las necesidades, sino que el SIG ha llegado a convertirse en una herramienta transversal, cada vez ms usada en la conselleria. d Ha aumentando el nivel de uso de los SIG en la CIT. Los usuarios actuales disponen cada vez de ms herramientas, y si bien en el inicio del proyecto el 90% de los usuarios usaba slo un 10% de stas, este ltimo porcentaje est aumentando y cada vez se dan ms y ms usos a gvSIG. Ha aumentado el nmero de usuarios pero parejo a ello ha aumentado tambin el nivel de conocimiento de los usuarios.
63
CAPTULO 18
d Seguir evolucionando gvSIG. Aadiendo nuevas herramientas que se integren con las actuales, como son: las propias de las aplicaciones de topografa, las de gestin de infraestructuras viarias, geoestadstica o sensores, que permitirn ampliar todava ms el uso de estas tecnologas y la optimizacin de la gestin del territorio, tan fundamental en las administraciones pblicas y en concreto en la CIT. d Fomentar la colaboracin. Continuar fomentando la comunidad gvSIG, la participacin de cada vez ms actores que colaboren en la construccin del proyecto. De nuevo, en palabras de Don Gaspar Peral Ribelles:
64
Referencias
d Proyecto gvPONTIS http://www.gvpontis.gva.es d Proyecto gvSIG http://www.gvsig.gva.es d Proyecto MOSKitt http://www.moskitt.org d IDABC http://ec.europa.eu/idabc d Wikipedia http://es.wikipedia.org
65
Glosario
ACID Atomicidad, Consistencia, Aislamiento y Durabilidad. En bases de datos se denomina ACID a un conjunto de caractersticas necesarias para que una serie de instrucciones puedan ser consideradas como una transaccin. Backup Domain Controller. Berkeley Internet Name Domain. Business Process Modeling Notation. Representacin grfica para el flujo de trabajo de procesos. Business Process Management. Diseo asistido por computador. Computer Aided Software Engineering. Aplicaciones informticas destinadas a aumentar la productividad en el desarrollo de software reduciendo el coste de las mismas en trminos de tiempo y de dinero. Conselleria de Infraestructuras y Transporte. Sistema de Gestin de Contenidos. Concurrent Versioning System, es una aplicacin informtica que implementa un sistema de control de versiones. Domain Name System. Desarrollo Dirigido por Modelos. Eclipse Modeling Project. Enviromental Systems Research Institute. Empresa dedicada al desarrollo y comercializacin de Sistemas de Informacin Geogrfica. Estudio de Viabilidad del Sistema. Gigabyte. Unidad de medida informtica. KDe JSF HtML IDe IDe IDe IPP ISO8859-1 GPL GDAL Geospatial Data Abstraction Library. Biblioteca de software para la lectura y escritura de formatos de datos geoespaciales. General Public License. Licencia orientada principalmente a proteger la libre distribucin, modificacin y uso de software. General Public License. Licencia orientada principalmente a proteger la libre distribucin, modificacin y uso de software. HyperText Markup Language. Lenguaje de marcado predominante para la construccin de pginas web. Entorno de Desarrollo Integrado. Infraestructuras de Datos Espaciales. Integrated device Electronics. Controla los dispositivos de almacenamiento masivo de datos. Internet Printing Protocol. Norma de la ISO que define la codificacin del alfabeto latino. Java Database Connectivity. Es una API que permite la ejecucin de operaciones sobre bases de datos desde el lenguaje de programacin Java. JavaServer Faces framework para aplicaciones web en Java EE. K Desktop Environment. Es un entorno de escritorio e infraestructura de desarrollo para sistemas Unix/Linux. Conjunto de subsistemas software necesarios para alcanzar una solucin global. Estos son Linux, Apache, MySQL y PHP. Local Area Network. Red de rea local. GnU/GPL BDC BInD BPMn BPMS CAD
CASe
JDBC
LAMP LAn
66
Lightweight Directory Access Protocol. Protocolo a nivel de aplicacin que permite el acceso a un servicio de directorio ordenado y distribuido. Model Driven Architecture. Model-driven Development. Modelo Vista Controlador. Patrn de arquitectura de software que separa los datos de una aplicacin, la interfaz de usuario, y la lgica de control en tres componentes distintos. Sistema de gestin de base de datos relacional, multihilo y multiusuario. Open Database Connectivity. Estndar de acceso a Bases de Datos. Object Linking and Embedding, Database.Tecnologa desarrollada para tener acceso a diferentes fuentes de informacin, o bases de datos, de manera uniforme. Open Gis Consortium. Procesamiento de Transacciones En Lnea. Tipo de sistemas que facilitan y administran aplicaciones transaccionales. Personal Computer. Ordenador personal. Primary Domain Controler Portable Document Format. Formato porttil de documento. Formato de almacenamiento de documentos. PHP Hypertext Pre-processor. Lenguaje de programacin interpretado.
SAtA
Serial Advanced Technology Attachment. Interfaz de transferencia de datos entre la placa base y algunos dispositivos de almacenamiento Sistemas de gestin de base de datos. Software muy especfico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Sistema de Informacin Geogrfica. Lenguaje de consulta estructurado. Transmission Control Protocol / Internet Protocol. Conjunto bsico de protocolos de comunicacin de Internet que permiten la transmisin de informacin en redes de computadoras. Lenguaje Unificado de Modelado. Lenguaje grfico para visualizar, especificar, construir y documentar un sistema de software. Infraestructura de Datos Espaciales de Naciones Unidas. Unicode Transformation Format. Norma de transmisin de longitud variable para caracteres codificados utilizando Unicode. Virtual Network Computing. Nos permite tomar el control del ordenador servidor remotamente a travs de un ordenador cliente. Wide Area Network o red de rea amplia. Web Coverage Service. Web Feature Service. Web Map Service. Extensible Markup Language.
MVC
MySQL
tCP/IP
ODBC
UML
UnSDI
UtF-8
VnC
PostgreSQL es un servidor de base de datos PostgreSQL relacional orientada a objetos de Software Libre, publicado bajo la licencia BSD.
67