课 程 设 计 说 明 书Word文档下载推荐.docx
- 文档编号:16583119
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:18
- 大小:1.53MB
课 程 设 计 说 明 书Word文档下载推荐.docx
《课 程 设 计 说 明 书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《课 程 设 计 说 明 书Word文档下载推荐.docx(18页珍藏版)》请在冰豆网上搜索。
2.1用户需求
(1)组织结构分析:
总控模块管理应当有三种不同的信息的处理模块,即管理员模块、教师模块、学生模块,各模块的主要功能有:
管理员:
实现管理员用户注册、修改信息,以及对学生增删改查、对学生快递信息进行推送、对学生报修信息及时回应等基本功能。
教师模块:
各科教师登录系统后查询个人信息,对学生的网上请假信息进行查询和审批。
学生模块:
实现学生注册功能,并能使每个学生登录后可以查询和修改个人信息,同时在课程结束后可以查询在校期间各个时间段选修课程的成绩与学分,以及对单科成绩和总分的排名查询,学生可以进行教室预约、请假申请、宿舍报修、快递签收、校区地图导航等功能操作。
并且该网站有一套积分系统,学生能够通过完善信息等要求赚取学习币,用以享受更好的服务。
(2)业务流程分析:
业务流程图如下。
图2.1数据流图一
(3)数据流程分析:
通过查询数据库中的学生表、教师表和管理员信息表实现学生、教师、管理员三方登录。
学生通过请假表向教师进行请假申请,通过报修表对管理员进行报修申请,通过课程表进行课程及成绩信息查询。
管理员通过快递表对学生进行快递信息推送。
(4)处理逻辑分析:
包括系统管理,人工管理,数据库管理三部分。
系统管理由系统管理部工作人员来完成,人工管理由任课教师、校园学生后勤部门管理员进行管理,数据库管理则由工作人员负责。
在各个管理功能中都具备查询、浏览、操作功能,在各个模块中根据合理的需求进行相应的处理,使得原系统得以优化和完善。
2.2功能需求
学生服务系统的功能需求包括:
学生信息增改查需求、学生教室预约需求、学生请假申请需求、学生宿舍报修需求、学生快递签收需求、学生校区地图导航功能需求。
这六个部分既相互联系又相互独立。
需要说明的是,关于学生请假功能,系统可以分析出学生历史请假次数,通过数据分析向教师提出审批意见。
关于教室预约功能,学生必须在规定时间内(20:
00—22:
00)进行预约操作,其他时间预约系统不予开放,每个教室有相应的容量限制,达到限制后不允许后面的同学预约,预约成功后系统自动提供相应教室的座号。
关于学生请假申请和宿舍保修申请功能,学生在提交申请后,需要教师或管理员进行审批通过后才算申请成功。
2.3功能设计
(1)功能模块图:
图2.3功能模块图
(2)采用的技术方法简介:
本系统采用JSP+JavaBeans+Servlet技术。
JSP和Servlet和结合能很好地解决动态网页的页面与程序的合并问题,它们的结合加上JavaBeans的使用,能控制整个网站逻辑流程。
在逻辑关系异常复杂的网站中,可将网站的整个逻辑结构放在Servlet中,而将动态页面的输出放在JSP页面中来完成。
一个复杂的网站可以由一个或几个核心的Servlet来处理网站的逻辑,通过调用JSP页面来完成客户端的请求。
2.4亮点功能分析
亮点一:
对于学生来说,在成绩查询的时候可以看到专业排名。
这对成绩好的同学是一个鼓励,对于成绩不理想的同学也可以起激励作用。
亮点二:
关于学生请假功能,系统可以分析出学生历史请假次数,通过数据分析向教师提出审批意见。
亮点三:
亮点四:
亮点五:
关于积分系统,学生通过积分规定进行相应的操作以获得学习币。
并且使用学习币进行教室预约、在线请假报修等功能操作,得到更好的服务。
第三章可行性分析
3.1技术可行性
本系统拟采用采用JSP+JavaBeans+Servlet技术。
JSP实质上是在运行Servlet程序。
Servlet程序是由Web服务器端的JVM执行的Java类,所以JSP平台首先需要Java的运行环境,这可以通过安装JDK来实现。
系统还需要一个JSP环境的servlet容器,较为普遍的应用是称为Tomcat的软件。
一个完整的JSP平台应包括操作系统平台、JDK+JSP环境和servlet容器。
对比ASP,JSP(JavaServerPage)与ASP(ActiveServerPage)两者都是常用的动态网页技术,也都是可以嵌入HTML中的程序。
大多数通用的Web服务器如:
Apache、Netscape和MicrosoftIIS都支持JSP页面,只有微软本身的MicrosoftIIS和PersonalWebServer可以支持ASP。
关于数据可行性,系统涉及的原始数据种类类型有char型、varchar型、tinyint型、int型、datetime型等。
数据来源为学校、学生与教师三方面。
数据的获取方式为学校教科部的排课安排数据、学生校园卡和学生注册填写的信息,教师录入的信息等。
3.2操作可行性
本系统可以做到使管理员(教师)与学生进行数据录入时,达到迅速、规范、可靠的标准;
其统计数据准确、直观,适应力强,容易扩充。
具有易用性、灵活性、开放性与可视性等。
3.3经济可行性
互联网技术不断发展与创新,其作用日益凸显。
在当今的信息时代,人们生活已经离不开互联网,互联网技术也无处不在。
互联网产业也是具有高投入/高产出、无污染、低能耗特点的绿色产业。
网上学生成绩管理系统开发工作量小,可以有两个人合作开发,开发周期短。
3.4安全可行性
首先JSP技术本身在网络安全方面有优点:
第一,JSP源程序不大可能被下载,特别是JavaBean程序完全可以放到不对外的目录中;
第二,因为技术是基于Java的,所以具有Java的安全特性。
其次,本系统对于数据安全,应使用数据库加密技术——透明数据加密方式。
它允许通过加密数据库文件和事务日志页实现对整个数据库的加密。
“透明数据加密”(TDE)
可对数据和日志文件执行实时
I/O
加密和解密。
这种加密使用数据库加密密钥
(DEK),该密钥存储在数据库引导记录中以供恢复时使用。
DEK
是使用存储在服务器的
master
数据库中的证书保护的对称密钥,或者是由
EKM
模块保护的非对称密钥。
TDE
保护“处于休眠状态”的数据,即数据和日志文件。
第四章项目实施
4.1项目计划:
学生信息管理:
学生信息增加、删除、修改、查询。
课程信息管理:
课程信息增加、删除、修改、查询。
成绩信息管理:
成绩信息增加、删除、修改、查询、数据分析。
论坛管理系统:
文章发布、文章审核、删除。
数据分析:
课程成绩数据分析功能:
(平均分、难度系数、试题评价、及格率、良好率、优秀率、通过全校成绩分析不同学期间科目关联性);
学生成绩数据分析(不及格科目名称和科目数、全科专业综合排名、总成绩、薄弱科目、对应学期、学期警告、推荐科目分析、通过个人成绩分析不同学期间科目成绩关联性)
项目开发时间:
第一周进行可行性分析、需求分析、设计精化,第二周开始实施各项任务,第三周整合报告。
4.2项目分工
项目组长:
许悦
分工:
许悦负责动态网页与功能实现;
史蕾负责静态网页;
粘晓华负责美工部分
第五章系统设计
5.1系统流程与数据流图
图5.1系统流程图
图5.2数据流图一
图5.3数据流图二
图5.4数据流图三
5.2数据库E-R图
5.3数据表设计
图5.5系统E-R图
表5.1学生表
表5.2课程表
表5.3成绩表
表5.4登录信息表
表5.5论坛表
表5.6新论坛表
第六章系统界面设计
图6.1系统登录界面
图6.2学生主页面
6.3管理员主页面
第七章系统程序详细设计
7.1模块结构图
图7.1模块结构图
7.2分配个人任务
7.3关键技术分析
1.一个方法中执行多次SQL语句总是失败。
解决办法:
将两条SQL语句分别写到不同的方法在Servlet中依次调用,即用第一次的list结果带入第二个方法得到最终的list集合。
例如计算全校成绩分析科目成绩关联性:
若全校超过50%的学生,他们的第一学年某一科是薄弱科目,下一学年另一科也是其薄弱科目,就可以得出总体关联性(以某一科目与高等数学为例)。
部分代码如下:
……
Stringguanlian="
"
;
StringCname=null;
try{
list=op.findByCourse(Cno);
av=op.Uaverage("
02"
);
list1=op.findByCourse("
03"
a1v=op.Uaverage("
intn=0;
Gradegr2=newGrade();
gr2=(Grade)list.get(0);
Cname=gr2.getCname();
intk;
for(k=0;
k<
list.size();
k++){
Gradegr=newGrade();
gr=(Grade)list.get(k);
Gradegr1=newGrade();
gr1=(Grade)list1.get(k);
if(gr.getScore()<
av&
&
gr1.getScore()<
a1v){
n=n+1;
}
}
//System.out.println(k);
//System.out.println(n);
if(Cno.equals("
)){
guanlian="
elseif(n<
k*0.5){guanlian="
}
else{
通过数据得出,全校超过50%的学生,他们的12-13学年薄弱科目为高等数学,在13-14学年"
+Cname+"
也是其薄弱科目。
所以高等数学与"
的关联性比较大"
2.对于List的排名不能像SQL一样用语句筛选这么简单,应该使用Collections.sort(Listlist);
方法,此方法会调用MyObject的compareTo方法实现排序功能:
GradeOperop=newGradeOper();
List<
Grade>
list=newArrayList<
();
list2=newArrayList<
inti;
StringSno=null;
list=op.findMsno(smajor);
for(i=0;
i<
i++){
Gradegr=newGrade();
gr=(Grade)list.get(i);
Sno=gr.getSno();
list2.addAll(op.findSGradenew(Sno));
Collections.sort(list2,newComparator<
(){
@Override
publicintcompare(Gradeo1,Gradeo2){
//TODO在这里比较生产时间字段即可,如:
if(o1.getAllscore()<
o2.getAllscore()){
return1;
}elseif(o1.getAllscore()>
return-1;
}
return0;
});
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
3.数据库连接。
本系统数据库连接方式为ODBC:
JDBC桥连接方式。
代码如下:
packagecom.db;
importjava.sql.*;
publicclassDBConn{
Connectionconn=null;
publicConnectiongetConnection(){
Stringurl="
jdbc:
odbc:
xuyue"
Stringuser="
sa"
Stringpassword="
Class.forName("
sun.jdbc.odbc.JdbcOdbcDriver"
Connectionconn=DriverManager.getConnection(url,user,password);
//conn=DriverManager.getConnection(url,user,password);
returnconn;
}catch(Exceptione){
e.printStackTrace();
returnnull;
}
publicvoidclose(){
try{
if(conn!
=null)conn.close();
}catch(Exceptione){}
第八章系统测试
8.1测试说明
软件测试是软件开发时期的最后一个阶段,也是软件质量和可靠性保证中至关重要的一个环节。
软件测试的基本任务是通过在计算机上执行程序,暴露出程序潜在的错误,以便进行纠错,从而保证程序的可靠运行,降低软件的风险。
所谓测试用例,就是意发现错误为目的而精心设计的一组测试数据。
测试一个程序,需要数量足够的一组测试用例,用数据词典的表示方法表示,可以写成:
测试用例={输入数据+输出数据}
这个是式子还表明,每一个完整的测试用例不仅包含有被测程序的输入数据,而且还包括用这组数据执行被测数据之后的预期的输出结果。
每次测试,都要把实测的结果与期望结果做比较,若不相符,就表明程序可能存在错误。
黑盒测试就是根据被测程序功能来进行测试,所以也称为功能测试。
用黑盒法涉及测试用例,有四种常用技术;
等价分类法,边界值分析法,决策表法和因果图法。
整个测试基于需求文档,看是否能满足需求文档中所有需求。
黑盒测试要求测试者在测试时不能使用与被测系统内部结构相关的知识或经验,适用于对系统的功能进行测试。
8.2性能测试
测试时间:
7月11日
测试内容:
负载测试
目的:
测试正常情况下系统性能和用户数目之间的关系查看在多个用户同时本系统是否正常
条件:
操作系统:
Win7系统
;
软件:
chrome浏览器、tomcat7服务器、JDK1.7、Microsoft
SQL
Server
2008
人员:
许悦、粘晓华、史蕾
8.2功能测试
在本学生成绩管理系统中在信息录入部分采用等价分类法。
等价分类属于黑盒测试法的一种,黑盒测试的优点比较简单,不需要了解程序内部的代码及实现,从用户的角度出发,且是基于软件开发文档,也能知道软件实现了文档中的哪些功能,在做软件自动化测试是比较方便。
黑盒测试法的缺点是覆盖率较低,自动化测试的复用性较低。
以学生信息部分为例:
1、学号:
必须有,且为12位数,前4位为入学时间,后4位为系别与专业号,最后4位为班级号及学号
2、姓名:
必须有,要求为不超过5个汉字
3、性别
:
必须有,为“男”或“女”
4、年龄
2位数,在18—80间
5、专业:
必须有,具体系别要求视各学校具体情况而定
6、年级:
大一、大二、大三、大四四个选项
7、入学时间:
YYYY-MM-DD日期形式
注:
学生登录时输入学号,若学号信息输入正确,则提示登录系统成功,否则无法登录进入系统,提示提示密码不正确请重新登录。
输入域:
学号、姓名、性别、年龄、入学时间、专业、年级
输出域:
是否录入/登录成功
表8.1测试表
输入
有效等价类
编号
无效等价类
学号
12位数
1
超过12位
11
不足12位
12
姓名
必须有
2
空
13
不超过5个汉字
3
超过5个汉字
14
性别
男
4
15
女
5
年龄
2位数
6
不是2位数
16
18-80之间
7
18-80之外
17
专业
8
18
年级
大一、大二、大三、大四之一
9
不是大一、大二、大三、大四之一
19
入学时间
10
不是YYYY-MM-DD日期形式
20
表8.2测试用例表
·
是否成功
20120320222111
张三
信管
大三
2012-9-1
失败
201203202
201203202201
张三四五
200
大五
2012年九月一日
成功
第九章项目验收
9.1项目进度、完成功能与需求设计的符合程度
项目进度较为适中。
核心功能均有完成,但与需求分析设计的符合程度仍有一定的差距。
比较同类系统,本系统有突出的亮点功能,如学生交流区、薄弱课程推荐功能、通过全校成绩分析不同学期间科目关联性。
但在用户交互与界面设计上仍有很大的不足,有待进一步完善。
9.3升级改造方案
a)加入柱状图、饼状图等插件,使数据分析的结论更加直观地显示,让用户一目了然。
b)在界面设计上追求简洁高效,使用户省时省力愉悦地完成所需工作。
c)论坛功能还应加入用户修改功能
附1参考文献
【1】耿祥义张跃平.《Java大学实用教程(第三版)》.电子工业出版社,2012年1月
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课 程 设 计 说 明 书.docx