Abstract:
In the era of cloud computing, multi-tenant based Software as a Service (SaaS) applications have been widely identified as the next generation of cloud applications. SaaS allows multiple user organizations to customize an application in a reliable and secure manner. However, this customization is a complex and error prone exercise. In response, researchers and practitioners have come up with SaaS architectures based on frameworks, platforms and modelling approaches to ease the complexity of SaaS application development. However, these methods and tools have not focused on aspect of development methodology being tuned to support long-term maintenance of the SaaS application.
This paper presents an architectural framework for SaaS application development that incorporates long-term maintenance requirements arising from multi-tenancy of the application. It consists of a methodology coupled with a tool chain, which brings multi-tenancy aware features to develop SaaS solutions that meet critical architectural requirements. It also includes a UML 2.0 based Profile named SaaSML for designing of main components, a skeletal framework to position these components and a methodology for benchmark evaluation of key design criteria.