views:

389

answers:

5

I'm working on (yet another) to do list program, and part of the problem I want to solve is capturing task dependencies and relative importance.

I'm interested in recommendations for libraries / component that help with:

  1. Graph processing (including PageRank-like algorithms)
  2. Task / project scheduling - edit: note I don't mean OS processes, I mean abstract tasks, as in project management.
  3. GUI components for display of things like calendars, graphs, gantt etc.
  4. Graph layout / editing
  5. 2d & 3d visualisation (esp. of timelines)

Ideally open source and java, but would be interested to hear about good commercial alternatives, as well as open source tools available in other languages also.

A: 

Quartz for Task scheduling in Java, recommended here: running-a-regular-background-event-in-java-web-app

gimel
sorry, i should have been clearer. I don't mean process scheduling in that sense...I mean scheduling of abstract tasks.
frankodwyer
A: 

Hello,

Check out this:

http://www.ilog.com/products/cp/

I realize you are asking for Java technologies and ILog may have a path for you.

HTH

Colby Africa

Colby Africa
+1  A: 

You could check out the jaret timebars jaret timebars

pkliem
A: 

If you look for Java prjects/libraries then read on.

Graph processing (including PageRank-like algorithms)

don't know what you exactly mean with this. would lucene or solr help here?

Task / project scheduling

Do you mean automatically optimization? Then take a look at: TimeFinder, UniTime or Drools Solver

GUI components for display of things like calendars, gantt etc.

bizcal, TimeFinder Planner, gantt project, nachocalendar, jcalendar

Graph layout / editing

netbeans graph, jung, jgrapht

2d & 3d visualisation (esp. of timelines)

see the gantt project above

Karussell
A: 

Answering just the part about libraries for working with graphs, you should check out JGraphT. It lets you build up a graph of objects and includes algorithms for things like topological sorting, which I think is what you're getting at.

There's also a separate JGraph library (same link) that can take JGraphT objects and display them in a Swing GUI.

Andy