Quality Attribute Tradeoff in Learning Infrastructure Scaling
Schuppen, C. van
MetadataShow full item record
More software products are developed for cloud environments and existing software products move to cloud environments. This has implications for the desired software quality attributes, as well as the focus on these attributes. It becomes especially more important for a software product to be able to scale (scalability). This thesis investigates the relationship between the scalability and other relevant quality attributes. A single case study is used to investigate these relations. The unit of analysis is the DWO, an e-learning application in which (mostly) secondary school students practice mathematics exercises. An Architectural Description is needed to assess these quality attributes. Since this description is not elaborately present, this is constructed from application usage and interviews with the DWO team. Three quality attributes are selected based on the architecture and the reflection of the DWO team on the current situation and the constructed description. Using the Cloud Operation Management (COM) model, a number of goals with underlying questions and metrics are defined. This led to the following goals and related quality attributes: - Performance (time behaviour): All users are satisfied with the response time - Availability: It should be possible to use the application whenever a user desires to - PaaS portability: The application is independent of a cloud compatible infrastructure - Scalability: The application is able to cope with an increase of users The metrics are subsequently formalised using a proposed mathematical formalisation, which is an extension of a formalisation from Process Mining. It is focused on the feature calls of DWO users. A number of data sources is collected to fill these metrics: query and access logs is extracted for 2 weeks, database mutation data of 15 weeks is used, and a snapshot of the database is examined. Also the executed queries and mutations are related and it was found that the number of queries can be approximated by the number of database mutations. The main findings of the COM model goals are: - Performance probability distributions are created. From behaviour of different distributions, composite distributions are created describing the combined time behaviour (e.g. for a sequence of events or a specific user action). - Daily application usage is described in a load and probability distribution, filtered on specific queries, time ranges and week or weekend days. Furthermore, illustratively, it seems that these can be described mathematically (a first attempt was made). - School usage is very diverse in the DWO application, classification attempts were made, but were unsuccessful. Additionally, possible cloud deployment scenarios are described. This is done by first defining a number of requirements for the DWO cloud deployment and subsequently testing these requirements on a number of cloud infrastructure and platform providers. Three scenarios on Amazon Web Services (two) and Google Cloud Platform (one) are discussed.