Web client requirements
From Intamap
This page gives the functional and non-functional requirements for the web client as a simple list of what the software should be able to do!
See also Interpolation web service requirements and Interpolation algorithm requirements.
This refers to the generic web client - we might also want to refine this for the EURDEP client. Some terms:
- background map: some vector mapping that can define the content, e.g. roads, rivers, coast, ....
- observations: the measurements obtained by a sensor at a given location, not always the thing we are interesting in.
- state: the variable that the user is interested in plotting (note this is not always the same as the observations).
- interpolation server: the implementation of the web service to support automatic interpolation, probably as a web processing service.
Contents |
[edit]
Functional requirements - things it can do
- Allow the user to zoom / pan on the background map
- Allow the user to select the features they want to display on the background map
- List the state variables that can be interpolated on the map (?is this the only option - does this need to query SOS's?)
- Allow a more detailed specification of the interpolation algorithm to be selected, depending on the level of interaction the user desires
- Allow the user to specify a local file (?format?) that contains observations which are then sent to the interpolation service
- Display a grid of values of the state as a (transparent) image overlayed onto a background map
- Display a grid of variances (or other moments?) of the state as a (transparent) image overlayed onto a background map
- Provide access to meta-data about the interpolation results which is returned by the interpolation server.
- Show the locations, and using colour and size the values of the observations used to produce the map
- Identify any observations defined as outliers in the interpolation process.
- Allow the user to retrieve a histogram of the pdf of the state at a given location (from interpolation service - non-interactive, or derived locally from pdf - interactive)
- Display the probability of the state exceeding a critical value specified by a user (from interpolation service - non-interactive, or derived locally from pdf - interactive)
[edit]
Extensions we might consider?
- Allow the user to load in a data set of observations in a range of formats (e.g. csv, tab delimited) and with the user define the necessary information to create observations conforming to our XML schema for submission to the interpolation server.
- Allow the interpolation service to return the posterior distribution in parameterised form (e.g. from Project Process Kriging) and then compute the predictions client side.
[edit]
Non-functional requirements - things it will be
- reliability: The web client should always fail gracefully with exceptions caught and informative error messages.
- usability: The web client should allow access by a variety of levels of user expertise, setting defaults sensibly where user do not specify these (?or should this be something the interpolation service does?)
- performance: The client should be able to cope with N observations, and a grid of m by m interpolated results and should remain responsive.
- portability: The client should run under Windows and Linux at a minimum.
- extensibility: ?The client should be designed for easy extension to other web service based interpolation methods developed in the future?
[edit]
Comments
- The fact that much of the work could be done client or server side emphasises the importance of creating a well designed set of libraries that implement our methods - maybe in R, but AST will probably focus on C++, with an R interface.
Back to System Requirements.
