Presentation is loading. Please wait.

Presentation is loading. Please wait.

赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30 高级程序设计语言教学辅助系统 赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30.

Similar presentations


Presentation on theme: "赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30 高级程序设计语言教学辅助系统 赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30."— Presentation transcript:

1 赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30
高级程序设计语言教学辅助系统 赵长海 北京航空航天大学 软件所

2 内容 系统开发历史与动机 功能概述 北航的应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

3 系统开发历史与动机 动机与面临的问题 开发历史 批改试卷任务繁重 难以验证学生程序的正确性 学生抄袭严重 2004年初-2005年初
2006年

4 内容 系统开发历史与动机 功能概述 北航的应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

5 功能概述 程序自动评分 抄袭检测 学生提交源程序,系统自动评判程序的正确性,并打分
当学生提交源程序时,系统自动与已提交的程序进行相似性的比较。 能够检查的抄袭手段:修改注释、重新排版、标识符重命名、代码块重排序、常量替换、改变表达式中的操作符或者操作数顺序、增加冗余的语句或者变量、表达式拆分、控制结构替换。

6 功能概述 学生教师帐户管理 课程信息管理 网上答疑
提供课程简介、先导课程、课程安排、课件下载、教师简介、重要事项通知、教材及参考书等课程信息 网上答疑 提供网上答疑功能,使得学生在遇到问题时能随时随地提出问题、并使问题能得到及时响应和解决

7 功能概述 网上作业管理 学生能够从网上获取作业,并可通过网络提交已完成的作业,同时学生还可即时查看作业评判结果
此外,还提供限时功能,即学生可被要求在规定时间内完成规定量的作业 该功能还可提供学生上机程序作业的相似性比较,以督促学生自主完成上机作业

8 功能概述 网上考试管理 在规定的时间内,学生能够从网上获取试题,通过网络提交已完成的上机操作试题,并能自动进行阅卷
包括自动组卷和手工组卷,考试时通过抽题规则(依据考场安排)进行自动分派试卷

9 内容 系统开发历史与动机 功能概述 北航的应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

10 北航应用情况 程序设计语言课程 研究生复试 非程序设计课程 平时作业、期中期末考试 编程能力测试 在线作业、网上答疑、信息发布等 效果:
1.提高编程能力,程序调试能力 2.减轻教师工作量

11 内容 系统开发历史与动机 功能概述 北航的应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

12 系统架构 进程池(Process Pool) Web容器(Web Container) 缓存(Cache)
程序自动评判模块以进程池的方式存在,进程池的进程数目可以动态调整, 进程池可以部署在几台不同的机器上。 进程池中进程的负载平衡依赖于Load Balancer Web容器(Web Container) 使用开源的Apache Tomcat服务器,基于J2EE的多层架构,如图所示: 缓存(Cache) 自主研发的轻量级缓存组件,减少访问数据库的频率,从而加快相应用户请求的速度,提升系统性能

13 内容 系统开发历史与动机 功能概述 北航应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

14 功能演示—学生端 登录

15 功能演示—学生端 首页

16 功能演示—学生端 课程信息

17 功能演示—学生端 作业 简答题

18 功能演示—学生端 作业 编程题

19 功能演示—学生端 作业 编程题

20 功能演示—学生端 在线答疑

21 功能演示—学生端 在线考试

22 内容 系统开发历史与动机 功能概述 北航应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

23 功能演示—管理端 登录

24 功能演示—管理端 系统管理— 系统公告

25 功能演示—管理端 系统管理— 系统公告

26 功能演示—管理端 系统管理— 管理人员帐号

27 功能演示—管理端 系统管理— 管理人员帐号

28 功能演示—管理端 系统管理— 课程设置

29 功能演示—管理端 系统管理— 课程设置

30 功能演示—管理端 系统管理— 系统设置

31 功能演示—管理端 系统管理— 论坛设置

32 功能演示—管理端 系统管理— 答疑论坛

33 功能演示—管理端 系统管理— 答疑论坛

34 功能演示—管理端 课程管理— 课程公告

35 功能演示—管理端 课程管理— 课程公告

36 功能演示—管理端 课程管理— 课程信息

37 功能演示—管理端 课程管理— 学生管理

38 功能演示—管理端 课程管理— 学生管理

39 功能演示—管理端 课程管理— 学生管理

40 功能演示—管理端 课程管理— 作业管理

41 功能演示—管理端 课程管理— 作业管理—录入编程作业

42 功能演示—管理端 课程管理— 作业管理—测试点

43 功能演示—管理端 课程管理— 作业管理—作业题目

44 功能演示—管理端 课程管理— 作业管理—知识点

45 功能演示—管理端 课程管理— 作业管理—布置作业

46 功能演示—管理端 课程管理— 作业管理—布置作业

47 功能演示—管理端 课程管理— 作业管理—布置作业

48 功能演示—管理端 课程管理— 作业管理—作业概览

49 功能演示—管理端 课程管理— 作业管理—作业成绩

50 功能演示—管理端 课程管理— 作业管理—作业成绩

51 功能演示—管理端 课程管理— 作业管理—作业成绩

52 功能演示—管理端 课程管理— 作业管理—相似性比较

53 功能演示—管理端 课程管理— 考试管理—手工组卷

54 功能演示—管理端 课程管理— 考试管理—手工组卷

55 功能演示—管理端 课程管理— 考试管理—自动组卷

56 功能演示—管理端 课程管理— 考试管理—自动组卷

57 功能演示—管理端 课程管理— 考试管理—自动组卷

58 功能演示—管理端 课程管理— 考试管理—试卷概览

59 功能演示—管理端 课程管理— 考试管理—考试启动

60 功能演示—管理端 课程管理— 考试管理—考试启动

61 功能演示—管理端 课程管理— 考试管理—考试启动

62 功能演示—管理端 课程管理— 考试管理—成绩分析

63 功能演示—管理端 课程管理— 考试管理—成绩分析

64 功能演示—管理端 课程管理— 设置

65 功能演示—管理端 课程管理— 栏目定制

66 内容 系统开发历史与动机 功能概述 北航应用情况 系统架构 功能演示 学生端功能演示 管理端功能演示 开发技术与运行环境

67 开发技术 JSP + C C语言实现程序的自动评分

68 运行环境 软件环境 硬件环境(承载1000用户) P4 2.0G以上,1G RAM 80G HD 操作系统
Redhat Linux、 Suse Linux等Linux操作系统 数据库 MySQL4.0以上 应用服务器 Tomcat 编译器 GCC3.2以上 硬件环境(承载1000用户) P4 2.0G以上,1G RAM 80G HD

69 其他 目前程序自动评判方法的局限 黑盒测试,只验证程序的正确性。非功能属性(可读性、可维护性、效率)?
只能测试完整可编译的程序,程序片段怎么评判?

70 其他 改进 片段代码的评判 程序非功能属性评判 代码风格度量 MaCabe、Halstead复杂度度量 程序效率度量:运行时间、占用内存空间
代码静态检查:内存泄漏、变量未初始化等潜在的错误 代码的特征检查:例如代码中是否使用了While循环?

71 系统的结构性问题 结构性问题 模块化,插件化


Download ppt "赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30 高级程序设计语言教学辅助系统 赵长海 zhaochanghai@gmail.com 北京航空航天大学 软件所 2007-10-30."

Similar presentations


Ads by Google