选课系统的设计与实现

2024-07-09

选课系统的设计与实现(精选十篇)

选课系统的设计与实现 篇1

1 系统数据库表

该系统数据库一共由用户信息表、课程信息表、用户课程关系表、公告信息表、留言信息表、错误日志表六个表构成。课程信息表 (course表) :存储课程信息, 用来向教师, 管理员, 学生展示可选择的科目信息。留言信息表 (message表) :存储用户的留言信息, 其中readed表示留言信息是否被阅读过, 0表示未阅读过, 1表示阅读过。

2 系统文件架构设计

学生、教师、管理员三个模块的表在一个文件夹。用class类文件进行分类, 对常用的处理算法以及工具类单独封装成一个util包。系统使用到的公共界面放在文件夹common中。

3 主要模块的设计与实现

3.1 登录模块功能

用户输入正确的用户名和密码, 进入系统进行各种操作的窗口, 具有对用户身份进行验证的功能, 把用户的用户角色信息传递给系统, 以便系统提供不同的显示界面, 实现不同权限的用户进行不同的操作。

3.2 管理员模块功能

(1) 找回密码。为了提高系统的友好性, 对管理员设计一项找回密码的功能。实现管理员找密码的代码如下。

(2) 发布公告、选课。当需要发布紧急信息或者最新选课情况是, 管理员和教师都可以通过公告发布, 来及时发布与更新公告与新闻。

3.3 教师模块功能

(1) 课程管理。课程是教师角色的主要功能模块, 教师用户可以对自己教授的课程进行信息录入, 对存在信息错误的课程查询及修改等操作。

参考文献

[1]李俊民.MySQL数据库开发实例解析[M].北京:机械工业出版社, 2006:100-105.

[2]耿祥义.JSP实用教程.2版[M].北京:清华大学出版社, 2007:10-12.

[3]黄缙华.MySQL入门很简单[M].北京:清华大学出版社, 2011:53-55.

[4]前沿科技.精通CSS+DIV网页样式布局[M].北京:中国人民邮电出版社, 2007:8-11.

网上选课系统毕业设计总结 篇2

1、前言

随着社会的发展,学生培养计划已不再一成不变,各个学校纷纷推出了面向全体学生的选课服务,这项旨在为大家提供一个更加宽松自由而且更符合学生意愿的服务已成为当代学生过程中不可缺少的一部分。正式计算机技术的迅速发展使得人们从过去复杂的手工劳动中得以解脱,从而使这种服务在现在才可能迅速普及,同时编写一套完整的学生信息显得尤为重要。

2、学生选课管理系统的组成本系统包括首页,系统公告,学生选课,教师查看,系统管理,系统帮助,联系我们7个部分。

“首页”主要是介绍衡水学院的基本情况。

“系统公告”介绍最近的一些新闻和通知,方面同学们及时了解。

“学生选课”是为学生提供选课界面。该界面要列出搜有课程信息供学生查询和选课。包括未选课程,已选课程,学生选课受一些条件的约束,如课程名额限制,该界面允许学生选课和修改退选。

“教师查看”教师可以查看学生选课情况,有详细的选课名单。

“系统管理”主要是按指定系检索该系的学生信息,维护学生,系,课程和学生选课及成绩等方面基本信息,包括增加,删除,修改

“系统帮助”主要是帮助学生能更好及时的完成选课任务。

3、系统实现

采用了ASP.NET结合SQL Server2008数据库,即将学生选课的有关数据库存放在选用的SQL Server2008作为后台的数据库。

网络选课系统研究与实现 篇3

关键词:教学教务管理 网络选课 BS模式

中图分类号:TP311.52文献标识码:A文章编号:1674-098X(2012)04(a)-0166-01

1 引言

自1969年ARPAnet网诞生到1990年更名为Internet,网络一直处于不停发展的过程中,主机和用户数都不断地增长,特别是进入90年代以来,网络应用进入多元化发展时期,视频点播、多媒体会议、电子商务等新型的应用不断出现,网络深入日常工作生活的各个方面。在高校实施学分制的大环境下,基于网络的在线选课系统是教学教务管理中不可或缺的重要功能模块,教学教务部门将课程和老师的信息公布在网上,学生利用网络完成相关课程的选择,学生可以自由选择,打破了原来学年制小班级的限制,比起原来学年制下直接安排教师进入各个班级的课程来说具有较好的灵活性和自由性。基于网络的选课系统作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点,能够极大地提高教学教务管理的效率。

本文结合我校教学教务的要求对于选课系统中的功能做了详细分析,并由此提出了一个选课系统的实现。

2 系统分析

选课系统主要由用户管理部分,用来对系统管理员、教学教务人员、教师和学生四类用户进行;教学任务管理部分,用来管理各个学期的教学任务;选课管理部分,學生用来完成课程的选修,老师用来浏览选课的情况。整个系统结构如图1所示,下面将就主要功能模块做分析。

2.1 用户管理模块分析

管理员用户可以通过相关的用户名和密码登录进用户管理界面下。

在此界面下可以完成对教师、教学教务人员以及学生数据进行增删改、查找、授权等操作,例如将每年新入学的学生数据导入进系统,新分配的老师数据录入进入系统,分配不同的权限和功能给教师和教学教务人员。

2.2 教学任务管理模块分析

教学教务人员通过相关用户名和密码进入教学任务管理界面下。

在每学期结束前的一个月,教学教务管理人员将下个学期的所有课程预先根据培养计划生成教学任务,然后将相应的教学任务安排到具体的任课教师,并安排相应的教室和上课时间(此类功能属于排课管理子系统),任课教师便可登录选课系统查看自己的任务和上课时间地点。

2.3 选课管理模块分析

学生在规定时间登录进入选课管理界面下进行下个学期课程的选课。

选课分为初选和正选两个阶段,初选阶段是不限制选课班级的人数,也就是学生想选哪个老师的课程便可以选取,但往往某些课程的人数超过最大容量,之后基于一定的策略剔除掉一部分学生,在正选阶段这些学生可以选入其他班级,同时如果有漏选或者错选的学生也可以进行特殊修改。

3 系统实现关键技术

3.1 用户权限动态分配

考虑到不同的用户在该系统中需要有不同的权限,而权限最终又是通过映射到不同的菜单(功能)上来,所以在考虑本系统中用户权限分配的时候采用了动态的策略,即在数据库中采用一个菜单表用来存储体现不同权限的功能菜单项,然后每个菜单项还具有一个编号属性,在用户表将用户所具有权限对应的功能菜单项的编号保存,当不同用户登陆后根据菜单表中保存的菜单编号读取菜单项生成用户的操作菜单完成不同的功能。

3.2 选课管理

在初选阶段选课的人数将有可能超过班级人数的最大容量,这样势必会在初选结束后对多余的人员做出剔除。如何公平地剔除一些学生是一个需要考虑的问题,在本系统中采用的策略为综合考虑学习成绩和自然班学生的平均性作为剔除的权重因子。具体的执行的过程为:在所有需要选择该门课程的学生中,按照自然班统计其上一学年所学课程的平均学分积点作为划分不同档次的学生的一个参数,然后在按照自然班学生尽可能平均分配到各个选课班的原则可以得到每个档次的学生人数,这样在总人数超过的选课班中将不同档次的学生人数抽取出来后,如果发现超过该档次的人数容量,那么再随机剔除掉多余的学生,在随机剔除的过程中要考虑到不同自然班级人数的相对平均性,即优先剔除掉那些自然班级超编的学生;如果该档次的学生人数未达到要求,那么保留空间供正选阶段该档次的其他学生选入。同时在正选阶段也按照类似的策略保证选入的学生满足成绩和人数的平均性,这样每个班的学生情况相对来说比较平均,对于老师教学的开展比较有利。

4 结语

基于网络的选课系统给教学教务管理人员和学生提供了一个简易高效的平台,在学分制的管理背景下有利于学校教学教务管理的便利性和高效性,符合信息化新形势下的高校管理的要求。

参考文献

[1]叶飞.Internet网络选课系统设计与实现[J].沈阳师范大学学报(自然科学版),2004,4.

[2]米明.基于变化概率的网络选课系统算法研究[J].计算机与现代化,2009,12.

[3]邓万友,孟雅杰,贾焕军,宋英,刘洪波.学分制下网络选课系统的构想与实现[J].黑龙江高教研究,2001,1.

[4]关慧,由德凯,侯建梅.网上选课系统的设计与实现[J].沈阳化工学院学报,2004,4.

网络选课系统的设计与实现 篇4

为此,本文对网上选课系统进行研究,集合学生选课平台、教师开课平台、教室管理和教育资源管理于一体。对教师排课、学生选课等常规工作进行管理,不仅提高了排课的工作效率,而且保证了选课的合理性。

1. 系统功能需求

网上选课系统的用户主要有系统管理员、教职员工和学生。系统功能按照操作者来分可以分成通用功能和不同对象已具有的功能。

1.1 系统用户通用功能

(1)系统登录和注销

系统用户可以使用自己的账户和密码登录系统,在系统中完成相应的操作之后推出系统。

(2)密码修改

为了方便系统用户的管理,除了系统管理员的账户之外,教师和学生用户产生时,都采用默认的密码(身份证后12位),在登录系统之后需要及时修改自己的密码,以提高信息的安全性。

1.2 系统管理员操作

(1)用户信息管理

添加、修改、删除系统中教师、学生的基本信息。

(2)教室安排管理

对上课所需要的教师进行安排,尽可能合理的应用教学资源,并且保证教室的安排在时间上不发生冲突。

1.3 教师操作

(1)个人信息管理

可以对教师的个人信息进行查看、添加、修改和删除等操作。

(2)课程信息设置

对所负责的课程信息进行管理,例如课程基本信息的设置和修改、课程学时的设置以及课程人数上限的设置等。

(3)课程成绩设置

在课程完毕之后,根据课程评定的结果对给学生评分。

1.4 学生用户操作

(1)个人信息管理

可以对学生的个人信息进行查看、添加、修改和删除等操作。

(2)课程信息查看

登录系统之后,学生可以查看课程信息,包括课程的基本信息、上课的时间和地点以及课程教师信息。

(3)最终选课信息查询

在进行选课之后,学生可以查看自己所选的课程,检验所选课程在时间上是否存在冲突,以及所学的学分是否足够。

(4)学分和成绩查看

在课程结束之后,查看课程得分以及一段时间内所获得的学分信息。

2. 系统设计

2.1 系统结构设计

本文所研究的网上选课系统,采用B/S模式,操作系统选用Windows2003,数据库管理系统采用SQL Server2005,整个系统采用ASP.NET语言实现。系统的总体结构如图1所示:

2.2 数据库设计

为了实现数据库中数据的快速定位,以及便于系统的维护,在系统设计时,必须要对数据库进行认真设计。网上选课系统中的数据库内容主要包括以下几个方面的内容:

(1)基本信息,包括教师、学生、课程的基本信息。

(2)选课规则的信息,由于各学院对于学生课程的要求不同,使得学院有不同选课规则,例如:文理科学生的必修课、专业课和选修课的范围各不相同;

(3)课程信息,主要包括课程名称、学分以及学识等信息。

(4)选课信息,存储学生选课记录,包括学生学号、课程编号等内容。

网上选课系统的E-R图如图2所示:

3. 系统实现

根据选课流程,系统主要功能的实现如下所示:

(1)课程开设

每个学期教师都可以开设授课的课程,教师进入课程开设界面之后,填写课程名称、课程简介、人数上限、学分、课程类别等信息,保存之后,可供学生选课。课程开设的界面如图3所示:

(2)网上选课

学生成功登录系统之后,点击选课连接,就可以查看可以选修的课程,以及学分、上课地点和时间等信息。在系统界面中,学生可以点击“课程名称”来查看课程简介信息,点击“教师名称”来查看教师的基本信息,点击“上课时间地点”来查看上课的时间和地点信息,在对该课程有了基本的了解之后,可以点击“选修该课程”来完成网上选课。网上选课界面如图4所示:

(3)已选课程查看

学生在选课完成之后,可以进入已选课程查看界面,查看选秀的课程,再重新查看课程的时间和地点,以免有冲突的地方,并且可以根据学院学分的要求,适当的增加和取消一些课程的选择。学生对所选的课程进行确认之后,可以点击“锁定选课信息”提交最终的选课结果,已选课程查看界面如图5所示:

摘要:网络选课系统可以减轻教务处排课管理的工作负担, 提高排课管理的效率和质量。为此, 本文分析了网络选课系统的功能需求、并对网络选课系统的设计与实现进行了研究。

关键词:课表编排,网络选课系统,学生选课

参考文献

[1]唐青松, 颜亮.ASP应用开发全攻略宝典[M].中国水利水电出版社.2008

[2]张春梅.用自适应的遗传算法求解大学课表问题[J].内蒙古大学学报 (自然科学版) , 2010

[3]崔雪梅.自动排课算法设计[J].延边大学学报, 2010

反抄袭系统的设计与实现 篇5

关键词:反抄袭;COPY;“OCR”;搜索;数据库

中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)12-21615-02

The Design of the Anti-Copy System and Realization

LUO Guo-hui

(Electronics & Information College,Yangtze University,Jingzhou 434023,China)

Abstract:Based on the "OCR" to form the word, by matching search technology and database connectivity and synchronization identification technology, Plagiarism identification technology embedded system is the core to the existing document database indexing and convicting, external documents with the real-time data exchange. This paper introduces the anti-copying system (ANTI- COPY) of the various components of the technical principles and implementation.

Key words:Anti-plagiarism;copy,"ocr";search;database

1 前言

“Un-copy”是一种能鉴别文章是否为抄袭的智能系统。将手写的文字或印刷的文字通过扫描输入计算机,然后应用“OCR”技术将扫描得到的图像转换成WORD文档,再利用全文搜索技术在数据库中进行校对,匹配,鉴定。然后根据不同的鉴定标准给出相应的判断。它将从一种行之有效的途径阻止当今社会上愈演愈烈的抄袭之风,从客观上解决我国严重的知识侵权问题。不仅仅是电子版的鉴定,而且在“OCR”的基础上实现了文本式抄袭的鉴定。它必将成为今后考试批改过程中一个不可缺少的工具。对保护知识产权有着重大的意义。

2 系统实现

2.1 实现模式

2.2技术介绍

2.2.1“OCR”技术

Optical Character Recognition,即是通过光学技术对文字进行识别, 是自动识别技术研究和应用领域中的一个重要方面。它是一种能够将文字自动识别录入到电脑中的软件技术,是与扫描仪配套的主要软件,属于非键盘输入范畴,需要的图像输入设备主要是扫描仪。

“OCR”的基本原理就是通过扫描仪将一份文稿的图像输入给计算机,然后由计算机取出每个文字的图像,并将其转换成汉字或字母的编码。其具体工作过程是,扫描仪将汉字或字母文稿通过电荷耦合器件“CCD”将文稿的光信号转换为电信号,经过模拟/数字转换器转化为数字信号传输给计算机。计算机接受的是文稿的数字图像,其图像上的汉字或字母可能是印刷汉字或字母,也可能是手写汉字或字母,然后对这些图像中的汉字或字母进行识别。对于印刷体字符,首先采用光学的方式将文档资料转换成原始黑白点阵的图像文件,再通过识别软件将图像中的文字转换成文本格式,以便文字处理软件的进一步加工。

“OCR”识别有两种方式。与其它信息数据一样,在计算机中所有扫描仪捕捉到的图文信息都是用0、1这两个数字来记录和进行识别的,所有信息都只是以0、1保存的一串串点或样本点。“OCR”识别程序识别页面上的字符信息,主要通過单元模式匹配法和特征提取法两种方式进行字符识别。单元模式匹配识别法(Pattern Matching)是将每一个字符与保存有动态标准字体和字号位图的文件进行不严格的比较。如果在数据库中可以找到与之相匹配的二进制存储形式,则应用程序会选取合适的字符进行正确的匹配。软件还必须使用一些特殊的处理技术,找出最相似的匹配,通常是不断试验同一个字符的不同版本来比较,及“动态”标准的试验。当识别速度达到一定程度则可以认为“OCR”是在全面扫描一页文本,并鉴定出每一个字符在数据库中所对应文本并进行替换生成WORD文档。当一些字符不可识别时便进行人工选择或人工录入。

特征提取识别法(Feature Extraction)是将每个字符分解为很多个不同的字符特征,包括斜线、水平线和曲线等。然后,又将这些特征与理解(识别)的字符进行匹配。如应用程序识别到两条水平横线,它就会“认为” 该字符可能是“二”。这种方法类似于五笔输入法。特征提取法的优点是可以识别多种字体,针对中文书法体大部分软件都是采用特征提取法实现字符识别的。

由于国内目前各类考试还未实现电子化,这种基于“OCR”技术的“UN-COPY”针对国内各类考试中抄袭与否的判定将有重大的应用。

2.2.2 全文搜索与数据库的联机实现技术

内嵌搜索引擎利用“网络机器人”进行检索,校对,采用FullText Search Engine和Directory 使“网络蜘蛛”在庞大的数据库中迅速“爬行”。而数据库有网络与单机的不同版本。

对于连接到了internet的计算机,全文搜索引擎可以遍历Web空间,利用常规的网页资源搜索技术和智能识别技术。从而使一定IP地址范围内与之相关的内容全部放在缓存空间,从而“蜘蛛”便从网络上的一个链接“爬向”另一个链接,从一个网站到另一个网站采集网页资料,保证了采集资料的最新化;它还会回抓“过时”网页资料以保证索引范围的广阔度,这种方式较容易实现,因为网页资源共享使其成本不高,也就节省了额外的数据库建设。

而针对于单机,则需要建设文字数据库,“UN-COPY”对于不同用途将有不同的数据库。如果用于鉴别诗词,则建设相应的诗词数据库,可以将中国古诗词与中国现代诗词以及国外诗歌等按国家、作者、性质、年代等不同的分类标准录入,适用于不同的鉴定条件。如果针对散文,则建设相应的散文数据库。对于中学生的作文,则可以将市场上出现的各类作文书与历届作文作为数据库建设的源材料。如果针对学术论文则可将CNKI中的CJFD,CDMD,CCND等作为数据库建设的源材料。其它各种数据库根据不同的鉴定性质使用相应的数据库,为了保证严密性,也可以融合各种性质的数据库。这些限制条件都起着辅助作用,去掉了一些根本不可能的来源搜索,从而大大提高了搜索鉴定速度。

2.2.3检索、校对技术

全文检索,就是利用记录中的自然语言进行检索,词与词之间的逻辑关系用位置算符组配,对检索词之间的相对位置进行限制。这是一种可以不依赖主题词而直接使用自由词进行检索的技术方法。不同的检索系统其位置算符的表示方法不尽相同,如美国DIALOG 检索系统的位置算符的用法意义:

(1)(W)—With: (W)表示该算符两侧的检索词相邻,且两者之间只允许只有一个空格或标点符号,不允许有任何字母或词,顺序不能颠倒。(W)也可以简写为( )。

(2)(nW)—nWords:(nW)表示在此算符两侧的检索词之间最多允许间隔n 个词,且两者的相对位置不能颠倒。

(3)(N)—Near: (N)表示该算符两侧的检索词相邻,但两者的相对位置可以颠倒。

(4)(nN)—nNear:(nN)表示此算符两侧的检索词之间允许间隔最多n 个词,且两者的顺序可以颠倒。

(5)(S)—Subfield : (S)表示其两侧的检索词必须是在文献记录的同一子字段中,而不限定它们在该子字段中的相对次序和相对位置的距离。在文摘字段中,一个句子就是一个子字段。

(6)(F)—Field

(F)表示其两侧的检索词必须是在文献记录的同一字段中,而它们在该字段中的相对次序和相对位置的距离不限。

根据检索结果按照不同的判定标准给以相应的鉴定。按照无初始位置,长度最大化的方式去检索、校对,然后输入文章来源与copy比例。

2.2.4抄袭鉴定技术

当图像格式变成了WORD格式后,将继续鉴定文本来源,进行抄袭与否的判定。

实现这一过程主要是利用全文搜索技术在数据库中的校对匹配实现。全文搜索引擎会从文章中进行无起始位置的信息采集,它可以按一定比例提取文章内容加入搜索队列,且采用多线程同歩检索。比如:如果用户要判定下面这句话是否是抄袭它处,“我心中有新房,这所房没有围墙,天是我的窗,地是我的房,带着它可以四处流浪,和世人做一个迷藏,到最后、只有自由做我的陪葬。”全文搜索引擎将这段文字加入搜索缓冲,然后对其进行无起始位置的检索,“我心中有所房”可以成为一个搜索元,然后再向后追加检索信息“这所房没有围墙”,依此逐步判定整个句子。所谓无起始位置检索是指检索信息不一定就是从第一句话开始,也可以从第二句、第三句开始,或者从第二个词第三人词开始按一定文字比例进行检索,如“带着它可以四处流浪”,可以分解成“带着它”、“带着它可以流浪”、“可以四处流浪”“四处流浪”等各种搜索元。当然,实际应用中是采用一定比例文字进行检索的,可以按段落进行一次搜索元分解,实现一次文章筛选,然后按句子进行精确鉴定。这种检索技術没有建立实际的数据库索引而是直接对文章进行匹配。采用多线程方式实现不同部分同时检索鉴定。相互综合得到最后的鉴定信息。

加入鉴定技术模块的全文搜索技术可以很快地检索到数据库中与之相匹配的文字、词组、句子、段落等并分类列出搜索到与之相匹配的信息,来源,时间及其它相关信息。根据国家专利局,教委,学校等的不同评判标准,进行校对鉴定程序开发,这个程序相对来说比较简单,只要在数据库的基础上嵌入检索,校对,鉴定等部分即可。

3 开发细节

实际开发需解决如下问题:

如何才能完美的完成数据库的建设与更新?如何实现人性化的文章性质判定?如何提高检索速度? 如何批量完成“UN-COPY”任务?

基于目前市场上已有的各种文章数据库,包括网络网页文章,以及各种文学库,足以鉴定一般文章的原创性质。而实现人性化判定则主要是通过确定文字鉴定比例,文章匹配方式,限制鉴定条件,人为选择判定部分等方式实现。通过文章性质以及一些其它条件的限制,通过从大体到局部,从模糊到精确的鉴定方式,采用多线程方式都可以从很大程度上提高鉴定速度。采用多线程,父进程与子进程等方式可以实现批量任务完成。

真正实施起来也并非难事,只需要将搜索引擎与数据库的联接以及校对鉴定嵌入处理好后,在“OCR”的帮助下完全可以解决目前考试抄袭的不良问题。

4 结束语

根据“UN-COPY” 的运行机理, 在软件资源已基本成熟的前提下,不改变“OCR”与搜索引擎的基本框架的前提下, 对与目标软件相关的代码进行整合连接, 使之能够成功的引导本系统。通过分析,只需要对经过“OCR”操作过后的WORD进行数据库连接,利用搜索引擎加入校对程序,即可实现COPY判定。本技术实现的可行之处在于,基本模块技术都已成熟,只需要处理彼此的连接与嵌入。本系统的成功在于它在一定程度上可以解决抄袭问题,不仅仅是电子版的鉴定,而且在“OCR”的基础上实现了文本式抄袭的鉴定。它必将成为今后考试批改过程中一个不可缺少的工具。

参考文献:

[1]Neil Matthew.等.编著.Professional Linux Programming[M].机械工业出版社,2002年.

[2]Nicholas A.Solter,Scott J.Kleper.等.编著.Professional C++ [M].机械工业出版社,2006年.

[3]施耐德.Internet第一搜索引擎:Google检索指南[M].辽宁科技出版社.

[4]孙琼.嵌入式Linux应用程序开发详解[M].人民邮电出版社,2006年.

[5]Frank VahidTony Givargis.Embedded System Design: A Unified Hardware/Software Introduction,John Wiley & sons,Inc.出版.

[7]陈榕庭,彭美桂.CD/CMOS图像传感器基础与应用月日[M].科学出版社,2006年.

[8]晓月.全文检索原理及实现[J].程序员,2006.

高职院校选课系统的设计与实现 篇6

随着教育改革的不断推进, 教育也逐渐走向网络化和信息化, 为了更加有利于高职学生的个性化的发展, 公共选修课成为高职院校课程体系中不可或缺的重要组成部分, 它主要面向全校不同院系、不同专业学生共同开设选修课程, 是高职院校基于社会对高素质、高技能适应型人才的迫切要求。研究和探索一种基于混合协同过滤的课程推荐算法, 应用于高职选课系统模块中, 解决学生盲目选修课程的问题。将有助于帮助学生扩宽专业知识面, 精简和完善部分教学内容。所以加快高职院校课程建设改革步伐, 加强对高职院校选修课的研究和探索, 对于推进公共选修课程教学改革, 保证高职院校教育培养目标的实现意义重大。目前, 高职院校选修课程推荐系统多数存在无推荐功能、推荐质量差、响应时间较长、智能推荐度较低等情况, 不能满足学生兴趣与智能需要。如何从众多选修课程中, 快速搜索与本人兴趣一致、与其专业相同或专业相关的选修课程, 是推荐系统应用的重要研究方向。而利用学生对选修课程的评价、学生个体的兴趣智能等特点建立的推荐系统能够有效解决这些问题。

2 国内外推荐技术现状

推荐系统是从互联网海量信息当中, 向用户自动推荐符合其兴趣或需求的一种智能系统, 从上世纪90年代末国外就开始推荐技术相关方面的研究, 将推荐技术划分为非个性化系统和个性化系统。非个性化推荐系统采有的推荐技术向所有搜索用户提供同样的内容推荐, 例如百度、谷歌等搜索网站。而个性化推荐系统则区分不同的用户或用户组, 根据用户浏览、用户注册信息、个人兴趣爱好制定推荐, 例如在电影、音乐、淘宝购物, 百度文库等页面得到广泛的应用。推荐系统最多使用的为基于内容的推荐和协同过滤推荐, 结合两种过滤技术优点, 克服协同过滤的稀疏性问题, 利用用户对内容的评价, 计算偏重权值再进行协同过滤提高性能。

3 基于混合协同过滤的高职院校选课系统核心算法设计

提出将推荐算法应用于高职院校选课系统中, 基于混合协同过滤选修课程的推荐算法主要是通过信息检索技术对选修课程的课程介绍、课程关键词等内容进行分析, 混合协同推荐方法分析和分类选修课程属于的专业类别信息的文本内容, 获取一些选修课程的特征和学生感兴趣课程进行相似推荐。基于混合协同过滤的高职院校选修课程推荐系统, 结合学生兴趣特征的特点, 选修课程推荐流程如下:新生注册完善本人信息, 推荐系统根据新生注册后提取用户的信息, 存储在各个数据库中。选修课程描述内容将是学生选修课程的搜索的首要册的信息来进行推荐选修课程, 主要参考学生所属专业、填写的兴趣爱好、关注的词条来基于选修课程内容来建立学生兴趣聚类, 在同等条件下选择某门选修课程评分最高的课程, 将前N项推荐给新生方便学生选修课程。对于老生选修课程时, 主要依据推荐算法提取的特征值建立学生—选修课程的评分矩阵, 考虑同属专业或同院系学生的特征值, 由推荐系统基于协同过滤匹配选修课程类的相似度, 建立学生近邻兴趣相同的集合, 并参考近邻学生的评分进行协同推荐, 返回评分前N项给选修课程的学生, 如右图1所示。从上述选修课程推荐系统的活动图, 可以分析出基于混合协同过滤的高校选课系统主要计算选修课程学生之间的相似度与课程间的相似度, 然后根据学生注册信息、兴趣等特征产生近邻喜好集合, 建立学生—选修课程评分矩阵, 最后产生Top-N的推荐。研究设计基于混合协同过滤的高校选课系统, 构建混合过滤模式选修课程推荐机制, 实现内容和协同过滤技术有机的结合与相互补充, 基于系统业务体系结构图, 结合高校课程推荐系统的相关业务功能, 设计课程推荐系统的整体架构图。依据课程内容与学生兴趣特征来进行课程的推荐, 设计高校选修课推荐系统的物理结构设计, 完成数据库规范存放各模块数据项, 如教师与学生基本信息, 选修课程与学生选修课程信息、选修课程与学生评价信息、学生兴趣信息等。实现基于混合协同过滤的高校选修课程推荐系统, 结合学生兴趣特征与选修课程特征设计推荐系统的核心算法。最后根据高校选修课程推荐系统的效能评价指标体系进行初探, 分析推荐算法的评估指标, 并建立两种评价指标对选修课程基于内容过滤进行评价。

4 基于混合协同过滤的高校选课系统实现

对高职院校混合协同过滤选课系统实现模块设计, 分别需要设计选课系统的登录模块、选修课程申报模块、选修课程开课通知模块、学生选课模块等等功能的设计。实现学生、教师、管理员登录模块、选修课程的选课与退课模块、选修课程的修改模块等进行有效性与无效性测试, 测试用例主要测试程序的内部逻辑结构, 输入操作采用打破常规操作方法, 检测系统的错误并进行修改。经过反复测试, 系统基本达到预期效果, 实现选修课程的推荐、选修课程的选修、退选、课程的修改等等功能。本系统有效结合基于内容的推荐方法和协同过滤推荐方法的优缺点, 采用混合协同过滤的选修课程推荐方法。使用学生注册的个人信息, 将学生的姓名、性别、专业、班级、爱好等个人信息量化表示出来, 将学生的兴趣特征与选修课程组合课程进行专业分类。本文设计推荐系统的核心算法改进学生群体的建立, 根据专业、喜好、兴趣等特征值建立学生簇, 选修课程的推荐只要在这个学生兴趣相似的群体中寻找最近邻居, 学生在选修课程时根据推荐的TOP-N课程进行选择。智能选修课程推荐系统运行证明推荐算法能够在有限的选修课程中, 向学生推荐适合自身发展的选修课程, 系统查询效率与推荐的准确性都满足学生的需求。

系统采用J2EE技术开发, 数据库采用Mysql, 对日志进行预处理后导入到数据库Web中作为实验数据。该数据库中包含学生信息表、教师信息表、课程信息表、评价信息表等表, 课程信息表中包括选修课程编号、课程名、课程描述、课程的分类等基本信息;学生信息表中包括学生的学号、姓名、专业、班级等基本信息;教师信息表中包括教师姓名、专业、所属系部、课程名等基本信息;评价信息表中包括学号、选修课程号、选修课程评分、评价时间等基本信息。笔者选课推荐系统是采用MVC (Model-View-Controller) 的软件设计框架, 有效的将Web系统的功能进行划分, 业务逻辑层与表示层各自实现规定功能, 能更好的对系统进行升级与维护。MVC模式的出现不仅实现功能模块和显示模块的分离, 同时它还提高应用系统的可维护性、可扩展性、可移植性和组件的可复用性。

5 结 语

本系统的设计有效结合了基于内容的推荐方法和协同过滤推荐方法的优缺点, 采用混合协同过滤的选修课程推荐方法, 成功解决了能够在有限的选修课程中, 向学生推荐适合自身个性发展的选修课程, 基于混合协同过滤的高职院校选课推荐系统的确提高了推荐的准确率, 并且使得覆盖率也得到了进一步的提高, 使系统更具有个性化服务, 来满足高职院校学生选课的要求。

参考文献

[1]傅鹤岗, 李冉.基于用户实时反馈的协同过滤算法[J].计算机应用, 2011 (7) .

选课系统的设计与实现 篇7

1 系统总体设计

1.1 总体设计

在线选课管理系统分为登录、选课和管理三个子系统:

1)登录子系统:根据学生、教师和管理员三者的不同身份给出不同的权限。

2)选课子系统:主要为学生提供选课功能,学生可以进行课程信息的浏览、成绩的查询、意见的反馈等操作。

3)管理子系统:主要供后台管理者提供,管理学生、教师、课程以及公告等的操作。

1.2 数据存储

本系统使用SQL Server2000作为后台的数据库系统。主要建立了排课表、院系信息表、学生信息表、教师信息表、教学楼信息表、教室信息表、课程详细信息表、开课信息表、教师反馈信息表、备份排课记录表、选课信息表、选课时间段信息表、选课通知表、系统用户信息表、学生反馈信息表、学生成绩表等。

例如建立考生排课信息表,如表1所示:

如建立开课信息表,表2所示:

2 主要系统功能实现

2.1登录子系统

用户登录时输入用户名和密码,选择登录类型,经过验证即可享有不同的权限,并进行操作。登录界面图1所示:

2.2选课子系统

选课子系统是管理系统的三大主要系统之一,也是用户使用最多的子系统。该子系统的主要页面有以下4个:

1)SelectCourse.asp

2)SelectCourseTop.asp

3)SelectCourseLeft.asp

4)SelectCourseMain.asp

2.3管理子系统

管理子系统主要包括学生管理、课程管理、成绩管理、排课管理、公告管理和选课时段的设置等方面:

1)学生管理:

添加学生记录时,根据学校实际报送的信息,给学生设置一个初始密码,学生选课时根据初始密码进入系统,登录后可以更改密码。

2)课程管理:

为了方便课程的管理,课程与老师实现一对一关系,也就是一位老师只能代一门课目,一门课目也只能允许一位老师代。

3)成绩管理:

由后台管理员输入老师上报的成绩,在前台学生就可以根据学号查询自己选课的成绩,而老师可以根据课程名称来查询本班所有学生的成绩。

4)排课管理:

如图2所示,点击“添加”可以对此门课程进行其它时段的排课,如果发生冲突,则会出现错误提示;点击“删除”可以对此门课程进行重新排课。

5)公告管理:

在这里可以添加选课公告,将公告放在系统的首页的醒目位置,用户不用登录就可以查阅。

6)选课时段的设置:

学校选课的时间都有所限制,否则会出现混乱,如果不在选课时间段,则提示不能选课,有效的加强了系统的安全性和稳定性。

3 系统遇到的问题及解决方法

1)建构学生管理模块时,出现了不能向后台数据库插入记录的问题,原因是没有引用数据库文件Keep House.asp,当引用了这个文件后就可以插入后台数据库了。

2)建构学生选课模块时,出现了一门课程只允许一个人选的情况,经过分析代码发现原来是在数据库查询时,多了一个限制条件,把多余的限制条件去掉之后就解决了这个问题。

3)由于操作系统中毒,重装了操作系统,之后又重新安装了SQL Server 2000,但在设计系统调试时,出现了不能连接数据库的问题,经过检查发现在装SQL时,初始密码为空,而系统的密码为“sa”,在SQL中将密码重设之后,就解决该了问题。

4 结束语

选课系统的设计与实现 篇8

1、选课系统的现状

现在大多数的高校都是采用的浏览器/服务器 (B/S) 模式, 这种模式想对最初的人工课程管理方便了许多, 不在需要大量的人力, 学生选课也不在排队拥挤, 更不会因为选课而耽误正常的教学任务。B/S模式的选课系统只需要一台能访问网络的浏览器即可。只要选课服务器端提供选课、学籍管理、考试成绩、毕业设计等业务模块, 在客户端的浏览器视窗中就能进行相应模块的功能管理。这种B/S模式的选课系统具有不限时间、地点等优势, 然而随着移动互联网的发展这种B/S模式的选课系统也存在很多不足, 比如你要进行选课操作, 就必须坐在接入网络的电脑前, 而且课程开设的通知等等也是要通过上网才知道, 对于一些不常上网的同学可能就会错过很多有用的消息, 比如说课程调整通知、考试安排等等。而这些缺陷都可以通过移动终端来解决。

2、Android系统特点

近几年, 3G的全球覆盖使世界快速步入移动互联网时代, 网络的应用范围变得更加广泛, 移动智能终端在市场上迅速渗透, 成为移动互联网发展的强大动力。根据市场调研机构Gartner发布的最新统计报告显示, 2011年一季度全球手机销售量共4.278亿部, 其中智能手机销量超过1亿部, 现在高校师生的智能移动通讯设备拥有率已经和PC拥有率相近。而智能手机操作系统中, Android系统的市场份额又远远大于其他的手机操作系统。Android是Google于2007年11月5日发布的基于Linux内核的移动平台, 该平台由操作系统、中间件、用户界面、应用软件组成, 是一个真正开放的移动平台。从软件分层的角度来说, Android平台由应用程序、应用程序框架、Android运行时库层以及Linux内核共4部分构成。

3、选课系统设计

3.1 需求分析

结合笔者所在院校的选课情况来看, 首先是教务管理者对各个教学单位提交的学期开课内容进行核定, 在确定了开课内容和任课教师后, 根据学校的教学资源情况, 做好课程编排工作, 以方便师生查阅, 正式开放选课时, 学生可以通过传统的WEB方式进行选课, 也可以通过Android智能手机进行查看课程及任课教师情况, 然后选课, 对与选课中对错选的课程可以进行退选操作。在选课时间结束后, 系统根据选课的信息进行检查后保存至相应选课记录表中, 并将选课信息反馈给手机客户端。

3.2 详细设计

Android平台的选课系统是一个集Web、数据库、移动终端一体的应用系统, 其具体的功能模块如下图:

4、基于Android平台选课系统的实现

4.1 Android客户端

选课系统客户端以Android智能手机作为实现平台, 通过手机客户端实现学生查课、选课等操作。详细UI见下图:

4.2 业务逻辑实现

基于Android平台的选课系统需要通过无线局域网接入校园网与现有的WEB选课系统进行数据交互, 结合笔者现有W e b选课系统的ASP.NET架构, 只需要创建Web服务应用程序即可实现智能手机与选课系统数据库的数据交互。

5、结语

Android在未来高校应用中无疑会有广阔的市场前景, 良好的用户界面及人性化的操作将会更加收到重视, 而这种作为传统高校应用的辅助手段, 也会在未来的某个时候占据主导地位。

参考文献

[1]杨国清.高校移动选课系统的设计与实现.计算机教学与教育信息话, (2008) 06-11097.

选课系统的设计与实现 篇9

关键词:Android,选课系统,高职

随着互联网的迅速发展,特别是近年来无线网络的全面覆盖以及4G移动通信网络的迅速发展,智能手机等移动智能设备迅速普及,移动互联网对社会各个领域产生了巨大的影响和重大的变革。因此,该文设计并实现了一种基于Android平台智能手机的高职院校选课系统。利用该系统,学生选课可以利用Android智能手机下载安装该系统的APP进行选课,以脱离传统的进入机房利用PC机进行选课。这不仅为高职学生进行选课提供了一种宽松的环境,同时也在一定程度上减轻了校园网的负载压力。

目前在很多高职院校中都拥有自己的选课系统,但基本上都是基于ASP或JSP等技术,采用B/S架构。学校统一安排学生在特定的时间段,集中在机房利用计算机访问网络进行选课。对于这种传统的选课模式,就是学生利用校园网,在PC机上提交自己的选课信息,由于受时间和地点的限制,往往导致安排在后面选课的学生无法选修到自己理想的课程,有的学生甚至错过了选课时间。该文实现的选课系统,利用现在的4G移动网络和智能移动终端(采用Android操作系统),针对传统选课业务,实现选课系统的全部业务流程,采用合理的页面布局,使操作尽量简洁明了,使用户拥有良好的选课体验。

1 Android操作系统介绍

Android操作系统平台是由互联网与社会信息科技领袖Google公司开发的一款以Linux为内核的专门面向移动平台的开源操作系统,由Google和二十多家业界重量级企业联盟提供持续的技术支持。Android系统以其硬件资源和软件应用程序的丰富性、支持各种网络访问协议和触屏输入以及开源免费等特点,目前已占据了广泛的智能手机市场,以及在其它智能产品市场中也有着广泛的应用。

Android操作系统主要由四个层次组成:Linux内核层、Android运行时库和其他库层、应用框架层、应用程序层四个部分组成。

1) Linux内核层。该层用来提供系统的底层服务,包括安全机制、内存管理、进程管理、网络堆栈及一系列的驱动模块。作为一个虚拟的中间层,该层位于硬件与其它的软件层之间。该Linux内核层并采用YAFFS2文件系统。该文件系统是开源的文件系统,可移植性非常好。

2) Android运行时库和其他库层。该层包含一组核心库和Dalvik虚拟机,同时Android提供了丰富的库类支持并且其中大部分是开源的。

3) 应用框架层。在该层Android开发人员可以跟那些核心应用一样拥有访问框架APIs的全部权限。应用的系结构化设计简化了各组件之间的重用,任何应用都可以分发自己的组件,任何应用也可以使用这些分发的组件。

4) 应用程序层。Android本身会附带一些核心的应用程序,包括短信程序、Email客户端、浏览器、日历、通讯录、地图等 , 目前所有的应用程序都是由Java语言开发的。

2 选课系统设计

2.1 系统结构设计

如图1所示的系统整体框架,客户端采用C/S模式(即需要安装系统APP),服务器端采用B/S和C/S两种模式实现。其中,用户与客户端交互,系统为其提供用户界面实现相应操作,根据用户的操作向服务器发送请求,以获得相应的数据或者向服务器写入相应数据;服务器端主要向用户提供相应接口以便用于数据传输。

系统客户端和服务器端进行数据传输交互的协议是HTTP协议。服务器端进行全部的系统的数据处理和业务逻辑操作。客户端进行的所有操作指令均发送到服务器端进行执行,执行过程对用户而言是透明的,以便提高数据的安全性,防止数据外泄。

2.2 详细设计

依据目前高职院校的选课情况来看,第一步是教务管理员向各个教学单位提交的学期开课安排进行核定,在明确任课教师后,依据学校的教学资源,做好排课工作,以方便师生查询;第二部是在开放正式选课时,学生既可以通过Android智能手机进行进行选课,当然可以通过传统的WEB方式进行选课。第三步是在选课结束后,系统将选课信息反馈给手机客户端,并根据选课的信息保存至相应选课记录表中。方便学生了解自己的选课情况,并能及时对错选、漏选的课程进行相应的退选、补选操作。

本系统是一个集数据库、Web、移动终端一体的应用系统,其功能模块如图2所示:

3 系统功能实现

3.1 服务器端功能实现

本系统服务器端主要实现以下功能:数据存储功能、数据处理功能和系统管理系统功能,各模块的具体实现如图3所示:

1) 服务器端的数据存储功能。本系统采用My SQL数据库进行数据存储,数据库上存储每一门课程的详细信息、任课教师信息、选课记录、学生信息等数据。在校的注册学生可以直接以自己的学号登录系统进行课程信息查询、选课等操作。

2) 数据处理功能。服务器端要求能够解析处理客户端发来的HTTP请求信息,然后服务器依据请求作出相应的处理,并将处理后的数据通过HTTP协议返回给客户端。本系统客户端进行的所有操作都应通过HTTP协议提交到服务器端来进行处理,操作处理完成后,服务器端应该把结果也通过HTTP协议回传给客户端,客户端接收服务器端传来的结果应在相应的界面上呈现给选课学生,以提高学生选课的便捷性。

3) 系统管理功能。系统管理员主要负责维护系统后台信息,包括新生信息导入、毕业生离校注销、课程开设信息的添加删除修改等。同时系统也应负责审核学生的选课信息,以便学生能够选课的正确性,并更新学生的选课状态标志。

3.2 客户端功能实现

本系统中客户端的框架图如图4所示。

在开放正式选课之前,管理员首先要在校学生学籍信息导入学生信息(即添加学生用户),用户ID与在学号一一对应,此后管理员只在每学年开学前根据新生入学信息、毕业生离校信息和学生留级信息进行维护。各个学院教务管理员录入待选课程的基本信息,包括课程号、课程名称、任课教师、课程性质、授课时间、考核方式和班级容量等。客户端每次选课请求仅向服务器发送课程的ID信息,由服务器端进行相应数据处理和存储。

为保证数据一致性,数据的所有更新处理全部由服务器端进行处理,客户端用户看到的永远是最新的数据。该过程的详细流程如图5所示。

客户端运行后首先进行网络检测,判断用户是否联网,如果没有联网,提示用户进行网络设置,打开手机端网络设置界面;联网成功后进入客户端登录界面,提示用户登录;登录成功后从服务器上更新最新数据,并更新客户端页面数据。用户可以根据自身的需求进行相应的选课操作。

4 结束语

选课,补选,退补等功能,系统具有很好的可扩展性。随着学校的发展需求不断变化,也可以逐渐将学校的其他系统(如学籍管理本文实现了一个基于Android平台的高职院校选课系统,本系统实现了高职院校学生选课的所有功能,包括学生信息的导入,系统等)并入,实现学校信息系统的整体移动智能化。

由于系统中一门课程可能存在选课人数过多,导致课程时间安排上无法满足;还有可能出现某门课程选课人数不足,无法达到开课要求;一门课程开设多个教学班,其中出现几个教学班未满选课人数等情况,针对这些情况系统应进行优化,解决相应的不足,减轻管理员工作负担。

工作流系统的设计与实现 篇10

关键词:工作流;工作流管理系统;计算模型

工作流就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间利用计算机,按某种预定规则自动传递文档、信息或者任务。

工作流管理系统的主要功能是通过计算机技术的支持去定义、执行和管理工作流,协调工作流执行过程中工作之间以及群体成员之间的信息交互。工作流需要依靠工作流管理系统来实现,主要组成部分包括:

过程定义工具

过程定义

工作流执行子系统和工作流引擎

工作流控制数据

工作流相关数据

应用程序和应用数据

工作表和工作表处理程序

业界的工作流主要遵循两个标准:WFMC和BPEL。BPEL标准是由IBM、Microsoft等公司联合发布的标准,他们的工作流产品如IBM Lotus Workflow、Microsoft Windows Workflow Foundation。

对于工作流系统的设计,一个工作流管理系统通常包含3个不同层次的工作流定义,即全局工作流、局部工作流和工作流实例。当系统边界确定之后,整个系统拥有一个全局工作流。对于较为复杂的系统,一个全局工作流可能包含或者可以拆分为多个局部工作流,它们之间通常可以并发或者通过较为松散的关系交织在一起。以OA系统为例,可将OA系统的全局工作流拆分为信息发布、公文管理、会议管理、用车管理四个局部工作流,再细分下去,公文管理还可以分为收文管理与发文管理。

值得一提的是,相对于静态工作流系统,动态工作流系统的设计要复杂得多。这主要是因为后者需要考虑动态的过程定义,一般来说需要开发平台或开发环境的一定程度的支持并能够很容易地体现在表现层中。

最后,我们讨论一下工作流系统的实现。由于国内外很多软件公司均有各自的工作流产品及成熟的软件开发架构,这里以Microsoft Windows Workflow Foundation为例提出一个可行的解决方案。此解决方案采用多层模式架构,分Web表示层、工作流层、业务层、实体层、数据访问层和数据库。对于非工作流需求(仅面向数据模型)只访问业务层,而对于工作流需求则可能需要同时访问工作流层和业务层,这取决于工作流是否包含对数据模型的访问。采用这种架构的工作流容易变更,业务层作为工作流框架的底层服务更加独立,仅依赖于数据访问层。

以“用车管理”工作流框架为例,首先创建一个用车活动类型:

public sealed class AutomobileActivity : CodeActivity

然后重写AutomobileActivity中的Execute方法,根据传入的上下文,选择具体的子活动(申请、审批、安排出车、交车):

protected override Boolean Execute(CodeActivityContext context)

{

Boolean result = false;switch(ActivityName.Get(context)

{

case“申请”:

……

break;

case审批”:

……

break;

case“安排出车”:

……

break;

case“交车”:

……

break;

}

return result;

}

至于业务层、实体层、数据访问层,这里不再详述。

以上是基于微软WF工作流技术的一种工作流系统解决方案,与很多解决方案相同仅支持静态的工作流定义。

上一篇:乱班管理下的班级管理下一篇:旅游信息管理系统设计