开发一个在线考试系统
1. 软件开发的流程
需求分析文档、概要设计文档、详细设计文档、编码和测试、安装和调试、维护和升级
2. 软件的需求分析
在线考试系统的主要功能分析如下:
<1> 学员系统
用户模块: 登录、修改密码、退出
考试模块:开始考试、查询成绩、导出成绩(选)
<2> 管理员系统
学员管理模块:增加学员、删除学员、修改学员、查找学员
考题管理模块:增加考题、删除考题、修改考题、查找考题、导入考题(选)
3. 软件的概要设计
在线考试系统采用C(Client客户端) / S(Server服务器)架构进行设计,具体如下:
客户端(Client)- 主要用于提供字符界面,供用户选择并将处理结果显示出来
服务器(Server)- 主要用于针对字符界面的选择,实现真正业务功能的处理
数据库(Database)- 主要用于进行数据的存取
4.软件的详细设计
<1>客户端和服务器之间采用基于tcp协议的编程模型进行通信
客户端的对象输出流,连接服务器的对象输入流
服务器的对象输出流,连接客户端的对象输入流
<2>客户端采用消息的类型,作为具体业务的代表,伴随着账户信息等一并发送给服务器
当客户端发来的消息类型为"managerCheck"时,则表示要实现管理员账户信息的校验功能
当客户端发来的消息类型为"userCheck"时,则表示要实现学员账户信息的校验功能
<3>服务器采用消息的类型,作为是否校验成功的标志发送给客户端
当客户端收到的消息类型为"success"时,则表示账户信息正确
当客户端收到的消息类型为"fail"时,则表示账户信息错误
5. 软件的编码流程
<1>管理员登录功能
<2>学员管理系统的功能