Service

Service
.

A single solution will be responsible for managing a collection of services in parallel, very much like a pc web server often runs multiple services in parellel (e.g. apache, issue tracker, code repository, file server, ...). A service should generally be thought of as a programmed workflow in a multi-robot-device-human ecosystem that can request robotic resources or permission to execute software and accept interactions from humans via appropriate interfaces. A major objective for us is to allow services to be programmed without constraints the language to encourage experimentation at this level. For example, ros, static link graph, orc and bpel style services will be initially supported with commonality at the resource requesting, software sharing and interactions interfaces.

https://docs.google.com/drawings/d/1Sj72Yld2aIYGRimalviLtBk-VXXFuDp3kD-8KgtPnkU/pub?w=299&h=170&.png

The combination of services will often make for a more complete solution:


 * Example: Make a Map service
 * Example: Annotate a Map service
 * Example: Teleop service
 * Example: Delivery service