《软件工程学生选课系统详细设计说明书》由会员分享,可在线阅读,更多相关《软件工程学生选课系统详细设计说明书(13页珍藏版)》请在金锄头文库上搜索。
1、 软 件 工 程 学 生 选 课 系 统 详 细 设 计说 明 书 ( 共 1 2 页 ) -本页仅作为预览文档封面,使用时请删除本页- 2 1 引言 . 错误!未定义书签。 编写目的. 错误!未定义书签。 背景 . 错误!未定义书签。 定义 . 错误!未定义书签。 参考资料. 错误!未定义书签。 2 程序系统的结构 . 错误!未定义书签。 3 程序 1(标识符)设计说明 . 错误!未定义书签。 功能 . 错误!未定义书签。 性能 . 错误!未定义书签。 输人项 . 错误!未定义书签。 输出项 . 错误!未定义书签。 算法 . 错误!未定义书签。 流程逻辑. 错误!未定义书签。 接口 . 错误
2、!未定义书签。 存储分配. 错误!未定义书签。 注释设计. 错误!未定义书签。 限制条件. 错误!未定义书签。 测试计划. 错误!未定义书签。 尚未解决的问题 . 错误!未定义书签。 3 详细设计说明书 1 引言 编写目的 该详细设计说明书的目的在于根据需求说明书与概要设计说明书提出该系统的详细设计,即系统的详细架构,主要包括系统的模块划分、程序系统的结构、各个模块的流程以及各层次中每个程序的设计考虑。用户群体为需要选课的学生。 背景 软件系统名称:学生选课系统 软件实现计算机:LENOVO 任务提出者:黄素红 开发者:黄素红 用户:在校大学生 定义 (1)Active Server Page
3、s (ASP) 是服务器端脚本编写环境,是由Server 端脚本、对象及 组件拓展过的标准主页使用它可以创建和运行动态、交互的Web 页和基于Web 的功能强大的应用程序。ASP 程序是由文本、HTML 标记和脚本组合而成的。在 ASP 程序中,脚本通过分隔符与文本和 HTML 标记区分开来。ASP 用分隔符%和%包括脚本命令。由分隔符括起的命令称为主脚本命令,这些命令由主脚本语言进行处理。在 ASP 分隔符%和% 内,可以包括主脚本语言允许的任何语句、表达式和操作符等。 (2)SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记语言 (XML) 的核心支持以及在
4、 Internet 上和防火墙外进行查询的能力,提供了以 Web 标准为基础的扩展数据库编程功能。丰富的 XML 和 Internet 标准支持允许使用内置的存储过程以 XML 格式轻松存储和检索数据。 参考资料 1.魏志华.软件工程.北京:清华大学出版社,2005 2.张海藩.软件工程导论.北京:清华大学出版社,2013 4 3. Roger S. Pressman.软件工程实践者之路 第五版.影印.清华大学出版社.2001 2 程序系统的结构 1. 总体模块如图 1 所示。 学生选课系统 管理员 教师 学生 退出 用户管理 教师管理 学生管理 选/退课 成绩查询 信息管理 修改密码 退出系
5、统 课程信息 成绩录入 信息管理 修改密码 图 1 模块分析图 2.教师模块: 教师首先登录到系统,登录的时候输入教师编号和密码。该密码由管理员设置,通过各学院教师干事发给每个教师用户。在输入教师编号和密码之后,系统将验证教师编号和密码是否正确。如果验证通过,就使教师处于登录状态。否则,系统显示教师账号或密码错误的信息。 教师登录到系统后,可以使用可设课程的系统功能。在开设课程的时候,要求输入课程编号、课程名信息。提交信息后,系统会到数据库中验证该课程是否已经开设过。若没有,则统一开设该课程。 教师在开设了课程以后,可以删除已经开设的课程。 教师可以把成绩录入到系统中。 教师系登录 开设课程
6、删除课程 录入成绩 5 图 2 教师模块分析图 3.学生模块: 学生首先登录到系统,登录的时候输入学生编号和密码。该密码由管理员设置,通过各学院教学干事发给每个学生用户。在输入教师编号和密码之后,系统将验证学生编号和密码是否正确。如果验证通过,就使学生处于登录状态。否则,系统显示学生账号或密码错误的信息。 学生登录到系统后,可以使用选课系统功能。各门课程有各个教师开设,学生在系统中可以查到所有开设的可选的课程,然后进行选择。选择过的课程就不会再出现在学生可选的课程栏中。 学生选择了部分课程后,可以删除自己选择的课程,删除以后的课程会重新出现在学生可选的课程栏中。 学生的每门课程都会有一个考试成
7、绩,改成绩由教师录入系统。学生在系统中可以查询自己所有课程的考试成绩。 图 3 学生模块分析图 3.管理员模块: 管理员首先要登录到系统,登录的时候输入管理员账号和密码。该密码由更高一级的人员设置。在输入管理员账号和密码之后,系统将验证管理员账号和密码是否正确。如果验证通过,就使管理员处于登录状态。否则,系统显示管理员账号或密码错误的信息。 管理员登录到系统后,可以使用添加学生账号的功能。在添加的过程中,要求输入学生学号、密码、姓名、院系和专业信息。提交以后,系统会到数据库去验证该学生账号是否已经建立。如果还没有建立,则建立该学生账号。 学生系统 登录 选课 删除选课 查询成绩 6 管理员可以
8、使用删除学生账号的功能。系统在删除学生账号之前,会先删除账号所选择的所有课程,然后再 删除该账号。 管理员可以使用添加教师账号的功能。系统在添加的过程中,要求输入教师编号、密码、姓名和院系信息。提交信息以后,系统会到数据库中验证该教师账号是否已经建立。如果还没有建立,则建立该教师账号。 图 4 管理员模块分析图 3 程序 1(标识符)设计说明 功能 用 IPO 图描述输入输出。 管理员系登录 新学生账号建新教师账号 删除账号 7 图 5 课程管理模块 IPO 图 IPO 图 系统:学生选课系统 作者:黄素红 模块:课程管理模块 日期:2016-05 编号:P1 被调用者:管理员 调用:系统数据
9、库 输入:课程编号 输出:数据库中课程的信处理:管理员通过登录课程管理模块,查看各个课程的情况,并做出相应的信息。 局部数据元素:课程号、课程名、开课日期等。 注释: 8 图 6 学生管理模块 IPO 图 IPO 图 系统:学生选课系统 作者:黄素红 模块:学生管理模块 日期:2016-05 编号:P2 被调用者:学生 调用:系统数据库 输入:学生学号 输出:学生信息 处理:学生通过验证信息登陆学生管理模块,然后查看个人信息情况。并作出相应的处理。 局部数据元素:学生学号注释: 9 图 7 教师管理模块 IPO 图 IPO 图 系统:学生选课系统 作者:黄素红 模块:教师管理模块 日期:201
10、6-05 编号:P3 被调用者:教师 调用:系统数据库 输入:教师编号 输出:教师信息 处理:教师通过验证信息登陆教师管理模块,然后查看个人信息情况。并作出相应的处理 局部数据元素:教师编号注释: 10 图 8 查询信息模块 IPO 图 IPO 图 系统:学生选课系统 作者:黄素红 模块:查询信息模块 日期:2016-05 编号:P4 被调用者:教师、学生 调用:系统数据库 输入:教师编号、学生编输出:个人成绩,课程安处理:学生、教师通过验证信息登陆查询信息模块,然后查看个人信息情况、个人成绩、课程安排。并作出相应的处理。 局部数据元素:教师编号、学生编号等。 注释: 11 性能 此系统的输入
11、数据大多数为字符串类型,也有表示成绩的整型。 响应时间要求:对于管理人员输入的用户信息应该在人们所能接受的等待时间来确定,通常为1-2 s。更新处理时间要求:用户输入数据后,对于该操作人员输入的数据处理时间应该是毫秒级的。数据的转换和传输时间的要求也应该在人们的接受的等待时间内;用户操作时间为半个小时,若是超过此时间,则网页失效,退出本网页。 在设计界面结构和数据结构应该保留对以后系统功能扩充的余地,方便以后系统升级或者是需求功能的改变。 能够同时允许多人同时登入,系统性能瓶颈是课程的高级查询,输入条件多,关联表也多,并且如果课程信息数量越多,查询也就越慢,为了达到性能要求,选课的高级查询采用
12、存储过程,经常使用的查询字段建立索引。并且保证数据冗余最小化。 输人项 输入的数据一般为字符串,对于整型输入的数据范围,应该有所提示,并且在数据库的完整性约束里进行约束。输入格式应该和数据库中关系表的格式保持一致。 输出项 对输出的数据应该能够导出到word 文档,名称为选课系统,类型是能导出到 Word 文档,输出格式赢与数据库中关系表保持一致。文件加密方式采用MD5 加密,学生选课输出数量应不多于2 门课程。 算法 本部分没有采用自定义的算法。 流程逻辑 12 图 9 学生选课流程图 接口 1 硬件接口 由于采用 B/S 架构,系统的客户端可以在所有的PC 机上使用,只要有浏览器即可。 服
13、务器也可以运行在所有的 PC 机上,鉴于效率问题,建议使用专业的服务器。 2软件接口 客户端采用 Windows 2000/XP 以上操作系统, Internet Explorer 以上浏览器。 存储分配 本程序在高级语言JAVA 进行编码,直接的内存分配由 JAVA 运行时分配。 本组件内所依赖的变量、结构要求全部在组件元素内申明。 注释设计 13 在适当的代码位置添加注释。 1. 模块首部。 2. 各分枝点处。 3. 变量的功能、范围、缺省条件等。 4. 使用的逻辑加注释。 限制条件 所有用户的权限都经过严格设置,不能进行权限外的操作。用户组分为三组:管理员,学生用户和教师用户。 测试计划 在文件中存储文档文件中,不能存储文件名相同,但类型不同的文档。可以通过在文件名中加入文档类型来解决。测试模块分为三大模块,分别是管理员模块、学生用户模块、教师模块。 教师模块:1.测试教师登录是否成功 2.能否开设课程,删除课程 学生模块:1.测试学生是否登录成功 2.学生是否能成功选课,是否能删除课程 管理员模块:1.是否能登录成功 2.是否能添加学生用户与教师用户 尚未解决的问题 1.课程编号 id 在数据库中为 32 位随机生成的 varchar 类型,此功能未完善。 2.课程显示为图片加名称,图片与名称未能完全匹配。