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