- 1、本文档共98页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
--
-
在线测试系统的开发
一:项目概述
这是一个某培训机构为保证教学质量, 本着为学员负责的态度, 在学生参加培训之前对学生进行测试,然后教师面试,根据结果给学生合理的培训建议。
所以这个业务的基本流程就是, 学生入学前先注册, 然后进行入学测试, 然后教师面试。
实际上,考试系统应该是一个最常见的信息管理系统。
二:项目的需求分析
首先我们要搞清楚这个系统的用户,学生,教师,和管理员。然后逐一的分析
(1) 学生要进行的业务
入学前的注册;
登陆系统
选择考试科目
考试
提交成绩
得到考试结果
2) 教师要进行的业务登录系统
出试卷
出试题
修改试题
查看考试成绩
(3) 管理员要进行的业务
查询学生密码
管理帐号
课程信息管理
查看考试成绩
管理题库
在大型项目开发过程中, 需求分析的过程是一个非常详细, 非常需要沟通的过程, 做为
软件的设计者, 或者作为项目经理, 需要充分的接触客户,了解该系统的用户的需求, 了解各种用户类型的实际需求, 把软件的用户分类等等, 根据系统要达成的目标, 尽可能的详细,尽可能的周到,充分的需求。或者应该说,需求分析的好坏,就是一个系统成败的基础,没有好的需求分析,即便是太再先进,再好的技术,也不能达成系统目标。
三:系统的数据库设计
根据上面的需求分析,按照面向对象的设计思想,我们应该从中剥离出我们对象来,学生对象
管理员对象
教师对象
试卷对象
题库对象
课程对象
测试结果对象
对于每一个对象,我们一一分析它在整个系统中所需要设计的属性
1) 学生对象编号
姓名
身份证号
密码
性别
出生日期
联系电话
e-mail 地址
户口所在地
通信地址
邮政编码
毕业学校
专业
最高学历
英文水平
工作年限
是否需要实习
是否需要推荐工作
参加培训的目标和期望
信息来源
填表日期
2) 教师对象姓名
帐号名
密码
权限
3) 管理员对象姓名
帐号名
密码
权限
4) 试题库对象试题编号
试题类型(单选,多选)课程编号
题目
选项一
选项二
选项三
选项四
答案
(5) 考试结果对象
考试结果编号
学生学号
考试科目
考试时间
班级编号
参加面试教师登录名
面试分数
面试结果
面试老师建议
是否报名
报名班级
(6) 试卷对象
试卷编号
题目编号
试卷类型
( 7)课程对象
课程名称
考试时间
考题数目
试卷数目
根据这样的一个抽象的过程, 我们的数据设计就简单了, 实际上, 如果掌握了面向对象的
设计思想,你会发现数据库的表字段和我们对象的属性存在着太多太多的联系。
当然,是不是要一个对象对应一个数据库表,要根据具体的项目,具体的分析,一方面
要考虑到数据表的大小, 另一方面要考虑到项目本身的实际需要, 实际上, 这没有固定的答
案,是一个经验优化的过程。
在这个项目里,我们设计出来六张数据表,分别是:
名字 类型 说明
Test_studentinfo 表 学生基本情况表
Test_admin 表 管理员表教师表
Test_result 表 考试结果表
Test_classinfo 表 课程信息表
Test_question_lib 表 题库表
Test_paper_lib 表 试卷表
Test_paper_info 视图 试卷视图
Test_result_info 视图 考试结果视图
有了表的大概设计以后,按照软件工程的要求,应该设计数据字典
所谓数据字典
就是根据表的内容确定表的各个字段的名字和数据类型
1:学生表 (student)
字段含义
字段变量
学生编号
studentid
姓名
name
身份证号码
certid
密码
password
性别
gender
出生日期
birth
联系电话
phone
email
地址
email
籍贯
hometown
户口所在地
hukou
通信地址
txdz
邮政编码
yzbm
毕业学校
school
专业
major
毕业时间
g_time
最高学历
degree
英语水平
english
工作年限
Work_year
是否需要实习
shixi
是否需要推荐工作
tjgz
参加培训目的和期望
goal
信息来源
source
填表日期
regtime
对应的 SQL语句为:
create table test_studentinfo(
/*
个人信息 */
studentid numeric(6,0) primary key,/*
name
varchar(8),
/*
certid
varchar(18),
/*
password varchar(20),
/*
gender
varchar(2),
/*
birth
datetime,
/*
phone
varchar(60),
/*
email
varchar(40),
文档评论(0)