B-Open’s Role
Starting in 2004 B-Open collaborated closely with INFO/RAC on the definition and the implementation of the integrated data management system for the Barcelona Convention (InfoMAP) with a team of up to 5 consultants. B-Open was responsible for the main technological choices (PostgreSQL/PostGIS and Zope/Plone) and on top of the shared foundation designed and developed on behalf of INFO/RAC several web applications among which the MED POL InfoSystem, the Barcelona Convention Reporting System (BCRS). The MED POL InfoSystem hosts the three main environmental monitoring databases of the MED POL programme, it is designed to ease the MED POL assessment tasks and may accept and validate the official submission of the national monitoring reports directly from the MED POL National Coordinators. The BCRS hosts the database of the legal implementation of the Barcelona Convention by the Contracting Parties (CPs) and it may accept and validate the official submission of the national legal implementation reports by the National Focal Points. The main technical activities performed by B-Open have been: design from scratch (BCRS) or redesign (MED POL) and optimization of the main applications’ databases including geo-spatial data management (SQL, SQLAlchemy/Elixir); management of the geographic reference database (GDAL/OGR) including the cleanup of data and metadata in order to comply with the INSPIRE directives; integration with the B-Geo Interoperability Server for password-protected publication of the geo-spatial data (WSGI, paster, Mapserver, repoze.what, GeoWeb); development of the custom query and plotting module (Matplotlib); design and development of several web applications (Zope/Plone, Zope Component Architecture, Archetypes) featuring custom AJAX CRUD GUI for interactive data management (KSS, collective.tin, z3c.form), an XLS/CSV mass upload and validation module (for the MED POL InfoSystem), a custom WebGIS application (OpenLayers) with powerful geo-spatial querying and plotting capabilities (for the MED POL InfoSystem), custom workflows for the report submission by the contracting parties. The web applications support multilingual use and are deployed in English, French and Arab (right-to-left script). All user access to the systems is subject to authentication and authorization and in the case of MEDPOL InfoSystem also the access to the geo-spatial resources is authorized from the main user database. The custom code developed for InfoMAP and all associated components and web applications include more than 12k SLOC of Python code and more than 3k SLOC of ZPT/HTML/CSS. All the main components are unit tested and coverage tested via doctests that were also delivered as detail documentation for the code. The project was managed with strict quality standards, its 2.5k+ source code revisions and 450+ tickets are fully tracked (Subversion/Trac) and B-Open produced all the required project management documentation.
We adopted an iterative development cycle with fast design, prototype release, feedback, production release, with each iteration targeting a compact set of features. INFO/RAC organized frequent training workshops for the final users, often as a side event of official UNEP/MAP meetings, during which we could gather formal user feedback and new requirements. This also helped spotting and addressing early a few usability problems.