Eclipse Project Relationships
Here's a list of Eclipse projects we need to discuss
EMF has two key aspects that are of interest to COSMOS.
The first is as a code generator, and in that context it is unlikely that we will use EMF. EMF is an excellent tool for creating the object model to back a user interface. By varying the options you can in fact have a complete editor template generated for you based on your input data model. However since COSMOS user interfaces that might consider this boiler plate approach will be browser based and would not be able to leverage that part of EMF code gen. In addition the data model is more or less assumed to be in memory with EMF and this is not a scalable approach for COSMOS. One could adjust the generation options to get down to what is in effect POJO model for snapshot view data, and provide an alternate EList implementation to deal with paging or faulting in data, but the effort to work around EMF to get very consistent generated code has to be balanced against the cost to simply write the code for the app server environment.
The second main feature of EMF is being able to get default serialization support via XMI, but as already noted, we would not need this serialization and we would likely not use the basic code generation.
Naturally this needs further deep design discussion, but at this point COSMOS need not leverage EMF.
The Test and Performance Tools Platform has a strong relationship to the monitoring domain and build to manage components of COSMOS. Both projects monitor run time environments for various sorts of information. TPTP has focused on the collection of this data in the context of a test or a developer problem determination scenario and providing integration to the development environment, while COSMOS intends to collect and present the same higher level data through web UI for initial problem detection and isolation. A use case that flows between these two projects is an excellent one that support problem identification in a production or test environment and provide a seamless flow to the developer environment and back. This use case best leverage common data exchange and data integration if we have commonality at that level between the projects. TPTP today also provides some data collection components as well as some tooling to enable data collection and system management. Our desire is to work with TPTP to have common data access apis and shared data collection components. TPTP will provide appropriate Eclipse based user interaction support with a local or embedded data store, while COSMOS will provide a web based user interaction and a distributed data store.
MORE TO COME
Minimum Project Requirements