A Services Infrastructure should provide an environment for services to be deployed, delivered and managed. It should also be effective both in terms of cost and in terms of performance. It should be able to host many services fostering connections among them but not imposing it. In other words a service should be able to be supported by the infrastructure independenlty of other services, it has to be “autonomous” but it should also be able to take advantage of other services. This is also referred as “loose coupling among services”.
In order to support services the resources made available by the infrastructures should be accessible to the services and this requires the pubblication of the infrastructure interfaces. Furthermore to support interoperability there should be some level of standardisation in the communication with services, normally occurring via “standardised service contracts”.
In addition a service should be able to operate using different technologies, independent from the service infrastructures. This is important to accommodate new technologies as they become available. This requires a sort of “abstraction” between what the service does (and needs to be known to take advantage of the service) and how it does it. This is also instrumental in ensuring service “reusability” in other context.
To make it possible for a service to take advantage of another service it has to be aware of the existance of a potentially usefull service, in other words every service should be “discoverable”. It would also be good to create a service by aggregating existing ones, something referred to as “composability”, and in turns to make this effective the “granularity” of services should be such that they can be easily integrated. As an example a Municipality may decide on a common use and feel for all services delivered to its citizenship and will develop (or ask some company to develop) the desired user interface. This interface should then become a component in all services run on the service infrastructure. Similarly for authentication and privacy control (anonimity).
There are other characteristics that should be taken into account when designing a SOA, Service Oriented Architecture. But the point here is not to be exhaustive, rather to give a feeling to decision makers that a Service Infrastructure should be one of the pillars of a Municipality in its roadmapping towards a smarter city. The existence of such a service infrastructure can catalyse private resources, foster business opportunities and allow the city to reap benefit of more effective, and cheaper, services.