How to Extend gvSIG Community Edition with Plugins and Scripts

Migrating to gvSIG Community Edition: Best Practices and TipsMigrating to gvSIG Community Edition can bring cost savings, flexibility, and access to an open-source GIS ecosystem. This guide covers planning, data migration, customization, testing, and post-migration maintenance so you can move confidently and minimize disruption.


Why migrate to gvSIG Community Edition?

  • Cost-effective: gvSIG Community Edition is free to use and distribute, reducing licensing expenses.
  • Open standards: Supports OGC standards (WMS, WFS, WCS) and common formats like Shapefile, GeoJSON, and PostGIS.
  • Extensible: Plugin architecture and scripting support (Python/Jython) allow customization.
  • Active community: Community support, forums, and shared extensions provide resources and examples.

Pre-migration planning

  1. Inventory current GIS assets

    • List datasets, formats, projections, metadata, and sizes.
    • Catalog existing tools, scripts, plugins, and third-party integrations.
  2. Define migration goals and scope

    • Decide whether migration is full (all data and workflows) or partial (selected projects).
    • Establish success criteria (performance targets, data fidelity, user acceptance).
  3. Assess compatibility and gaps

    • Identify data formats or tools not directly supported by gvSIG Community Edition.
    • Plan conversions (e.g., proprietary geodatabase to PostGIS).
    • Check custom model or script compatibility; plan for rewriting if needed.
  4. Set up test environment

    • Create a staging server or local environment that mirrors production.
    • Use a representative subset of data for testing to speed iterations.
  5. Create a rollback plan

    • Backup all data and document current system configurations.
    • Define steps to revert to the original environment in case of major issues.

Data migration

  1. Choose storage strategy

    • For many datasets and multi-user access, use PostGIS as the central spatial datastore.
    • For simpler needs, file-based formats (GeoPackage, Shapefile) may suffice; prefer GeoPackage over Shapefile for modern features and fewer limitations.
  2. Coordinate reference systems (CRS)

    • Standardize on project CRS where possible. Reproject datasets consistently during migration.
    • Use EPSG codes and document transformations. For large datasets, test accuracy after reprojection.
  3. Data cleaning and validation

    • Fix topology errors, duplicate features, null geometries, and attribute inconsistencies before migration.
    • Use tools like GDAL/OGR, QGIS, or gvSIG itself to validate and repair datasets.
  4. Bulk conversion tools and commands

    • GDAL/OGR is indispensable for format conversion and reprojection. Example command to convert a Shapefile to GeoPackage:
      
      ogr2ogr -f GPKG output.gpkg input.shp -t_srs EPSG:3857 

    • To load into PostGIS:
      
      ogr2ogr -f "PostgreSQL" PG:"host=localhost user=gis dbname=gisdb password=pass" input.shp -nln schema.table_name -t_srs EPSG:4326 -overwrite 
  5. Preserve metadata

    • Migrate or recreate metadata (descriptions, lineage, attribute definitions) in a standardized format (ISO 19115 or simple README files).

Application & workflow migration

  1. Plugins and extensions

    • Inventory existing plugins/scripts. Check if equivalents exist in gvSIG Community Edition or if you’ll need to port them.
    • gvSIG supports Java-based extensions and scripting via Jython; plan development resources accordingly.
  2. Recreate or adapt workflows

    • Map current workflows (data ingestion, processing, map production) and identify tools in gvSIG that can perform the same tasks.
    • Where direct equivalents do not exist, consider integrating external tools (GDAL, GRASS) or develop custom plugins.
  3. Automation and batch processing

    • Use scripting (Jython) or external schedulers to automate repetitive tasks. Integrate with PostgreSQL/ PostGIS functions where appropriate.
  4. Styling and symbology

    • Recreate cartographic styles in gvSIG. Export styles from previous tools where possible (e.g., SLD) and import into gvSIG.

Testing and validation

  1. Functional testing

    • Verify that all migrated datasets open correctly, attributes are intact, and spatial queries return expected results.
  2. Performance benchmarking

    • Test common operations: rendering large layers, spatial joins, complex queries.
    • Tune PostGIS (indexes, VACUUM, maintenance), server resources, and gvSIG settings for optimal performance.
  3. User acceptance testing (UAT)

    • Have power users run their daily tasks in the staging environment and collect feedback.
    • Document issues and refine workflows before production rollout.
  4. Security and access control

    • Configure database roles and permissions in PostgreSQL/PostGIS.
    • Secure servers with appropriate firewall settings and SSL where needed.

Training and documentation

  1. Create user guides

    • Short, task-focused guides for common user workflows (data editing, map creation, publishing).
  2. Hands-on training

    • Run workshops or recorded sessions covering differences from previous GIS tools and showing new workflows.
  3. Developer documentation

    • Document custom plugins, scripts, and deployment processes for future maintenance.

Deployment and cutover

  1. Schedule migration window

    • Choose a low-usage period and communicate downtime expectations to users.
  2. Final sync and cutover

    • Perform a final incremental data sync to capture changes since the staging snapshot.
    • Switch production users to the new gvSIG environment and monitor closely for issues.
  3. Post-migration support

    • Provide a dedicated support window (helpdesk, Slack/Teams channel) for rapid troubleshooting.

Maintenance and long-term practices

  • Regular backups and disaster recovery testing (PostGIS dumps, file backups).
  • Monitor database health and application logs.
  • Keep gvSIG Community Edition and dependencies updated; test updates in staging before production.
  • Engage with the gvSIG community for plugins, patches, and support.

Common migration pitfalls and how to avoid them

  • Underestimating data cleanup needs — run validation early.
  • Ignoring coordinate system inconsistencies — standardize CRS before bulk loads.
  • Not involving end users early — include UAT to catch workflow gaps.
  • Overlooking performance tuning — index spatial columns and optimize queries.
  • Missing metadata — document datasets during migration.

Example migration checklist (summary)

  • Inventory data, tools, and workflows
  • Set up staging environment and backups
  • Convert and validate datasets (prefer GeoPackage/PostGIS)
  • Recreate or port plugins and scripts
  • Run functional, performance, and UAT testing
  • Schedule cutover and provide post-migration support

Migrating to gvSIG Community Edition is a manageable process with careful planning, testing, and user involvement. Following these best practices will reduce risk, preserve data integrity, and help users adopt the new platform smoothly.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *