Hi Steve,
Thanks for a great post.
I think there is agreement that we need a representation independent object model and that this needs to evolve through time - which is kind of what I was suggesting with my two questions.
I have half heartedly been building a page for Use Cases on the wiki. You can see it here:
http://www.tdwg.hyam.net/twiki/bin/view/TAG/RequirementsElicitation
I have started structuring the wiki along formal software architecture lines which is awkward because we are not defining an application in the strict sense - so I am open to suggestions to change it. The major problem I see is that we are not automating an existing business system but trying to enable something new. I would, though, like to anchor things with some concrete and 'fantasy' scenarios as well as more abstracted use cases.
There are two ways forward from here. Either we work on building the use cases or we talk about ontology management. My gut feeling is that we need to flip back and forth between the two. If we start talking about how we would manage an ontology / object model then we will need to start quoting use cases and we can flesh them out at the same time. I will therefore start a fresh thread on management.
Thanks,
Roger
Steven Perry wrote:
I agree with Bob that our data model specifications should be decoupled from possible representation schemes. In my opinion, these specifications should take the form of UML static structures with accompanying explanatory documents. The use of BNF grammars is a good idea, but I worry that they might become difficult to manage as they grow and that non-CS people in the community would find it difficult to understand them.
I also think that the technical architecture group should not be concerned with the data models themselves. Instead we have to worry about how to map existing data sets into the shared models, how to link instances of different models together, how to locate one or more data objects that meet certain criteria, how to merge collections of data objects from one or more models, how to visualize trees or graphs of data objects, how to serialize and deserialize data objects into different representations, etc. In short, we have to design a network of services that allow us work with data objects and collections of data objects in a fairly generic fashion and leave the actual creation of the models up to the subject matter experts (though we might supply a bit of KR advice).
These services and processes will also require documentation and might be specified with the same combination of UML (sequence or activity diagrams) and explanatory documentation. I think all of us agree that these ought to be designed in a language-independent manner and be built upon a small stack of existing technologies like HTTP and XML for message transport.
At some point though we have to agree on a representation format. If we're talking about building a set of distributed services that will allow us to locate, acquire, and work with biodiversity data, then I
Truncated here..
Full post starts here: http://lists.tdwg.org/pipermail/tdwg-tag_lists.tdwg.org/2006-February/000011...