Jump to: navigation, search

Project Management Infrastructure/Technology Choices

< Project Management Infrastructure
Revision as of 15:17, 17 April 2012 by Wayne.eclipse.org (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Technology Choices

Project management is essentially a document-management and workflow problem. Several solutions exist in this area.

The Eclipse Foundation currently uses Drupal for Eclipse Marketplace, Eclipse Live, and the EclipseCon Website. Several Eclipse Foundation employees are already well-versed in Drupal development, and finding temporary resources with the necessary skills in the local area should be relatively easy and cost-effective. Drupal is based on PHP, a language that is known to most of the Eclipse Foundation staff, and is currently in wide deployment by the Eclipse Foundation.

Perhaps one of the features that weighs most heavily in Drupal's favour is the size of the community behind it (which measures in the hundreds of thousands) and the hundreds (perhaps thousands) of plugins that are available to extend it. The availability of plugins, combined with the relative ease with which Drupal can be extended means that the overall amount of custom code that needs to be maintained should be relatively small (as compared to other solutions that may require more customization).

There are several other options that have been considered, including a handful of Eclipse-based solutions (which would allow us to "eat our own dogfood"). After careful consideration, however, we have determined that we do not have the resources to implement these solutions.

Technology comparison
  Pros Cons
Drupal
  • Skilled resources within existing Eclipse Foundation staff
  • Large number of skilled resources available
  • Very large community of developers, adopters, and users.
  • Deployed by 1,000s of organizations
  • Hundreds of plug-ins available to leverage in favour of writing custom code
    • Integration with Facebook, Twitter, etc.
    • Access information via RESTful webservices
  • Build-in (no-brainer) database support
  • Integrated Development tools + Eclipse/PDT
  • Existing IT Infrastructure support
  • Drupal-specific data structures and formats.
  • Not dogfooding; perception in the community
Skalli
  • Java based: Some Java skills on staff
  • "Dogfooding" solution
  • Eclipse-based development tools available
  • Leverage existing Eclipse technologies (EMF, workflow projects, SOA, EclipseLink, etc.)
  • Project developers have expressed interest in implementing some Eclipse Foundation processes (though with no specific commitments)
  • Opportunity to fully control the database structure
  • New project, very small community
  • Limited availability of skilled resources
    • Ramp up time for new developers is relatively long.
    • Good quality Java-savvy developers are relatively difficult to find.
    • Virtually impossible to find developers familiar with Skalli itself
  • Integration opportunities with existing Eclipse technologies remain largely unexplored
  • No existing IT Infrastructure support
Apricot
  • Java based: Some Java skills on staff
  • "Dogfooding" solution
  • High-quality, established project with several high-volume consumers
  • Eclipse-based development tools available
  • Leverage existing Eclipse technologies (EMF, workflow projects, SOA, EclipseLink, etc.)
  • Community size is unknown
  • Unknown availability of skilled resources
    • Assumed to be no skilled Apricot developers available in the local area.
    • Ramp up time for new developers is relatively long.
    • Good quality Java-savvy developers are relatively difficult to find.
  • Availability and usefulness of extensions is unknown
  • No existing IT Infrastructure support