Prioritizing and Fulfilling Quality Attributes for Virtual Lab Development through Application of Fuzzy Analytic Hierarchy Process and Software Development Guidelines - Chong, Chun Yong; Lee, Sai Peck; Ling, Teck Chaw (Malaysian Journal of Computer Science, 2014)
The evolution in pedagogy and research has introduced new requirements in the educational sector. Ondemand computing resource provisioning, often referred as virtual lab, is one of the requirements in great demand. Most current virtual lab systems are proprietary and thus their detailed software architectures are not accessible to developers. The lack of transparency in virtual lab architecture makes it hard for educational institutions to perform experimental testing and prototyping on these systems to determine their effectiveness in meeting certain service level requirements. To lead to an effective virtual lab development, it is important to ensure that all non-functional requirements, or commonly known as quality attributes, stated in the service level agreement (SLA) are realizable in the required order of priority. While a quality attribute can be achieved by applying one or more software development guidelines, software development guidelines may have different effects on different quality attributes and may also conflict with one another. In addition, priority assessment of the quality attributes are needed in order to focus on the higher priority ones while ensuring that the bare minimum expectation of the remaining ones are attainable. This paper aims to apply fuzzy Analytic Hierarchy Process (AHP) during the pre-negotiation stage of SLA to identify quality attributes and rank them based on their priorities. Based on the results, a set of suitable development guidelines are chosen to help realize and achieve the prioritized quality attributes in the virtual lab architecture, thus paving a way to facilitate architecture evaluation. The application of fuzzy AHP in our experiment has shown that stakeholders ranked reliability, usability, efficiency, security, maintainability, and portability in decreasing order of priority, based on which a set of suitable, non-conflicting software development guidelines were determined. The final result can provide a promising reference model for better understanding of virtual lab in the educational sector.