1. One or more storage media storing instructions which, when processed by one or more processors, cause: a service server determining that a service is available for a particular device; in response to determining that the service is available for the particular device, the service server obtaining, from the particular device, service information that specifies, for the service, at least one or more processes that implement the service on the particular device, one or more parameters for the one or more processes and one or more user interfaces for the one or more processes; the service server generating, based upon the service information, a service application that implements the service; the service server receiving, from a client device, a request to use the service for the particular device; and in response to receiving, from the client device, the request to use the service for the particular device, the service server providing to the client device the service application that implements the service.