高校学生选课系统需求分析Java.docx

上传人:b****5 文档编号:8224226 上传时间:2023-01-30 格式:DOCX 页数:29 大小:3.34MB
下载 相关 举报
高校学生选课系统需求分析Java.docx_第1页
第1页 / 共29页
高校学生选课系统需求分析Java.docx_第2页
第2页 / 共29页
高校学生选课系统需求分析Java.docx_第3页
第3页 / 共29页
高校学生选课系统需求分析Java.docx_第4页
第4页 / 共29页
高校学生选课系统需求分析Java.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

高校学生选课系统需求分析Java.docx

《高校学生选课系统需求分析Java.docx》由会员分享,可在线阅读,更多相关《高校学生选课系统需求分析Java.docx(29页珍藏版)》请在冰豆网上搜索。

高校学生选课系统需求分析Java.docx

高校学生选课系统需求分析Java

目录

1绪论1

1.1研究背景与来源1

2系统开发技术及其工具的介绍1

2.1系统开发技术1

2.2JSP动态网页编程技术1

2.3系统开发工具2

2.3.1MyEclipse介绍2

2.3.2Oracle10g数据库2

2.4开发平台搭建3

2.4.1JDK环境变量配置3

2.4.2安装与配置Tomcat服务器4

3系统总体功能需求分析4

3.1学生选课功能需求分析5

3.2选课信息管理功能需求分析5

3.3用户管理功能需求分析6

3.4系统各个用户功能需求分析6

3.4.1学生功能需求分析6

3.4.2教师功能需求分析7

3.4.3学院管理员功能需求分析7

3.4.4系统管理员功能需求分析8

4系统结构设计8

4.1系统主要模块功能分析8

4.1.1登陆验证功能分析8

4.1.2查询选修课程信息功能需求分析9

4.1.3删除选修课程信息功能需求分析10

4.1.4修改选修课程信息功能需求分析10

4.1.5添加选修课程信息功能需求分析11

4.1.6用户管理功能需求分析12

4.1.7修改密码功能需求分析13

4.2系统数据库设计13

4.2.1数据库概念结构设计14

4.2.2数据库逻辑设计18

4.2.3数据库物理结构设计19

5系统详细设计及实现21

5.1登录页面展示21

5.2教师查询选修课信息22

5.3教师提交选修课程22

5.4教师查询选课情况23

5.6学生网上选课23

5.7学生删除已选课程重选24

6系统测试24

6.1系统功能测试25

6.2系统性能测试25

6.3测试评价结果26

7总结与展望26

参考文献27

高校学生选课系统需求分析

1绪论

1.1研究背景与来源

现在,大学校园里几乎每个大学生都配备一台笔记本,网络已经深入到大家的生活,传统纸质版的学生选课已经跟不上时代的进程,还会浪费大量的人力物力,在二十一世纪集数字化、信息化、网络化的时代,面对高等院校庞大的数据量,为减轻教师的工作量以及学生的负担,我们开发高校学生选课系统。

2系统开发技术及其工具的介绍

2.1系统开发技术

MVC(模型-视图-控制器)是一种软件设计模式,至今已被广泛使用,最近几年被推荐为Sun公司J2EE平台的设计模式。

它强制性的使应用程序的输入、处理和输出分开。

使用MVC应用程序被分成三个核心部件:

模型、视图、控制器。

它们各自处理自己的任务。

(1)视图。

视图是用户看到并与之交互的界面。

MVC一个大的好处是它能为你的应用程序处理很多不同的视图。

在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。

(2)模型。

模型表示企业数据和业务规则。

在MVC的三个部件中,模型拥有最多的处理任务。

被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。

由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。

(3)控制器。

控制器接受用户的输入并调用模型和视图去完成用户的需求。

首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。

最典型的MVC模式是JSP+Servlet+JavaBean,而在本系统中我们用Struts来代替Servlet,实现程序的控制层。

2.2JSP动态网页编程技术

JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。

JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。

当Web服务器遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。

插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

所有程序操作都在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此只要有浏览器就能浏览,这样也就减轻了客户端的负担,大大提高了交互的速度。

JSP页面是彻底与平台无关的,不论是它的动态Web页面和其隐含的服务器端组件。

用户可以在任意一个平台上编写动态Web页面,然后在任何一个支持JSP的Web服务器上运行,通过任何一个Web浏览器来访问。

其次,JSP技术支持使用可重用、跨平台的服务器端组件JavaBean。

能大大减少程序的开发时间。

提高了开发的效率。

最后,JSP页面是Java企业级平台的重要组成部分,可以用支持JSP技术的Web服务器作为前端,开发出强大的企业级或者中间层服务器端应用。

要想所有的客户端将得到更新,只需要更新驻留在服务器上的组件和动态Web页面。

JSP是在Java的基础上开发出的,它实现了动态页面与静态页面的分离,基本上脱离了硬件平台的束缚以及编译后运行等方式,大大提高了其执行效率而逐渐成为Internet上的主流开发工具。

本系统加入Struts框架,在页面引入Struts的标签库以及OGNL表达式。

2.3系统开发工具

2.3.1MyEclipse介绍

MyEclipse企业级工作平台是对Eclipse的扩展,利用它我们可以在数据库和JavaEE的开发、分布以及应用程序服务器的整合方面极大地提高工作效率。

它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Structs2、JSP、CSS、Javascript、Spring、SQL、Hibernate。

MyEclipse是一个十分优秀的用于开发Java、J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。

MyEclipse目前支持JavaServlet、AJAX、JSP、JSF、Struts、Spring、Hibernate、EJB3,JDBC数据库链接工具等多项功能。

可以说MyEclipse几乎囊括了目前所有主流开源产品的专属Eclipse开发工具。

2.3.2Oracle10g数据库

Oracle10g在原有的版本上,实现了两个目标

降低管理开销,

提高性能。

Oracle10g的增强有对高可用性的增强、新的Flashback能力、支持回滚更新操作;对安全性的增强;便于管理大量的用户;BI方面的增强包括改进的SQL能力、分析功能、OLAP、数据库挖掘的能力等;对非关系数据库存储的能力得到了改进,XML的能力;对开发能力支持的加强,对生物信息学的支持。

2.4开发平台搭建

2.4.1JDK环境变量配置

首先,在J2SDK并完成安装,本系统采用的是J2SDK1.5.0进行测试;安装完成后,就要设置环境变量。

我们的系统是WindowsXP,所以用鼠标右键单击“我的电脑”图标;然后在弹出的快捷菜单中选择“属性”命令,在打开的“系统属性”对话框中单击“高级”标签,打开“高级”选项卡,单击“环境变量”按钮,出现如图1所示的对话框。

图1环境变量配置

在图1中,首先单击系统变量列表框下面的新建按钮,依次新建classpath、java_home以及path环境变量,其内容如下所示:

Java_home=d:

\ProgramFiles\Java\jdk1.5.0;

Classpath=.;d:

\ProgramFiles\Java\jdk1.5.0\lib\tools.jar;d:

\ProgramFiles\Java\jdk1.5.0\lib\dt.jar;

Path=d:

\ProgramFiles\Java\jdk1.5.0\bin

完成以上设置后,打开一个DOS窗口,键入javac和java进行测试,如果显示的是这两个命令的使用说明,就表明JDK安装成功,否则需重新检查是否配置成功。

2.4.2安装与配置Tomcat服务器

Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选;同时Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

由于Tomcat技术先进、性能稳定,而且免费,运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,它和IIS、Apache等Web服务器一样,具有处理HTML页面的功能;因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器,所以本系统将采用Tomcat作为Web服务器和应用服务器。

首先,在Java的官方站点下载Tomcat后,按照提示完成安装;安装完毕后,然后,启动服务器进行各种设置,一般都采用默认设置;最后,按照JDK的方法创建系统变量,在变量名中输入TOMCAT_HOME,在变量值中输入Tomcat的根目录,然后单击“确定”按钮。

配置完成后,要重新启动计算机后环境变量才能有效。

3系统总体功能需求分析

高校学生选课系统是为学校实现选课信息化所开发的系统,以满足学校信息化教学的需求。

主要实现一下功能:

(1)学生选课

(2)选课信息管理(3)用户管理主要功能模块。

每个功能模块都细分为多个模块,利用本系统更好地完成高校学生选课。

系统功能例图如图2所示:

图2系统功能图

3.1学生选课功能需求分析

图3学生选课功能图

3.2选课信息管理功能需求分析

教师添加、修改、删除、查询个人的课程,学院管理员修改、删除、查询本院教师的课程,系统管理员查询全校教师的课程。

图4选课信息管理功能图

3.3用户管理功能需求分析

图5用户管理功能图

3.4系统各个用户功能需求分析

3.4.1学生功能需求分析

图6学生功能图

3.4.2教师功能需求分析

图7教师功能图

3.4.3学院管理员功能需求分析

图8学院管理员功能图

3.4.4系统管理员功能需求分析

图9系统管理员功能图

4系统结构设计

4.1系统主要模块功能分析

4.1.1登录验证功能分析

图10用户登陆流程图

4.1.2查询选修课程信息功能需求分析

图11查询选修课程信息流程图

4.1.3删除选修课程信息功能需求分析

图12删除选修课程信息流程图

4.1.4修改选修课程信息功能需求分析

图13修改选修课程信息流程图

4.1.5添加选修课程信息功能需求分析

图14添加选修课程信息流程图

4.1.6用户管理功能需求分析

图15用户管理功能流程图

4.1.7修改密码功能需求分析

图16修改密码功能流程图

4.2系统数据库设计

数据库设计是本系统建成的基础和依据,是本系统是否成功的关键所在,通过对系统的基本了解,收集支持系统的基础数据并对其进行处理,在此基础上确定系统的功能。

建立数据库时必须考虑到系统的整体架构,比如系统需要几张表以及表中的字段如何、表与表之间的约束关系等。

本数据库设计将分为三个阶段:

第一个阶段是数据库概念结构设计阶段,将现实世界的具体要求抽象为信息世界的结构,采用E-R模型设计概念结构;第二阶段是数据库逻辑结构设计阶段,它独立于任何一种数据模型,独立于任何一个具体的DBMS(数据库管理系统),是从信息世界到计算机世界的一次过渡,得到具体要求的数据库;第三阶段是数据库的物理结构设计阶段,主要是针对Oracle10g这一特定数据库而做的设计,在满足系统需求基础上充分发挥此数据库的存储管理数据的优势。

4.2.1数据库概念结构设计

概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。

本系统数据库概念结构设计使用概念结构设计阶段的有力工具E-R模型,它有以下优点:

(1)设计简易,便于组织管理;

(2)较逻辑模型更为稳定;(3)容易为用户所理解,因而更能准确反映用户的信息要求。

实体属性设计

系统用户实体

系统用户实体有以下属性来描述:

zgh(教师职工号)、username(用户姓名)、role(角色)、ssxy(所属学院)、psw(密码)。

该实体E-R图如图17所示:

图17用户实体E-R图

教师实体

教师有以下属性来描述:

zgh(职工号)、jsxm(教师姓名)、szxy(所在学院)、psw(密码)。

该实体E-R图如图18所示:

图18教师实体E-R图

学生实体

学生实体有以下属性来描述:

xh(学号)、xm(姓名)、nj(年级)、szxy(所在学院)、zymc(专业名称)、xzb(行政班)、psw(密码)。

该实体E-R图如图19所示:

图19学生实体E-R图

课程信息实体

课程信息实体有以下属性来描述:

xn(学年)、xq(学期)、xkkh(选课课号)、kcmc(课程名称)、xf(学分)、zxs(周学时)、kcxz(课程性质)、kcgs(课程归属)、kkxy(开课学院)、kkjs(开课教师)、sksj(上课时间)、skdd(上课地点)。

该实体E-R图如图20所示:

图20课程实体E-R图

选课任务实体

学生选课有以下属性描述:

xn(学年)、xq(学期)、xkkh(选课课号)、xh(学号)、xm(姓名)、zymc(专业名称)。

该实体E-R图如图21所示:

图21选课任务实体E-R图

学院信息实体

学院信息实体有以下属性描述:

xydm(学院代码)、xymc(学院名称)。

该实体E-R图如图22所示:

图22学院信息实体E-R图

专业信息实体

专业信息实体有以下属性描述:

zydm(专业代码)、zymc(专业名称)。

该实体E-R图如图23所示:

图23专业信息实体E-R图

实体及实体之间联系综合E-R图

实体和实体及实体内部之间不是孤立的,它们之间存在着某种联系。

本系统中实体及实体之间联系的综合E-R图如图所示:

图24实体与实体之间联系综合E-R图

4.2.2数据库逻辑设计

逻辑结构设计的任务就是把概念结构设计阶段设计好的E-R图转换为关系数据库的关系模式。

转换后的关系模式独立于任何关系数据库,它由两部分组成:

关系模式名称和组成关系模式的各属性名。

其中关系模式的主键由加下划线的属性或属性组组成。

转化后的关系模式如下:

Admin:

(zgh,username,role,ssxy,psw);

Jsxxb:

(zgh,jsxm,szxy,psw);

Xsjbxxb:

(xh,xm,xb,nj,szxy,zymc,xzb,psw);

Kcxxb:

(xn,xq,xkkh,kcmc,xf,zxs,kcxz,kcgs,kkxy,kkjs,sksj,skdd);

Xsxkb:

(xn,xq,xkkh,xh,xm,zydm);

Xydmb:

(xydm,xymc);

Zydmb:

(zydm,zymc,ssxy);

上述转化后的关系模式与数据库概念结构设计阶段中E-R图中的实体并不是一一对应的,它是按照E-R图向关系模式转化规则完成的。

4.2.3数据库物理结构设计

数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于本系统所选定的Oracle10g数据库管理系统。

根据数据库逻辑结构设计,把关系模式转化成Oracle10g所支持的数据类型,即根据数据库的逻辑结构设计成Oracle10g中的表,以完成数据库的物理结构设计。

针对本系统应用需求,需要建立以下十四个物理表:

用户表(admin)、教师(jsxxb)、学生基本信息表(xsjbxxb)、学生选课表(xsxkb)、课程信息表(kcxxb)、学院代码表(xydmb)、专业代码表(zydmb)。

各个表的结构如下:

表1用户表

字段名

数据类型

长度

必填字段

说明

ZGH

VARCHAR2

20

职工号

USERNAME

VARCHAR2

20

用户名

ROLE

VARCHAR2

20

角色

SSXY

VARCHAR2

40

所属学院

PSW

VARCHAR2

20

密码

表2教师信息表

字段名

数据类型

长度

必填字段

说明

ZGH

VARCHAR2

20

职工号

JSXM

VARCHAR2

20

教师姓名

SZXY

VARCHAR2

40

所在学院

PSW

VARCHAR2

20

密码

 

表3学生基本信息表

字段名

数据类型

长度

必填字段

说明

XH

NUMBER

20

学号

XM

VARCHAR2

20

姓名

XB

VARCHAR2

20

性别

NJ

VARCHAR2

20

年级

SZXY

NUMBER

40

所在学院

ZYMC

NUMBER

40

专业名称

XZB

NUMBER

20

行政班

PSW

VARCHAR2

20

密码

表4课程信息表

字段名

数据类型

长度

必填字段

说明

XN

VARCHAR2

20

学年

XQ

VARCHAR2

20

学期

XKKH

VARCHAR2

20

选课课号

KCMC

VARCHAR2

20

课程名称

XF

VARCHAR2

20

学分

ZXS

VARCHAR2

20

周学时

KCXZ

VARCHAR2

20

课程性质

KCGS

VARCHAR2

20

课程归属

KKXY

VARCHAR2

20

开课学院

KKJS

VARCHAR2

20

开课教师

SKSJ

VARCHAR2

20

上课时间

SKDD

VARCHAR2

20

上课地点

表5学生选课表

字段名

数据类型

长度

必填字段

说明

XN

VARCHAR2

20

学年

XQ

VARCHAR2

20

学期

XKKH

VARCHAR2

20

选课课号

XH

VARCHAR2

20

学号

XM

VARCHAR2

20

姓名

ZYDM

VARCHAR2

20

专业代码

表6学院代码表

字段名

数据类型

长度

必填字段

说明

XYDM

NUMBER

20

学院代码

XYMC

VARCHAR2

20

学院名称

表7专业代码表

字段名

数据类型

长度

必填字段

说明

ZYDM

VARCHAR2

20

专业代码

ZYMC

VARCHAR2

20

专业名称

SSXY

VARCHAR2

20

所属学院

5系统详细设计及实现

在完成学生选课系统的概要设计后,下一步工作就是对本系统做更为详尽的详细设计阶段。

本阶段主要工作就是对前期确定下来的功能模块进行细化,为后期系统的顺利编程实现打下坚实基础。

并在本系统详细设计的基础上,严格按照详细设计所确定的功能模块对系统进行编码实现。

该系统采用基于MVC模型的B/S架构,N层体系结构,即,Model(模型)层、View(视图)层、Controller(控制器)层、数据层(数据库),如图25所示:

图25系统体系结构

5.1登录页面展示

图26登陆页面

5.2教师查询选修课信息

用户登录时将用户名存放在session中,以下页面的用户名直接从session中获取

图27教师查询选课

5.3教师提交选修课程

图28教师添加选课

5.4教师查询选课情况

图29查询选课情况

5.6学生网上选课

图30学生网上选课

5.7学生删除已选课程重选

图31学生选课管理

6系统测试

对高校学生选课系统测试时,采用黑盒测试方法,整个过程采用自底向上,逐个集成的的办法,对系统的软件界面和功能进行测试,看是否能都适当地接受输入数据而产生正确的输出信息。

6.1系统功能测试

高校学生选课系统的系统测试与传统的软件测试既有相同之处,也有不同的地方,对软件测试提出了新的挑战。

不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端的显示是否合适。

重要的是,还要从最终用户的角度进行安全性和可用性测试。

为了做好性能测试,在性能测试之前,我们应先进行功能测试。

因为系统的各项功能不过关。

则性能测试无从入手,且对性能测试造成误差影响,功能测试是性能测试的前提。

6.2系统性能测试

性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样。

性能测试可分为三个方面:

应用在客户端性能的测试、应用在网络上性能的测试和应用在服务器端性能的测试。

通常情况下,三方面有效、合理的结合,可以达到对系统性能全面的分析和瓶颈的预测。

对本系统完成了以下三个方面的系统性能测试:

(1)链接测试;

(2)表单测试;(3)数据库测试。

链接是高校学生选课系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。

链接测试可分为三个方面:

(1)测试所有链接是否按指示的那样确实链接到了该链接的页面;

(2)测试所链接的页面是否存在;(3)保证高校学生选课系统上没有孤立的页面。

表单在本系统中担当着很重要的角色,获取选课信息并提交到系统处理逻辑处理,如用户注册、登陆、选修课程信息提交、课程信息查询等。

在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性及表单使用默认值的正确性。

如教师添加选修课程信息时填写的格式是否正确。

若只能接受某些字符,当遇到其它字符时,看系统是否会报错。

数据库在学生选课系统中起着非常重要的作用,该系统可以说完全以数据库为基础,如果没有数据库,该系统无法实现其特定的功能,它为系统的管理、运行、查询和实现用户对数据存储的请求等提供数据支持。

在对关系型数据库操作时,使用SQL语言可能发生两种错误:

数据一致性错误和输出错误。

数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的。

测试项目及内容:

测试1:

用户登录模块测试

目的:

测试用户登录界面。

内容:

帐号口令输入、合法性检查,系统操作界面显示控制。

测试2:

课程信息管理模块测试。

目的:

测试管理员以及教师对课程信息管理功能。

内容:

包括供选修的课程、上课时间、上课地点、选课人数的限制等信息修改时的合法性检查及页面显示时的布局测试

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1