1. Executive Summary
The purpose of this deliverable is to define architecture and design principles of the system to fulfill requirements defined in Deliverable 2.1 ‘User requirements for the publication platform from target organizations, including the map of typical environments’.
The document describes architecture of a software solution for open data publication (Open Data Node) which will be developed by COMSODE project and is basis also for methodologies for open data publication (which will also be developed by the project too). Architecture was developed based on identified user requirements (Use cases).
The system is split into modules that communicates using interfaces. Modules and interfaces are described in more details in particular sections. For each module it is described what is the role of the module and how it fits into context of overall system, including also description of its interactions with other modules. Some modules are describes also with alternatives that can be used to fulfill the functionality of the module.
Due to modularity of the system, it is possible to use the system in different deployment environments and also to use only some modules of the system and integrate with other modules and systems. Some deployment schemes are also described in the document.
Modules shall be licensed as open source, so there could be contributors that could improve the modules or extend the system. Thus also description of development model and environment is included in the document.
This architecture is a base we will work with in the next steps of the COMSODE project, mainly in WP4 - Development of software components and tools. However, it may happen that some new component will be identified in development phase, which will better fulfill functionality of particular module. In that case, we will update the module description in this document accordingly including explanation of the replacement. Subsequent updates to this document will be part of ODN documentation, distributed along with the software.