The introduction of basic services so that module names are not referenced.
(3) The introduction of basic services so that module names are not referenced.
Modules would just declare that they provide a service and this would have a meaning that is understandable to humans. Services should be used to provide properties and also resources, so that module names are not referenced in code. Also, a workflow could declare that it requires certain services and detect if the modules present do not provide those services and in that case provide an appropriate message to the users. The most difficult issue with services is whether they should be versioned and if so, how?