摘要 | 第4-5页 |
Abstract | 第5页 |
Chapter 1 Introduction | 第9-23页 |
1.1 Background | 第9-10页 |
1.1.1 Multi file program analysis | 第9-10页 |
1.1.2 Flexible grading | 第10页 |
1.2 Related works | 第10-21页 |
1.2.1 History about automatic grading system development | 第11-12页 |
1.2.2 Current research issues in automatic grading system | 第12-15页 |
1.2.3 Code analysis | 第15-18页 |
1.2.4 Existing similar program comparison analysis key features | 第18-20页 |
1.2.5 Program tree representation | 第20页 |
1.2.6 Program matching | 第20-21页 |
1.3 Problem statements | 第21页 |
1.4 Motivation | 第21-22页 |
1.5 Main content and organization of the thesis | 第22-23页 |
Chapter 2 System overview | 第23-26页 |
2.1 Architecture | 第23-24页 |
2.2 Deployment platform | 第24-25页 |
2.3 Main features | 第25页 |
2.4 Summary | 第25-26页 |
Chapter 3 Key issues and solution | 第26-51页 |
3.1 Multi file program analysis | 第26-32页 |
3.1.1 File model | 第26-28页 |
3.1.2 Multi file program linker in dynamic grading | 第28-29页 |
3.1.3 Multi file program linker in static grading | 第29-30页 |
3.1.4 Multi file program linker-fusion algorithm | 第30-32页 |
3.2 Grading preparation | 第32-33页 |
3.3 Dynamic grading | 第33-39页 |
3.3.1 Dynamic grading model | 第33-34页 |
3.3.2 Dynamic grading flow process | 第34-36页 |
3.3.3 Program run with test cases algorithm | 第36-38页 |
3.3.4 Scoring objective | 第38-39页 |
3.4 Static grading | 第39-50页 |
3.4.1 Program standardization with AST data mapper | 第41-44页 |
3.4.2 Refactoring standardization using AST data mapper algorithm | 第44-46页 |
3.4.3 Program matching with AST simple tree matching model | 第46-48页 |
3.4.4 AST simple tree matching with tag classifier algorithm | 第48-49页 |
3.4.5 Scoring objective | 第49-50页 |
3.5 Summary | 第50-51页 |
Chapter 4 Implementation | 第51-89页 |
4.1 Application environment | 第51-52页 |
4.2 User interaction | 第52-65页 |
4.2.1 Administrator | 第53-59页 |
4.2.2 Lecturer (Entity) | 第59-61页 |
4.2.3 Student | 第61-65页 |
4.3 Programming assignment creation | 第65-70页 |
4.3.1 Course assignment registration form | 第66-68页 |
4.3.2 Course file assignment material | 第68-70页 |
4.4 Data file storing | 第70-75页 |
4.5 Dynamic grading assessment | 第75-80页 |
4.5.1 Feedback of successful passing all test cases | 第77-78页 |
4.5.2 Feedback of failed compilation by syntax error | 第78页 |
4.5.3 Feedback of failed compilation by infinite loop case | 第78-79页 |
4.5.4 Feedback of successful passing partial test cases | 第79-80页 |
4.6 Static grading assessment | 第80-88页 |
4.6.1 Feedback of AST program traversing log by ASTVisitor | 第82-83页 |
4.6.2 Feedback of program standardization | 第83-84页 |
4.6.3 Feedback of transform structure comparison graph | 第84-85页 |
4.6.4 Feedback of program AST visualization (experimental) | 第85-86页 |
4.6.5 Feedback of program AST data mapper | 第86-87页 |
4.6.6 Feedback of program matching with AST simple tree matching | 第87-88页 |
4.7 Summary | 第88-89页 |
Chapter 5 Testing and results | 第89-99页 |
5.1 Dynamic grading | 第89-90页 |
5.2 Static grading | 第90-95页 |
5.2.1 General test with several assignments (black-box) | 第90-92页 |
5.2.2 Reliability and grading precision testing | 第92-95页 |
5.3 Case study 2018 similar program comparison analysis | 第95-98页 |
5.4 Summary | 第98-99页 |
Conclusions | 第99-100页 |
结论 | 第100-101页 |
References | 第101-106页 |
Paper published in the period of Ms. education | 第106-108页 |
Acknowledgement | 第108-109页 |
Resume | 第109-111页 |