195_考试题库管理系统
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
3 考试题库管理系统分析和设计
3.1 系统模块设计
基于本系统的功能要求,在做系统设计时制定如下的系统模块结构图,如图2。 【www.think58.com计算机毕业论文网】 think58.com [版权所有:http://think58.com]
3.2 用户登录模块
在进入系统时,需要输入用户名和密码,通过用户名和密码识别用户身份:系统管理员、教务科、系或教师。不同的角色进入系统后可以操作该用户权限范围内的功能。如果该用户已被管理员冻结,或者输入的用户错误,则提示登录错误。如果输入的用户根本不存在,系统则提示非法登录,该用户不存在。管理员登录成功,具有管理用户和功能模块管理权限。
3.3 管理模块
管理模块主要是用户管理和试题管理。用户管理是系统管理员成功登录以后,可以对所有用户进行修改和删除处理,包括对用户权限的分配等。管理员可以添加系,在系里再添加属于该系的教师;可以对试题的录入、试题的输出、专业的分类管理、课程的分类管理、权限的分配进行操作。
试题管理主要则是教务科、系、教师对其的管理。教师可以对试题进行添加、修改、删除。但根据系统功能分析,教师添加试题后,如需要对该试题进行修改、删除或其他的操作,需提交审批申请,由教务科和系对其提交的审批审查过后才可以进行下一步的操作。教师本次提交审批申请,并完成修改或删除操作后,才可以进行下次的申请操作。
3.4 自动组卷模块
自动组卷模块主要是教师成功登录后,可对自己所负责的课程进行添加试题,在添加试题过程中,教师还可添加试卷中所涉及到的题型,设置某种题型的数量、分值,然后生成试卷。教师录入试题之前先要确定系统中是否有自己所带课程的名称,然后确定自己预先计划好的题型系统中是否存在,如果没有的话教师可以自行添加,录入时根据自己所带课程和题型录入。已经录入的试题要修改或者删除,必须提交申请,由教务科或系审批通过才可以进行下一步的操作[3]。 copyright think58
3.5 审批模块
审批模块主要是对教师修改和删除试题申请的审批。为了确保教师录入的试题安全性和正确性,教师在一次录入试题后,要修改试题,就必须先提交申请,由教务科和系对教师提交的申请进行审批,在审批通过之后才可以对试题进行修改。审批通过之后,如果教师还没有对此题进行操作,就不可以继续对此题进行申请审批,不可以重复操作,以免增加不必要的工作量。
3.6 重新登录
用户本次对该系统操作完成后可重新登录来退出系统。如需要联系我们,则可以在页面上点“联系我们”,进入学院首页。
4 考试题库管理系统数据库设计
数据库设计在管理信息系统开发中是至关重要的一个方面,其设计的好坏直接影响系统的执行效率以及日后的维护,还应考虑到必须具备良好的扩展性要求。数据库服务器端采用的是大型商业数据库系统(SQL Server 2000),这有利于提高大批量数据的吞吐时间,使整个系统管理规范化,数据的完整性、安全性得到保障[4]。根据前面系统功能模块的设计,数据库主要涉及的表有用户表、角色表、课程表、院系单位表、试题表和审批表。主要的表以及表中的主要字段的具体设计如下。
4.1 用户表
该表用于存放用户及用户登录所需信息,具体设计和主要字段如表1。 [来源:http://www.think58.com]
字段名 数据类型 字段长度 是否为空 说明
TeacherId varchar 10 否 用户编号字段
TeacherName varchar 50 否 用户名称
LoginName varchar 50 否 账号名称
LoginPwd varchar 100 否 登录密码
4.2 角色表
该表用于存放用户角色信息,具体设计和主要字段如表2。 think58好,好think58 [资料来源:THINK58.com]
字段名 数据类型 字段长度 是否为空 说明
RoleId varchar 10 否 角色编号字段
RoleName varchar 50 否 角色名称
RoleFlag varchar 100 是 角色描述
4.3 课程表
该表用于存放课程信息,具体设计和主要字段如表3。
字段名 数据类型 字段长度 是否为空 说明
ExamQuestionTypeID varchar 10 否 课程编号字段
ExamQuestionTypeName varchar 50 是 课程名称
4.4 单位表
该表用于存放院系单位信息,具体设计和主要字段如表4。
think58好,好think58
[资料来源:www.THINK58.com]
字段名 数据类型 字段长度 是否为空 说明
DicID varchar 30 是 单位编号字段
DicName varchar 100 是 单位名称
DicTypeID varchar 10 是 单位类型
4.5 试题表
该表用于存放试题信息及试题内容等信息,具体设计和主要字段如表5。
内容来自think58 [资料来源:http://www.THINK58.com]
本文来自think58
[来源:http://www.think58.com]
copyright think58
字段名 数据类型 字段长度 是否为空 说明
ExamQuesID varchar 10 否 试题编号字段
ExamQuestionTypeID varchar 10 否 试题类型字段
QuesTypeID varchar 10 否 题型字段
Question varchar 2000 是 试题内容
4.6 审批表
该表用于存放审批信息,具体设计和主要字段如表6。
think58
[资料来源:http://THINK58.com]
[资料来源:http://think58.com]
字段名 数据类型 字段长度 是否为空 说明
ID varchar 10 否 申请改动的试题编号字段
ZT varchar 1 否 是否被审核1被审核0未被审核
5 系统详细设计
5.1 系统首页面
登录界面相对来说比较简单,用户输入用户名和密码之后系统会判断他是那种角色,然后进去后该角色只能操作管理员分配给他的功能。用户名和密码是系统分配好的,为了保证题库内信息的安全性,所以系统不允许注册,如图3。
think58.com
[来源:http://think58.com]
[资料来源:http://www.THINK58.com]think58好,好think58
[来源:http://think58.com]
think58.com
think58 [资料来源:http://think58.com]
think58.com [资料来源:http://THINK58.com]
如果登录密码有误、登录账号被冻结,系统会提示相应的对话框提示错误。实现这部分功能的代码如下:
private void btLogin_Click()
{
string userid = null;
bool isFreezed = true;
switch(this.ddUserType.SelectedValue)
{
case "Teacher":
{
#region 检测教师用户
if (BLL.Teacher.LoginNameExists(this.txtUserName.Value.Replace("'","")))
{
BLL.Teacher.ValidateLogin(this.txtUserName.Value.Replace("'",""), this.txtPassword.Value,ref userid,ref isFreezed);
if (userid != null)
{
if (isFreezed == false)
{
base.WriteLog(userid,BLL.SysManage_Func.GetMaxId(), "1", "教师用户登录", "1");
base.Session["UserID"] = userid;
base.Session["UserType"] = "Teacher";
Model.Teacher userinfo = BLL.Teacher.GetModel(userid);
userinfo.LastLoginDate = System.DateTime.Today.ToShortDateString();BLL.Teacher.Update(userinfo);Session["UserName"] = userinfo.TeacherName;Response.Redirect("default.aspx");
[来源:http://think58.com]
}
else
{
base.ShowMessage("对不起,该用户已被冻结!\\n如果有任何疑问,请联系管理员!");
}
}
else
{
base.ShowMessage("密码错误!\\n请不要尝试非法登录!");
}
}
else
{
base.ShowMessage("该帐号不存在!\\n请重新登录!");
}
#endregion
break;
}
think58 [资料来源:THINK58.com]
[来源:http://think58.com]