学生选课信息系统设计与实现.docx
- 文档编号:23222735
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:37
- 大小:737.20KB
学生选课信息系统设计与实现.docx
《学生选课信息系统设计与实现.docx》由会员分享,可在线阅读,更多相关《学生选课信息系统设计与实现.docx(37页珍藏版)》请在冰豆网上搜索。
学生选课信息系统设计与实现
毕业设计(论文)
题目
学生选课信息系统设计与实现
学生:
指导老师:
院系:
信息科学与工程学院
专业:
网络工程
班级:
网络工程10
学号:
31
2014年6月
学生选课信息系统的设计与实现
摘要:
在现代化的大学教育体系中随着电脑的普及以及internet的飞速发展,使大学里的各项工作的效率得到极大的提升,作为现在的大学需要开发一套属于自己的管理系统。
而设计一套完整的学生选课系统能够更佳便于学生在校的选课以及提高学校对选课信息的管理。
学生选课系统能够使选课工作标准化,模块化、系统化,能够解决选课信息的紊乱性,提高学校对信息的处理速度。
管理员和学生可以在第一时间对选课信息进行快速精确的查询和修改。
该系统主要实现:
管理员对学生,课程、教师及选修课相关信息的管理。
管理员角色登陆能够完成对其它角色的最高权限的增、删、查、改。
能够对选课信息进行管理。
学生角色登陆能够在首页查看到自己所有能够选修的课程及对课程进行选修和退选,并对自身的基本信息的查询和更改。
教师角色登陆能够查询自己开的课程的被学生选修的学生信息及对自身基本信息的修改。
关键字:
java、oracle、E-R图、web界面、表
Abstract:
With the university education system modernized and the rapidly developing of the internet and the popularization of computers,sothattheefficiencyoftheworkoftheuniversityhasbeengreatlyimproved,asauniversityneedtoopenaneweraoftheirownschooleducationalandotherinformationmanagementsystems.Thedesignofacompletesystemtobetterfacilitatestudentelectivecoursestudentsinschoolandtoimproveschoolmanagementinformationoncoursedesignedforhighefficiencysystem.Studentelectivecourseworksystemenablesstandardized,modular,systematic,cansolvetheimbalanceofenrollmentinformation,improveschoolofinformationprocessingspeed.Administratorsandstudentsforthefirsttimeonthecoursefastandaccurateinformationtoqueryandmodify.
Thesystemisachievedby:
Administratorsofthemanagementcourses,students,teachersandcourseinformation.Logintocompleteadditionaladministratorroletothehighestauthorityoftheotherroles,delete,search,change.Informationonthecoursecanbemanaged.Studentslandedrolesinthehomecanallbeabletoseeintotheirelectivecoursesandelectivecoursesandtowithdrawfromtheelection,andtoqueryandchangetheirbasicinformation.Landingtheroleofteacherscanchecktheiropencoursesareelectivesstudentsandstudentinformationchangestotheirbasicinformation.
Keywords:
java,oracle,E-Rdiagram,webinterface,Table
1系统开发现状背景意义及当前开发管理系统的一些技术及原理
1.1开发的背景和意义
随着全球Internet的飞速发展的今天,教育系统的现代化已经是一种不可逆的发展趋势。
通过电脑来对网上信息的管理已经成为现在教育的必须手段。
现在教师与学生间的信息可以完成高效的传递。
方便相互之间的沟通与合作。
但是信息安全和同步中一直是研究的热点。
现在的系统一般在建立资料是略显单独,缺乏共享性。
有时因为管理员的主观原因而错失了用户的正真需求。
对于正处于不断改革和创新阶段的教育体制应当吸取国内外的优秀教学体系,从而总结出一个是个中国的教学模式。
教学应该通过软件的方式对教学信息进行集中地管理。
所以学生选了信息系统在学校执行教务工作中是不可遗漏的一块。
根据学校教务的实际问题出发解决学生选课的难点问题,是工作人员从繁杂工作中解放出来。
使教学管理更加规范化和现代化。
在Internet的时代下,信息传递的快捷几乎可以达到实时的交换。
在这样一个信息库下,学生选课系统可以极大他提高学校和教师及学生的工作效率。
通过学生选课系统实现对个院系的选修课程进行第一时间的发布,学生和主教老师能在第一时间里获取选修课程的安排。
从而建造一种现代化的办学环境。
作为大学主要管理中的学生选课工作涉及的大学中的各个管理群体比较复杂,如果通过手工进行选课的话过程繁琐而且难免出错。
所以作为新时代的大学必须拥有一套自己的选课系统来节约大量的人力资源,同时能够方便学生的选课操做极大的促进学生对选修的积极性。
1.2国内外的发展现状
通过网络化管理的学生系统在国内外的大学已经开发使用多年。
各自的系统都能够完成选课业务中的基本功能。
从系统架构上看大多数采用C/S的模式,实现对数据的分布操作和集中存储。
选课系统能够尽可能的提高选课过程的工作效率,同时在稳定性和同步性面,追求数据的高速流通和集中管理以及快速共享。
在国外对于现代化的这种系统的使用基本上可以说是无处不在,它不仅适应了社会对现代大学生的全面发展的需求,而且极大的改善了传统教育中的学校体制,使学校能够通过Internet进行跨地域以及跨校间的高速交流与相互合作管理。
在国内随着信息化的深入,在教务系统中学生选课系统的建设与使用在高校中呈现出不断完善的发展趋势。
学生选课系统对于全日制的高校通过局域网就能够进行搭建和使用,使其搭建的成本低而且易于维护和完善。
在现在的高校选课系统中多用的系统一般是linux或者windows。
开发语言基本使用的是面向对象的语言如JAVA、C++、ASP等。
数据库常用的是ORACLE或者SQLSERVER等。
1.3相关理论及技术简介
本节主要讨论,现阶段对于开发管理系统方面主要用的一些相应用技术及系统理论等。
有利于后面对系统构架及开发工具上的选择。
1.3.1B/S构架简介
B/S架构从字面上理解是Browser和Server的组合,它是通过网页和后台共同搭建的一种流行架构。
B/S架构跟随着万维网的发展而不断完善,与C/S构架相比它更具优越性。
通过浏览器来实现用户界面,后台服务器基本完成的所有的事物逻辑运算,但也有少部分由前台来实现,从而构成三层结构模型。
以这样搭建的系统架构对于客户端的负荷量是非常小的,由于需求的网络拓扑简单,后台数据又是集中管理。
再管理难度方面也得到了很多的简化,极大的节约了人力和物理。
对于局域网下开发的B/S架构的网络应用,能够实现不同角色,从不同的地方,以不同的登入方式对同一数据库进行访问和操操作。
同时在结合java这样的面向对象的语言进行开发时B/S构架能够快速、高效、便于的对软件进行管理。
B/S架构的最大特点是:
WEB服务器通过不同的方式与数据库相连生成各种如文本、图像、数据、视频等的信息,提供用户从流量器中进行访问。
它的这种分步性的特点使业务能够被随时访问。
同时通过增加网页就能够增加服务器的功能所以在扩展性方面更加的简便。
对于维护方面通过简单的操作就能过使数据同步更新到所有用户中。
所以B/S架构是一个便于开发且共享性强的系统架构。
1.3.2MVC模型简介
MVC是由jsp+servlet技术的一种系统模型,它设计网页运用程序是一种以模型、视图、控制器相结合的形式来实现。
模型主要负责在数据库中存储数据,是应用程序数据处理的逻辑部分。
视图从字面上就可以得出他是用来处理数据的一种呈现的部分,它通过模型数据来创建并以不同角色以不同的形式呈现出来。
控制器从视图中读取数据,他还能控制不同用户的不同输入,最后向模型发生数据。
从而解决用户的交换功能。
MVC分层能够简化对复杂应用程序的管理,同时在MVC分层中他能够让不同的开发人员对系统进行同时的开发。
1.3.3java技术简介
在面向对象的诚信设计中的多种开发语言中,发展最迅速的莫过于java。
java由于它的高安全性,在不同的平台上的移植简单而且在开发上的高效率使它成为一个当今最流行的语言之一。
在个人PC、手机系统等的系统中应用广泛。
在全球拥有最大的开发群体。
Java的前景广阔,优势突出。
1.3.4oracle数据库简介
Oracle在当前来看是一个最受欢迎的主流数据库,同时它对B/S架构的上的系统支持度高。
它能够对数据进行完整的管理,在关心数据库方面它是一个关系完备的软件产品。
Oracle能够同时处理大量的数据运算速度快,保存永久,在数据的share和保真性方面处理的非常好。
所以ORACLE是属于安全性和可用性强,稳定性与扩展性优越的数句库系统。
1.4本文的组织和内容简介
本次设计主要涉及到系统的结构分析与各个部分的实现。
完成用户面的设计与后台数据的处理。
该系统参考福建工程学院的选课系统中一些功能进行设计。
实现选课系统的各项具体的实际需求。
使用软件工程项目的项目开发流程来看,从软件的需求分析到网网结构的设计与实现,以及学生选课信息系统的设计与实现的工作。
结果如下:
第一章:
阐述了本次设计的开发背景和意义以及发展状况。
主要介绍相关的概念和设计时用到的技术和方法
第二章:
对学生选了信息系统的调查和需求分析。
第三章:
论述系统的总体框架和各个模块的设计工作以及ORACLE数据库中各表的建立。
第四章:
系统详细模块设计。
第五章:
对学生选课系统的总体运行以及各模块测试。
2对学生选了信息系统的调查和需求分析
2.1学生选课信息系统的可行性分析
本节主要讲述系统开发需要的硬件、软件支持的条件,另外再通系统的基本要求再结合经济条件出分析开发的可行性。
2.1.1开发工具可行性分析
本次开发学生选课信息管理系统要求一台winxp或win7或win8的PC即可。
对于电脑的要求是能够运行java的各工具和oracle及tomcat等。
现在市面的出售的个人笔记本电脑就可以完成。
所以在现在的条件下开发该系统在技术可行性方面是完全能够都到满足的。
2.1.2系统的操作及经济可行性分析
本系统在人机界面方面充分以大众的习惯出发,尽量做到傻瓜式的操作界面,使操作人员能够最快速的适应操作界面。
对于数据的插入方面能够实现快速化、规范化并且有良好的扩张性。
是以经济实用的角度出发的一款产品,它能够通过网页进行登录可以最大限度的节约对电脑资源的占用。
在投入使用的过后可以的大限度的节约人力和物力。
再与开发成本相比前后,可以发现性价比是非常高的,所以在经济实用性方面可行性非常强。
2.2学生选课信息系统需求及业务分析
本节通过分析学生选课信息系统的要求结合前节可行性方面来分析各方面的需求
2.2.1学生选课信息系统功能需求分析
学生选课系统主要是为了实现不同院系的学生能够对自己系的选修课程完成选修和退选。
但是对于与一个选课系统必须要求有课程的录入而每个课程必须要有自己的主教老师。
所以系统的设计方面要对系统设计的登陆的角色必须要有管理员、学生、教师。
这三种角色需求的描述如下。
管理员:
主要是完成学生及教师角色的创建和修改及删除。
同时管理员能够进行对课程的排课和管理。
在教师、课程的删除操作时必须保证对应的老师开的课程没有被学生选修。
对于课程的删除也需要保证没有被学生选修。
所以管理员担任着对选课信息系统的信息管理和维护作用。
学生:
在登陆系统中主要能够完成对本院系的选修课程进行查询并进行选修和对以选课程进行推选。
同时对于学生自身的信息能够完成对所有信息的查询及对基本信息的修改如姓名、住址等。
在进行登陆密码修改时,新密码必须进行第两次确认。
教师:
在登陆后主要是可以通过系统查看有多少学生选修了自己开的的课程。
然后,能够对自身的所有信息的查询及对基本信息的修改如姓名、住址等。
在进行登陆密码修改时,新密码必须进行第两次确认。
所以通过这三者的需求系统主要是能够完成四大模块的设计。
一、对登陆界面的设计,登陆界面能够选择以什么角色进行登陆并进行登陆明密码的检测。
如果登陆名密码出错会跳出登录名密码错误。
二、作为管理员的登陆后的主界面,主要是能够完成学生、教师、课程的管理及维护。
三、作为学生登陆后的主界面。
在该页面中能够实现学生对自身能够选修的课程的查询和选修与退选,拥有个人信息的查询和修改入口。
四、作为教师的登陆后的主界面,教师能够在主要看到自己开的选修课程的被选情况。
然后是具备对个人信息的查询和修改的入口。
2.2.2学生选课信息系统的安全性需求
本次设计的系统是基于B/S架构开发的web软件,数据是oracle这样的大型数据库在数据的遍历及查询方面速度快。
所以系统一般拥有大量的用户群体,所以在登陆时应该解决数据库的安全访问用来防止网络攻击。
在使用IIS+java+oracle的方式下进行登陆系统时应该启用session认证。
在浏览器访问为解决在不同的界面地址不同单登陆后的地址在新的网下可以直接被访问所以需要解决这种安全漏洞。
2.3学生选课系统的结构化分析
系统界面结构出发主要是完成登陆界面的设计,而登陆界面要有选择登陆的角色,管理员、学生、教师。
这三者登陆后主要为三大结构,三个主页拥有各个功能的选择与操作。
系统界面结构图如图2.-1
学生选课信息系统
教师管理
学生管理
各系课程管理
选课程管理
选课操作
个人信息查询
个人信息修改
密码修改
密码修改
个人信息修改
个人信息查询
备选课程信息查询
学生登陆
教师登陆
管理员登陆
图2-1系统界面结构图
在程序结构中主要是使用MVC的模型,系统拥有三个基本部分:
控制器、模型及视图,三者的关系和功能如图图2-2
图2-2MVC架构模型功能关系图
对于数据结构需要有立学生表、教师表、课程表,如果对于学生系别应该在增加一个院系表,通过院系的ID号来筛选学生所在系的所以该系选修课程。
课程表中的元素“院系”与院系表的ID关联。
同样各表之间的都能够通过主键或者外键进行关联。
3系统的总体框架设计和数据库设计
3.1学生选课信息系统的设计思想
通过前一章对系统的调查和需求分析,可以总结得出系统的数据流向方向为:
不同角色通过人机界面输入数据或者数据请求,然后WEB页面接收指令或数据并对其进行处理分析,页面将分析结果数据发往后台,后台再对数据进行处理,根据数据的特定格式生成SQL语句,从而对数据库进行访问和操作,最后将结果通过视图界面返回给用户。
所以数据流的大体结构如图图3-1数据流结构图
图3-1数据流结构图
系统结构设计主要根据MVC的架模型进行对视图、模型、控制器进行设计和开发。
视图主要是提供人机界面与用户之间实现交互数据,并对用户数据进行初步的处理,使数据能够以准确的格式在控制器中进行处理。
不同的请求调用不同的控制层函数,然后控制层对数据进行处理,将处理后的数据发往数据模型,找到实现的方法。
从而完成对数据库的查询和操作。
本系统采用的是B/S的架构,服务器与客户端,从拓扑的结构来看采用的是点对多点的结构。
服务器主要包括tomcat网络服务器和oracle数据库服务器,它们共同承担数据库的各种功能如数据传输和存储等,通过监听网络和客户终端机连接。
从总体的设计上看本系统包括四大模块分别是:
登陆模块、学生首页、教师首页和管理员的管理界面。
各自的功能可以参考图2.1。
3.2学生选课信息系统的数据库设计
本节主要从数据库的概念设计、逻辑架构和物理架构来阐述学生选课信息系统的数据的设计。
概念主要通过E-R图来讲述。
逻辑架构主要通过主键约束、外键约束和属性约束来讲述。
物理架构通过表格的形式直接明了的进行描述。
3.2.1数据库概念设计
从前面的系统模块分析角度出发,系统涉及到的实体应该包括:
管理员、学生、教师、选修课程、院系。
一下通过E-R来论述各个实体的相关属性和联系。
图中用下划线来表示主键。
院系
身份证
班级
密码
专业
姓名
学号
姓名
管理员id
密码
邮箱
管理
管理员
学生
mn
电话
性别
名称
n
隶属
备注
院系id
ap
院系主任
联系电话
院系
1j
1
选修
管理
隶属
l
选课人数
课程id
m
课程
课程院系
课程名
管理
师生
课时
学分
c
执教
bdk
教师
职称
性别
姓名
密码
教师id
图3-2实体E—R图
从图3-2可以看出各个实体间的关系。
管理员能够对其它实体进行管理,从关系上看与其实体之间是多对多的管理与被管理关系。
院系实体和学生实体、课程实体之间的关系式是一对多的从属关系,学生实体和课程实体构成多对多的选修与被选修的关系,学生实体和教师实体则是多对多的师生关系。
教师与课程之间则是多对多的执教与被执教的关系。
对于个实体的属性则可以通过E-R得到确认,列如教师的属性有:
教师ID(该属性为本实体的主键)、密码、姓名、性别、职称。
3.2.2数据库逻辑设计及物理框架设计
通过上一章的E-R图出发可以得到数据库的关系数据模型如下:
管理员:
(管理员ID、密码、登陆名)
选修课程:
(课程号、课程名、学分、课时、课程所属院系、选此课程的学生数量)
选课信息:
(课成id、课程、学号、教师工号、成绩)
院系:
(院系ID、、名称、院系主任、主任电话、备注)
从这五个实体上数据库总共需要建立五个表:
学生表、教师表、管理员表、选修课程表以及院系表。
六个表的主键约束如下:
学生表的主键为学号;
教师表的主键为教师ID;
管理员表的主键为管理员ID;
选修课程表的主键为课程号;
选课信息表的主键为选课ID;
院系表的主键为院系ID。
外键约束如下:
学生表和选课信息表:
“选课信息_学号”为外键,参照学生表中的学号这个属性。
在数据库中这个外键约束应该起到受限删除、修改和插入等的策略。
学生表和院系表:
“学生_所在院系”为外键,参照院系表中的院系ID这个属性。
在数据库中这个外键约束应该起到受限删除、修改和插入等的策略。
选课信息表和选修课程表:
“选课信息_课程号”为外键,参照课程表中的课程号这个属性。
在数据库中这个外键约束应该起到受限删除、修改和插入等的策略。
选修课程表和院系表:
“选修课程_课程所属院系”为外键,参照院系表中的院系ID这个属性。
在数据库中这个外键约束应该起到受限删除、修改和插入等的策略。
属性约束如下:
在学生表和教师表的性别这个属性只能取“男”或“女”;
在学生表、院系表和课程表中的院系这个名称只能取学校已有的系别,可选项可参考下一章中提到的院系选择。
通过上面的论述各表的属性设计如下各表:
表3.1学生表
字段名
字段类型
字段中文名
备注
stt_id
Chr(10)
学号
主键
d_id
int
专业标识
stu_pwd
varchar2(16)
密码
stu_sex
varchar2
(2)
性别
男/女
stu_name
varchar2(20)
姓名
stu_idntty
nanber
身份证号码
stu_department
varchar2(20)
所在院系
stt_clas
vsrchsr2(20)
隶属班级
stu_contact
Char(11)
联系方式
stu_emile
varchar2(20)
电子邮件
stu_address
varchar2(20)
地址
表3.2教师表
字段名
字段类型
字段中文名
备注
t_id
Char(10)
教师id
主键
t_name
varchar2(16)
姓名
t_pwd
varchar2(20)
登录密码
t_sex
varchar2
(2)
性别
男/女
t_identity
char2(18)
身份证号
t_title
varchar2(20)
职称
表3.3管理员表
字段名
字段类型
字段中文名
备注
user_no
Chet(6)
管理员id
主键
user_pwd
varchar2(20)
用户名
user_nane
vsrchsr2(20)
密码
表3.4选修课程表
字段名
字段类型
字段中文名
备注
c_id
int
课程号
主键
c_name
varchar2(30)
课程名称
c_time
int
学时
c_score
int
学分
c_count
int
选修人数
d_id
int
院系标识
t_id
Char(10)
执教老师
表3.5选课信息表
字段名
字段类型
字段中文名
备注
s_id
int
选课号
主键
c_id
int
课程号
外键
c_grade
number(4,2)
课程成绩
srt_ld
Chdr(10)
学号
外键
tt_ld
Char(10)
教师号
外键
表3.6院系表
字段名
字段类型
字段中文名
备注
d_id
int
院系号
主键
d_name
Varchar2(50)
院系名称
d_chairman
Varchar2(10)
系主任
d_tel
Varchar2(11)
电话
d_mome
Varchar2(255)
备注
在oracle数据库中创建sa的用户密码为123456并赋给sa用户connect及resource权限代码如下:
链接后建立的各表上述各表,详细代码附附录。
4系统详细模块设计
4.1前台模块设计及实现
本节
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 选课 信息系统 设计 实现