Forum OpenACS Development: Re: OpenACS Attribute Management - Requirements/Requests

RE: AMS and the IRC discussion on the 23rd.

The (slightly opaque!) discussion yesterday seemed to be about 'how' - I really think we have to determine the 'what' first. In fact, most of the distracting diversions in the discussion seemed to be caused by lack of agreement over the objective!

Matthew Geddert and I have been working on a requirements document to provide some focus to the discussions. I have posted the first draft below.

It was unfortunate in a way that this was not circulated before the discussion yesterday because the requirements document deals with many of the issues that came up in the IRC discussion yesterday. In particular we have covered the issues of generic versus typed data, extent of the use of the CR object model, use of acs_rels, re-use of existing data model instead of creating new, revision management and logging and integration of the datamodel.

These were the ideas that Matthew and I were kicking around and need to be reviewed publically. Some of these were covered in the IRC discussion but no conclusive decision seemed to have been made. At least the good news is that we are all thinking along the same lines.

I propose that we step back for a moment or two. The summary of the IRC that Matthew has posted above will be useful in due course.

The steps that I propose are:

1) Agree and finalise the requirements doc
2) Submit the requirements doc for public review
3) Revise and publish requirements doc
4) Draft the datamodel solution (that is the stage at which we should have the discussions like yesterday's)
5) Document the data model and circulate
6) Revise/ optimise datamodel design and publish

Only then can we progress as a group with all energies in the one direction. Without this we all end up sparking off in different directions - and poor Matthew will get frustrated by having to change things half way through. If that happens nothing will ever be finished.

Don made the point that we should not be forcing people to have attributes as objects. In the requirements draft you will see that what we proposed a scheme that eliminates that issue.

I think that we should avoid pe-deciding the data model at this stage. Once we agree about the objectives we can prepare some proposals for the 'ideal' way to structure the data. We will have to address the major issues of performance and scaleability as part of this data model specification work - which ought to involve some actual testing of possible options. We will almost certainly have to look at ways to optimise the structures but the 'gold standard' option should be designed first and then optimised rather than trying to design AND optimise at the same time.

I hope that this is helpful. Requirements draft follows.

Regards
Richard