学生成绩管理系统文档格式.docx
《学生成绩管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统文档格式.docx(24页珍藏版)》请在冰点文库上搜索。
![学生成绩管理系统文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-4/28/1f190bb3-cea9-4015-9f66-1ab7391a7da6/1f190bb3-cea9-4015-9f66-1ab7391a7da61.gif)
软件服务端可以在windows,linux,UNIX,等平台下运行,web服务器tomcat7.0,数据库SqlServer,客户端采用chrome或360浏览器。
2.8主要技术
软件开发采用结构化方法。
可以采用访谈和实地调研获得分析,建模采用Visio工具辅助建立功能模型,数据模型和动态模型;
设计采用成熟的B/S体系结构和SSH框架;
编程阶段采用CVS进行统一管理,测试采用Winrunner和loadrunner进行功能和性能测试。
2.9基础条件
软件由信息工程学院软件孵化中心开发,用户方式教师和学生。
3经济可行性(成本----效益分析)
软件市场前景好,预期收益大,经济上可行。
4技术可行性(技术风险评价)
软件开发需要的硬件环境已经具备,软件环境已经搭建,网络环境已经配置。
现有资源可以满足软件实施,具备技术可行性。
5法律可行性
软件开发不存在违法行为。
6用户使用可行性
学生:
信息工程学院所有学生
教师:
信息工程学院所有教师
管理员:
开发负责人,学校领导。
7结论
鉴于以上分析,学生管理系统投资较少,具有较高的经济效益和社会效益。
该项目在经济,技术,法律,用户使用上都是可行的,可以立即立项开发。
(每章插入分节符)
2软件需求分析
1.1编写目的
帮助使用者更好的掌握此系统的使用。
1.2背景
说明:
a、学习成绩管理系统;
b、本项目的任务信息工程学院、软件孵化中心、用户及实现该软件的计算中心或计算机网络;
c、基础系统其他教务系统是基于此系统开发。
1.3定义
UML:
统一建模语言
1.4参考资料
[1]}姚巍,VisualBasic从入门到精通[M],北京,人民邮电出版社,2006:
1~50.
[2]张光妲,VisualBasic程序设计方法[M],北京,清华出版社,2010:
192~226.
[3]王春才,高春艳,李俊民等,VisualBasic完全手册[M],北京,人民邮电出版社,2006:
13~48.
[4]莫举德,夏涛,VisualBasic程序设计[M],北京,北京邮电大学出版社,2008:
148~174.
[5]卢湘鸿,Access数据库与程序设计[M],北京,电子工业出版社,2006:
23~110.
[6]何博,Access完全剖析[M],北京,中国电力出版社,2006:
36~93.
[7]梁灿,赵艳泽,Access数据库应用基础教程[M],北京,清华大学出版社,2005:
54~92.
2业务需求
信息工程学院的学生平时考试成绩,选修课程等每学期都会产生大量学生文档,纸质文档保存不便,统计分析困难,浪费资源。
3用户需求
系统主要分为三个角色:
管理员,教师,学生。
管理员主要功能包括:
学生管理,教师管理等。
教师主要功能包括:
个人信息管理,师生交流,学生成绩管理,批该报告等。
学生主要功能包括:
个人信息,师生交流,实验报告,成绩查询等。
4功能需求
(1)学生注册:
姓名,性别,民族,出生年月,出生地,身体状况,
政治面貌,所在班级,所在院系,电话,QQ。
(2)学生:
学生可以查询本人基本信息情况,查询本人所学课程成绩情况,修改本人的基本情况以及对本人登录密码进行编辑等权利。
(3)教师注册:
政治面貌,所授班级,办公室,电话。
(4)教师:
教师具有查询教师本人的基本信息,所教课程成绩,所教课程的基本信息,成绩的发布与录入以及本人信息的修改,登录密码的编辑等权限
(5)管理员:
具有新增学生,修改学生,查询学生,删除学生的功能,管理员登录可以查看登录人员的账户信息,对学生信息进行管理,对教师信息进行管理,对课程进行各种管理。
5功能模型
5.1总用例图
5.2各子系统用例图
出库单管理用例图:
5.3用例说明
表1-1新增学生表用例描述表
用例名称
新增学生表
用例描述
增加一个学生表
参与者
管理员
前置条件
管理员进入系统
后置条件
如果这个用例成功,在系统中增加一个学生表
基本操作流程
1.管理员录入学生信息
2.检查学生信息必填项是否符合要求
3.将学生表保存到学生管理里面
可选操作流程
1.学生信息填写不完全,不予保存
2.学生数据有重叠需要进行修改,用例终止,不能增加新的学生表
3.选择保存学生表,保存完成。
4.选择打印学生表,打印当前录入的数据。
5.选择新增学生表,添加新学生信息。
6.选择返回,跳转到学生信息管理页面
表1-2删除学生表用例描述表
删除学生表
删除一个学生表
如果这个用例成功,在系统中减少一个学生表
1.管理员查看要删除学生信息
2.单击删除
3.从学生表中找出选中的记录,并删除
4.提示删除成功
5.返回到学生信息管理页面
直接点击删除,系统提示要选择数据
6.对象模型
6.1实体类
学生院系,学生班级,学生宿舍,教师信息类
6.2控制类
修改信息,增加信息,删除信息,查询信息
6.3边界类
信息管理页面,新增页面,修改页面,删除页面,查询页面
6.4类图
7其他需求
3软件设计
1概述
1.1系统简述
对学生的信息进行网络化存储,方便教师及学校领导查看和对纸张的节约。
1.2软件设计目标
实现学生网络化查询自己的成绩和选课内容以及教师对学生成绩的输入和修改管理员对学生的增加和删除。
1.3参考资料
[1]}姚巍,VisualBasic从入门到精通[M],北京,人民邮电出版社,2006:
[2]张光妲,VisualBasic程序设计方法[M],北京,清华出版社,2010:
[3]王春才,高春艳,李俊民等,VisualBasic完全手册[M],北京,人民邮电出版社,2006:
[4]莫举德,夏涛,VisualBasic程序设计[M],北京,北京邮电大学出版社,2008:
[5]卢湘鸿,Access数据库与程序设计[M],北京,电子工业出版社,2006:
[6]何博,Access完全剖析[M],北京,中国电力出版社,2006:
[7]梁灿,赵艳泽,Access数据库应用基础教程[M],北京,清华大学出版社,2005:
2术语表
简单的系统设计术语
3体系结构设计
客户层:
用户通过客户层系统与系统交互。
该层可以是各种类型的客户端。
表示层:
用户通过表示层访问应用程序,表示层有用户界面和控制器。
业务层:
负责确认和执行业务规则和事物,并管理业务对象。
集成层:
负责建立和维护与数据源的连接。
资源层:
即数据库,可以分布在多个服务器上
4界面设计
5数据库设计
在数据库和表创建成功后,需要添加字段名。
在“admin”表中添加‘idx’,‘name’,‘sex’,‘bir’,‘class’,‘qq’,‘email’,‘tel’,‘address’,‘join_time’.‘lik,info’等字段名,其中设置‘idx’为关键字段。
在“stu_info”表中添加‘idx’,‘name’,‘pwd’,‘age’,‘sex’,‘adress’等字段名,其中设置‘idx’为关键字段名
6算法设计
(每章插入分节
4软件实现
1编码规范
(1)<
%@pagelanguage="
java"
contentType="
text/html;
charset=UTF-8"
pageEncoding="
UTF-8"
%>
<
!
DOCTYPEhtmlPUBLIC"
-//W3C//DTDHTML4.01Transitional//EN"
"
http:
//www.w3.org/TR/html4/loose.dtd"
>
html>
head>
metahttp-equiv="
Content-Type"
content="
title>
登录页面<
/title>
/head>
scripttype="
text/javascript"
functionchecksubmit(){
with(document.logform){
varuid=userid.value;
varpwd=upass.value;
if(uid==null||uid=="
"
){
alert("
请填写登录账号"
);
return;
}elseif(pwd==null||pwd=="
请填写登录密码"
}else
document.logform.submit();
}
}
/script>
body>
H2align="
center"
请登录<
/H2>
<
hr>
formmethod="
post"
action="
checklogin.jsp"
method="
name="
logform"
tableborder="
1"
align=center>
tr>
tdalign="
style="
font_size:
18px"
用户账号<
/td>
td>
inputtype="
text"
userid"
width:
160px"
/>
/tr>
密&
nbsp;
&
码<
upass"
submit"
value="
登录"
style='
font-size:
18px'
onClick="
checksubmit()"
reset"
清空"
/table>
/form>
/body>
/html>
(2)<
%@pageimport="
java.sql.ResultSet"
javax.naming.spi.DirStateFactory.Result"
java.beans.Statement"
java.sql.Connection"
java.sql.PreparedStatement"
添加成绩<
%request.setCharacterEncoding("
utf-8"
response.setCharacterEncoding("
PreparedStatementps=null;
Connectionconn=null;
Statementst=null;
Stringtid=session.getAttribute("
uid"
).toString().trim();
Stringtpass=session.getAttribute("
Stringsid=null,cid=null;
int
usualResults=0,examResults=0,experimentalResults=0,totalScore=0;
if(request.getParameter("
addSid"
)!
=null)
sid=newString(request.getParameter("
addsid"
)).trim();
addCid"
cid=newString(request.getParameter("
addUsualResults"
usualResults=Integer.parseInt(newString(request.getParameter("
)).trim());
addExamResults"
examResults=Integer.parseInt(newString(request.getParameter("
addExperimentalResults"
examrimentalResults=Integer.parseInt(newString(request.getParameter("
addTotalScore"
=null)totalScore=Integer.parseInt(newString(request.getParameter("
try{
Class.forName("
com.microsoft.sqlserver.jdbc.SQLServerDriver"
conn=DriverManager.getConnection("
jdbc:
sqlserver:
//localhost:
1433;
DatabaseName=ssms"
"
sa"
123456"
Stringsql="
select*fromscorewheresid='
+sid+"
'
andcid='
+cid+"
andtid='
+tid+"
;
st=conn.createStatement();
ResultSetrs=st.executeQuery();
if(rs.next()==true)out.print("
script>
alert('
已经存在该生该课程的成绩!
location.href='
teacher.jsp'
else{sql="
insertintoscore(sid,cid,usualResults,examResults,experimentalResults,totalScore,tid)values(?
?
)"
ps=conn.prepareStatement(sql);
ps.setString(1,sid);
ps.setString(2,cid);
ps.setInt(3,usualResults);
ps.setInt(4,examResults);
ps.setInt(5,experimentalResults);
ps.setInt(6,totalScore);
ps.setString(7,tid);
introw=ps.executeUpdate();
if(row>
0)out.print("
成功添加了1条数据!
elseout.print("
添加学生成绩失败!
catch(SQLExceptione){
out.print("
数据库异常'
+e);
finally{if(ps!
ps.close();
if(conn!
conn.close();
}
%>
br>
2.环境搭建
在编写一个JavaBean驱动后,使用jdbc:
mysql:
3306/jspdev来编写URL,使其将jsp页面与数据库相连,使用户等够成功登录系统,并在登录之后可以在系统中进行对数据的添加,删除,修改,查询等各项操作。
3.主要功能实现
(1)
java.sql.Statement"
java.util.concurrent.locks.StampedLock"
java.sql.DriverManager"
.ConnectException"
登录验证<
%
Stringuserid=request.getParameter("
).trim();
Stringupass=request.getParameter("
Class.forName("
Connectionconn=DriverManager.getConnection("
Statementstmt=conn.createStatement();
Stringsql="
select*fromteacherwheretid='
+userid+"
andtPassword="
+upass;
ResultSetrs=stmt.executeQuery(sql);
if(rs.next()==true){
session.setAttribute("
userid);
upass);
out.print("
登录成功'
}else{
用户名或密码错误!
请重新输入!
login.jsp'
rs.