WORKSHOP ON INFORMATION SYSTEMS ARCHITECTURES Information / software architectures based on Content Management Systems (CMS): some examples with Drupal Valeria Pesce (GFAR) IAALD 2010 side-event SupAgro, Montpellier, France 26 April 2010
CMS + external sources + commodity services AgriFeeds ( Information architecture : individual sources “commodity services” Software architecture : CMS to harvest, store and manage content CMS + custom code for advanced filtering and custom feeds “Commodity services”: feed generators like Feedburner, Google API for calendars, widgets exploiting the APIs of various popular RSS readers Processing - search/display - sources commodity services
AgriFeeds architecture Organization Regional network news events website website harvesting metadata filtering AGGREGATED VIEW FeedBurner Commodity services CMS
Example: Upcoming Forestry Events
Item level: semantics come from the sources Future versions: automatic indexing with controlled vocabularies
Feed level: semantics come from the system
Advantages Information architecture: Relevant contents are stored and indexed without human intervention Metadata standards are exploited Software architecture: No need to write code from scratch No need to maintain code: relies on an active community of developers Complies with good practices in IM: re-use, re-usability, re-packaging, use of standards
Challenges Information architecture: Depends (partially: the basic functionalities rely on the CMS) on the functioning and continued availability of the commodity services Quality depends on the quality of the sources Software architecture: Relies on the continued maintenance of the CMS The custom code needed to extend the basic CMS functionalities needs to be maintained 1st version: 30% custom code 2 nd version: 15% custom code NEXT VERSION: >> 1% CUSTOM CODE
CMS as integrated solution AgriDrupal ( Information architecture : - external sources - locally managed contents Software architecture : CMS to manage any kind of information using any metadata set CMS to interface web services, APIs, RDF, XML… Coherent management metadata Model / content model - search/display - exports CMS as an “information management tool” CMS as an “information hub” CMS as a pool of specialized solutions
CMS for specialized functions Through an extended use of metadata and workflows, a CMS can perform the functions of specialized software. Example of document repository management in Drupal
Advantages Information architecture: Both external and local contents managed through metadata models and content models flexibility and adaptability to standards Software architecture: No need to write code from scratch No need to maintain code: relies on an active community of developers One tool to manage everything
Challenges Information architecture: Depends (partially) on the availability of good sources Common vocabularies are needed Software architecture: Relies on the continued maintenance of the CMS Functionalities limited to the functionalities of the CMS The custom code needed to extend the CMS functionalities needs to be maintained Specialized functions will not be as specialized as in specialized software