DCCI Use Cases and Requirements
Use Cases and Requirements for New DCCI Model
New Requirements: Put here all the requirements you can think of for a generic context representation for web applications. Cover use cases that must be satisfied today as well as in near future
* There should be clear separation of syntax and semantics of model
It should be possible to describe the model via a separate schema/ontology
* Uniform API for each property within the representation
We need a unified API for each property/provider representation. The onus should be on the simplicity of the API, easy learning and intuitive to use
* Ability to extend the API set for each property that are property specific (or vendor specific)
There must be adequate mechanisms that allow properties to be extended with additional interfaces if needed. There must be clear indications within the API for each property that points to whether there are Extensions available, whether these are supported by the current property and what those extensions are.
* Support for namespaces
* Support for local and remote properties
The model should support both local and remote properties and the location should be easily discernable for any consumer application. Applications must also be able to search based on location of the properties.
There must be support for consumer applications to cache search requests so that they get serviced if and when the criterion gets satisfied
* Providers must be able to efficiently communicate to consumers
Adequate mechanisms to inform interested consumer applications of changes to properties or model
* Consumers must be able to efficiently communicate to providers
Adequate mechanisms for consumers to inform providers of interest, ability to initialize, change settings to properties, inform of change in state of applications etc.
* Support for topology changes
Inform interested parties of changes to structure of model. This can involve communication to both consumers and providers
* Support for dynamic, semi-dynamic and static properties
* Ability to control rate of updates both for providers and consumers
* Small footprint - support for flash based devices
* Support for metadata
Adequate support for metadata representations (possibly support outside metadata formats/recommendations)
* Support for property management
It must be easy for external modules where the model itself may form part of a framework to be able to control property additions, access control and levels of visibility
* Security and authentication
Adequate security and authentication mechanisms. The data that is sourced and provided must be genuine. Support for additional modules that may do this functionality.
* Expression of relations between properties
Not all properties have to be related. In case of relations between properties, can we also model the relations between those? I.e, express properties for the links themselves? Use cases?
See the Proposed Revised DCCI Model.