学生选课系统《软件工程》课程设计_很详细的

更新时间:2023-06-07 07:00:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

目 录

一、问题定义............................................. 4

1.1问题的定义 ........................................................ 4 1.2 系统要解决的问题 ................................................. 4

二、可行性研究 ........................................... 5

2.1 引言 ............................................................ 5

2.1.1目的 ................................................................. 5

2.1.2背景及功能 ........................................................... 5 2.1.3 参考资料 ........................................... 错误!未定义书签。

2.2 可行性研究的前提 ................................................. 5

2.2.1 要求 ................................................................. 5 2.2.2 目标 ................................................................. 6 2.2.3 条件、假定和限制 ..................................................... 6 2.2.4 进行可行性研究的方法 ................................................. 6

2.3 所建议的系统 ..................................................... 6

2.3.1 对所建议系统的说明 ................................................... 6 2.3.2 处理流程和数据流程 ................................................... 6 2.3.3 工作负荷 ............................................................. 8 2.3.4技术条件方面的可行性 .................................................. 8

2.4 社会因素方面的可行性 ............................................. 8

2.4.1 法律方面的可行性 ..................................................... 8 2.4.2 使用方面的可行性 ..................................................... 8

2.5 经济可行性 ....................................................... 9 2.6 结论 ............................................ 错误!未定义书签。

三、项目开发计划 ......................................... 9

3.1 引言 ............................................................. 9

3.1.1 编写目的 ............................................................. 9

3.1.2 背景 ................................................................. 9 3.1.3 参考资料 ............................................ 错误!未定义书签。

3.2 项目概述 ......................................................... 9

3.2.1 工作内容 ............................................................. 9 3.2.2 产品 ................................................................ 10 3.2.4 完成项目的最迟期限 .................................................. 10 3.2.5 关键问题及支持的系统条件 ............................................ 10

3.3 支持条件 ........................................................ 10

四、需求分析............................................ 11

4.1 系统需求 ........................................................ 11

4.2. 功能需求 ....................................................... 11 4.3业务流程图 ....................................................... 11

五、 概要设计 ........................................... 13

5.1 基本设计概念和处理流程 .......................................... 13 5.2. 系统层次模块图 ................................................. 13 5.3. 系统层次模块图 ................................................. 13 5.4. 模块设计 ....................................................... 13

六、数据库设计 .......................................... 14

6.1 引言 ............................................................ 14

6.1.1 编写目的 ............................................................ 14

6.1.2 背景 ................................................................ 15 6.1.3 定义 ................................................................ 15 6.1.4 参考资料 ............................................ 错误!未定义书签。

6.2 外部设计 ........................................................ 15

6.2.1 标识符和状态 ........................................................ 15 6.2.2 使用它的程序 ........................................................ 15 6.2.3 约定 ................................................................ 15 6.2.4 专门指导 ............................................................ 16 6.2.5 支持软件 ............................................................ 16

6.3 结构设计 ........................................................ 16 6.4 运用设计 ........................................................ 20

6.4.1 数据字典设计 ........................................................ 20 6.4.2 安全保密设计 ........................................................ 20

七、详细设计............................................ 21

7.1 引言 ............................................................ 21

7.1.1 编写目的 ............................................................ 21 7.1.2 背景 ................................................................ 21 7.1.3定义 ................................................................. 21 7.1.4 参考资料 ............................................ 错误!未定义书签。

八、测试报告............................................ 21

8.1 引言 ............................................................ 21

8.1.1 编写目的 ............................................................ 21 8.1.2 定义 ................................................................ 21 8.1.3 参考资料 ............................................................ 22

8.2 测试概要 ........................................................ 22 8.3 测试结果及发现 .................................................. 25

8.3.1 测试具体实施 ........................................................ 25

8.4 对软件功能的结论 ................................................ 25

8.4.1 用户登录模块 ........................................................ 25

8.5 分析摘要 ........................................................ 26

8.5.1 能力 ................................................................ 26 8.5.2 评价 ................................................................ 26

8.6 测试资源消耗 .................................... 错误!未定义书签。

九、用户手册............................................ 26

9.1 引言 ............................................................ 26

9.1.1 编写目的 ............................................................ 26 9.1.2 定义 ................................................................ 26 9.1.3 参考资料 ............................................................ 26

9.2 用途 ............................................................ 26

9.2.1 功能 ................................................................ 26 9.2.2 性能 ................................................................ 27 9.2.3 安全保密 ............................................................ 27

十、附录 ............................................... 29

10.1 数据库的封装代码DB.java ........................................ 29 10.2 选课系统登陆界面代码Login.java ................................. 30 10.3 选课系统学生选课界面代码Student.java ........................... 34 10.4 学生选课情况查询代码Query.java ................................. 38 10.5 学生用户登录密码的修改代码Modify.java .......................... 41 10.6 教师查询学生选课的情况代码Teacher.java ......................... 44 10.7 超级管理员查询学生选课的情况代码Administrator.java ............. 46

一、问题定义

1.1问题的定义

学生选课系统:也称学生课程选修制,即允许学生对学校所开设的课程有一定的选择自由,包括选择课程、任课教师和上课时间,选择适合自己的学习量和学习进程。对于习惯了中小学课程(所有的课程由学校统一安排,而且科目从小学到高中有连续性)的大学新生来说,大学的课程多得令他们眼花缭乱,课程分类也比较复杂,因此选课对他们而言还是一件新鲜而陌生的事物。但大学的学习与选课有莫大的关系,必须了解它,才能掌握主动权。而要了解选课制,首先要对大学的课程设置有所认识。

1.2 系统要解决的问题

建立一个小型的学生选课系统,用户(学号,姓名,年龄,性别,系别,班级,出生年月)可以注册成为会员,注册的用户可以选择要选修的课程,也可以查询已选修的课程(包含课程名、任课教师和上课时间,学分)等,老师(姓名,职位,所教课程)可以查看该门课程的选课人数及上课时间,管理员可以查看所有学生的选课情况,查看各门课程的任课老师的信息,查看各门课程选课人数,查看注册用户信息。

二、可行性研究

2.1 引言 2.1.1目的

本项目开发计划旨在明确规范开发过程,保证项目质量,

同时还作为项目通过评审的依据。并说明

该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理 地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理 由。

2.1.2背景及功能

A、系统的名称为学生选课系统(Java实现);

2.2 可行性研究的前提 2.2.1 要求

A、功能: 1) 普通用户:

登录系统前用户可以查看用户选课的情况;用户可以注册;查找忘记的密码;查看自己选课的一些相关信息。

B、性能:查询效率尽可能做到精准,信息维护做到简单易用,不需要对用户进行培训; C、完成期限:到本学期的第21 周。

2.2.2 目标

系统应该尽量做到以下的目标: A、人力与设备费用的减少; B、采用现代程序设计技术; C、数据的处理速度提高; D、管理信息服务的改进; E、人员利用率尽可能提高; F、结果应能清除地审查。

2.2.3 条件、假定和限制

本系统的条件、假定和所受到的限制有以下几方面: A、所开发系统的运行寿命的最小值为3 年;

B、硬件、软件、运行环境和开发环境方面的条件和限制:由于是个人电脑, 所以硬件设施可能在性能上比较差;软件全部是免费的,功能可能会受到相应的 限制;对windows xp比较熟悉,所以开发主要是在这个平台上进行的; C、可利用的信息和资源:没有相应的软件项目开发的经验,所以能力还是 有限,收集的资料来源有限,故对信息的了解不够全面;

2.2.4 进行可行性研究的方法

根据课本里面的相关知识、图书馆所借的书以及平时所积累的一些经验,综 合本系统所要达到的目标进行分析而得到。

2.3 所建议的系统

2.3.1 对所建议系统的说明

本系统是运用Java制作的一个小型学生选课系统系统,包括用户注册,选课查询。实现这个系统将用到以下几种技术: 1) Java主要是用来处理各种业务; 2) 数据库系统技术。

2.3.2 处理流程和数据流程

系统的处理流程图见下图所示:

学生登录及选课情况:

教师登录及查看信息:

管理员登录及管理信息:

2.3.3 工作负荷

现有系统所承担的工作及工作量: 1)系统功能:

(1) 登录、注册,修改密码等功能. (2) 选课功能 (3) 查询功能

2)由于现有开发的系统比较小,只涉及小量的数据,所以工作量小。

2.3.4技术条件方面的可行性 2.4 社会因素方面的可行性 2.4.1 法律方面的可行性 2.4.2 使用方面的可行性

本系统一经制作完成,可以在windows系统中运行,加之本系统操作上面不存在技术性,所以可以达到易操作性。

2.5 经济可行性

三、项目开发计划

3.1 引言 3.1.1 编写目的 3.1.2 背景

说明:

待开发的软件系统的名称:学生选课系统;

3.2 项目概述 3.2.1 工作内容

本项目的内容包括技术和非技术两大部分:技术上需要进行数据库开发和java技术的基本使用。非技术部分包括:人力资源的充分利用。

3.2.2 产品 3.2.2.1 程序 3.2.2.2 文件

3.2.2.3 服务

A、用户方面:可以登录、注册、查询等;

B、系统方面:查看注册用户信息、管理系统的各种信息、查看系统的信息。 C、老师方面:查看学生选课情况、

3.2.3 验收标准

3.2.4 完成项目的最迟期限 3.2.5 关键问题及支持的系统条件

本项目用到了Java程序设计和数据库系统技术应用等开源的框架,所以对学生选课系统的功能的实现可能欠缺。

3.3 支持条件

A、运行该软件系统所需要的硬设备包括服务器和客户机,要求满足(最低 配置):

1) 1G Hz 以上处理器,内存不少于256M。 2) 3G 以上空余硬盘空间。

3) 客户机为普通电脑。

B、本系统是运用Java制作的一个小型学生选课系统系统,包括用户注册,选课查询。实现这个系统将用到以下几种技术: 1) Java主要是用来处理各种业务;

2) 数据库系统技术(采用mysql数据库实现该系统)。

四、需求分析

4.1 系统需求

用户的需求具体体现在各种学习成绩的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构及数据处理的流程,组成一份详尽数据字典,为后面的具体设计打下基础。

4.2. 功能需求

通过系统功能分析,针对一般的网上选课系统,总结出如下的需求信息: (1) 学生的需求:网上选课、选课情况查询包括该门课程的老师信息,上课时间以及该门课程的学分,修改密码等;

(2) 本系统主要实现学生信息管理和选课查询。

学生信息包括学号,姓名,年龄,性别,系别,班级,出生年月; 课程信息包括课程名,上课时间,成绩,学分,学时数; 老师信息包括姓名,职位,所教课程;

管理员信息包括用户名和密码,能够查询所有学生的选课情况及信息;

4.3业务流程图

学生登录及选课情况:

教师登录及查看信息:

管理员登录及管理信息:

五、 概要设计

5.1 基本设计概念和处理流程

互联网技术的飞速发展,Java等设计工具的方便实用,以及数据库技术的发展给本系统的设计和实现提供了技术上的支持。

系统基本的流程是:用户登录->主界面->选择各项子系统(选课) 老师登录 ->主界面->选择各项子系统(查看学生选课情况) 管理员登录->主界面->选择各项子系统(管理学生选课)

5.2. 系统层次模块图

5.3. 系统层次模块图

5.4. 模块设计

(1) 用户注册模块:填写用户名、密码、确认密码

(2) 用户登录模块:填写已注册的用户名称,填写正确的密码,进入主控制页面。 (3) 用户选课模块:从所有课程中选择自己要选修的课程。 (4) 用户查询模块:可以进行查看所选课程的操作。

6.1 引言 6.1.1 编写目的

六、数据库设计

6.1.2 背景 6.1.3 定义

文件中用到的专门术语的定义和外文的首字母组词的原词组如下:

A、B/S:B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。B/S结构系统的产生为系统面对无限未知用户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的用户不可控的弱点; B、DBMS:英文全程:DataBase Management System ,翻译为中文就是“数据库管理系统”,是位于用户和操作系统之间的一层数据库管理软件。数据库管理系统和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。它的主要功能包括一下几个方面:1.数据定义功能。2.数据组织,存储和管理;3.数据操作功能。4.数据库的事物管理和运行管理。5.数据库的建立和维护功能。6.其他功能;

C、SQL语言:SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库

6.2 外部设计 6.2.1 标识符和状态

数据库软件:Mysql

系统要求建立的数据库名称:sc

6.2.2 使用它的程序 6.2.3 约定

6.2.4 专门指导

系统使用Hibernate实现与数据库的接口,该接口基于Hibernate方法生成 的CLASS文件对数据库的建立和控制,是应用程序与数据库的桥梁。最终是对 class文件操作来实现对数据库的管理(一般是一个数据表对应一个CLASS文 件)。

6.2.5 支持软件

Mysql提供了核心的引擎,为支持本系统的数据库BBS需要使用到Mysql 的几个组件,包括:

A、图形管理工具MySQL Administrator 和MySQL Query Browser; B、MySQL-front。提供了解决MySQL中插入中文乱码的问题;

C、Navicat Lite for MySQL。可以用来快速建立数据库,可拖拉式的MySQL插件。

6.3 结构设计

6.4 运用设计 6.4.1 数据字典设计

数据项名:username 说明: 用户登入名 别名: 无

数据类型:varchar 长度: 3-10 位置:用户信息表 数据项名:password 说明: 用户登入密码 别名: 无

数据类型:varchar 长度: 3-10 位置:用户信息表 数据项名:name 说明: 用户登入名 别名: 无

数据类型:varchar 长度: 3-10 位置:用户信息表

数据项名:dept 说明: 用户所在学院 别名: 无

数据类型:varchar 长度: 3-10 位置:用户信息表 数据项名:banji 说明: 用户所在班级 别名: 无

数据类型:varchar 长度: 3-10 位置:用户信息表 数据项名:lessons 说明: 用户所选课程 别名: 无

数据类型:varchar 长度: 3-10 位置:用户信息表

6.4.2 安全保密设计

一个系统,它的安全性是很重要的,尤其是数据库的安全性能,每当用户发出存取数据库的操作请求后,DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。为了让某些合法的用户得到一定的权限,数据库管理员可以授权给让他们。在一些敏感的数据上面采用了MD5算法进行加密,比如用户的登入密码,就算是数据泄漏,用户也不知道怎么登录系统。

七、详细设计

7.1 引言 7.1.1 编写目的

7.1.2 背景 7.1.3定义

JVM:Java Virtual Machine(Java 虚拟机),它是一个虚构出来的计算 机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java 虚拟 机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系 统。

八、测试报告

8.1 引言 8.1.1 编写目的

8.1.2 定义

A、白盒测试:白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。

B、黑盒测试:黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使

本文来源:https://www.bwwdw.com/article/nei1.html

Top