In multi-tenant Software as a Service (SaaS) applications, the providers are required to regularly deliver new releases of the software in order to satisfy the evolving requirements of tenants. The first step in a release development lifecycle is the release planning process.
This thesis formulates the problem of the "next release" planning for multi-tenant Software as a Service (SaaS) applications. Two variables that influence release planning in SaaS applications are introduced: the degree of commonality of features and the contractual constraints. The commonality of a feature denotes the number of tenants that have requested that feature. The contractual constraints denote the effects of service levels to which tenants have subscribed on the release planning process.
Furthermore, this thesis proposes three novel approaches in order to tackle the problem of the "next release" planning for multi-tenant SaaS applications. The first one is a prioritization approach that employs a Fuzzy Inference System (FIS) engine in order to speed up the release planning process and overcome the uncertainty associated with the human judgment. In this approach, the human expertise, which is represented by fuzzy rules, is considered automatically in the release planning process. The second and third approaches consider release planning as an optimization problem. The second approach uses an exact optimization method (Binary Linear Programming (BLP)) in order to generate an optimal release plan, while the third approach uses heuristic optimization method (Genetic Algorithm (GA)). All of the three approaches aim to generate a plan for the next release that maximizes the degree of overall tenants’ satisfaction, maximizes the degree of commonality, and minimizes the potential risk while taking into account contractual, effort, and dependencies constraints.
Moreover, the thesis presents an experimental study of the proposed approaches in order to determine which approach is best suited to different sets of scenarios. In this experiment, the performance of the proposed approaches is evaluated using four criteria: the overall tenants’ satisfaction, the commonality, the adherence to the risk, and the running time. Additionally, the thesis presents an experiment that compares the proposed approaches with a compared model that is selected from the literature.