1、软件专业毕业设计结题报告软件专业毕业设计结题报告张伟班级:软件071班 2009-12-24绵 阳 职 业 技 术 学 院计 算 机 科 学 系毕业设计结题报告项目名称 在线考试系统 专业 软件工程 班 级 071班 项目组编号 001 项目组长 杨伟 设计时间 11月21日12月26日 项目经理填写成员,毕业设计成绩由教师填写:成员吴小琴、杨伟、袁宁个人成绩项目组总成绩教师签名一项目需求分析: 1、 现行业务系统描述顾客登陆:顾客通过顾客名和密码进行登录。有三个页面:管理,教师,学生管理.顾客信息管理:管理员可以增删顾客,权限管理,在此系统中只有一种管理员,即系统管理员。具备普通顾客所没有权
2、限,即具备管理普通顾客功能。管理员 进入在线考场是本系统最重要某些之一。由于一种系统如果涉及到现实话,就必要考虑得十分周到、完善。考生登录后,只要选取考试科目后来,就可以调出试卷进行在线考试。系统所选题是随机选出,这样就会使每个考生试卷都不同。考生其答题信息通过单选按钮选取答案来反映。考试结束采用自主交卷方式办法予以实现。查看人员:是用GridView完毕。查看人员信息。修改人员:管理员还可以对人员进行修改。对于对数据库数据修改,在此前asp页面中比较麻烦,要想修改一条记录,必要写很长代码。在中,几乎可以不写一行代码,就可以对数据库记录进行修改。 添加人员:管理员也许添加人员.对数据库进行添加
3、记录. 教师试题库管理:可以增长、修改、删除试题。学生在线考试:系统严格控制整个考试过程,实行时间监控与权限控制,考生需要在限定考试时间内交卷。 .计算机自动阅卷:本系统只考虑客观题,规定计算机能自动阅卷,然后立即显示出考生分数。学生/教师成绩查阅:考生考完后来,可以对自己成绩进行查询,教师也可以对自己所教那科查询学生成绩并进行修改。管理员:添加人员、维护人员、添加专业、添加班级、添加系别、修改密码教师:添加题目、维护题目、查当作绩、修改密码学生:考试开始、查看自己成绩、查看个人信息、修改个人信息修改密码2、 现行系统存在重要问题分析当前还不能实现选取题类型试题,界面不是很专业,色彩搭配不是很
4、精确。3、 解决方案继续努力,多学习,但愿在下次中能完善所不能完善。项目筹划: 1、 项目筹划起止时间11月21日12月26日2、 项目任务分派:杨伟(管理界面)、袁宁(学生界面)、吴小琴(教师界面)项目总体构造设计:1、 系统分层架构设计2、 数据库设计类型划分:l 主表:6个l 辅助表:0个标记符和商定数据库表命名是用表名英文单词命名,命名严谨易懂,编程实现简朴明了!编号格式描述阐明1administrator管理员基本信息表管理员表2student学生信息表学生表3teacher教师基本信息表教师表4Course课程基本信息表课程表5Score学生分数表学生分数表6Test试题信息表试题
5、表数据库表设计阐明书管理员表administrator字段名字段代码字段类型容许为空主键外键1管理员编号adminIdvarchar(10)NTrue2管理员密码adminpwdvarchar(10)N教师表tacher字段名字段代码字段类型容许为空主键外键1教师编号teacherIdvarchar(10)NTrue2教师密码teacherPwdvarchar(10)N3教师姓名teachernamevarchar(10)N4课程编号courseIdvarchar(20)学生表student字段名字段代码字段类型容许为空主键外键1学生编号stuIdvarchar(10)NTrue2学生密码st
6、uPwdvarchar(10)N3学生姓名stunamevarchar(10)N4学生性别stusexInt(4)5考试状态stuStatusInt(4)6当前考试stuCurrentCoursevarchar(20)课程表course字段名字段代码字段类型容许为空主键外键1课程编号courseIdvarchar(20)NTrue2课程名字coursenamevarchar(20)N3与否容许考试isTestBit(1)N试题表test字段名字段代码字段类型容许为空主键外键1试题编号testIdUniqueident(16)NTrue2试题题干testContentNvarchar(100)N
7、3选项1testAns1Varchar(50)4选项2testAns2Varchar(50)5选项3testAns3Varchar(50)6选项4testAns4Varchar(50)7对的答案rightAnsInt(4)8与否发布pubInt(4)9考试科目testCourseVarchar(20)10分数testScoreInt(4)分数表score字段名字段代码字段类型容许为空主键外键1分数编号scoreIdUniqueidentifier(16)NTrue2学生编号stuIdvarchar(15)N3课程编号courseIdVarchar(20)N4分数scoreInt(4)5课程状态
8、courseStatusInt(4)3、 系统总体安全性、可靠性方案与办法顾客登陆:顾客通过顾客名和密码进行登录。有三个页面:管理,教师,学生管理.顾客信息管理:管理员可以增删顾客,权限管理,在此系统中只有一种管理员,即系统管理员。具备普通顾客所没有权限,即具备管理普通顾客功能。管理员 进入在线考场是本系统最重要某些之一。由于一种系统如果涉及到现实话,就必要考虑得十分周到、完善。考生登录后,只要选取考试科目后来,就可以调出试卷进行在线考试。系统所选题是随机选出,这样就会使每个考生试卷都不同。考生其答题信息通过单选按钮选取答案来反映。考试结束采用自主交卷方式办法予以实现。查看人员:是用GridV
9、iew完毕。查看人员信息。修改人员:管理员还可以对人员进行修改。对于对数据库数据修改,在此前asp页面中比较麻烦,要想修改一条记录,必要写很长代码。在中,几乎可以不写一行代码,就可以对数据库记录进行修改。 添加人员:管理员也许添加人员.对数据库进行添加记录. 教师试题库管理:可以增长、修改、删除试题。学生在线考试:系统严格控制整个考试过程,实行时间监控与权限控制,考生需要在限定考试时间内交卷。 .计算机自动阅卷:本系统只考虑客观题,规定计算机能自动阅卷,然后立即显示出考生分数。学生/教师成绩查阅:考生考完后来,可以对自己成绩进行查询,教师也可以对自己所教那科查询学生成绩并进行修改。项目详细设计
10、: 1、 模块设计:包括系统类图、各用例序列图以及模块设计描述 管理员活动图:考试系统活动图:题库活动图:学生类图:2、 界面设计:界面视图登陆界面学生登陆选取考试科目界面考试界面 教师试题信息管理界面管理员管理学生信息界面教师信息管理界面科目信息维护界面3、 代码设计:代码规范以及核心模块代码描述学生考试代码如下:namespace TestOnlinepublic partial class userInfo :System.Web.UI.Pageprotected System.Web.UI.WebControls.Label lbl_name;protected void Page_L
11、oad(object sender,System.EventArgs e)if(SessionstuId=null)Response.Redirect(login.aspx);elseif(!Page.IsPostBack)BindGrid();string stuId=Convert.ToString(SessionstuId);lbl_stuId.Text=stuId;string stuName=(new projClass().getUserName(stuId);lbl_stuName.Text=stuName;DataSet ds=new DataSet();ds=(new pro
12、jClass().getCourses();foreach(DataRow row in ds.Tables0.Rows)ddl_course.Items.Add(rowcourseName.ToString();#region Web 窗体设计器生成代码override protected void OnInit(EventArgs e)InitializeComponent();base.OnInit(e);private void InitializeComponent() this.ImageButton3.Click += new System.Web.UI.ImageClickEv
13、entHandler(this.ImageButton3_Click);this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton1_Click);this.Ibtn_ok.Click += new System.Web.UI.ImageClickEventHandler(this.Ibtn_ok_Click);#endregionvoid BindGrid() string stuId=Convert.ToString(SessionstuId);DataSet ds=new Dat
14、aSet();ds=(new projClass().getStuScore(stuId);DataTable dt=ds.TablesstuInfo;DataView dv=new DataView(dt);DataGrid1.DataSource=dv;int count=dv.Count;if(count=0)lbl_noResult.Visible=true;DataGrid1.Visible=false;DataGrid1.DataBind();private void ImageButton1_Click(object sender,System.Web.UI.ImageClick
15、EventArgs e)string stuId=Convert.ToString(SessionstuId);string courseName=ddl_course.SelectedItem.Text.Trim();string courseId=(new projClass().getCourseIdAsCourseName(courseName); bool ifTest=(new projClass().getIfTest(courseId);if(ifTest)int count=(new projClass().ifCourseHasTest(stuId,courseId);if
16、(count=0)SessioncourseId=courseId;Response.Redirect(ksjm.aspx?+courseId+&+stuId);elseResponse.Write(alert(该科目您已经考试过了,不能再次考试!););else Response.Write(alert(该科目当前不能考试!请联系管理员开通考试!););private void ImageButton3_Click(object sender,System.Web.UI.ImageClickEventArgs e)SessionstuId=null;Response.Redirect(log
17、in.aspx);private void Ibtn_ok_Click(object sender,System.Web.UI.ImageClickEventArgs e)string stuId=Convert.ToString(SessionstuId);string stuPwd=tbx_oldPwd.Text;string newPwd1=tbx_newPwd1.Text;string newPwd2=tbx_newPwd2.Text;if(newPwd1=|newPwd2=)Response.Write(alert(密码不能为空););elseint count=(new projC
18、lass().getUser(stuId,stuPwd);if(count=0)Response.Write(alert(密码错误!请重新输入););elseif(!newPwd1.Equals(newPwd2)Response.Write(alert(两次密码不一致!请重新输入!););elseint count1=(new projClass().updateStuPwd(stuId,newPwd1);if(count1=1)Response.Write(alert(密码修改成功!););else Response.Write(alert(更新失败!););protected void D
19、ataGrid1_SelectedIndexChanged(object sender,System.EventArgs e)项目总结:(项目组总结,不少于字)1、 项目完毕状况1、引言编写目编写此报告目是在于对咱们们们本次实训做一种完整性总结,认真归纳和分析咱们们们本次实训成功与局限性地方,争取在后来实训与学习中,能做得更好!此外,咱们们们这样也给实训教师和领导交一份满意答卷!背景a. 本项目名称:在线考试系统b. 项目委托:绵阳职业技术学院 .NETc. 交付软件名称、英文缩略词和版本号 :在线考试系统(TOL) 2.0d. 软件产品开发者:吴小琴、杨伟、袁宁e. 软件产品顾客:暂无参照资
20、料文献名称文献刊登者刊登时间需求规格阐明书吴小琴、袁宁.11.23界面设计杨伟.12.15数据库设计吴小琴、袁宁.12.22. 实际开发成果软件产品描述a. 版本标记:2.0b. 软件模块清单序号子系统名称模块名称代码大小(行)1管理员管理系统登录1602信息修改2303管理顾客17804教师管理管理试题9805系统登录12066学生登陆考试12007信息管理782c. 文档清单序号文档名称与否需提交给顾客1需求规格阐明书是2界面设计是3数据库设计是d 当前已有缺陷由于本次项目时间不是很充分,又在上班,界面设计上不是很美观,也不是很专业,功能上也不是很完善,在后来咱们们一定会更加努力做好。重要
21、功能和性能在本次综合实训中,咱们们们做项目是:在线考试系统。重要达到功有:系统管理员登录后,能对教师和学生信息进行修改、增长、删除;教师登录后,能进行对学生考试成绩进行查看;对试题进行修改;学生登陆后,可以进行选取科目进行考试在性能方面,咱们们们做界面大方、美观,在时间相应上能达到1s内。但和开发目的相比,还欠缺了些,例如说:有些小功能还是没有实现,尚有些小缺陷!进度阶段筹划工作日实际工作日对比因素开发筹划22准时完毕需求分析22准时完毕架构设计66准时完毕编码1515准时完毕测试33准时完毕3开发工作评价3.1 对项目开发过程评价在需求和设计阶段,项目需求规格阐明书、设计文档等都准时提交了,
22、总体设计都还不错,但在数据库设计中,由于参加人手局限性,导致分析有一点小缺陷;在编码时,总编码还比较顺利,但有些小连接还是有点失误! 3.2 对技术办法评价在本次项目开发过程中,重要用到了如下软件:VS,SQLServer这些开发工具都是现当前流行工具,因此,对顾客使用也是比较以便!3.3 对产品质量评价在本次项目开发过程中,咱们们们以为本次质量只达到了中档质量,由于只实现了大某些简朴功能操作,某些小功能和需求还存在某些简朴缺陷!存在这些缺陷重要因素重要是:时间不充分,导致有一定压力,并且学识水平也不时很高,这导致了开发过程存在一定难度!4. 试运营工作评价在项目试运营中,大某些功能实现了,并
23、达到没缺陷。但在某些小系统上存在某些小缺陷,和有些小系统并发进程存在某些小缺陷!5. 技术积累总结在本次项目开发过程中,咱们们学会了在需求和设计方面用到使用工具,以及在编码时,学会了如何添加类库,并引用它!同步,咱们们们也学会了编码语法规范!6. 经验和教训在本次项目开发过程中,咱们们只有一种月时间,虽然时间很短,但很充分。但在编码过程中,也遇到了不少麻烦,例如:有些代码很难想到,但通过咱们们向同窗请教,最后也完毕了,其中,由于在数据库方面设计存在某些小缺陷,这使咱们们们在开发过程中也遇到了困难!最后,通过这次实训,咱们们也会更加努力,争取在软件行业有所作为!2、 项目重点和难点分析在整个项目
24、中,重点问题重要是从试题库里抽取试题和学生交卷后分数显示。是依照试题ID号来获取试题信息,将抽取50道选取题所有显示在GridView中。学生交卷后,系统会依照学生答案和试题库中答案进行比较,然后对学生进行打分。项目构成员填写表格系计算机科学系专 业软件工程班 级071班学 号0701731姓 名杨伟、吴小琴、袁宁项目负责人杨伟项目名称在线考试系统任务描述杨伟(管理界面)、袁宁(学生界面)、吴小琴(教师界面)实行环节构思分析数据库界面代码测试文档任务创新点没有设计总结在本次毕业设计中,咱们们运用理论知识与实际相结合,并认真阅读教师给毕业设计选题,但还是有诸多功能没有实现。例如:此系统试题只有选
25、取题,没有完毕教师任务,判断题。在前期工作中,遇到了诸多问题,例如:不懂得从什么地方去做,也不懂得详细该怎么做。在看了诸多书后,这才下定决心做。前期构思,要把系统做得既实用又简朴是咱们们一开始思想。咱们们接下来就开始分析系统改如何进行下去,在这做了一种时间规划,如下表:阶段筹划工作日实际工作日对比开发筹划22准时完毕需求分析22准时完毕架构设计66准时完毕编码1515准时完毕测试33准时完毕在数据库设计阶段遇到诸多问题,开始思考究竟应当做几种表格才干将系统数据概括完全,最后在咱们们仔细思考后,得出了6个表,分别是:管理员表、学生信息表、教师信息表、试题表、分数表、课程表。各个表数据如下:管理员
26、表adminId adminPwd吴小琴 123学生信息表stuIdstuPwdstuNamestuSexstuStatusstuCurrentCourse0701731 123吴小琴 1 0 教师信息表teacherIdteacherPwdteacherNamecourseIdcjg 123 陈建国 sjjgdym 123 戴英明javacxsjlj 123 李焦 rjcswls 123 王教师 dxyyyam 123 袁爱民 aspzlm 123 赵丽梅 czxt在界面设计阶段,在网上下载了某些关于本系统某些图片,在设计过程中对其进行了合理运用。在编码阶段,从简朴到复杂,开始编写某些简朴代码,然后不懂看看书或上网查查或向同窗请教。最后完毕了一种简朴在线考试系统,这次做得不够完善。下来咱们们还会继续努力改进,让在线考试系统很完善,可以考各种题。项目进度报告项目名称:在线考试系统 负责人:吴小琴 日期成员姓名任务描述所属模块完毕状况态度备注(组长评语)11月21日12月26日杨伟、吴小琴、袁宁杨 伟袁 宁吴小琴管理界面学生界面教师界面大某些完毕较好较认真 答辨意见教师评语教师签名: 年 月 日