河南城建学院信息系统分析与设计课程设计报告Word格式文档下载.docx
- 文档编号:18683458
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:31
- 大小:1.56MB
河南城建学院信息系统分析与设计课程设计报告Word格式文档下载.docx
《河南城建学院信息系统分析与设计课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《河南城建学院信息系统分析与设计课程设计报告Word格式文档下载.docx(31页珍藏版)》请在冰豆网上搜索。
另外,成绩管理系统所采用的操作和工作方式等符合工作人员和学生的日常习惯,而且操作方便灵活。
因此,该系统具有社会可行性。
3系统用例分析
3.1系统用例图
(1)系统描述
河南城建学院成绩查询系统包括两个基本的部分,一个是学生在前台用自己的帐号登录后进行自我成绩的查询以及所在班各科成绩单的查询,还有就是更改自己的注册信息和登录密码;
另一个是管理员在后台对成绩记录和学生用户信息进行管理,主要包括:
成绩记录的添加、修改、删除和查询以及学生用户的添加、修改、删除和查询。
(2)角色识别
角色识别的任务是找出所有可能与系统发生交互行为的外部实体、对象和系统。
他们的行为不受系统控制,但是可以提供输入给系统(即使用系统的功能,或者能够响应系统服务请求,为系统提供服务接口)。
学生在访问系统时,会根据自己的学号来查询自己的各科考试成绩,显然系统存在这样的主要角色,定义其为学生;
同样,在系统的后台存在系统管理员来对成绩和用户进行管理,定义其为管理员;
学生和管理员二者均为系统的用户,因此需要定义用户这一角色。
(3)用例识别
在角色的基础上,可以识别出与角色相关的用例,从而得到系统的用例建模。
学生用例图描述了学生通过Internet访问成绩查询系统进行的操作。
学生登录学院成绩查询系统主页后,可以根据自己的学号来查询自己在某学期某科考试的考试成绩以及本班的成绩单,也可以更改自己注册时候的个人基本信息以及自己登录的密码。
管理员用例图描述了管理员通过登录学院成绩查询系统管理员界面进行的各项操作。
管理员登录后台管理界面后,可以对学生的考试成绩和学生用户进行添加、修改、删除和查询。
由此可见,本系统的活动者包括两个:
学生和管理员;
学生对应的事件流有自己成绩查询、本班成绩查询、修改基本信息和修改密码;
管理员对应的事件流有学生信息的添加、修改、删除和查询以及学生用户的添加、修改、删除和查询。
此外,本系统还有一个主要的活动者:
数据库,数据库对应所有的事件流。
见图1:
图1:
系统用例图
3.2系统活动图
(1)登录系统活动图
登录系统事件流如下:
①用户登录网站主页用例开始
用户选择登录模式(管理员或学生)
用户输入登录帐户和密码
系统验证帐户和密码是否输入
A1:
未输入完全
系统创建该用户对象
数据库查询该用户名是否存在
A2:
用户名不存在
在数据库中查询密码
判断密码是否正确
A3:
密码不正确
系统显示登录成功信息
用例结束
图2:
登录系统活动图
(2)管理员查询成绩活动图
管理员查询成绩事件流如下:
1管理员选择查询方式(按班级或学号),用例开始
2输入查询条件
3创建成绩查询条件
4在数据库中查询该项成绩
5判断该项成绩是否存在
A1:
该成绩不存在
显示成绩查询结果
图3:
管理员查询成绩活动图
(3)管理员删除成绩活动图
删除成绩事件流如下:
1输入要删除的成绩的基本信息
2判断成绩框中是否为数字
不是数字
3创建成绩对象
4在数据库中查询该项成绩
A2:
成绩不存在
5在数据库中删除该项成绩
6显示成绩删除成功信息
7用例结束
图4:
管理员删除成绩活动图
(4)管理员添加成绩活动图
添加成绩的事件流如下:
输入要添加的成绩的基本信息
判断成绩框中是否为数字
创建成绩对象
在数据库中查询该项成绩
成绩已经存在
在数据库中添加该项成绩
判断成绩添加是否成功
A3:
成绩添加不成功
显示成绩添加成功信息
⑧用例结束
图5:
管理员添加成绩活动图
(5)管理员修改成绩活动图
管理员修改成绩事件流如下:
1管理员输入要修改的成绩的基本信息
2判断成绩框中输入的是否为数字
5判断成绩是否已经存在
6在数据库中修改该项成绩
7判断成绩是否修改成功
成绩修改不成功
8显示修改成功信息
9用例结束
图6:
管理员修改成绩活动图
(6)学生查询成绩活动图
学生查询成绩的事件流如下:
1学生选择查询方式(按学号或班级)
3判断查询条件是否合法
学生没有查询权限
4在数据库中查询成绩
5判断成绩是否存在
6显示查询结果
图7:
学生查询成绩活动图
3.3系统序列图
序列图的功能是按时间顺序描述元素间的交互,着重体现对象间消息传递的时间顺序。
序列图存在两个轴:
水平轴表示不同的对象,垂直轴表示时间。
垂直虚线是对象的生命线,用于表示在某段时间内对象是存在的。
对象间的通信通过在对象的生命线间画消息来表示。
(1)管理员添加学生用户序列图
管理员添加学生用户过程中,涉及到管理员、窗体、用户、控制对象和数据库五个类:
管理员输入要添加的学生用户的基本信息,窗体获取这些基本信息,根据输入的基本信息创建一个学生用户信息,控制对象按照一定的规则检查用户信息的合法性,如果输入的格式合法,则在数据库中查询该用户是否已经存在,由控制对象检查是否可以添加该学生用户,如果可以则在数据库中添加学生用户信息,并向窗体显示学生用户添加成功信息,控制对象删除所创建的用户信息。
具体的序列图如图8:
图8:
管理员添加学生用户序列图
(2)管理员修改学生信息序列图
管理员修改学生用户信息的过程中,涉及到管理员、窗体、用户、控制对象和数据库五个类:
管理员输入要修改的学生用户的基本信息,窗体获取这些基本信息,根据输入的基本信息创建一个学生用户信息,控制对象按照一定的规则检查用户信息的合法性,如果输入的格式合法,则在数据库中查询该用户是否已经存在,如果存在则由控制对象检查是否可以修改该学生用户的基本信息,如果可以则在数据库中修改学生用户信息,并向窗体显示学生用户修改成功信息,控制对象删除所创建的用户信息。
具体的序列图如图9:
图9:
管理员修改学生用户基本信息序列图
(3)管理员删除学生用户序列图
管理员删除学生用户过程中,涉及到管理员、窗体、用户、控制对象和数据库五个类:
管理员输入要删除的学生用户的基本信息,窗体获取这些基本信息,根据输入的基本信息创建一个学生用户信息,控制对象按照一定的规则检查用户信息的合法性,如果输入的格式合法,则在数据库中查询该用户是否已经存在,由控制对象检查是否可以删除该学生用户,如果可以则在数据库中删除学生用户信息,并向窗体显示学生用户删除成功信息,控制对象删除所创建的用户信息。
具体的序列图如图10:
图10:
管理员删除学生用户序列图
(4)用户查询成绩序列图
用户查询成绩过程中主要涉及到用户、窗体、成绩、控制对象和数据库五个类:
用户选择查询方式(按班级或者按照学号)并输入查询条件,由控制对象检查查询条件的合法性,并判断用户是否具有查询的权限,如果具有查询权限则在数据库中进行成绩查询,通过成绩类来创建成绩列表,并向窗体显示查询结果,如图11所示:
图11用户查询成绩序列图
3.4系统类图
本系统包括用户、数据库、控制对象和窗体四个大类,其中用户又包括管理员和学生两个类。
各类的属性和操作如下:
学生的属性有学号、姓名、班级和密码,管理员的属性有帐号和密码,数据库的属性有存储路径,成绩的属性有学号、课程编号、学期和分数,窗体的操作有获取成绩基本信息、获取学生用户基本信息、显示成绩不存在信息、显示成绩查询结果信息、显示添加成功信息、显示添加失败信息、显示修改成功信息、显示修改失败信息、显示删除成功信息、显示删除失败信息和显示查询结果信息,数据库的操作有查询成绩、删除成绩、修改成绩、检查成绩是否存在、检查用户是否存在、查询密码、查询用户、删除用户、修改用户,控制类的操作有检查成绩的合法性、检查是否可以删除成绩、检查是否可以删除学生信息、检查是否可以添加成绩、检查是否可以修改成绩、检查是否可以查询成绩、检查是否可以添加学生用户、检查是否可以修改学生用户信息、检查是否可以查询学生用户信息和检查学生信息的合法性。
系统类图如图12所示:
图12系统类图
4系统设计
4.1功能结构设计
在对学院正常运行的业务流程进行详细了解和分析后,总结出一个功能全面的管理系统,必须包括以下几个方面:
(1)学生成绩管理
在学生成绩管理过程中,包括对学生成绩的添加、修改、删除和查询,同时要对不同的登录用户提供不同的系统界面,管理员登录后可以添加、删除、修改和查询所有学生的考试成绩,不过要受到一定的条件限制,例如:
对于已经存在的学生的考试成绩就只能进行修改、删除和查询操作,而不能对其进行添加操作;
对于现在数据库中并不存在的学生成绩不能进行修改、删除和查询操作,只能进行添加操作。
普通学生用户登录后可以查询自己在任何一学期任何科目的考试成绩和自己班级的考试成绩单,但是不可以通过输入别人的学号来查询他人的考试成绩。
(2)学生用户管理
在学生用户管理过程中,只有以管理员身份登录后才可以进行该项操作,包括对学生用户的添加、删除、修改和查询操作,在上述操作过程中同样也受到一些条件的约束,例如对于已经存在的学生用户信息可以进行删除、修改和查询,但是不能再一次添加到数据库中。
管理员身份登录后的系统功能结构图如图13所示:
以学生身份登录后的系统只提供学生本人成绩查询、所在班级成绩查询、个人注册信息修改和登录密码修改的功能,并不能对他人的成绩进行查询以及成绩和用户的添加和删除、修改。
学生身份登录后的系统功能图如图14所示:
在本系统中主要实现的是学生成绩的查询工作,而以不同的身份登录后查询的权限受到不同的限制,主要的功能结构图如图15:
管理员可以按照班级或是按照学号对所有学生的成绩进行查询,而学生登录后只能对自己的成绩和本班成绩进行查询。
4.2数据库设计
在UML建模分析和系统功能分析后,就需要在此基础上建立相关的数据库,设计出能够满足用户需求的各种实体,以及它们之间的关系,这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
数据库设计包括需求分析、概念设计、逻辑设计、物理设计和实施维护。
4.2.1数据库概念结构设计
数据库的概念设计是针对现实世界,通过对其中信息实体的收集、分类、聚集和概括,建立数据库概念结构的过程,应该反映系统组织的业务模式、信息结构、信息间的相互制约关系,以及对信息存储、查询和加工的处理要求等。
学院成绩查询系统中存在的实体主要包括学生、管理员、班级、课程、学期和成绩六个实体,系统中的数据项和数据结构如下:
(1)学生信息:
包括的数据项有学号、姓名、班级和密码;
(2)班级信息:
包括的数据项有班级编号、班级和班主任;
(3)课程信息:
包括的数据项有课程编号、课程名称和任课老师;
(4)学期信息:
包括的数据项有学期编号和学期;
(5)成绩信息:
包括的数据项有学号、课程编号、学期编号和成绩;
(6)管理员信息:
包括的数据项有帐号和密码。
各实体之间的关系如图16所示:
图16
4.2.2数据库逻辑结构设计
数据库逻辑结构设计阶段就是要将上面的数据库概念结构转化为SQL2000数据库所支持的实际数据模型,也就是数据库的逻辑结构。
学院成绩查询系统数据库中的主要数据表设计如下:
(1)学生信息表,如表1所示:
字段名
数据类型
是否允许为空
是否主键
学号
Char(10)
否
是
姓名
Varchar(12)
班级
Varchar(20)
密码
Varchar(8)
表1
(2)管理员信息表,如表2所示:
帐号
表2
(3)课程信息表,如表3所示:
课程编号
课程名称
任课老师
表3
(4)学期信息表,如表4所示:
学期编号
学期
Char(10)
表4
(5)班级信息表,如表5所示:
班级编号
班级名称
班主任
表5
(6)学生成绩信息表,如表6所示:
成绩
Int
表6
4.2.3数据库物理设计和实施维护
数据库物理设计是在已确定的逻辑数据库结构基础上,设计出在限定应用环境下,具有高效率、可实现的物理数据库结构的过程。
物理设计还应该考虑操作约束、数据库性能和数据库安全等问题。
4.3代码设计、输出设计、输入设计等
4.3.1代码设计
学院成绩查询系统为每一个用户设计了一个代码,管理员应用自己的帐号登录系统后进行操作,而普通的学生的登录名即为其在学校的学号,这样在系统中就大大方便了数据的输入。
管理员的帐户信息是不可以更改的,只可以在数据库中直接进行更改,而学生的基本信息可以通过管理员进行更新,以便纠正在输入基础数据中出现的错误,同时也为系统中新学生用户的加入提供添加功能。
4.3.2输出设计和输入设计
在系统的输入和输出设计上遵循的是既能满足用户需求又方便用户使用的原则。
输入界面的设计不仅考虑数据输入窗口的屏幕格式,而且考虑如何使输入数据的错误率尽可能的小,为此在程序设计中加入了对输入的数据的校验和判断等功能,例如在本系统中要求输入成绩的地方,在输入信息提交之前先要检查成绩框中输入的是不是数字信息,如果不是数字就会提示错误信息并要求重新输入,在一定程度上保证了数据库中成绩一栏中的数据均以数字形式出现。
图17为管理员进行成绩查询的查询条件输入界面,在界面中学期、班级和课程均使用下拉列表的形式进行输入,将数据库中已经存在的信息全部显示在下拉列表中以供管理员从中选择,大大避免了因为个人输入习惯不同而导致的错误,例如在输入学期时有些用户输入2003秋季学期,也有些用户输入2003下学期,造成数据的不一致性,通过查询可能会产生不同的结果,也为程序设计带来了大量的不便。
图17管理员查询成绩界面
4.4信息系统体系结构及物理配置方案设计
4.4.1信息系统体系结构设计
在本次开发的学院成绩查询系统中采用C/S体系结构。
C/S又称Client/Server或客户/服务器模式。
服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如SQLServer。
客户端需要安装专用的客户端软件。
C/S的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。
对应的优点就是客户端响应速度快。
系统的体系结构图如图18所示:
图18系统体系结构图
4.4.2物理配置方案设计
在系统运行过程中需要进行配置的主要是对数据源的配置,通过ODBC数据源连接数据库,方法是在“控制面板/管理工具/ODBC数据源”下建立系统数据源,然后定义一个变量,让它等于这个数据源名就可以实现连接了。
但是要注意的是在连接过程中需要将数据库中sa的登录密码设置为空,并且将数据库该为混合登录模式:
即在数据库组属性中将安全性中的身份认证设置成SQLServer和Windows的混合模式,只有这样才能正确建立数据源,实现与数据库的连接。
4.5软件开发工具选择
ASP.NET是ActiveServerPages的缩写,中文名字是“动态服务器页面”,使用ASP.NET可以创建和运行动态、交互的Web服务器应用程序。
动态网页是指该页面内容可以根据访问时间、访问者等不同因素动态生成,网页中可以包括动态文字、声音和动画。
ASP.NET具有如下特点:
(1)使用.NET,C#等简单易懂的脚本语言,再结合HTML代码,就可以快速的创建网站元素;
(2)无须进行编译,容易编写,可以在服务器直接执行;
(3)使用普通的文版编译器,如记事本等即可进行编辑设计;
(4)与浏览器无关,客户端只要使用可执行HTML代码的浏览器,即可浏览ASP.NET的网页内容;
(5)ASP.NET的源程序不会被传到客户端浏览器,因而可以避免所写的源程序被他人剽窃,提高了程序的安全性;
鉴于以上所述的ASP.NET的特点和在本科阶段学习的信息系统的基础,在本系统开发过程中选择使用ASP.NET+C#来进行系统的开发,并在FrontPage2000下进行程序的编写。
5系统实施
5.1典型程序设计说明
5.1.1用户登录系统界面设计
本系统由两个不同的登录界面:
管理员模式和学生模式。
无论以什么模式登录该系统,都需要对用户输入的用户名和密码进行检查,只有合法的用户才可以成功登录到系统中,以管理员模式登录的界面如下图19所示:
图19管理员模式登录界面
用户在输入完成帐号和密码并点击“登录”按钮后,就会运行系统的下列脚本程序:
<
%strurl=request.servervariables("
SCRIPT_NAME"
)
ifrequest.servervariables("
CONTENT_LENGTH"
)<
>
0then
dimconn
sno=trim(request.form("
sno"
))
pwd=trim(request.form("
pwd"
setconn=server.createobject("
adodb.connection"
conn.open"
DSN=score;
UID=sa;
PWD=;
"
Ifsno="
Then
Response.Write"
script>
alert('
请填写学生学号!
'
);
window.locaton='
default.asp'
;
/script>
ElseIfpwd="
Response.Write"
Script>
请输入密码!
/Script>
else
setRs=server.createobject("
adodb.recordset"
Rs.open"
Select*fromstudentWheresno='
&
sno&
"
conn,3,3
ifrs.eofandrs.bofthen
response.write("
该用户不存在!
response.write"
ahref="
&
strurl&
返回<
/a>
elseifpwd<
rs("
)then
response.write("
密码错误!
else
session("
)=sno
class"
)=rs("
response.redirect"
seek.asp"
endif
'
关闭数据连接%>
在这段脚本程序中,系统首先判断提交的页面内容是否存在,如果存在就会继续判断帐号和密码是不是为空,如果出现为空的状况则提示用户输入相关内容并返回到原来的登录模式下,如果帐号和密码都已经输入,则进行数据库连接,并在数据库中查询用户输入的帐号和密码是不是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 河南 城建 学院 信息 系统分析 设计 课程设计 报告