Forum OpenACS Q&A: updates/extensions to the bits module

So has anyone thought of integrating project and time management tools into the bits system. I started hacking together a module for the acs that would keep daily progress of time I put into projects and compare my estimated time for completion to actual times of completion. I also started laying out code and a datamodel to support dependancies and gantt chart generation.

Am I likely to be duplicating work with anyone? would anyone else be interested in this?

As a side note:
I'm super excited that the openACS exists and am curious if my little org can make the transition from oracle backed to freedom. I am going through the pain of simultaneously installing/upgrading three packages right now, AOLserver3.0.0, postgres7.0b and the latest openACS because I was writing a project management module for the ACS and became

  • Sad that my code would be bound to oracle.
  • Exited when it appeared that the openACS bits module would get me closer to my goals.
I have been asking some newbie questions in the install forum and figured that a little intro would be useful (help me so I can help the project! I can move forward as soon as I get aolserver configured to taste.) cheers,
Collapse
Posted by Ben Adida on
I'm very interested in this. In fact, I have started (in one of my
many back-burner projects) defining parts of a project
management piece to BITS.

I'm not 100% sure about the Gantt diagrams yet and such,
because I'm convinced that 80% of apps like Microsoft Project is
useless to most people. However, I wanted to at least be able to
take a Project and define elements within a project that must be
completed. Ideally, you could then define different steps for
completion for each of these elements (design, implementation,
testing, for example), and assign people to various steps, with
deadlines for each.

Add a sprinkle of todo-module plugin, and you've got a pretty
good start of project management. Add dependencies, and you
could put together the diagrams...

Collapse
Posted by Michael Feldstein on
I'm beginning to see a pattern here in the direction that OpenACS is taking. I've heard talk so far about SDM with CVS, content management, project management, and usability testing modules. Put these pieces together and you have one amazing development environment for content-oriented web development.
Collapse
4: Wimpy Project (response to 1)
Posted by Carl Coryell-Martin on
I have tentatively titled it the wimpy project module which unfortunately collides in acronym space with wimpypoint (maybe wimpy manager?), but my idea was to implement the 20% of microsoft project that I really liked in a db back web fashion.

My current scheme is oriented around nested tasks. Thus for each project you can define a list of tasks that need to be done and for each task you can define subtasks. Thus you can take care of phases by making a subtask for each phase. (At some point I would like to have libraries of subtasks to speed that up.) (the parent tasks adopt the elapsed time and estimated time to completion from their child tasks.)

The lack of connect by in postgres may be a pain, but I have been doing most of the sorting bboard style (actually I stole code wholesale from the bookmarks module.)

Your todo-list and bug tracker inspired me to install the openACS so I could build on a gpl'd platform.

Dependencies is a table and a UI and it turns out that someone has already written a free tool to take a list of task and dependancies and draw gantt diagrams.

So if I can get aolserver3.0.0 to actually interpret .tcl files, I'll be golden. 😊

Collapse
Posted by Ben Adida on
oh no, Michael's figured out our secret plan! Run before the final
truth is discovered! :)

What's interesting is that there has been a lot of push for this. I'm
in fact in the process of resurrecting a lot of SDM/CVS code that I
had put to bed a few weeks back when the aolserver guys told
me they didn't need CVS integration. But since i hate all the
existing CVS/web interfaces, I thought it was time to move
forward and make the SDM a true CVS/web interface.

Yes, I think a real content management piece, and a real
development environment combining BITS and CVS and SDM
and this new idea (wimpy won't do, cause of wimpypoint) will
definitely make for an interesting system.

Nested tasks are okay, but usually, if you nest projects (which
you can do in the data model currently, just not in the interface
yet), then usually you'll get to an atomic level where a project's
tasks must all go through the same steps (like design,
implementation, and testing for a piece of code). Then you can
actually have a table, with tasks on the left, and steps up top.

Collapse
Posted by Carl Coryell-Martin on
Re: Ben's suggestion that tasks incorporate design, implement, test phases.

I can appreciate that might make it more powerful for certain kinds of management (and certainly for the person/team developing it). I come from a physics/engineering background where many of my tasks were not coding oriented. I get antsy making things _that_ domain specific. I would love to offer this to my friends who build instruments as a tool for them also.

maybe there is an opportunity for some meta-tasks that allow sub tasks to be presented several different ways. (this sounds like a usability nightmare...)

I still want to log hours spent on each phase (and when) to improve project estimating skills and that could make the data model ugly if each sub-task were not atomic.

I haven't looked at the bits datamodel yet, but I will as soon as I get Aolserver3.0.0 to interpret .tcl files. 😊

Collapse
Posted by Ben Adida on
Carl, I'm sorry, I didn't make myself clear enough. For sure it
should be more generic than for coding! The "steps" I gave
examples to (with design, code,test) was just that, an example.

The idea is that for each project, you would define the steps that
your tasks must undergo. For a coding project, you would define
the tasks design, code, test, but any other steps could be
defined for other types of projects. This definition of steps has to
be part of the web interface and data model, no SQL hacking.

The idea behind the "steps" idea is to be able to make a
2-dimensional table that shows tasks and steps, instead of
infinitely nested tasks.

I read the data model for the dynamic publishing system v0.5 available at: karl.arsdigita.com/doc/publish/index.adp last night. They are building a system to support arbitrary and complex workflows for a task. I wonder if it might be interesting to use that code as the steps for each task. (I always prefer to modify existing running code.)

cheers....