Implementing Tools for the Canadian Wheat Alliance Portal

Implementing Tools for the Canadian Wheat Alliance Portal

ArchThe Canadian Wheat Alliance portal is a collection of sotware used to manage data and information related to the Canadian Wheat Alliance. A key component of the portal is the Content Management System (CMS). The CMS is implemented using the Drupal Content Management System and provides the following services via it's API and respective implementations:

  • user management
  • themeing
  • content editing
  • content moderation
  • commenting and forum management
  • search indexing
  • modular extension via API
  • sitemapping
  • internationalization
  • single sign-on
  • database management API
  • caching and performance management
  • session management

The process of providing a tool as part of the CWA Portal will depend on the current development state of the tool, the architecture of the tool, and of the design objectives of the tool. In the best case, the tool is tightly integrated with the portal by implementing the Drupal API. This allows the tool to take advantage of all of the previously described features of Drupal. In the case of a mature tool where the time to integrate with Drupal is not advantageous, the tool will simply be linked to. The tool will likely need to re-authentiate is users, will have no common look and feel with the portal, and will require it's own database management.

The following examples are listed from tightest integration to loosest integration with the Portal:

  1. The tool is written in (or wrapped with) PHP. It uses Drupal's extensive hooks and session management and allows customized behavior and security based on the identity and Roles of the user. Output is rendered in place using the Drupal theming layer. Application accelleration and caching is provided by Drupal. The user experiences seamless single-sign-on and look and feel.
  2. The tool is written in (or wrapped with) PHP. It does not use any Drupal APIs and thus must provide it's own services. It does provide common look-and-feel but does not provide effective integration.
  3. The tool is written in some other language. It does not integrate with any aspect of the Portal and is, effectively, a stand-alone tool.

The design decision to implement any given API is, of course, up to the discretion of the designer and is subject to a wealth of decision branch points.


Technical Capabilities of NRC Saskatoon's Computing Facility

  • 2 x 1.5TB Shared Memory computers (IBM x3850)
  • 8 256G compute nodes (Dell R90xx)
  • 0.2 PB storage (Isilon)
  • Operating System: Linux
  • Virtual Box Virtal Machines
  • VMWare virtual machines

Technical Diagrams of Drupal



Presentation for GAB meeting on 2013-06-27

I prepared this talk for the GAB meeting.