1、需求分析,小组成员:孙滨,赵壮壮,王野,罗安,可行性研究,问题定义:当前高校中的理工类专业基本上都设置了实验类课程,相对于传统课程,实验课程的学生出席情况教师不好掌握。基于此开发一款课程点名签到系统。技术可行性:可通过C+、java等程序世纪语言来实现这个系统。初步构想基本的数据结构为结构体数组,用线性表完成。操作可行性:可设一台主机为终端机,教师为系统管理员,对学生出席情况作录入和监督,数据流图,教师,录入出席信息,处理学生信息,出席信息,学生出席信息,未正常上课人数,出席信息,未正常上课人名,产生出席情况表,未出席名单,教师,需求分析,1、功能需求: 通过教师录入学生出席情况来反馈出席情况
2、;2、可靠性可用性需求:已记录的学生出席情况需长期记录以便在学期结束时供教师打分做参考;3、接口需求 教师通过选择来确认每个学生的出席状况;,总体设计,签到系统H图,学生点名签到系统,输入,选择,统计,输出列表,课程,课名,班级,学号,上课,未上课,按时,未上课,请假,未请假,迟到,早退,事假,病假,未按时上课人数,旷课人数,请假人数,旷课次数超3次者,未按时上课次数超过5次者,ER图 关系模式,课名,课号,实验课程,学习,班级,学号,ISA,学生,未上课学生,上课学生,未出席原因,出席情况,实验课程(课号,课名),学习(课号,学号),学生(学号,班级),上课学生(学号 CASCADE,出席情
3、况),未上课情况(学号 CSACADE,未出席原因),选择模块程序流程图,开始,出席,T,F,上课,未上课,请假,F,T,旷课,请假,病假,T,F,病假,事假,结束,正常上课,迟到,正常上课,早退,T,F,迟到,T,F,输入学号,学号存在,F,T,实现,白盒黑盒测试,白盒测试,Scanf(输入学号);While(学号存在)If(去上课) if(按时上课) printf(按时上课); else if(迟到) printf(迟到); else printf(早退); ,13.Else14. if(未请假)15. printf(旷课);16. else17. if(事假)18. printf(已请事
4、假)19. else20. printf(已请病假);21. 22. 23.24.end,白盒测试-流图,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,1,2,白盒测试,流图环形复杂度为6,有6条独立路径路径1:1-2-3-4-5-12-23-1.路径2:1-2-3-4-6-7-8-11-12-23-1.路径3:1-2-3-4-6-7-9-10-11-12-23-1.路径4:1-2-3-13-14-15-22-23-1.路径5:1-2-3-13-16-17-18-21-22-23-1.路径6:1-2-3-13-14-16-17-19-20-21-22-23-1.,白盒测试-测试用例,路径1的测试用例:value=正常上课预期结果:输出按时上课路径2的测试用例:value=迟到预期结果:输出迟到路径3的测试用例:value=早退预期结果:输出早退,白盒测试-测试用例,路径4的测试用例:value=未上课-未请假预期结果:旷课路径5的测试用例:value=未上课-事假预期结果:已请事假路径6的测试用例:value=未上课-病假预期结果:已请病假,黑盒测试,