Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EPICModernization

Revision as of 16:25, 4 March 2009 by Unnamed Poltroon (Talk) (Social Networking)

EPIC Modernization Requirements Document V 0.1

The Eclipse Plugin Central (EPIC) is a popular and successful resource for the Eclipse community. It lists over 1100 Eclipse based products and drives thousands of click-thrus per month to some of the top rated products. Unfortunately, EPIC is hosted on an older content management system (CMS), so it is difficult to maintain and update. Therefore, we are starting a project to modernize EPIC and re-host it on a more modern updated CMS.

This document is to capture and prioritize all of the requirements for a new EPIC. The goal is to finalize the requirement by the end of March and begin implementation shortly thereafter.

Below is a draft version of the document. We encourage people to submit their suggestions for this bugzilla entry. We will update the document based on the input from many sources.


Goals

  • Dramatically increase the usability of through improved navigation and graphic design.
  • Make it easier for solution providers to manage their product entries.
  • Provide better linkage between EPIC site and the vendors’ update sites.
  • Host EPIC on a new content management system.


Requirements

Navigation

  • Tag Cloud
    • Need the ability to tag products and navigate via a tag cloud
    • Products should be able to have multiple tags and product owners should be able to select and define tags for their products.
  • Markets and Categories
    • A Market is a special type of tag that identifies that type of offering, ex. Tools, Middleware (Runtime), RCP, Training/Consulting. This will allow the catelog to be customized to a specific set of technology. Overtime more Markets could be added.
    • A Category is a grouping within a Market that characterizes the features of offering, ex: GUI Builders, Testing Tools, Logging, etc.
    • A product needs to be able to be in multiple categories. O
    • PEN ITEM: Should we limit the number of categories to avoid potential abuse? I would suggest we limit to 3-5
    • OPEN ITEM: Can a product be in more than one market? I would suggest we limit to 1.
  • Search and Filters
    • A user should be able to search for a product within a category, market or across the entire site.
    • Advanced search should allow a user to filter the search results. Filers should be available for license type, Eclipse version supported, date range on update
  • Other Navigation
    • Allow cross linking to other similar products by the same vendor and/or category
    • Allow cross linking to Eclipse Live content


Social Networking

  • Voting
    • We should allow a product to be voted up or down, similar to digg. Remove the vote 1-10 system in place now.
    • Need to allow people to add a 'vote' graphic onto their site.
    • Votes should age, so votes expire after ### days or categorize the votes by time to provide rankings for "this week"/"this month"/"this year" similar to the way YouTube and others social sites do.
    • A user must be registered and login to be able to vote
  • Reviews
    • Users should be able to add reviews for a product. Users must login before they can leave a review.
  • Flag as Out of Date
    • A user should be able to flag a product as being out of date. The user would need to specify the reason. The flag will generate an e-mail to the product provider. The product provider can remove flags on their products. This allows the product provider to moderate their own content.
    • A product that has more than 5 out of date flags will be given lower priority in listing and visually be tagged with 'Out of date'.

Favourite List

  • A user should be able to add and remove different products to a personal favorite list
  • Favourite list should be able to:
    • list of favourite products for a 'MyAccount' list
    • generate an RSS feed for all products that includes products news and updates
    • see a list of products that are included in the most favourite lists
    • see the user ids of people who have add a product to their favourite list
    • given a product, what other products do people typically also include in their list.
    • be able to provide the p2 update sites for all the products in a favourite list.

REST API

An API will be available to allow external distribution mechanism to access the data in the catalog. A primary use case is to allow third party client installers to access the favourite list and/or the catalog listing to:

  1. Create a single click install based on a list of p2 update sites,
  2. Search for missing dependencies

The API will only allow for reading data. Writing data will not to the catalog from an API will not be provided.

API needs to provide:

  • listing of products based on category and market
  • detailed product information based on product id
  • favourite list based on user id


OPEN ITEM: Are there any privacy concerns? At this time I don't think so.

Management and Administration

  • Remove the moderation queue for plugin / service listing updates.
  • Host the click thru reports for member plugins on EPIC itself allowing for realtime data.
  • Allow plugins to upload their plugin image icons directly to the server.


CMS Issues

  • Current thinking is to host EPIC and Live on a single shared Drupal install.
  • We should integrate sign-on with existing Buzilla accounts
  • The current install of PostNuke places a large load on the database. We should be sending SELECT queries to the slave and INSERT/UPDATE queries to the master.

Support for Training and Service Providers

  • Need to be able to search/tag by geography and expertise
  • Training calendar for Eclipse public courses

Migration Requirements

  • Plugin information should be migrated to new EPIC without requiring intervention from plugin owner.
  • Username and password information should be migrated to the new site. We should try to delete any usernames that aren't being used.
    • (Gunnar) Q: Should EPIC get rid of it's own password storge and use the global Eclipse.org login?
    • (Gunnar) Support for additional authentication sources (eg. OpenID) should be added.

Naming

  • We should consider referring to 'products' or 'projects' and not plugins, since a lot of the solutions listed on EPIC are not actual plugins.
  • Should we rename Eclipse Plugin Central to something more generic; maybe Eclipse Solution Center?

Other Ideas

  • I think it would be interesting to show what Eclipse projects are used in the different products.
  • Should Eclipse Live and EPIC be merged into a single entity?

Back to the top