For more than a year we’ve been working with a variety of groups and individuals to fashion a clear definition of ‘openness’ in relation to online, software-based, ‘services’ (think: search engines, webmail, online spreadsheets, etc). The result, launched today, is the Open Software Service Definition:
A software service, also known under the title of Software as a Service (SaaS), is a service provided by a software application running online. Users do not access the software directly but do so over a network (the Internet usually) via an interface (whether common HTML or some other API). Such ‘services’ are increasingly common with many of us using the most well-known, such as search engines or online email systems, several times a day.
But software ‘services’, in contrast to a traditional software ‘applications’, present problems for those who care about freedom and openness. In particular users no longer have access to the software but instead simply interact across a network with the applications interface (for example via a web-browser). In such circumstances many traditional ideas of freedom or openness in relation to code no longer make sense — and many traditional free/open licenses (e.g. the GNU GPL) become ineffectual since, unlike traditional software distribution, no code is actually being ‘conveyed’ to users (and hence the requirement to make available source or modifications is no longer operative).
At the same time, ‘services’ also tend to combine both software and data to a greater extent that with traditional applications (think of most online map services such as Google or Yahoo! maps). Both data and code are necessary for those who wish to run the service for themselves or who wish to extend it. Thus ‘openness’ will require that both code and data are ‘open’.
The Open Software Service Definition takes both these major features of software services into account and ensures that the users (and reusers) of an ‘open software service’ enjoy the same freedoms as those using free/open software. Finally, so that those providing open software services can clearly indicate that they are doing so there are buttons available: