{"title":"DevOps和IaC自动交付动手操作的软件实验室考试","authors":"Ahmad Sorour, A. Hamdy","doi":"10.1109/iccsm57214.2022.00012","DOIUrl":null,"url":null,"abstract":"During the recent COVID-19 outbreak, many educational institutions had to operate fully remotely and conduct examinations online. Conducting hands-on software lab exams online raises serious issues and concerns such as: 1) the heterogeneity of examinees’ personal computers, 2) the computers may not be powerful enough to run the required software for the hands-on exam, especially hardware intensive programs, 3) cheating and plagiarism are hardly controllable since examinees are using their personal computers and they can look up whatever information they need. The paper proposes a highly available and scalable software cloud architecture that utilizes modern cloud technologies, DevOps principles, and infrastructure as code tools of various categories to facilitate the construction of a highly available and scalable architectural solution that automates the delivery of software lab exams. Evaluation and results of the proposed architecture illustrate that a cloud instance that is preconfigured with all the required exam material can be instantiated and completely ready to use in an average of 149 seconds. Moreover, deploying the backend server on a Kubernetes Cluster allowed the system to automatically scale and handle sudden loads due to Kubernetes’ auto-scaling and self-healing features.","PeriodicalId":426673,"journal":{"name":"2022 6th International Conference on Computer, Software and Modeling (ICCSM)","volume":"253 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"DevOps and IaC to Automate the Delivery of Hands-On Software Lab Exams\",\"authors\":\"Ahmad Sorour, A. Hamdy\",\"doi\":\"10.1109/iccsm57214.2022.00012\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"During the recent COVID-19 outbreak, many educational institutions had to operate fully remotely and conduct examinations online. Conducting hands-on software lab exams online raises serious issues and concerns such as: 1) the heterogeneity of examinees’ personal computers, 2) the computers may not be powerful enough to run the required software for the hands-on exam, especially hardware intensive programs, 3) cheating and plagiarism are hardly controllable since examinees are using their personal computers and they can look up whatever information they need. The paper proposes a highly available and scalable software cloud architecture that utilizes modern cloud technologies, DevOps principles, and infrastructure as code tools of various categories to facilitate the construction of a highly available and scalable architectural solution that automates the delivery of software lab exams. Evaluation and results of the proposed architecture illustrate that a cloud instance that is preconfigured with all the required exam material can be instantiated and completely ready to use in an average of 149 seconds. Moreover, deploying the backend server on a Kubernetes Cluster allowed the system to automatically scale and handle sudden loads due to Kubernetes’ auto-scaling and self-healing features.\",\"PeriodicalId\":426673,\"journal\":{\"name\":\"2022 6th International Conference on Computer, Software and Modeling (ICCSM)\",\"volume\":\"253 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-07-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2022 6th International Conference on Computer, Software and Modeling (ICCSM)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/iccsm57214.2022.00012\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 6th International Conference on Computer, Software and Modeling (ICCSM)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/iccsm57214.2022.00012","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
DevOps and IaC to Automate the Delivery of Hands-On Software Lab Exams
During the recent COVID-19 outbreak, many educational institutions had to operate fully remotely and conduct examinations online. Conducting hands-on software lab exams online raises serious issues and concerns such as: 1) the heterogeneity of examinees’ personal computers, 2) the computers may not be powerful enough to run the required software for the hands-on exam, especially hardware intensive programs, 3) cheating and plagiarism are hardly controllable since examinees are using their personal computers and they can look up whatever information they need. The paper proposes a highly available and scalable software cloud architecture that utilizes modern cloud technologies, DevOps principles, and infrastructure as code tools of various categories to facilitate the construction of a highly available and scalable architectural solution that automates the delivery of software lab exams. Evaluation and results of the proposed architecture illustrate that a cloud instance that is preconfigured with all the required exam material can be instantiated and completely ready to use in an average of 149 seconds. Moreover, deploying the backend server on a Kubernetes Cluster allowed the system to automatically scale and handle sudden loads due to Kubernetes’ auto-scaling and self-healing features.