-
Notifications
You must be signed in to change notification settings - Fork 0
SWE Client Component Roadmap
The purpose of a generic client for Sensor Web Enablement (SWE) and other standard web service frameworks is to provide the ability to display or process data from these services in a way that is useful to various users. These users have different needs and desires but still wish to be able to discover and access these common assets (e.g. data, sensors, actuators, processes, etc.). The secret is to enable this capability without needing to assume a priori knowledge of these assets. There is an approach that can enable this without requiring the client to have extra smarts that would be very difficult to develop.
First off, it's important to understand that there are different roles in the development, deployment, and use of a general client for supporting SWE and other standard web services. Otherwise, it's easy to slip into an assumption that the tool must be smarter than it needs to be. While a single person might still play several of these roles, he/she should still keep in mind these separate roles and be aware of which role he/she is playing at any particular time. In this discussion assuming a visualization client, the roles are divided into the following categories:
- Front-End Data Developer
- Back-End Graphic Developer
- Configuration Manager
- User
We will discuss each of these roles below in order to understand how the pieces come together.
The Data Developer (DD) is responsible for developing the technologies for accessing web services, initiating and supporting data streams, parsing the data stream, and making these data available to graphics or processing systems on the back-end. The development tasks of the DD are:
- Manage projects (security, adding folders and data items, configuration management)
- Provide GUI for configuring projects (Adding to data tree, discovering data sources, selecting specific data (e.g. observable properties))
- Establish connections to web services
- Request data streams
- Parse data stream and make data available to "pipes" for processors or renderers