Font Size: a A A

The Design And Implementation Of Jenkins-Based Examination And Assignment Management Subsystem Of Software Engineering Education Cloud Platform

Posted on:2020-01-18Degree:MasterType:Thesis
Country:ChinaCandidate:S F LeiFull Text:PDF
GTID:2428330575955040Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of the information technology industry,technologies and concepts such as software development language,tools,and software engineering development processes are constantly being updated.Correspondingly,the software engineering teaching of colleges and universities should also closely follow the devel-opment trend of the industry.Teachers not only need to abandon outdated technology,introduce new technologies but also need to improve students' practical ability and en-courage them to learn independently.This certainly puts higher demands on teaching tools,especially an education support website.The Software Engineering Education Cloud(SEEC)platform is designed and implemented for this purpose.The platform is designed for teachers and students of software colleges,including functions such as course management,topic management,examination and assignment management,document review and continuous integration.In this platform,students complete assignments in groups.The platform allows students using common Git commands to pull and push code.Once the code of a project is submitted,it will be verified by an automated build and test,a docker image of the project is built if the build succeeds.Students can deploy the image to the system's deployment space,and access the deployed project via a URL generated by the system if the deploy succeeds.The console output of the build is also available to students.SEEC platform uses some services to make things easier.The GitLab is used to maintain the student's code repository,The Jenkins is used for continuous integration,and the students',projects are built as Docker images and uploaded to Docker Nexus and deployed in the Kubernetes cluster.The main job of the assignment module is to schedule these services and combine its own logic to implement a series of functions.The front-end and back-end are separated in this system.The front-end is developed using Vue.js framework,and the back-end is developed using Spring Boot,combined with Spring Security for authentication and access-control,also the CRUD Repository of Spring Data for data persistence.The main job of this paper is the design and implementation of the examina-tion and assignment management subsystem under SEEC platform,the subsystem is composed of 4 modules,which are:assignment creation module,assigning resources to groups while the teacher creates an assignment;assignment maintenance module,computing the points of student's assignment and clear resources that are useless when an assignment is outdated;online examination module,allowing students to take online exams,which means programming,running and testing all through a Web IDE;group management module,helping students create or join a group.Up to now,the platform has been online for over a year.While running smoothly,it has been used in many courses,and has greatly improved the teaching efficiency of software engineering and won the praise of lots of teachers and students.
Keywords/Search Tags:Software Engineering Education, GitLab, Jenkins, Docker
PDF Full Text Request
Related items