开放式考试系统设计

2024-08-01

开放式考试系统设计(共12篇)

开放式考试系统设计 篇1

基于网络技术的考试系统研究与开发是近年来的重点研究内容。然而,在数据应用方面,考试系统的开发和应用存在着一些不足。首先,数据兼容性差、题库资源再利用程度低。这些题库往往专属于某一考试系统,具有各自独立的格式和规格要求,数据资源的相互使用程度较低,未能最大限度地发挥题库系统的功能,形成了许多“孤岛”,增加了整合难度。对于现有资源来讲,是一种浪费。其次,维护成本高。大多数考试系统虽然建立在局域网或互联网环境上,然而,由于考试系统一般专注于某一个领域(学科),专属于某一个单位,维护工作由用户完成,对使用者提出了较高要求,增加了管理成本,提高了管理难度。

1 系统结构

1.1 物理结构

采用B/S三层结构模式,系统中的程序、数据库、发布信息等都集中在服务器上完成,客户端只安装操作系统及浏览器后就可以工作。物理结构可参见图1体系结构。系统结构分为5个层次,从下到上它们分别是:

第一层是操作系统层,采用网络操作系统Microsoft Windows 2005 Server。

第二层是数据库系统层,采用SQL Server 2003。

第三层是数据库接口层,通过应用服务器将数据信息采集到各接口系统中。

第四层是应用服务层,采用ASP.NET技术与数据库服务器进行信息交换,同时与前端的浏览器交换信息。

第五层是用户层,面向最终用户提供操作界面,使用者通过浏览器页面与后台系统进行信息交换。

1.2 逻辑结构

表现层、业务层和数据层构成系统的逻辑结构。各层次功能相对独立,上层调用下层。如图1体系结构。

表现层负责用户界面及接口展示,其内容主要由一组ASPX类型的Web页面组成。

数据层使用SQL Server数据库系统,完成数据存储及管理。

业务层是系统逻辑实现的核心,完成访问数据层,读取、修改、删除数据,对数据进行业务逻辑处理,将结果返回给表现层等一系列工作。

1.3 功能结构

系统功能主要包括用户管理、题库管理、组卷管理、考生管理、考试管理、阅卷管理、统计分析和系统管理等,其功能组成如图2。

2 实现策略

2.1 系统流程

按照功能操作的不同,使用者被定义为系统管理员、教师和考生3类角色,具有各自独立的界面。首先,执行登录操作,核实用户信息、实现登录控制。正确登录后,进入各自的操作界面。

2.2 关键模块

本系统由用户管理、题库管理、组卷管理、答题、阅卷管理、统计分析和系统管理等模块组成,以下描述部分重点模块的实现方法。

2.2.1 用户管理

用户管理实现登录、注册、信息修改、权限管理和考生管理等功能。系统采用三级角色管理机制。系统管理员拥有最高权限,能够对系统环境、教师、考生和数据资源(如题库)进行管理。教师拥有构建与管理题库、管理考生、组织考试、阅卷打分、统计分析等职能。系统中的题库按专题、由创建者(教师)管理,考试(练习)过程也由相关教师管理。教师负责创建考生用户,添加、导入考生初始信息,建立考生与试卷的对应关系,构造可控制的管理过程。考生可以进行自主学习或在线参加考试,可以完成对授权数据进行查询、统计和分析等工作。由教师创建的题库和考生资源可以授权给其他教师使用,实现数据共享。

2.2.2 题库管理

题库管理运用集成化思想,数据集成的实现策略突出体现在两个阶段:

(1)数据导入阶段

系统按照如下流程上传、导入数据:

1)在导入前,先将数据表转换为电子表格格式。

2)按照系统提示建立电子表格字段与题库字段的对应关系。

3)上传数据。

4)检验数据格式,如不满足规格,提示修改数据,重新上传。

5)满足格式要求,将数据写入题库,同时在索引库中添加题库索引信息。

用户数据需要从客户机导入到服务器,即数据上传。本系统使用ASP.NET作为开发工具,采用FileUpload方法实现“上传数据”操作。首先,调用HTML控件File Field,将其定义为服务器控件,在服务器上建立虚拟目录,存储上传文件。然后,应用如下语句方法完成文件上传工作:

语句filepath=file1.Postedfile.Filename得到上传文件的本地路径;

语句filename=filepath.Substring(filepath.LastIndexof(“”)+1)得到文件名;

由savepath=server.MapPath(“upfile”)得到服务器的存放目录;

最后,由file1.Postedfile.SaveAs(savepath+””+filename)完成上传操作。

(2)构建公用库阶段

公用题库系统在自我建设过程中,突破用户界限,可以按照属性类别如专业、课程、考试类别等重新组合划分,将来自于不同用户、不同题库的数据整合在一起,是典型的数据集成过程。公用题库数据来源于专用题库,生成过程采用如下方法。

教师创建题库之前,系统提供3个选择项:自用、保留和公用。对于自用类题库,它始终为专用数据,不转换为公用题库。如果用户选择“保留”方式,则在教师删除题库时,自动转换为公用题库,教师失去管理权,其管理权限转移给系统管理员。对于“公用”选项,题库建立时,创建者被定义为系统管理员,该教师自动设置为授权使用者,同时失去对该题库管理权,教师不能对该类题库执行删除操作。

2.2.3 组卷管理

出题方式需要重点解决试卷安全、考试公平等关键问题,在实现过程中,将组卷和出题工作分为两个阶段进行。首先,在组卷策略的控制下,生成考试题库,考生答题前,再随机自动生成试卷。

考试题库是专门为本次考试建立的中间数据集合,考试结束该题库即被删除。它所使用的数据来源于教师可管理的所有题库资源,包括自建题库和授权题库。对于开放平台来讲,由于某一题库的使用者可以是多个教师(自身和授权用户),在某一时间段内,该题库可能是几个考试项目的来源题库。当某个考试项目结束时,系统自动修改题目参数如难度值,从而使原难度区域内的题目发生变化,可能出现试题源集合不一致的问题,最终导致参加其他考试的人员在不同的集合中抽题。所以,本系统采用生成考试题库的策略,在考试过程中“锁定”试题源数据,保证考试人员在同一数据集合中考试,保证考试过程的科学性和公正性。

3 结语

本系统是一个开放式平台,任何用户均可登录使用,突破了单位、学科、类型等限制,在数据应用方面,使专属性数据转变为共享资源。在考试系统建设、数据集成方面提出了新的实现策略,是一种有益的尝试。可以预见,随着技术发展和应用水平的提高,开放式考试系统具有良好的应用前景。

摘要:通过分析考试系统的应用现状,指出题库资源不能共享是当前应用的问题之一。提出了以集成化方式构建开放式考试系统的思想,设计了系统构架,描述了系统的实现方法。讲解采用两级题库结构实现数据共享的策略。

关键词:考试系统,题库,集成,互联网

参考文献

[1]方兵.ASP.NET2.0网站开发技术详解.北京:机械工业出版社,2007.

[2]张莉,王强.SQL Server数据库原理及应用教程.北京:清华大学出版社,2003.

[3]邹勇.基于.NET的WEB在线考试系统[D].成都:电子科技大学,2007.

[4]王心慧.在线考试系统的设计与实现[D].哈尔滨:哈尔滨工程大学,2007.

开放式考试系统设计 篇2

智慧生态圈需要一流的解决方案,一流的解决方案需要开放的创新设计体系来支撑。

海尔在全球建成美国、欧洲、日本、澳洲、中国五大研发中心,每个研发中心都延伸出众多的触角,形成遍布全球的创新资源网络;同时海尔建立开放的HOPE(Haier Open

Partnership

Ecosystem)线上平台,全球的用户和资源在平台上零距离交互,持续产出创新设计的解决方案。通过线上HOPE平台对接交互、冒出创新,线下创新资源网络迅速落地转化,海尔确保了指数科技产品的持续快速诞生、升级、迭代。

“用户个性化”倒逼开放式创新设计。互联网时代,信息获取越来越简单,用户非常容易获取到完美详尽的产品信息,同时随着互联网原住民的成长,用户的需求变为个性化、碎片化,个性化定制产品的呼声也越来越高。因此企业必须改变传统的创新设计方式,为了满足用户的个性化需求,需要和用户、一流资源一起创新。

“产品创新加速”倒逼开放式创新设计。正如《大爆炸式创新》一书中所描述的,技术的指数级发展和产品的快速迭代改变了原有的创新方式。创新设计产品以迅雷不及掩耳之势不断冒出,倒逼企业缩短产品研发周期,持续迭代产品,提升用户体验,只有利用全世界聪明人的智慧才能做到。

开放式考试系统设计 篇3

摘 要:当前教育倡导终身教育,而自主学习是终身教育的具体体现。随着教育信息化的不断发展,基于自主学习型的网络学习平台的研究成为当前高等教育关注的热点。本文针对传统课堂教学的不足和缺陷,以资源为中心搭建了一个共享自主学习型的资源库平台,通过该平台满足学生多元化、层次化和个性化的学习需求,同时实现教学主体之间的情感交流和知识共享,进而实现对学生认知领域、技能领域和情感领域三大教育目标的培养。

关键词:共享;自主学习;资源库系统;终身教育;个性化学习

中图分类号:TP393 文献标志码:B 文章编号:1673-8454(2014)21-0042-04

引言

信息技术催生了教育的不断改革和创新,在给教育提供许多便利的同时,也对当前的教育提出了更高要求。教育信息化的深入发展催生了基于自主学习型的网络课程以及专业教学资源库等平台的建设和开发。相对传统的被动学习而言,自主学习要求学习者能够自主制定学习目标,选择学习资源和控制学习进程。从这点来看,自主学习与学习的数字化资源有着千丝万缕的关系:一方面,学习目标的多元化和学习内容的可选择性决定了自主学习必须以充分的信息资源作为保障,没有丰富的学习资源,自主学习就成为无源之水;另一方面,自主学习这种学习形式的特殊性给以支持自主学习为导向的数字化学习资源库建设提出了一系列的特殊要求:要协助学习者制定正确的学习目标,要帮助其选择合适的学习资源并合理控制学习进程。

但是,反观我们的传统课堂教学,在一线教学中,教师常常苦于调动学生的学习兴趣,无法监测学生的学习过程和学习效果,也烦恼于优秀的授课资源缺乏方便的共享平台,在学习上也无法满足充分的交流。基于此,考虑到学生实际学习水平差异较大,为了照顾各个层次的学生,培养他们的自学能力和学习兴趣,让他们自觉主动去学习,这就需要创造一个适合他们自主学习和个性化学习的网络平台。为此,我们设计和开发了共享自主学习型资源库系统。通过该系统来完善学生自主学习能力的培养体系,从而完成学生认知领域、技能领域和情感领域这三个领域的教育目标。

一、系统开发背景与目标

1.开发背景

在国家示范校建设过程中,我们对现有人才培养模式进行了深入的探索,认识到学生终身教育及学习能力培养的重要性。这就要求在学生学习过程中:着重培养提高自我发展能力和综合素质;并且在学校继续保持和发展普通学历教育优势的同时,提供面向学生自主学习的多元化、开放系统的学习基础环境,即:开放的学习平台、自主整合的专业知识和课程学习资源库平台以及知识交流和情感互动平台。

2.总体目标

创建一个共享式的助教、助学、自主学习的良好学习环境,方便教师教学和发布资源,为学生提供一个愿学、乐学、会学、善学的环境,为不同区域有共同学习兴趣的学习群提供资源交流平台。全方位培育学生强烈的学习动机和浓厚的学习兴趣,使学生主动、自觉、自愿地学习,同时系统也关注师生在教与学的过程中进行自我成长,通过多层次、多方位、跨区域的平台交流,提高教与学的效率,分享学习感悟。

3.具体目标

系统实现的具体目标主要有:

(1)提供辅助教学环境

老师答疑解惑,实时发布最新学习资源,与学习群交流提高教学水平与质量。

(2)实现辅助学习

学生问疑求难,利用共享资源自主学习,通过开放式平台交流学习情感,度过学习新技术的“困难期和黑暗期”,从而乐学。

(3)师生交流、资源共享平台

开放式的师生间轻松交流、资源共享,使师生共同放下教与学的“硬壳和包袱”,融洽学习气氛,增进学生群体与教师群体的团队协作意识,从而善学。

(4)开放式学习群跨区域学习感悟分享

不同区域的教学群与学习群可以实现资源共享、无碍交流,共同提高教与学的效率,分享学习感悟。

二、系统主要功能

根据系统目标的要求,系统的主要功能体现为:信息交流、全文检索、个性化推荐和知识与情感分享。

1.信息交流

师生间、学生间、学习群间均可发布信息、浏览信息和回复信息,并从不同的角度提问与答复,开放自由地交流信息,获取有益信息。在信息交流的过程中可以实现优质资源的上传与下载。

2.全文检索

对用户发布、回复的信息和上传的资源提供了基于内容的全文检索。

随着系统数据量(包括学习交流和优质资源)的不断增多,有时用户为了节省等待回复的时间,可以通过检索引擎来快速找到自己感兴趣的资源。例如,当用户输入“海量数据”关键字的时候,系统就会检索出与“海量数据”相关的信息内容或资源内容。

本系统设计的检索功能与基于数据库的查询存在很大的差异。基于数据库的查询是通过关键字进行简单匹配实现的,不附加任何的语义信息,且当数据库中的数据量很大时,查询效率会受到很大制约,查询结果不能按照信息的重要性进行排序。但是,全文检索基于语义信息进行检索,在检索效果上能够实现快速响应和检索结果精准。

3.个性化推荐

从用户日常登录系统的行为来分析,有时候用户登录系统并不一定带有明确的目的性,比如发布学习信息或检索数据,同时,随着系统的不断使用,系统的数据量会急剧上升,在此条件下我们考虑了设计个性化推荐。系统的个性化推荐基于用户注册时的基本信息和日常的操作行为,比如对资源进行评分,评分代表用户对资源的兴趣大小和偏好,以此给用户主动推荐感兴趣的资源。

4.知识与情感分享

各类用户在平时的学习过程中,可以将自己的学习总结、经验技巧或个人感悟以“用户库”的形式存放起来,撰写日志和文章与他人分享,通过交流分享获得共同成长。如果说交流实现了信息共享,那么通过知识与情感分享将实现思想上的共享。在具体表现上,该模块功能类似于博客,通过该模块使用户共享的信息以它本来的形式,达到非线性的特点,加上其吸引众多持不同观点的人来讨论,使学习者与周围交流群体结合在一起,在分享与交流中得到共同提高。endprint

三、系统架构设计

系统在架构上,以资源为中心,通过聚集优质资源,形成学生学习的“知识库”。系统架构由业务架构和技术架构来体现。

1.业务架构

为了更清楚地表述系统业务和体现业务在系统中的层次关系,我们建立了系统的业务架构,如图1所示。

在图1中,我们将系统整个业务分为:基础层、作业层、支撑层和扩展层。基础层属于系统后台管理层,各业务构件的功能影响着系统的安全性和性能等;作业层是系统基本功能的体现,是基础层之上暴露给用户的基本操作,也是系统基本功能的体现;支撑层的主要功能是索引和搜索,是方便用户查询系统中的数据,具体体现为用户发布的信息数据和用户上传的资源数据;扩展层的主要功能是个性化推荐,同时其部分业务构件也是针对系统未来的扩展而考虑的,比如随着系统的不断使用,用户数和资源数也在不断增多,在目前云计算的影响下,结合数据挖掘等先进技术,向用户推荐更加感兴趣和更丰富的资源。

2.技术架构

系统在技术架构上,遵从J2EE四层模式,如图2所示。

技术架构亦称为软件架构,在该架构中规定系统的软件结构、接口规范、传输协议及实现标准等,通过技术架构将系统的功能需求和非功能需求有机地结合在一起。本系统基于MVC思想,将整个系统从技术层面分解为:表现层、控制层、业务层和资源层。

四、系统实现

1.环境搭建

(1)开发工具:MyEclipse8.5+Tomcat6.0

(2)Servlet+JSP+Lucene+Mahout+Ajax+XML+MySQL

2.核心技术及实现原理

(1)通过缓存提升系统响应速度

作为学习交流分享的平台,响应速度成为系统设计和实现的首要因素。为此,系统通过缓存来提高系统的响应速度。初次访问,通过whirlycache将系统中的相关数据放入缓存中,这样,一方面提高了系统的响应速度,另一方面减少了对数据库频繁的I/O操作。

(2)全文检索技术及实现原理

在功能构成上,全文检索由索引网关和搜索引擎两个模块构成,如图3所示。

①索引网关

索引是搜索引擎工作的基础,为此,我们开发了索引网关,通过索引网关生成搜索引擎可以识别的索引文件。

②搜索引擎

搜索引擎根据用户输入的关键字,在索引文件中通过索引数据的标题和索引数据的内容进行匹配,然后按照匹配的权重高低向用户返回搜索结果。同时,为了支持用户搜索到更准确的结果,搜索引擎支持高级搜索,通过“包含全部关键词”、“包含完整关键词”、“包含任意关键词”和“不包含某个关键词”来过滤某些需要或不需要的关键词。

③中文分词

通过索引网关建立索引前,首先要对数据源进行中文分词,同时,搜索引擎对用户的关键词进行检索之前也必须要进行中文分词。随着系统用户群的增多和数据量的上升,最重要的并不是找到所有结果,因为在海量数据中找到所有结果没有太多的意义,没有人能看得完,最重要的是把最相关的结果排在最前面,这也称为相关度排序。中文分词的准确与否,常常直接影响到对搜索结果的相关度排序。

(3)个性化推荐的实现

个性化推荐的设计基于协同过滤,从算法实现上目前主要有基于物品的协同过滤(Item CF)和基于用户的协同过滤(User CF)。考虑到系统未来资源会越来越多,而用户的数量在增长到一定程度后就会趋于稳定,所以,基于性能的考虑,系统选择基于用户的协同过滤算法。

(4)关于数据的处理

系统中的业务数据,通过Mysql数据库来进行保存;系统中的全局配置参数以及一些任务数据,通过XML来进行保存,这样,当系统启动时,这些数据会被加载到内存中,当系统需要时,通过JDOM或DOM4J来进行读取和写入。这样设计的原因,一方面是基于组件的独立性考虑的,同时也是基于系统的效率设计的。

五、系统特点

系统在整个实现过程中,从技术层面上,主要体现为以下五个方面:

1.遵从MVC模式

系统在设计和开发过程中遵从MVC模式,结构清晰,表现层、业务层和数据库层相对独立。在相互交互过程中,系统通过核心Servlet接收用户请求,然后将请求转发给用户请求处理器,用户请求处理器根据用户的不同请求转发给不同的业务逻辑处理器去执行相应的业务逻辑操作,其请求处理机制与Struts框架非常相似。

2.系统基于XML文件实现动态可配置

系统对运行过程中一切参数(比如数据源、上传附件大小、拦截器等)未硬编码到程序中,而是通过XML文件进行动态配置和管理。

3.基于组件化

系统在设计和实现过程中基于组件化,亦称构件化。比如全文检索、个性化推荐的设计均以组件的方式注入到系统中,而非通过程序代码与系统耦合在一起,组件与系统之间保持相对的独立性,组件的更改不影响系统整体的运行。

4.面向接口

考虑到系统将来的扩展和升级,系统在设计上面向接口。通过接口保持类与类之间的独立性,而且功能与功能之间的依赖体现为接口的依赖,从而有效提高系统的可维护性和可扩展性。比如,系统目前是基于JDBC实现数据库操作的,如果将来环境发生改变,也可通过Hibernate或其他O/R关系对象中间件去实现,因为基于数据库的操作行为是通过面向接口的设计理念去设计的。

5.设计模式的运用

为了设计的规范化和最大程度地复用,系统在设计时,灵活地使用了GoF提出的一些经典设计模式,比如工厂模式、单例模式、观察者模式等。

六、结束语

本文是在国家百所示范校建设过程中,在对现有人才培养模式进行了深入探索的基础上,结合“着重培养学生提高自我发展能力和综合素质”的培养目标下,借助信息技术,为老师、学生搭建了一个能够进行信息交流、资源共享和自主学习的平台。在系统投入应用后,极大地激发了学生的学习兴趣,使得学生能够不限时间和空间进行自主学习,拉近了老师与学生的距离,使用效果良好。

参考文献:

[1]谭云杰.大象:Thinking in UML[M].北京:中国水利水电出版社,2009.1.

[2]John Crupi,Dan Malks,Deepak Alur.Core J2EE patterns:best practices and design strategies[M].Prentice Hall; 2nd Revised edition,2003.6.

[3]Erik Hatcher, Otis Gospodnetic, Mike McCandless.Lucene in Action[M].Manning Publications; 2nd Revised edition,2010.8.

[4]项亮.推荐系统实践[M].北京:人民邮电出版社,2012.6.

基于SOA的开放式考试系统设计 篇4

关键词:SOA,考试系统,Web Service

随着网络技术和远程教育技术的发展,基于网络的考试系统在题库管理、考试管理和考试实施中可跨越时间和地域限制,且高效、便利、准确,在试卷批阅中能够实现自动化和手工相结合,特别适合于大规模考试,因此越来越受到用户和研究者的重视[1]。

目前高校和中小学信息化计算机自动考试系统除格式比较固定的选择题和填空题外,在自动化测试方面主要针对两种内容。

(1)以计算机操作考核为主要内容的考试系统,如针对《大学计算机基础》全国计算机等级考试一级部分考试等。比较典型的实现技术是基于Microsoft 的客户端自动化获取被测试内容的相关属性值与参考答案进行比较,或监测用户的鼠标、键盘操作进而获取用户操作的序列实现与参考答案的模糊匹配;

(2) 以程序设计考核为主要内容的考试系统,如高校开设的各类程序设计、全国计算机等级考试中程序设计类考试等。典型题型是在指定区域内修改程序中的逻辑错误或填入空缺代码,或根据程序功能描述完成功能函数的代码。常用实现技术是修改或填入字符匹配检测,或功能函数对指定数据进行处理并输出到指定文件,最后通过对输出文件的内容进行匹配监测以确定完成的功能函数代码的准确性,也有研究者使用人工智能中的模糊评判技术对程序代码的功能进行评测[1]。

这两种考试系统在架构上都把客户端和评测内容捆绑在一起,如果评测内容及评测方式发生改变,则客户端程序需要重新编写,而且题型比较固定,不利于考试内容的拓展和二次开发。为此,本文提出了一种基于SOA的开放式自动考试系统架构,评测内容和评测方式以Web Services的方式实现,客户端只是用户和Web Services的接口。该系统的开放性体现在若要添加新的评测内容,只需添加配套的评测方式或组合现有的评测方式形成新的Web Services,并进行发布供其他客户端程序访问。

1 SOA相关技术

SOA即面向服务的体系结构[2](Service-Oriented Architecture),是一种新的IT系统架构思想,将应用程序的不同功能单元服务(Service)通过服务之间定义的接口和契约(Contract)联系起来。接口采用中立的方式定义,独立于具体实现服务的硬件平台、操作系统和编程语言,使得构建在这样的系统中的服务可以使用统一和标准的方式进行通信。这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。

SOA目前最主要的实现方法是Web Services技术,实现Web Services的主流开发平台有J2EE平台和Microsoft.net平台。其框架如图1所示。

(1)可扩展的标记语言XML是Web Service平台中表示数据的基本格式,用于描述Web Services之间交换的数据和文档,从而实现与平台的无关性;

(2)Web Service描述语言WSDL(Web Service Description Language)基于XML语言,用于Web Service的提供者将Web服务的传输方式、方法、接口参数、服务路径等生成相应的文档发布给使用者;

(3)UDDI(Universal Description,Discovery and Integration)向服务注册代理描述、发布和注册Web服务,服务请求者通过UDDI进行查询所需的服务;

(4)简单对象访问协议SOAP(Simple Object Access Protocol)是Web Service的标准通信协议,采用标准化XML格式传输消息,SOAP基于Http协议,服务使用者基于SOAP协议请求服务提供者提供的Web服务。

2 系统设计

基于SOA的开放式自动考试系统的总体设计如图2所示,所有核心功能都以Web Services的形式实现,部署在Web Services服务器上,客户端和管理端通过服务请求实现对核心功能的访问。

(1)DBconnector:

数据库连接通用模块,为所有的Web Services访问数据库提供统一的接口。

(2)安全访问控制:

基于角色的访问控制RBAC机制[3],通过为角色授权确保对Web服务列表中Web Services的安全访问,并实现对数据库的安全访问。角色是访问权限的集合,用户通过赋予不同的角色获得角色所拥有的访问权限。一个用户可拥有多个角色,一个角色可授权给多个用户;一个角色可包含多个权限,一个权限可被多个角色包含。用户通过角色享有权限。如果角色之间存在继承关系,则上级角色可继承下级角色的部分或全部权限;

(3)评测内容和评测方式Web Services:

评测内容根据不同的考核目标、内容及考核形式等特点进行分类,对应相应的Web Services实现对评测内容的访问管理,如对试题进行管理、抽题管理等。

评测内容描述为

其中,C为测试内容描述集合;WS为Web Services集合,即WSC中的每一个评测内容是测试内容描述和对评测内容进行处理的Web Services的二元组。

测试内容和知识点之间的关系描述为:

其中,ciC,Km为知识点K的子集,KmKAjci所对应的答案描述,Aj的描述基于XML,它描述了ci的类型及对应的答案。fCN基于上下文描述ms实现测试内容ci和知识点集合KmAj的映射,ms基于XML进行描述,即通过fCN,可以确切地知道ci考核的知识点及答案。

知识点集合K描述为

Κ={ki|kiid,l,t,spec>} (3)

即每个知识点包括ki惟一的编号id、难度级别l、知识点类型t和描述信息spec。id通过编码函数M实现与章节的对应,从而使知识点形成一个树状结构。l∈{1,2,3,4,5},分别对应不同的难度级别,1为最简单,5为最难,在创建知识点时指定,基于kil通过加权平均的方式可以得出ci的难度,而具体的权值通过ci对应的Aj描述的类型确定。知识类型t用于说明该知识点在知识点树状结构中是否为叶子结点。spec用于描述该知识点。

评测方式Web Services为一个集合,描述为

WSTi基于fCN(ci)实现对测试内容ci的评测。

SOA的优势之一是其服务可以组合,从而形成新的服务。为此,基于Web Services接口的WSDL描述,可以将相关的Web Services根据考核知识点和方式的需求进行组合,从而形成新的评测内容和评测方式Web Services,这也是该设计的开放性所在。

(4) Web Services列表管理:

承担SOA架构中的UDDI功能,在本系统的设计中是一个简化的UDDI。添加新的Web Services时,其WSDL描述及对应的评测内容类型通过Web Services列表统一注册,当客户端或管理端请求Web Services时,Web Services列表可以根据评测内容类型查询合适的Web Services,或根据WSDL描述查询Web Services对应的评测内容类型。因此,当添加新的评测内容类型并为之指定或增加新的评测方式时,客户端程序不需要重新编写。当然,所有的Web Services请求都必须通过安全访问控制检测,进而确定能否进行响应。

(5)用户管理:

管理对Web Services进行访问的用户及基于客户端进行考试的用户,包括用户的添加、删除、导入和基于角色的授权。该部分的功能以Web Services的形式实现。当用户进入系统时得到一个会话并获得其权限描述。

(6)试题管理:

实现对试题和知识点的添加、删除、更新等操作。可以成批导入指定格式的试题,也可以逐个添加。试题集合T描述为

即试题集中的每一个试题tj都基于上下文描述mtj与知识点集合Cj对应。Cj至少包含一个知识点。

(7) 考试管理:

主要完成对考试过程的管理。功能包括:1) 注册考试,高级管理人员注册要进行的考试,需要指定时间、考试类型和内容、参加人员等信息;2) 试题组卷,按照注册考试的信息,按照指定的难度和试卷生成策略基于试题集合T自动生成考试试卷,试卷中的每个题目对应着相应的分数值;3)考试过程管理,确认考试时间和参加人员,在确定“开始考试”后,客户端根据登录用户的信息下载对应的试题进行考试,在考试结束并完成阅卷后备份试卷内容;4)成绩管理,考试结束后,授权角色对应的用户可以查阅试卷和成绩,完成成绩分析统计,并将学生成绩按Excel格式导出,学生的试卷按PDF格式导出,以便存档管理。

3 结束语

基于上述设计,使用Visual Basic 2005成功开发了一套Visual Basic 2005自动考试系统,数据库使用SQL Server 2005,Web Services部署在IIS 6.0上。该考试系统平稳运行一年多时间,验证了该系统设计的合理性和有效性。

参考文献

[1]李中华.基于Web环境的通用在线考试系统的设计与实现[D].成都:电子科技大学,2007.

[2]毛新生.SOA原理、方法、实践[M].北京:电子工业出版社,2007.

系统分析与设计 期末考试 篇5

A、企业系统规划法 B、关键成功因素法

C、战略目标集转化法 D、成本效益分析法 14.系统开发的生命周期中不包括下列哪个阶段()A.系统规划 B.系统分析 C.系统设计 D.系统实施

19.面向对象程序设计将描述事物的数据与()封装在一起,作为一个相互依存、不可分割的整体来处理。A.信息 B.数据隐藏 C.对数据的操作 D.数据抽象 22.属于系统设计阶段的工具是():

A.数据流程图 B.处理流程图 C.系统流程图 D.HIPO图

23.进行企业系统规划,哪种规划方法可以形成一套完整的信息系统结构方案()A.企业系统规划法 B.关键成功因素法 C.战略目标集转化法 D.成本效益分析法

30.导出模块结构图的基础是()

A.业务流程图 B.数据流程图 C.处理流程图 D.层次结构图

32.()是从用户使用系统的角度描述系统功能的图形表达方法。

A.类图 B.对象图 C.序列图 D.用例图

35.UML中,对象行为是通过交互来实现的,是对象间为完成某一目的而进行的一系列消息交换。消息序列可用两种图来表示,分别是(D)

A.状态图和顺序图 B.活动图和协作图

C.状态图和活动图 D.顺序图和协作图

36.用例(Use-case)用来描述系统在事件做出响应时所采取的行动。用例之间是具有相关性的。在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户帐号是否正确。那么,用例“创建新订单”、“更新订单”与用例“检查用户帐号”之间是(A)关系。

A.包含(include)B.扩展(extend)

C.分类(classification)D.聚集(aggregation)

1、组成UML有三种基本的建筑块是:(A),事物和图

A、关系 B、类 C、用例 D、实体

2、UML体系包括三个部分:UML基本构造块,(A)和UML公共机制

A、UML规则 B、UML命名 C、UML模型 D、UML约束

4、(A)模型的缺点是缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题

A、瀑布模型 B、原型模型 C、增量模型 D、螺旋模型

5、下面哪个不是UML中的静态视图(A)

A.状态图 B.用例图 C.对象图 D.类图

6、(A)技术是将一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动。

A、泳道 B、分叉汇合 C、分支 D、转移

7、下列关于状态图的说法中,正确的是(C)

A.状态图是UML中对系统的静态方面进行建模的五种图之一。B.状态图是活动图的一个特例,状态图中的多数状态是活动状态

C.活动图和状态图是对一个对象的生命周期进行建模,描述对象随时间变化的行为。D.状态图强调对有几个对象参与的活动过程建模,而活动图更强调对单个反应型对象建模

8、对反应型对象建模一般使用(A)图

A、状态图 B、顺序图 C、活动图 D、类图

12、(D)是系统中遵从一组接口且提供实现的一个物理部件,通常指开发和运行时类的物理实现 A、部署图 B、类 C、接口 D、组件

13、关于协作图的描述,下列哪个不正确(B)

A.协作图作为一种交互图,强调的是参加交互的对象的组织; B.协作图是顺序图的一种特例 C.协作图中有消息流的顺序号;

D.在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成; 8定义大多数的需求和范围的工作是在UP中的 B 阶段完成的。A初始阶段 B细化阶段 C构造阶段 D提交阶段

1.信息系统设计是系统开发的重要阶段,进行系统设计的主要依据应是()。A、可行性研究报告B 系统分析报告

C、系统调查报告 D、系统规划报告

3.在系统总体结构设计时,应采纳什么样的方法()。A、程序设计 B、结构化设计 C、由里向外 D、自底向上 4.结构化设计的基本思想是()。

A、模块化 B、集成化 C、自底向上,逐步求精 D、规范化

5.在结构化生命周期法中,系统分析和系统实施之间的阶段是()。A、详细设计 B系统设计 C、需求分析 D、编程调试 6.对于结构化设计思想的描述哪一项是错误的()。

A、在结构化设计中,模块的功能应当简单明确,易于理解 B、自顶向下,逐步求精

C、设计者应先设计顶层模块

D、越下层模块,其功能越具体,越复杂 8.系统设计阶段的主要目的是()。

A、设计新系统的目标 B 将系统逻辑方案转换成物理方案 C、代码设计 D、程序设计 19.结构化设计方法中绘制模块结构图的基础是()。A 数据流程图 B、数据关系图 C、数据结构图 D、业务流程图 29.系统设计阶段的主要工作内容之一是()。

A、程序设计 B、购置计算机 C、画出数据流程图 B、规定处理过程 31.系统的呑吐量指的是()。

A、每天的数据输出量 B、每秒数据的处理量 C、每日数据的输入量 D、每秒执行的作业数

33.在系统物理配置方案的设计中,系统的()可以用连续工作时间来表示。A、吞吐量 B、响应时间 C 可靠性 D、地域范围 34.计算机和网络系统配置说明,应包含在()中。

A、系统规划说明书 B、系统设计说明书 C、系统实施说明书 D、系统分析说明书 35.属于系统详细设计工作的是()。

A、输入输出设计 B、系统平台设计 C、系统结构设计 D、程序设计 39.系统设计报告的主要作用是作为()的依据。A、系统规划 B、系统分析 C、系统实施 D、系统评价

1.B 3.B 4.A 5.B 6.D8.B 19.A 29.D 31.D 33.C 34.B 35.A 39.C 11.系统设计阶段需要从数据流程图导出模块结构图。B.生命周期结构(Lifecycle Architecture)里程碑 4.系统实施的主要活动包括(D)。C.初始功能(Initial Operational)里程碑 A、编程、系统调试 B、系统安装 C、新旧系统转换 D、以上都是 1.系统实施是以(B)为依据的。

A、系统分析文档资料 B、系统设计文档资料

C、系统分析和设计文档资料 D、数据流程图

7.一般子系统的划分是在系统()阶段,根据对系统的功能/数据分析的结果提出的.A.需求分析 B.逻辑阶段 C.总体设计 D.详细设计 答案: A 4.业务系统规划法(BSP)的核心是()A.明确企业目标 B.定义(识别)业务过程 C.进行数据分析 D.确定信息结构 答案: C 7.一般子系统的划分是在系统()阶段,根据对系统的功能/数据分析的结果提出的.A.需求分析 B.逻辑阶段 C.总体设计 D.详细设计 答案: A 4.业务系统规划法(BSP)的核心是()A.明确企业目标 B.定义(识别)业务过程 C.进行数据分析 D.确定信息结构 答案: C 12.RUP中的软件生命周期在时间上被分解为四个顺序的阶段,分别是:初始阶段(Inception),细化阶段(Elaboration),构造阶段(Construction)和交付阶段(Transition),每个阶段结束于一个主要的里程碑(Major Milestones).构建阶段结束时是第三个重要的里程碑:初始功能(Initial Operational)里程碑.A.生命周期目标(Lifecycle Objective)里程碑

D.产品发布(Product Release)里程碑 答案: C

14.信息系统开发的结构化方法的一个主要原则是().A.自顶向下原则 B.自底向上原则 C.分步实施原则 D.重点突破原则 答案: A

16.一般来说,占维护工作比例最高的是().A.纠错性维护 B.适应性维护 C.完善性维护 D.预防性维护 答案: C

17.用户开发应用系统的主要手段是().A.生命周期法 B.原型法 C.第四代语言 D.面向对象方法 答案: A

19.系统规划的主要任务包括().A.明确组织的信息需求,制定系统总体结构方案 B.对系统进行经济,技术和使用方面的可行性研究 C.选择计算机和网络系统的方案 D.确定软件系统的模块结构 答案: A

20.系统设计阶段的主要成果是().A.用户的决策方针 B.用户的分析方案 C.系统设计说明书 D.系统总体设计方案

答案: C

21.信息系统建设的结构化方法中用户必须参与的原则是用户必须参与().A.系统建设中各阶段工作 B.系统分析工作 C.系统设计工作 D.系统实施工作 答案: A

22.结构化生命周期法的主要缺点之一是().A.系统开发周期长 B.缺乏标准,规范

C.用户参与程度低 D.主要工作集中在实施阶段 答案: A 24.系统分析工作的全面总结和主要成果是().A.可行性研究报告B.数据词典 C.系统说明书 D.系统详细调查报告 答案: A 28.生命周期法的特点之一是().A.整个系统的开发工作是非劳动密集型的 B.系统开发时间短

C.对用户需求的变更能做出迅速响应 D.适合大型复杂系统 答案: C 30.系统维护中要解决的问题来源于().A.系统分析阶段 B.系统设计阶段 C.系统实施阶段 D.三者都包括

答案: D 38.下面哪一项不是系统设计阶段的主要活动().A.系统总体设计 B.系统硬件设计 C.系统详细设计 D.编写系统实施计划 答案: D 39.对于结构化设计思想的描述哪一项是错误的().A.在结构化设计中,模块的功能应当简单明确,易于理解

B.自顶向下,逐步求精

C.设计者应先设计顶层模块

D.越下层模块,其功能越具体,越复杂

答案: D 73.在系统生命周期的各阶段中,花费费用和人力投入最多的阶段是().A.分析与设计 B.编制程序 C.测试程序 D.系统维护

答案: A 78.在UML提供的图中,()用于描述系统与外部系统及用户之间的交互.A.用例图 B.类图 C.对象图 D.部署图

答案:A 79.在UML提供的图中,()用于按时间顺序描述对象间的交互.A.网络图 B.状态图 C.协作图 D.序列图(顺序图)答案:D 96.系统分析报告的主要作用是().A.系统规划的依据 B.系统实施的依据 C.系统设计的依据 D.系统评价的依据 答案:C 95.绘制系统流程图的基础是().A.数据关系图 B.数据流程图 C.数据结构图 D.功能结构图 答案:B

9.信息系统开发的步骤是:在系统规划后,循进行_____, _____, _____ ,_____ 工作.答案: 系统分析 系统设计 系统构建与实施 系统评价 13.信息系统规划有哪些方法

答:用于企业信息系统规划的方法主要有战略分析法,即关键成功因素法(Critical Success Factors,CSF);企业分析法,即企业系统规划法(Business System Planning,BSP);基于BPR的信息系统战略规划方法.其他的方法还有战略目标集转化法(Strategy Set Transformation,SST),企业信息分析与集成技术(BIAIT),投资回收法(R01)等.12.RUP中的软件生命周期在时间上被分解为四个顺序的阶段,分别是:初始阶段(Inception),细化阶段(Elaboration),构造阶段(Construction)和交付阶段(Transition),每个阶段结束于一个主要的里程碑(Major Milestones).构建阶段结束时是第三个重要的里程碑:初始功能(Initial Operational)里程碑.A.生命周期目标(Lifecycle Objective)里程碑 B.生命周期结构(Lifecycle Architecture)里程碑 C.初始功能(Initial Operational)里程碑 D.产品发布(Product Release)里程碑

答案: C

14.信息系统开发的结构化方法的一个主要原则是().A.自顶向下原则 B.自底向上原则 C.分步实施原则 D.重点突破原则 答案: A

16.一般来说,占维护工作比例最高的是().A.纠错性维护 B.适应性维护 C.完善性维护 D.预防性维护 答案: C

17.用户开发应用系统的主要手段是().A.生命周期法 B.原型法 C.第四代语言 D.面向对象方法

答案: A

19.系统规划的主要任务包括().A.明确组织的信息需求,制定系统总体结构方案 B.对系统进行经济,技术和使用方面的可行性研究 C.选择计算机和网络系统的方案 D.确定软件系统的模块结构 答案: A

20.系统设计阶段的主要成果是().A.用户的决策方针 B.用户的分析方案 C.系统设计说明书 D.系统总体设计方案 答案: C

21.信息系统建设的结构化方法中用户必须参与的原则是用户必须参与().A.系统建设中各阶段工作 B.系统分析工作 C.系统设计工作 D.系统实施工作 答案: A 22.结构化生命周期法的主要缺点之一是().A.系统开发周期长 B.缺乏标准,规范

C.用户参与程度低 D.主要工作集中在实施阶段 答案: A 24.系统分析工作的全面总结和主要成果是().A.可行性研究报告B.数据词典 C.系统说明书 D.系统详细调查报告 答案: A 28.生命周期法的特点之一是().A.整个系统的开发工作是非劳动密集型的 B.系统开发时间短

C.对用户需求的变更能做出迅速响应 D.适合大型复杂系统 答案: C 30.系统维护中要解决的问题来源于().A.系统分析阶段 B.系统设计阶段 C.系统实施阶段 D.三者都包括 答案: D 38.下面哪一项不是系统设计阶段的主要活动().A.系统总体设计 B.系统硬件设计 C.系统详细设计 D.编写系统实施计划

答案: D 39.对于结构化设计思想的描述哪一项是错误的().A.在结构化设计中,模块的功能应当简单明确,易于理解

B.自顶向下,逐步求精

C.设计者应先设计顶层模块

D.越下层模块,其功能越具体,越复杂

答案: D 73.在系统生命周期的各阶段中,花费费用和人力投入最多的阶段是().A.分析与设计 B.编制程序 C.测试程序 D.系统维护

答案: A 78.在UML提供的图中,()用于描述系统与外部系统及用户之间的交互.A.用例图 B.类图 C.对象图 D.部署图 答案:A 79.在UML提供的图中,()用于按时间顺序描述对象间的交互.A.网络图 B.状态图 C.协作图 D.序列图(顺序图)

答案:D

96.系统分析报告的主要作用是().A.系统规划的依据 B.系统实施的依据 C.系统设计的依据 D.系统评价的依据 答案:C

95.绘制系统流程图的基础是().A.数据关系图 B.数据流程图 C.数据结构图 D.功能结构图 答案:B

9.信息系统开发的步骤是:在系统规划后,循进行_____, _____, _____ ,_____ 工作.答案: 系统分析 系统设计 系统构建与实施 系统评价 13.信息系统规划有哪些方法

答:用于企业信息系统规划的方法主要有战略分析法,即关键成功因素法(Critical Success Factors,CSF);企业分析法,即企业系统规划法(Business System Planning,BSP);基于BPR的信息系统战略规划方法.其他的方法还有战略目标集转化法(Strategy Set Transformation,SST),企业信息分析与集成技术(BIAIT),投资回收法(R01)等.2.信息系统规划是指对组织目标、组织现状进行分析,从而制定指导信息系统建设的总体规划和信息系统长期发展展望。在众多的信息系统规划方法当中,具有代表性的主要有 企业系统规划法、战略目标转移法、关键成功因素法。

4.信息系统建设的特点决定了信息系统建设要做大量复杂和细致的工作。信息系统建设主要包括 信息系统规划、信息系统开发、信息系统维护 和 信息系统管理 四方面的工作。

1. UML统一建模语言共定义了哪两类、哪八种图形?

答:(1)静态结构图:类图,对象图,构件图,实施图

(2)动态行为图:用例图,顺序图,协作图,状态图,活动图

2.在下图所示的用例分析类图中,请指出各个概念类属于哪一类,并分别解释三种概念类的特点及概念。“售书处理”的用例分析类图书目售书员售书界面产生待售图书待售图书开书单打印进程架存图书出售图书售出图书答:属于实体类的有:书目、架存图书、代售图书、售出图书。

属于边界类的有:售书界面。

属于控制类的有:产生待售图书、出售图书、开书单。三种概念类的特点及概念:

特点:概念类面向功能需求,一般不考虑性能要求,具有突出业务领域、突出概念性及大粒度的特征。概念:(1)实体类是信息系统表示客观实体的抽象要素。它一般对应着在业务领域中的客观事物,或是具有较稳定信息内容的系统元素。(2)边界类是描述系统与参与者之间交互的抽象要素。边界类只是对信息系统与参与者之间交互的抽象建模,并不表示交互的具体内容及交互界面的具体形式。

(3)控制类是表示信息系统对其他对象实施协调处理、逻辑运算的抽象要素。3.请根据下图所示的概念模型,将其转换为逻辑模型(即写出其关系模式)。

编号姓名读者职业电话住址邮编*待售图书*类别单价出版日期书号架位架存册数书号书名作者出版社1选书*架存图书*11书目书单号册数折扣率交款标记售书员答:根据其E-R图,其关系模式为:

读者(编号,姓名,职业,电话,住址,邮编)架存图书(书号,架位,架存册数)

待售图书(书单号,册数,折扣率,交款标记,售书员)书目(书号,书名,作者,出版社,出版日期,类别,单价)9.如图,是在网上商店系统经理的用例图如下:

网上购物系统顾客的功能用例

1.单一职责原则(Single Responsibility Principle, SRP):

 There should never be more than one reason for a class to change. 应该有且仅有一个原因引起类的变更 2.里氏替换原则 最正宗的定义:

If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behavior of P is unchanged when o1 is substituted for o2 then S is a subtype of T.(如果对每一个类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所有的对象o1都代换成o2时,程序P的行为没有发生变化,那么类型S是类型T的子类型。)里氏替换原则

通俗讲,只要父类出现的地方子类就可以出现,而且替换为子类也不会产生任何错误或异常,使用者可能根本就不需要知道是父类还是子类。但是反过来就不行了,有子类出现的地方,父类未必就能适应。3.迪米特法则

迪米特法则的定义:

迪米特法则(Law of Demeter, LoD)也称为最少知识原则,一个对象应该对其他对象有最少的了解。

一个类应该对自己需要耦合或调用的类知道得最少,被耦合或调用的类的内部如何复杂都和我没有关系,那是你的事情,我就知道你提供的这么多public方法,我就调用这么多,其他的我一概不关心。4.开闭原则

开闭原则的定义:

一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。

一个软件实体应该通过扩展来实现变化,而不是通过修改已有的源代码来实现变化。5.依赖倒置原则

依赖倒置原则包含三层含义:

 高层模块不应该依赖低层模块,两者都应该依赖其抽象;

  抽象不应该依赖细节; 细节应该依赖抽象。

在java语言中,抽象就是指接口或抽象类,两者都是不能直接被实例化的;细节就是实现类,实现接口或继承抽象类而产生的类就是细节,其特点就是可以直接被实例化,也就是可以加上一个关键字new产生一个对象。6.接口隔离原则

接口隔离原则定义:

  客户端不应该依赖它不需要的接口;

类间的依赖关系应该建立在最小的接口上。

建立单一接口,不要建立臃肿庞大的接口,接口尽量细化,同时接口中的方法尽量少。它要求“尽量使用多个专门的接口”。专门接口指提供给每个模块的都应该是单一接口,提供给几个模块就应该有几个接口,而不是建立一个庞大的臃肿接口,容纳所有的客户端访问。

开放式考试系统设计 篇6

关键词: 开放教育; 云存储; 资源推荐; 基于项目的协同过滤算法

中图分类号:TP31 文献标志码:A 文章编号:1006-8228(2013)01-12-02

Design of service-oriented open education cloud storage system

Zhang Xueyan

(Ningbo TV&Radio University, Ningbo, Zhejiang 315016, China)

Abstract: How to apply cloud storage technology in service-oriented open education is studied. A cloud storage service system for service-oriented open education is designed to solve the following two problems: resource storage and the problem of bored of study caused by information asymmetry in open education. The level of service of the open education is enhanced. Combined with the characteristics of open education, through the analysis on the concept of cloud storage, a cloud storage system which can recommend resources is designed. Project-based collaborative filtering algorithm for resource recommending is applied in it.

Key words: open education; cloud storage; resource recommended; project-based collaborative filtering algorithm

0 引言

互联网技术的迅速发展,为现代开放教育提供了新的教学手段,促进了开放教育的发展。在基于计算机技术、网络通讯技术的新型教学模式中,各种教学资源通过网络提供给开放式教育的学员自主学习的环境。但随着教学资源数量急剧增加及资源类型的多样化,产生了以下两个问题:①传统的资源存储方式无法适应实际需求;②学生无法获取或无法及时获取有效的资源或信息,即产生了开放教育中的信息不对称问题。

云存储技术的出现,为解决教学资源存储问题带来了曙光[1-4]。云存储专注于向各类用户提供基于网络的在线存储服务。云存储的核心是存储设备与应用软件的结合,利用应用软件实现存储服务[3-5]。本课题旨在设计面向服务(具有资源推荐功能)的云存储系统,以解决上述的两个问题。

1 云存储系统介绍

云存储是一个以数据存储与管理为核心的云计算系统。云存储由大量的同构或异构的存储设备组成,融合了虚拟化技术、网格技术、数据保护及管理技术,为用户提供按需分配的灵活方便的云存储服务[5,6]。云存储系统利用云存储技术把存储设备转换为存储服务。图1是一个云存储系统。

目前典型的云存储结构模型可分为存储层、基础管理层、应用接口层及访问层,如图2所示。

其中API是应用程序接口,iSCSI是互联网小型计算机接口,FC为光纤通道,NAS为网络连接式存储,P2P为对等存储系统。存储层位于模型的最底层,由许多多样的存储设备组成。存储层可以实现同构或异构设备的虚拟化管理。基础管理层是云存储的核心层,是最难实现的部分,对外提供统一的数据服务。应用层相对其他层来说较为灵活,在此可根据不同的需要提供不同的应用服务。访问层是云存储系统与用户的接口部分。

2 面向服务的开放教育云存储系统设计

服务于开放教育的云存储系统为私有云存储系统,即只有注册了学籍的用户才能访问系统资源。云存储系统面向学员提供基于web的访问方式,提供文件在线存储、备份、共享及多版本控制等功能,内部采用多种虚拟化技术,底层提供iSCSI、FC、NFS等API访问接口。

本系统的功能包括:教师通过上传资源来建设课程;学生可通过系统来完成作业并上传;系统根据不同用户的需求向用户推荐资源。

2.1 系统的总体结构

本系统涉及到管理员、教师用户及学生用户三类用户,这三类用户通过云存储系统对资源进行操作。系统另外提供一个推荐资源或通知通告的功能模块。具体的系统UML类图如图3所示。

图3中,User为三类用户的父类。File类包括文件和目录,具体由属性type来决定,type为true时为文件,false为目录;dir为路径信息,包含了文件或目录的名称。

2.2 系统的主要类功能设计

本系统主要类为用户类User,资源类File及系统功能类Recommender。其中User类是管理员类Administrator、学生StudentUser及教师TeacherUser三个类的父类。

⑴ Administrator类具有创建用户、删除用户、初始化用户密码、创建课程、指定课程责任教师、关联课程与班级、删除课程等功能。

⑵ StudentUser类具有上传作业及删除自己已上传作业的权限。本系统暂时考虑不允许学生用户上传资源。另外本系统还需要知道学生所在的班级,因此在此类中还需要class属性来说明学生所在的班级。

⑶ TeacherUser类具有上传资源,删除已上传的资源,批改学生作业及发布通知的功能。另一个教师可以教授多门课程,因此增加一个字符数组类型course来记录该教师所负责的课程。

上述三个类从User类继承的功能是修改自己的密码,下载文件或文件夹,重命名文件或文件夹。

⑴ File类是一个资源类,可表示文件或文件夹。包括文件编号,文件路径及文件名,权限信息,创建者,创建时间及最后修改时间等属性。其中,权限主要包括只读和读写两个权限,若文件夹为只读,说明该文件夹下不可创建文件或文件夹,也不能删除文件或文件夹,从而保证了资源的安全。文件编号id是一个系统自动生成的惟一编号,可标识File对象。

⑵ Recommender类实现系统的资源及通知通告推送服务。具体参考2.3。

我们在该云存储平台中提供了一个接口给在线作业系统,教师可以在线批改作业,具体由checkAssignment方法实现。

2.3 Recommender类设计

Recommender类是本系统最重要的类之一,是面向服务的具体体现,本课题主要参考文献[7]中个性化服务推荐的方式来实现。系统通过该类向学生发布信息,其中popNotice方法是直接向学生在该系统中登记的手机号码发送短信,并将通知的副本拷贝到学生所在的云盘目录中。而popResource类是把资源拷贝到学生用户所在的云盘相关目录中,并发短消息提示学生查看资源。

Recommender类中最主要的功能,同时也是最难实现的功能是个性化资源的选择,即为不同的学员推荐不同的学习资料。本课题组采用基于项目的协同过滤算法(Project-based Collaborative Filtering Algorithm, PCFA),计算出资源之间的相似性,得出目标资源的相似资料集合与利用加权和计算资料的预测评价分值。根据预测评价值的高低向学员推荐学员最偏好的前N个资源。系统的推荐流程图如图4所示。

计算当前资源可能评价值时,首先要计算资源间属性相似度,获得当前资源属性相似的资源,然后才能得到该资源的可能评价值。对于最后图4中资源下载到学员本地计算机,学员可以在个人设置处进行配置,可供学员选择的项有:

⑴ 自动下载(系统推荐);

⑵ 询问后下载;

⑶ 显示资源列表,允许选择性下载。

对于top-N中N的值也可由学员自行配置,系统默认为10。在下载完成后,系统会给出一份已下载的资源列表,并提示哪些是教师推荐的资源。

3 结束语

本系统通过给教师和学生提供一个基于云存储的个人存储空间(云盘),初步实现了向学员个性化推荐资源及通知通告的功能,并且使得学生可在任何联网的计算机上完成自己的作业。初步解决了远程教育中由于信息不对称而引起学员学习热情下降的问题,在本课题组给出的500份调查问卷(有效问卷为378份)中,79.4%的成人学员肯定了资源推荐对于学习积极性提高具有非常重大的意义,认可了本系统的资源推荐服务。

目前系统存在的主要问题是无法获知学生对推荐给他们的资源是否满意或还需要哪些资源。在今后的工作中,我们将会在Recommender中再增加一个学生对推荐资源的认可度的参数,返回给Recommender系统用以校正相似度参数,为学员提供更好的资源推荐服务。

参考文献:

[1] 刘鹏.云计算[M].电子工业出版,2009.

[2] Armbrust M,Fox A,Griffith R,et al. A view of cloud computing[J].Communications of the ACM,2010.53(4):50-58

[3] 刘贝,汤斌.云存储原理及其发展趋势[J].科技信息,2011.5: 470-471

[4] 高宏卿等.基于云存储的教学资源整合研究与实现[J].现代教育技术,2010.3:97-101

[5] 郅斌.一种私有云存储系统的设计与实现[D].北京邮电大学,2011.

[6] 王丽娜等.一种适于云存储的数据确定性删除方法[J].电子学报,2012.2:266-272

开放式实验室管理系统设计分析 篇7

关键词:实验室,开放式,管理系统,结构功能,控制管理

实验室是职业学校教学开展中所需要的一个重要实践教育与验证机构, 对于职业学校教学发展以及学生能力的培养提升有着非常重要的作用和影响。结合我国当前职业学校实验教学开展的实际情况以及教学中对于实验室应用管理的现状来看, 多数的职业学校实验教学主要是以验证性教学为主, 不仅教学过程中的实验方式比较单一, 并且教学内容以及方法也相对较为落后, 教学中学生的主体性地位体现不够明显, 动手实践机会相对较少, 因此, 对于学生实验教学相关能力的培养教育效果并不理想。而新课程标准下, 随着对于学生能力培养要求的提升, 要求在教学中充分重视学生的主体性教学和学习地位, 培养和激发学生学习兴趣与积极性, 实现学生能力素质的培养提升, 以满足社会的人才需求。在这一情况下, 原有的职业学校实验教学以及管理模式, 已经不能适应和满足高效实验教学的发展, 进行开放式实验室管理系统的设计建设, 以满足职业学校实验教学中的各种需求, 推进职业学校实验教学提升和发展, 成为职业学校实验教学以及实验室建设管理中面临的重要问题和发展现状。下文将对于职业学校开放式实验室管理系统的设计建设进行研究分析, 以促进职业学校实验室管理水平的提升和职业学校教育管理发展进步。

1 职业学校实验教学现状与实验室管理改革分析

结合当前国内职业学校实验教学以及实验室建设管理的具体情况, 由于受到传统教学与管理的作用影响, 学生在教学中多处于被动接受的学习地位, 动手实践和参与实验的机会相对较少, 学校实验室的建设管理中对于学生的开放性也比较小, 学生接触实验器材设备以及参与到实验管理中的机会都比较小, 对于实验教学发展和学生能力培养都非常不利。针对这种情况, 为适应教学改革与新课标的的要求规定, 职业学校在实验室建设与管理中, 通过更多实验项目的开发建设以及开放式实验室管理系统的构建, 来提升了职业学校实验室建设与管理中的开放性, 增加学生在实验教学和学习中实践动手锻炼机会, 实现学生实践创新等能力的培养提升。其中, 所谓的开放式实验室管理, 除了在进行开放式实验室管理系统的设计构建, 以给予学生更多的实验操作与实践锻炼机会外, 还通过对于学校实验室以及设备器材开放程度的扩大, 使学生有更多的时间和选择在实验学习与实践锻炼上, 从而激发学生实验学习兴趣、提升学生学习积极性、实现学生能力的培养和提升创造机会与条件。

2 开放式实验室管理系统的设计分析

2.1 开放式实验室管理系统的结构功能分析

结合职业学校实验教学的需求以及教学目标, 进行职业学校开放性实验室管理系统的设计建设, 主要以满足学生的实验学习以及登记、查询、对于实验设备以及项目的应用管理等为主, 因此, 在进行开放式实验室管理系统设计中, 主要围绕学生实验学习进行登记和统计、查询、打印、实验项目与实验设备的管理等进行开发设计, 学生只有通过提前的预约登记才能够进行设备项目的实验操作和控制应用, 同时实验室信息管理系统还根据对于学生实验登记与管理信息, 对于学生的平时实验学习与操作表现给予考核评价, 以协助实现实验教学中对于学生考核评价。

根据上述职业学校开放式实验室管理系统的主要功能, 在进行其系统结构的设计中, 主要应用C/S以及B/S两种结构形式进行职业学校开放式实验室的设计建设。其中, C/S结构形式在进行职业学校开放式实验室管理系统的设计应用中, 所设计实现的系统其安装以及管理维护的成本费用都相对比较高, 因此, 在实际设计建设中, 多采用B/S结构形式进行职业学校开放式实验室管理系统的设计建设, 以进行学生实验预约和登记、查询、打印、管理等功能需求的满足, 同时采用C/S结构形式对于实验室的各种器材设备进行控制和管理, 以实现对于职业学校实验室的开放式教学应用管理和控制, 满足职业学校实验教学需求。

2.2 开放式实验室管理系统的数据库与控制管理设计

根据上述系统的结构功能分析可知, 职业学校开放式实验室管理系统的数据库主要是采用SQL Server2000数据库作为后台数据库服务器进行设计构建的, 并用于进行实验室管理中数据信息的存储管理。此外, 在进行职业学校实验室实验器材以及设备的控制管理中, 开放式的管理与传统管理不同, 并不是通过班级作为管理单位进行控制管理的, 它是通过系统中预约申请数据的分析管理, 实现对于学生设备使用的控制和管理, 并且在学生考勤统计中也是使用电子化管理手段进行管理实现的。其中, 在进行实验室器材设备的管理中, 根据器材设备的类型不同, 主要通过计算机和电源控制两种方式进行控制管理, 计算机管理主要是借助预约申请数据等登陆控制进行管理, 而电源控制则通过控制电路的连接设计, 对于实验器材以及设备进行控制管理实现。

3 结束语

总之, 开放式实验室管理系统的建设, 有利于提高实验室设备以及器材的利用率, 使实验室作用功能得以充分发挥, 另一方面在进行实验室应用管理上也更为方便简单, 具有积极作用和意义。

参考文献

开放式考试系统设计 篇8

随着制造业自动化需求的增加,机械手在工业生产中得到越来越广泛的应用[1,2]。置模机械手是机械手在混凝土预制构件行业的重要应用,该设备主要是代替人工完成将边模精确地摆放至模台指定位置并固定的作业,由此提高生产效率,减少安全事故的发生。控制系统作为机械手的重要组成部分,其性能好坏直接关系到机械手能否达到预期的设计要求[3]。

本文采用开放式数控系统作为机械手的控制系统,其结构形式为“PC+运动控制器”,采用了台湾新代的HC10A一体化控制器,该控制器将PC与运动控制器结合成一体,同时集成了PLC、人机和Macro,由此省去了PC机,简化了控制系统的硬件结构。该系统能满足相对恶劣的工业环境,具有安全稳定、控制精度高、操作方便、良好的可扩展性和可维护性。

1 机械手结构与功能分析

机械手结构组成如图1所示,整体采用龙门式结构,主要包括X轴桁架、Y轴大梁、Z轴升降臂和集成执行爪等。机械手具有4个自由度,即纵向X轴移动、横向Y轴移动、竖直Z轴移动以及绕Z轴的转动(C轴运动)。X轴、Y轴、Z轴的移动采用伺服电机驱动齿轮在齿条上运动来实现,由直线导轨导向,保证运动的直线度;C轴的旋转运动采用伺服电机驱动齿轮组。

机械手的末端执行机构为集成执行爪部分,结构如图2(a)所示,该部分采用气动驱动的方式,气动系统原理图如图2(b)所示。该气动系统由气动三联件、电磁换向阀、气流调节阀、夹爪气缸、缓冲气缸、压销气缸组成。用一个三位五通的电磁换向阀控制夹爪气缸驱动夹爪抓放边模,同时能保证卡爪可靠的夹紧边模,防止因断电而导致边模的脱落。压销气缸用于压下磁性边模上的插销使边模与模台磁力固定,缓冲气缸作为补偿机构,可以将Z轴方向上所存在的误差吸收。集成执行爪上的夹爪气缸、压销气缸、缓冲气缸均由电磁阀控制其运动方向,用气流调节阀来调节其运动速度。

2 控制系统的硬件设计

机械手控制系统的硬件连接示意图如图3所示,采用新代HC10A的一体化控制器作为控制核心。该控制器是将运动控制器与嵌入式的PC相结合的一体化产品,是整合了人机、PLC、Macro于一体的开放式控制器,具有优越的运动控制功能和性能,特别适用于高精度位置控制的场合,强大的同步控制功能更是满足许多行业的同步控制功能需求。该控制器具有5个伺服接口,可同时控制5个伺服电机的运动,内部也集成了PC机该有的所有网络功能,可直接联网实现远程监控。

控制器通过输入、输出接口外接输入输出端子板,用于处理电磁阀、磁性开关、行程开关、指示灯等数字量信号,其中气缸均是用电磁阀控制其伸缩,在气缸的两端安装有磁性开关,用于反映气缸杆的位置。在各轴的极限位置安装了行程开关,用于判断是否达到轴向限位。边模输送带上安装行程开关,用于判断边模是否运送到位,指示灯显示运行状态及报警状态。

伺服电机采用台达ECMA系列,伺服驱动器采用台达ASDA-A2系列,该系列伺服驱动器支持多种轴控操作,内含电子凸轮功能,搭配20-bit分辨率编码器,可达到高速位移、精准定位等运动控制需求。通过控制器的伺服接口分别与四个伺服驱动器连接,采用内部的高速脉冲控制伺服驱动器,最高控制精度可达0.0001mm,伺服电机上的编码器与伺服驱动器相连接,伺服驱动器将接收到的编码器数据通过输入端子板反馈到控制器,通过反馈的脉冲数与发出的脉冲数进行比较,由比较后的差值进行控制,形成闭环回路控制,增加了控制的精度。

3 控制系统的软件设计

机械手控制系统的软件设计主要是对一体化控制器的程序编写,分为PLC程序设计和人机界面设计。

3.1 PLC程序设计

控制器内部集成了PLC,通过在电脑安装相应的编程软件,采用梯形图编程语言,完成PLC程序的编写,通过U盘可将程序传输到控制器内。程序中包括一个主程序和若干个子程序,PLC在每个扫描周期内循环执行主程序,在主程序中调用子程序。子程序包括自动控制、手动控制、限位处理、故障报警等。程序中需处理的控制量主要包括各种数字量信号的输入、传感器信号的处理、气动元件的驱动、伺服驱动等,通过控制器内指定功能的存储区和开放的存储区将这些数字信号进行IO地址的分配。同时也可在程序中加入Macro程序,通过执行相应的G、M代码驱动外围设备,可让加工程序能与PLC之输入、输出信号做同步控制,并且加工程序将不再只具有移动或补偿指令功能,更能拥有逻辑判断以及数学演算功能。

3.2 人机界面设计

人机界面作为操作人员和机器设备之间双向沟通的桥梁,具有重要的作用。对控制器人机界面的设计主要分为画面设计和功能键设计。画面设计即向触摸屏中自由的组合文字、图形、数字等来显示交互画面,功能键设计即向画面中添加具有特定功能的按键,使其完成指定的功能。通过设计的人机界面来处理、监控、管理随时可能变化的信息,建立了该系统的监控系统。整个监控系统主要包括3个组态界面,即自动运行界面、手动控制界面、系统设置界面。

手动控制界面如图4(a)所示,可实现单独控制X轴、Y轴、Z轴、C轴正反转、启停、运动速度、气动夹爪的夹紧与松开、缓冲气缸的伸出与缩回,同时显示机械手当前各轴的运动速度和绝对位置;自动运行界面如图4(b)所示,显示机械手在自动运行过程中当前各轴的运动速度和绝对位置、夹爪状态、缓冲气缸状态、压销气缸状态、G代码执行模式等;系统设置界面如图4(c)所示,设置各轴运动的最高速度、运动时的限位处理、加速时间、输入或输出口状态、联网设置、报警处理等。通过点击各界面下方的功能键即可完成相应的动作或切换到相应的画面。机械手在运动的过程中若系统出现故障,如伺服驱动器运行故障,轴运动达到限位报警状态等,系统发出报警提示消息,以便管理维护人员及时发现,及时维修。

4 机械手的工作流程分析

机械手的控制面板示意图如图5所示。系统的工作流程如图6所示。开关旋转到开机状态,系统接通电源,电源指示灯亮,此时系统开始进入初始化,各传感器部件进行自检,各气缸处于缩回状态,启动伺服驱动器,机械手回到设定的机械原点;系统在初始化判断完成后,进入等待运行模式,控制器显示欢迎界面,此时若点击触摸屏中下方的手动键,画面切换到手动控制界面,系统进入手动控制模式,若按下控制面板上的启动键或按下触摸屏中自动运行键,画面切换到自动运行界面,系统进入到自动运行模式,自动运行的过程如下:

(1)机械手从机械原点出发,四轴联合运动,使集成执行爪到达边模输送带的上方,等待边模运送到位信号。

(2)接收到边模运送到位信号后,机械手沿Z轴下降指定距离,卡爪气缸伸出,驱动卡爪夹紧边模,传感器检测到夹紧到位后,等待2s,保证卡爪夹紧完全。然后机械手沿Z轴上升一定的距离,防止机械手在下一步的运行过程中,边模与传送带等其他设备发生碰撞。

(3)集成执行爪运动到边模摆放位置的上方,同时调整好边模摆放的角度后,沿Z轴下降到距边模上方一定的距离,缓冲气缸伸出,驱动边模继续沿Z轴下降到模台上,若此时模台的精度与实际设计有一定的误差,则缓冲气缸可将此误差吸收,保证了系统的安全性。

(4)传感器检测到缓冲气缸伸出到位后,卡爪气缸收缩,卡爪松开,释放边模。X轴、Y轴联合运动将集成执行爪移动到边模的一侧插销位置上方,压销气缸伸出,压下磁性边模的磁铁插销,传感器检测到伸出到位后,压销气缸缩回,重复压销动作,将边模两侧的插销压下,完成边模完全固定。

(5)集成执行爪回到边模输送带的上方,等待下一个边模的运送到位,循环开始下一个边模的摆放。

机械手在运动的过程中,按下复位按键,机械手自动回到设定的机械原点位置,合上急停开关,系统断电,整个系统停止工作,只有松开急停开关后,整个系统才可以开始工作,增加了整个装置的安全性。

5 结论

(1)机械手采用伺服系统驱动,齿轮齿条传动,可实现较高的运行速度和定位精度;采用气动驱动末端执行机构,使气动夹爪的抓取运动具有一定的柔顺性。

(2)采用新代的HC10A一体化运动控制器作为控制核心,使系统具有较强的抗干扰能力和良好的可扩展性和可维护性,控制器自带的高速脉冲控制伺服驱动器,实现了对机械手四轴的精确运动控制;编写了功能齐全、直观的操作界面。

(3)系统设计了自动控制模式和手动控制模式,方便用户操作,设置急停功能,保证了系统的安全性,设计了故障报警功能,方便对设备故障的维修。

摘要:为了提高混凝土预制构件生产线效率,以台湾新代的HC10A一体化控制器为控制核心,采用开放式数控系统的结构形式,设计了四轴置模机械手的控制系统。分析了机械手的结构与功能,在此基础上设计了控制系统的硬件组成,实现了伺服电机的闭环控制,根据机械手工作流程的特点,完成了控制器的软件编写。该控制系统具有性能稳定、控制精度高、操作简单、可靠性高、使用维护方便,易于实现机电一体化等优点,能满足置模需求,符合工业应用要求。

关键词:开放式数控系统,控制系统,置模机械手

参考文献

[1]V.V.Tochilkin.Pneumatic Manipulators for Interrupting Converter-Slag Flow[J].Russian Engineering Research,2007,27(10):686-688.

[2]Xing-qiao Liu,Jun-jie Ling,Bai-hui Zhao,et al.Control System of Loading Manipulator Based on Profibus[C].The Proceeding of IEEE International Conference on Robotics and Biomimetics,2005:61-65.

开放式考试系统设计 篇9

关键词:C#语言,软件管理,管理信息系统,自主开发软件

1 引言

当前许多企业和单位都有自己的研 发部门和 研发人员 ,会根据自身的需求进行一些自主开发以满足许多外包开发软件达不到的要求。但由于许多企业自主研发的软件没有经过一个比较成熟的软件开发流程, 并且没有自主的软件升级服务器和升级模块, 导致对自主开发软件的管理以及升级没有一个有效方便的手段, 许多企业只好采用开发人员手动安装和升级的方式来进行管理。但是由于企业终端数量众多, 手动安装和升级的方式显得耗时耗力且效率低下。

而当前市场上的具有软件管理功能的系统比如360软件管理, 百度软件管理等系统只能针对已经商业化的成熟软件比如QQ等进行安装和管理, 而不能对自主开发的软件进行管理, 所以开放式自主开发软件管理系统应运而生。该系统主要针对当前企业里的自主开发软件进行管理, 具有多终端管理、开放式配置、自动安装升级等特性, 实现对自主开发软件方便、快捷、有效的管理。只要对想要管理的自主开发软件按照一定的规则配置相应的xml文件, 即可将该软件加入到系统中进行管理。系统分为管理终端和用户终端两个界面, 满足不同用户角色的需求, 且系统模块化开发的模式可以方便地移植到其他系统中。

2 系统设计

2.1 模块组成

系统采用模块化设计, 每一个模块采用一个类进行实现,方便系统功能修改、升级以及移植。

主要模块如下:

安装模块: 负责根据用户选择的软件名和软件版本, 将所需软件安装在用户选择的目录路径下。

升级模块: 负责根据用户选择的升级类型, 将所需升级软件的版本升级为服务器最新版本。

管理模块: 查看所有使用系统的终端上安装的软件以及其版本, 并且可以对终端上安装的软件进行远程安装和升级。

配置模块: 负责对是否自动升级、软件安装路径、系统监听端口等进行配置。

通信模块: 负责用户终端和管理终端之间的通信。

2.2 系统界面及功能

系统采用两个界面的设计, 分别为用户终端界面和管理员界面。用户终端界面有主界面、软件安装窗体、软件升级窗体和系统配置窗体。 管理员界面有主界面、终端管理窗体和系统配置窗体。

用户终端界面:

主界面: 有软件安装、软件升级和系统配置3个窗体按钮可供选择。

软件安装窗体: 可以浏览服务器上可供安装的所有软件及最新版本, 选择相应的软件和软件版本以及安装路径后将所选软件安装在相应目录下。

软件升级窗体: 可以浏览本机上已安装的所有软件当前版本以及服务器相应的最新版本, 选择选择相应的软件和软件版本确认后即可升级为服务器最新版本。

系统配置窗体: 对系统的相应配置进行操作。分别有是否自动升级、软件安装路径、管理终端IP, 系统监听端口等。

管理终端界面:

主界面: 可以看到所有已连接上的终端以及相关名字、IP地址等信息。

终端管理窗体: 可以看到终端上所有已安装的软件以及版本, 点击后可以强制令其升级为服务器最新版本。

系统配置窗体: 对系统的相应配置进行操作。分别有终端添加删除、服务器IP配置、管理员用户名密码配置等。

2.3系统构架及流程

系统构架及流程设计如图1所示, 用户终端的升级模块和安装模块通过通信模块与管理终端进行通信, 管理终端的终端管理模块通过通信模块与用户终端进行通信, 而通信模块通过系统配置模块获取相应的通信IP地址和端口。

3 系统的实现

3.1 通信模块实现 Communication 类

通信模块Communication.cs采用Socket技术实现 用户终端与 管理终端 之间的通 信。Socket是应用层 与TCP/IP协议族通信 的中间软 件抽象层 , 它是一组 接口 , 它把复杂 的TCP/IP协议族隐 藏在Socket接口后面 , 对用户来 说 , 一组简单的接口就是全部, 让Socket去组织数据, 以符合指定的协议。当用户终端启动时将通过信息通知管理终端并上报本机的软件版本信息。当管理终端强制终端升级时将发送升级信息至 客户端 , 客户端收 到后即执 行相应的 升级模块 。部分代码如下:

下载软件安装和升级程序采用FTP技术, 将服务器上的软件安装程序或升级程序通过FTP下载至本机上然后执行。部分代码如下:

3.2 安装模块实现 Setup 类

安装模块setup.cs根据用户选择的软件 , 读取服务 器端该软件的相应配置文件setup.xml, 并调用通信模块下载软件安装程序并执行或者无需安装下载相应软件文件, 部分代码如下:

3.3 升级模块实现 Update 类

升级模块update.cs根据用户选择的软件, 读取服务器端该软件相应配置文件update.xml, 并根据升级所需调用通信模块下载相应的升级文件覆盖。部分代码如下:

4 结语

开放式考试系统设计 篇10

开放式数控系统最重要的特点之一是它能够适应不同的生产条件与生产情况, 从而完成自身的重构与配置。系统配置可分为软件配置与硬件配置。软件配置主要是研究基于运动控制卡的配置, 如美国Delta Tau公司的PMAC多轴运动控制卡, 集成刀补, 插补算法, 位置控制等实时控制, 开发者只是通过完成软件层的独立配置程序的编写来实现系统的重构; 硬件配置则是充分利用可编程逻辑器件的硬件可重构性, 构造数控系统的控制内核, 利用硬件编程语言实现数控系统的配置。目前, 国外在配置结构上面的最新研究主要采用软硬件协同设计, 基于多主体 ( Multi - Agent) 结构的硬件平台, 通过多片FPGA完成多功能的实现, 最后在软件层的调用下完成相应的配置[1]。该体系结构具备良好的协调性与灵活性, 但所占资源较大。国内提出的软硬件协同重构主要通过软件层调用程序与硬件层配置文件的重复下载完成系统的配置[2-3], 灵活度不高。

针对以上问题, 提出基于PC + 可编程I/O卡的体系结构的系统可配置设计。其核心思想是依据任务的实时性划分软硬件功能, 将硬件功能集成在单片FPGA上, 并研制软硬件的协同配置。本文主要介绍基于一定软件配置功能的硬件配置方案及具体实现。

1 硬件配置总体结构

1. 1 硬件可配置实现模型的提出

基于PC + 可编程I/O卡的体系结构, 由PC进行粗插补运算, 并将获得的周期数据交予可编程I/O卡, 完成最终的精插补。针对粗精插补模块传输问题, 文献[4]提出了基于离线粗插补的数据采样插补法, 并采用双缓存机制与动态插补等技术保证插补的连续性与可靠性, 图1 为该异步插补法的结构图。在此基础上, 如何实现开放式数控系统的重构, 并配合PC软件层实现硬件的可配置性将作为本文研究的出发点。

1. 2 硬件可配置实现模型的建立

1. 2. 1 配置信息下载

硬件可配置通常分为静态配置和动态配置。前者是指数控系统在开机初始或者系统升级时, FPGA通过对配置信息的获取与下载, 实现系统的快速配置; 后者是指在系统运行过程中, 依据不同的任务需要动态调用功能模块, 通过对配置信息的下载, 迅速地实现系统的局部配置。

FPGA芯片本身不具备断电存储功能, 因此每次开机初始前都需要对配置信息进行重新下载, 本文基于静态配置的构想, 提出PC在线下载的方法进行配置信息的下载, 即将配置信息存放在PC机上, 每次开机初始化时进行默认配置信息的重新下载 ( 软件层所需要保证的) , 只有当系统更换升级时才更改配置信息。该途径优势在于可以方便存储与更改配置信息, 将系统配置中的重复配置操作交予PC, 简化了硬件平台的设计, 并提高了硬件卡的工作效率。但只能限制在系统运行前配置, 对于还处在工作状态的系统, 该配置方法容易造成系统的不稳定。

1. 2. 2 配置机制

上面提到采用在线PC的方式将配置信息载入可编程I/O卡内的配置寄存器, 对配置寄存器设立相应的偏移地址, 将配置数据直接写入配置寄存器, 并在此基础上提出配置中断。若配置寄存器为空, 则由寄存器向接口控制模块发送一个配置空信号, 表明编程卡未完成软件的配置, 并由该信号产生一个中断, 从而激活上层配置信息的传输; 若已完成配置, 则产生一个已准备好信号。

若配置寄存器已完成配置信号的转换, 则发送给各个轴单独设立的数据逻辑选择模块, 控制周期插补数据满足配置输出。其中, 数据逻辑选择模块的功能是: 轴使能信号控制选通寄存器, 实现使能轴插补数据阻通;联动轴信号控制输入寄存器, 实现数据独立或者联动传输, 若为联动轴, 则插补数据将存入锁存器中, 等待联动脉冲解锁, 否则, 直接送入精插补模块。图2 为硬件配置结构图。

2 硬件配置电路设计及验证

本文采用单片FPGA作为可编程I/O的主控芯片, 所选芯片型号为CylcloneⅢ系列的EP3C16Q240CN8, 该芯片同时具备集成度高、开发成本低、设计周期短以及具备可重构能力等优点, 保证了其在电路设计中的强大优势, 因此可以满足本文数控系统的硬件可配置需要。

2. 1 配置寄存器

配置寄存器主要实现配置信号的接受与转换, 即硬件卡在系统开机时对控制模式配合命令进行接收处理。这里的控制模式配置命令包含了软件层对硬件平台的配置要求, 具体有轴使能数据、联动轴组合方式数据、轴运动形式数据和联动轴数数据。从硬件角度出发, 配置信息将转换成以下几种使能信号发送给各个轴设立相应的数据逻辑选择器:

1) 轴使能信号。当该信号有效时, 使能轴的插补数据能够完成精插补运算; 否则, 插补数据无效。

2) 联动轴信号。当该信号无效时, 使能轴独立进行精插补运算; 否则, 使能轴实现联动。

3) 轴运动形式信号。当该信号有效时, 使能轴为旋转轴; 否则, 使能轴为直线轴。

为了保证配置信息的可靠性, 采用发送配置空标示信号的方式, 产生一个配置中断。已知PCI总线单周期传输完成一个I/O读过程需要7 个时钟周期, CPU响应时间约为14 us。因此, 设计一个空信号发生器, 判断配置信息是否写入, 若无写入则每隔8 个时钟周期向设备接口控制器发出空信号, 否则保持低电平。接口控制器内部逻辑产生配置中断并发送给PC, PC软件驱动层随即响应中断调用最上层软件层发送配置数据。图3、图4分别为开发的配置寄存器IP封装图和Modelsim - Altera时序仿真图。从时序图可以看出: rstn信号转为无效后的第8 个周期, 配置模块检测到配置寄存器为空, 则置空信号empty0 和empty1 为高电平。其中empty0 和empty1分别对应轴使能寄存器与联动使能寄存器。若配置信号转换成功, 则至高配置准备好信号crdy并发送给数据读取逻辑单元。

2. 2 数据逻辑选择器

数据逻辑选择器主要是根据配置信息以及轴号对插补数据进行相应的逻辑选择。其内部由三个部分组成, 包括数据分配模块、数据输出模块及状态机模块。分配模块主要完成轴号及轴使能信号对插补数据的筛选; 输出模块则是根据对应的输出使能信号选择联动或者非联动输出;有限状态机 ( FSM) 是逻辑选择器设计的核心, 状态机接收来自模块外部 ( 配置模块) 的控制信号, 分析处理后, 对是否轴使能以及是否联动做出正确的响应, 以保证模块对周期插补数据逻辑选择的正确完成。图5 为逻辑选择器所采用的状态机转换图, 将数据逻辑选择划分为五种状态, 具体定义为: type m_state is ( idle, lchst, hldst, ulst1, ulst0) 。各个状态在使能信号的控制下输出的情况如下:

1) 在idle状态下, 数据输出皆为高阻态;

2) 在lchst状态下, 内部信号latch转为有效 ( 高电平) , 进行数据锁存, 并保持到idle状态来临前;

3) 在hldst状态下, 数据保持, 直到联动时基脉冲来临;

4) 在ulst0 状态下, 内部信号data_out0 转为有效 ( 高电平) , 实现联动轴数据解锁输出, 保持到idle状态来临前;

5) 在ulst1 状态下, 内部信号data_ou1 转为有效 ( 高电平) , 在保证联动使能信号低电平时, 实现非联动轴数据直接输出, 保持到idle状态来临前。

其中, data_en信号为数据使能信号, b信号为联动使能信号, clkin信号为联动时基脉冲。

图6、图7 分别为开发的数据逻辑选择器IP封装图和Modelsim - Altera时序仿真图。从时序图可以看出: 假设缓冲单元向逻辑选择单元连续写入三个不同轴号的数据, 并设定该单元对应1 号轴; 当data_en信号有效时, 开始锁存数据, 直到clkin信号有效后的第一个时钟上升沿完成相应数据的输出; 输出数据时存在一些毛刺, 但持续时间都不超过半个时钟周期, 并在上升沿来临时维持稳定。

3 结论

文中的方案主要是通过配置模块冗余实现不定轴数的配置, 通过核心模块的对配置信息的读取完成轴使能与轴联动功能在硬件上的重构。基于该配置结构的可编程卡已经应用于自主研制的开放式软数控系统上, 通过加载Linux操作系统上的设备驱动程序完成了对数控铣床的调试, 初步验证了硬件配置电路的可行性与有效性。本文的设计方案具备如下优点: 1) 不需要一般用户操作硬件配置信息的下载, 只需要在PC机用户界面完成整个系统的配置初始化; 2) 自主开发硬件层的配置结构, 不依赖任何专用的运动控制卡, 相对于高级用户更具灵活性。但在硬件资源分配的灵活性上仍存在缺陷, 根据板卡内部资源暂定配置的最大轴数为八轴。

参考文献

[1]Luis Morales-Velazquez, Rene de Jesus Romero-Tronocoso, etal.Open-architecture system based on a reconfigurable hardware–software multi-agent platform for CNC machines.Journal of Systems.Architecture, 2010.56:407-418.

[2]Wang Tao, Wang Liwen.Research on software-hardware co-design of reconfigurable CNC system.Advanced Materials Research, 2011.204-210:458-463.

[3]王文, 秦兴.基于可编程逻辑器件的可重构数控系统研究[J].计算机集成制造系统, 2002, 8 (7) :565-569.

开放式考试系统设计 篇11

关键词:开放实验教学管理 ASP.NET B/S 结构

中图分类号:G434 文献标识码:A 文章编号:1673-8454(2008)07-0069-03

一、系统设计思想

1.实现教学计划和教学过程的动态管理,体现培养方式的多样性和个性化。学生可以在教学计划指定的实验项目中自主地选择实验内容,确保学习方式的指导性和主体化。学生还可以预约实验项目,自由选定时间和项目,确保学习时间的弹性。

2.提高实验室分级管理效率。根据实验室管理人员相应的工作职责,设定不同的操作权限。通过校园网实现实验室的高效管理,形成实验室的网络化管理模式。

3.减轻实验教学管理工作量。利用系统管理功能,实现教学计划、学生的基本信息、预约实验、实验成绩、实验完成情况等信息的统筹管理,大大减轻了实验教学管理人员和教师的工作量。

4.保证系统的严密性,实现实验教学的安全管理。

二、系统体系结构

考虑到系统的可扩展性和安全性,系统采用多层结构B/S模型,以.NET技术和数据库技术为基础,利用“瘦客户端”-WEB浏览器作为客户端。如图1所示。

图1 B/S结构的系统模型

系统采用ASP.NET作为前台页面程序,SQL Server 2000作为后台数据库,基于B/S(Browser/Server)结构,无需安装任何专用客户端软件,仅需标准Web浏览器。ASP.NET网页动态编译执行,所有代码在服务器端运行,运行完毕后将结果返回客户端,具有速度快,执行效率高等特点。[1] 利用基于ASP.NET的程序设计与SQL Server关系型数据库相结合,不仅可以完成文档工作流、交互通信、信息共享查询等功能模块,还可以利用SQL Server数据库自身的功能实现实验室资料、器材、实验状况记录等。

三、功能模块设计

系统的主要功能模块如图2所示。[2]

图2 开放实验教学管理系统主要功能模块

1.学生预约实验系统

通过校园网实现学生网上预约实验系统是整个系统中较为重要的部分,具体要求有:学生用户登录及注册,学生凭借注册账号和密码进行预约,除学生本人外,其他用户无权删改预约;在线预约、统计预约是否已满,若已订满,则提示更换时间;根据实验室列出的实验科目以及对应的时间安排,结合自己的专业限制、时间安排、知识体系等因素,选择自己感兴趣的实验题目和对应时间,完成预约实验选课;对未按预约时间做实验学生的警告以及禁选实验科目等;查看或打印已经预约过的实验。

学生根据课程的实验教学要求和自己的学习兴趣,进入实验预约系统,查询实验室开设的实验项目和时间安排,学生选择自己要作的实验项目和实验时间,进行实验预约,预约好以后提交确定。为了避免预约人重复预约,需确认用户名是否唯一,当用户单击提交按钮时,将用户输入的学号与数据库中存储的学号进行比较,如果在数据库表中找不到相同的学号,就执行插入记录操作,否则就取消操作,打开告警页面通知预约人不能重复预约。具体实现的流程图如图3所示。

图3 学生预约实验流程图

2.实验室管理系统

通过实验室管理系统查看实验室规章制度(实验教学管理规定、学生实验守则、安全检查制度、仪器设备维修管理规定、实验技术人员岗位规范等);仪器设备管理(仪器名称、编号、厂家、价格、使用说明书电子版、使用及维修记录等)、实验耗材的使用管理,及时了解实验耗材的去向与使用率,给学生自选实验器材提供依据。

3.实验教学管理系统

实验教学管理人员和实验课教师输入身份及密码,通过验证后便可以进入教务管理系统界面。教务管理人员可以统计各实验室教学工作量,审定各实验教学项目,收发各实验室的电子信息,了解开放型实验教学的进度以及查看并回复学生反馈的信息等。

实验课教师可以发布实验信息,管理有关预约实验项目、学生预约名单锁定、实验课表安排等信息。教师对学生实验考核完毕后要在网上登记学生实验项目成绩,实验课成绩的评定和考核根据学生的实际动手能力和应用知识技能等指标综合完成。每当学生完成开放性实验后,应当综合评估学生的成绩, 任课教师在确认无误的情况下,将最终的成绩录入到实验成绩管理系统中, 学生可以查询打印,其他用户无权进行修改。

系统还可实现实验教学的部分功能,主要包括BBS论坛、网上仿真实验室、教师点评等,这些功能以实现师生双向式互动教学为目的,以综合性、设计性实验项目为目标,增加学生自由思维的空间,调动学生的积极性和创造性。例如任课教师发布实验项目的CAI教学课件或用于实验仿真的软件(如MATLAB),以供学生预习实验或仿真实验用。教师也可以对学生设计的实验项目进行点评,指出实验的关键步骤和指导建议,进一步加深学生对实验技能的认识,有效提升学生的实验知识水平。

4.数据库管理系统

数据库维护及管理主要是提供给专职教务管理人员进行系统基本参数信息录入与初始化、数据库备份、报表统计分析等。为防止非法人员入侵和误操作发生,网络应用部分设有健全的访问权限管理,数据服务器的运行采用双机冗余备份,确保数据服务器能够安全稳定地运行管理系统。[3]

四、系统实现的关键技术

1.数据存取技术

开放实验教学管理系统是一个典型的数据库应用系统,数据的存储量和数据的访问量都很大,ADO.NET的使用能够有效地减少网络往返以及数据库同时连接数量,为系统的稳定运行提供了保证。

ADO.NET是重要的应用程序级别接口,用于在.NET平台中提供数据访问服务。用ADO.NET可以访问.NET数据源和OLE DB.NET数据源。ADO.NET是专为基于消息的Web应用程序而设计的,同时还能为其他应用程序结构提供较好的功能。通过支持对数据的松耦合访问,减少了与数据库的活动连接数目(即减少了多个用户争用数据库服务器上的有限资源的可能性),从而实现了最大程度的数据共享。[4]

我们用数据集命令从后台数据库中提取数据填充数据集;也可以用XML模式文件生成数据集架构,然后用XML数据文件填充数据集。ADO.NET提供了一组用来连接到数据库、运行命令、返回记录集的类库,通过一系列的对象和编程模型,并与XML紧密结合,使得在.NET中的数据操作十分方便和高效。[5]

2.数据显示技术

开放实验教学管理系统的一项重要功能就是信息查询,可以向全校教师和学生提供丰富的实验教学信息,为实验教学服务。如何将复杂的实验数据信息最清晰、最准确地展示给用户,是系统开发中的一个重要技术。

ASP.NET定义了许多在服务器端运行的Web控件,可以将它们嵌入Web页面中以显示不同类型的数据,它们当中有一部分与HTML语法中的表单控件相似,但功能比表单控件丰富。其中DataGrid是ASP.NET的一个服务器端Web控件,可用于在Web页面中以表格的形式显示数据。DataGrid的用法非常灵活,在简单的形式下,只需要几行代码,就可以将一个DataGrid控件与某个数据源绑定,并将其中的数据以指定的形式在Web页面中显示;另一方面也可以根据要求,使用代码对DataGrid进行定制,以充分发挥DataGrid控件的强大功能,例如通过DataGrid对数据库学生预约实验项目数据的在线编辑、更新、删除,以及对显示数据进行排序、分页显示等。[6]

在系统开发中,我们多次使用DataGrid控件,来实现数据的显示。其灵活简单的特性,使程序开发变得更为容易。

3.多级安全机制

开放实验教学管理系统存储了大量重要的数据资料,如学生基本信息、学生预约实验信息、实验成绩、实验课表等,数据一旦被侵入破坏,整个系统将面临崩溃。为此,我们在提高系统安全性方面采用了多方面的措施。

(1)对用户进行细分

开放实验教学管理系统的使用面广,为了提高系统的安全性,我们对用户进行了细分,不同的用户有不同的权限。教务管理员是级别最高的一类用户,能访问几乎所有的数据信息;实验课任课教师可以查询到自己所开设实验课程的学生预约名单、实验项目和实验课表等信息以及管理BBS论坛;学生则只能查询到与自己有关的成绩、实验公告等信息,以及为自己选实验项目和预约实验。

(2)采用IP绑定技术

为了获得更高的安全性,对于用户的登录界面采取了IP限制的手段,只有在指定IP范围内的用户才能访问系统。数据库表中存放了校园网的有效IP地址段,在登录界面程序中添加了IP访问控制。只有在数据表中的IP地址段才能够访问系统模块,如果非校园网用户访问系统模块,将显示“您来自于未授权的用户,您无权登录系统”,并重新定向至登录界面。如果校园网IP地址段发生了调整,可以通过程序修改数据库表中的数据。

(3)session认证

为了防止某些学生用户通过直接键入页面的http地址而跳过登录页面的恶意操作,我们在程序中加入了session认证。

在每个登录程序中,都在合法登录的用户的session中写入其用户信息。如教师登录程序LoginTeacher.aspx中:

session("deptid") = deptid (deptid为一字符串变量,其内容为用户输入的用户名)。

在所有需要用户名和密码才能使用的程序中,都需要先进行session验证。在教师功能模块中的每个页面,加入了如下程序段:

deptid = session("deptid")

If deptid = "" Then

Response.Redirect("../LoginTeacher.aspx")

End If

如果没有经过正规的登录验证,session中的“deptid”变量将为空,把用户重新定向到教师功能模块登录界面。想通过记住网页地址而绕过登录控制的企图,就被这样阻断了。

而且长时间不使用,session会过期,这也是采用session认证的一大好处。比如,某教师已经成功地进入了系统,并且在成绩管理单元进行成绩的录入。由于某些原因,他离开了办公室但是忘了关闭电脑,session的自动过期能避免长时间离开时,其他人的误操作甚至是别有用心的行为。

4.并发控制机制

开放实验教学管理系统面向全校的用户,每个学期在开设实验课后集中几天内大量学生会完成实验课的预约选课。由于涉及全校的学生,选课时间段内系统访问量激增。巨大的访问量会使服务器负担过重,甚至使整个系统瘫痪。

我们在IIS中将连接数目限制到一个固定数目(比如30个),当连接数目达到最大限制后,用户必须等待其他用户释放连接,才能够使用系统,这样能从某种程度上保证系统的稳定。同时,在程序编写中,尽量减少频繁地与数据库连接操作,并对数据库查询语句进行优化,基本保证实验预约的实时性和并发性要求。

五、结论

本文结合开放实验教学管理的实际需求,在校园网的基础上进行开发,建立了一个基于WEB的开放实验教学管理系统。系统程序模块化,按照用户第一的原则,采用面向对象的思想,按使用用户设计系统模块,采用ASP.NET技术和三层B/S开发模式,适应WEB环境下教学管理模式的要求。实践表明,该系统具有良好的性能,能满足开放实验教学与管理的各项功能要求,为学生们提供了开放的交互式实验教学环境,改变了传统实验教学单一的教学模式,取得了较好的效果。

参考文献:

[1]Ullman C.康博译.ASP.NET入门经典-C#编程篇[M].北京:清华大学出版社,2002:43-47.

[2]张润杰等.基于B/S模式的网络版实验室管理系统[J].首都师范大学学报(自然科学版),2005,26(2):16-18.

[3]林华.基于校园网教学管理系统的设计[J].福建电脑,2002(3):29-31.

[4]王焕彬,张水平.数据访问技术ADO.NET、ADO和OLE DB的比较[J]. 铁路计算机应用,2003,12(11):16-18.

[5]孟现飞,李浩,孙统风. ADO.NET数据访问模型研究[J].微机发展,2003,13(6): 94-97.

开放式考试系统设计 篇12

计算机技术和互联网的快速发展给人们的生活、工作带来了极大的便利, 充分利用先进的网络技术和资源实现学科竞赛管理的信息化, 可以让竞赛管理从繁重的、简单的、重复的劳动中解放出来, 朝着网络化、人性化、智能化方向发展。基于Asp.Net 2.0的学科竞赛管理系统将使竞赛工作实行网络化、自动化, 既可以减少工作人员的工作量和工作的误差, 也可以节省大量的财力、物力。通过本系统的开发和应用, 可以一定程度上提高竞赛管理工作开展的效率。

1 系统设计

1.1 系统主要功能

通过调查和分析学科竞赛的举办流程和实施细则, 确定竞赛主要包括如下五个环节: (1) 竞赛举办方发布竞赛通知、竞赛安排等信息; (2) 参赛人员报名; (3) 参赛资格审查确定、邀请评委专家并确定相关工作人员; (4) 参赛人员参赛; (5) 评审、公布竞赛成绩。

结合竞赛的流程和五个举办环节, 以及竞赛管理工作的实际需求, 基于Asp.Net 2.0的学科竞赛管理系统包括的主要功能如图1所示。

1.2 系统流程

按照上述对系统功能需求分析及功能模块的划分, 再结合竞赛的流程, 得到了系统总体的数据流图如图2所示。

1.3 数据表设计

系统采用SQL Server 2000数据库, 针对系统的功能, 设计了如下多个数据表, 下面对这些数据表做详细的介绍。

News_lm表:记录信息栏目的名称、子栏目等。

News_inf表:记录信息的标题、所属栏目、内容、更新时间及点击量等。

Link表:记录友情链接的名称、URL以及LOGO等信息。

User表:报名信息表。记录参赛报名选手的信息, 如院校、专业、学号、姓名、性别、出生年月、联系方式、参赛届次、参赛组别、审核通过及用户账号和密码等信息。

Player表:参赛选手 (被审核通过的报名选手) 信息表。记录选手报名序号、姓名、学校、参赛届次、参赛组别、参赛项目、竞赛成绩及竞赛名次等信息。

Depart表:参赛学校信息表。记录参赛届次、参赛院校名称、参赛名额及用户账号和密码等信息。

Jury表:竞赛评委信息表。记录参赛届次、竞赛项目、竞赛组别及竞赛评委等信息。

School DB表:院校信息库表。记录院校名称、院系专业等基本信息, 参赛学校将从此库中选出。

Jury DB表:评委专家信息库表。记录专家姓名、性别、单位、职称、专业方向、联系方式及简介等信息, 竞赛评委将从此库中选出。

Game Setup表:竞赛基本信息表。记录竞赛届次、名称、举办时间、举办单位、竞赛是否开启及竞赛介绍等信息。

Game Group表:竞赛分组信息表。记录竞赛分组名称、所在竞赛届次等信息。

Item表:竞赛项目信息表。记录竞赛项目名称、所在竞赛届次等信息。

Object表:竞赛题目信息表。由竞赛题库中按需求抽取出的题目信息。

Object DB表:竞赛题目库表。记录竞赛题目的标题、内容及所属组别、项目等各项信息。

Player File表:竞赛选手作品信息表。记录竞赛选手上传的作品的详细信息。

Score表:竞赛成绩表。记录竞赛选手各项目的所有成绩。

Rank Item表:分项目成绩表。选手分项目成绩和排名信息。

Rank Game表:综合成绩表。选手各项目综合成绩和排名信息。

Admin表:记录管理用户的账号、密码及管理权限等信息。

Login表:登录日志表。记录系统的登录用户、登录时间及IP地址等信息。

为保证数据的准确性和一致性, 通过主外键、非空、限制、唯一索引等保证数据的健壮, 同时必须建立表达各表之间关系的数据表关系图如图3所示。

2 系统实现

2.1 系统实现技术

(1) 系统开发的模式采用基于WEB的B/C模式[]。与C/S模式相比, B/S结构具有如下优势: (1) 界面统一、使用简单; (2) 易于维护; (3) 扩展性好, 有效保护投资; (4) 信息共享度高; (5) 有良好的广域网支持和较高的安全性。

(2) 系统开发技术选择目前比较流行的ASP.NET2.0[]。使用ASP.NET开发的系统, 程序在服务器端仅第一次运行时对其进行编译, 这样可以大大提高系统程序的执行效率。.NET使得运行一些很常有的任务如表单的提交、客户端的身份验证、分布系统和网站配置变得非常简单。ASP.NET使用一种基于字符的分级的配置系统, 使得应用程序的设置变得非常简单。当然, ASP.NET技术的优势远不止这些, 例如它的跨平台性、安全性等。

(3) 系统的实现基于三层架构的思想。系统采用三层架构设计, 分别为表示层、业务层、数据层[]如图4所示, 这样使系统结构更清楚, 分工更明确, 有利于后期的维护和升级。

表示层:封装客户端提供对应用程序的访问, 即系统中的ASP.NET页面, 用户客户端只需IE浏览器。

业务层:封装系统的业务功能, 使用C#语言开发。

数据层:封装系统的数据访问功能, 为业务逻辑层提供服务, 数据访问全部采用存储过程的方式, 可以保持系统的执行效率并增加系统的灵活性, 当数据库发生变化时, 可以通过改变存储过程语句而无需改变程序代码来实现。同时, 减少代码的冗余, 提高程序的重用性。

(4) 使用连接池连接数据库, 使用存储过程访问数据[], 提高系统的运行效能。

存储过程是经服务器端编译过的SQL语句, 其执行效率要比SQL语句快很多倍。而且, 存储过程与应用程序前台代码相对独立, 在程序的灵活性和可维护性方面有较大提高, 使用存储过程还能有效减少网络流量, 进一步提升程序的性能。在本项目中, 对数据库的所有访问均采用存储过程来实现, 尤其是在一次操作中需要多次访问数据库时, 这种优势更加明显。另外, 在连接数据库时, 采用下列连接方式连接, 节省系统开销, 提高程序的性能[]。

2.2 系统主要功能的实现

2.2.1 登录

系统登录模块虽然功能简单, 但实际作用却非常重要, 是系统数据安全性的重要保障, 也是系统管理规范化的要求, 更重要的是可以更好的对系统用户进行管理。此模块主要作用是对相关用户的信息进行验证。验证通过后, 系统再分析登录用户的权限, 记录用户信息并生成URL路径, 跳转到相应权限的页面上。本系统涉及的用户非常多, 如何合理利用这个功能模块, 不仅可以有效地缩减开发工作量, 还可以更好地体现系统的模块化, 即系统功能的可移植性。登录模块的流程图如图5所示。

登录模块中, 运用MD5加密算法对密码等安全性需求高的数据进行加密, 体现了系统网络安全性高的特点。此模块的实现, 建立了用户进入系统的门户, 实现了系统与用户之间的数据交流。

2.2.2 竞赛参数管理

参数管理模块是学科竞赛管理系统的核心, 几乎各个方面都有它的参与。因此, 健全的参数信息管理模块不仅能有效地管理, 还能提高系统速度和工作效率。下面以竞赛基本参数管理为例, 来表述参数管理模块的实现。

作为一个竞赛管理系统, 第一要素当然是竞赛本身的数据。因此, 要保证竞赛的稳定性及竞赛过程的合理性与规范性, 竞赛本身信息的有效管理显得尤为重要。竞赛基本参数管理的主要过程可以表述为创建新竞赛、开启/关闭竞赛、更新竞赛信息、设置竞赛规则、控制竞赛进程。根据需求分析及对竞赛流程的调研, 可以得到竞赛基本参数管理如图6所示:

竞赛基本参数管理主要由工作人员中权限最高的一级管理员执行。

整个管理功能主要包含七个部分: (1) 容错处理:用于检查用户提交的数据及其操作的合法性和规范性, 这一操作是为保证数据库数据的统一; (2) 开启关闭:可以即时地控制竞赛的进行与停止;系统平台的体现, 系统中可以存在多项赛事, 管理员可以灵活控制哪一项竞赛的举办。这也是系统拥有可拓展性的体现; (3) 竞赛创建:管理员录入必要的信息, 以创建一项新的赛事; (4) 竞赛更新:随时修改竞赛信息, 保证竞赛的准确性; (5) 竞赛删除:不合格的或不合法的竞赛可以由一级管理员删除, 随之会删除与此赛事相关联的一切数据; (6) 规则设置:保证竞赛的公平性、公正性及准确性, 需要设置竞赛规则作为全局变量, 在未修改前, 整个竞赛都要遵循这一规则; (7) 进程控制:保证竞赛的公正性, 同时便于控制其他工作人员的工作范围, 进程的控制可以有效实现这个功能。

以上七点就是竞赛基本信息管理模块的全部功能, 它运用了容错处理技术, 使系统更健康, 更稳定。同时也为系统平台的建设奠定了一定的基础。

2.2.3 竞赛成绩管理

成绩管理模块也是系统开发中的重点之一。成绩管理的大致流程可以概括为:成绩录入—成绩审核—单项成绩—单项排名—总成绩—总排名。其工作流程如图7所示。

系统中, 成绩有效数值保留在小数点后四位, 保证了成绩与结果的科学性与精准性。同时成绩的二次审核, 也避免了工作失误的可能性, 提高了成绩管理的可靠性。同时, 参赛选手在竞赛过程中可以及时查看自己的成绩和排名, 竞赛结束后, 最终成绩与排名将会在系统网站首页公示, 接受社会的监督。

3 结束语

到目前为止, 经过一届校级师范生教学技能比赛和一届省级师范生教学技能比赛的使用, 该系统运行良好, 能较全面地反映教学技能竞赛的基本流程, 符合竞赛的实际需求, 界面友好, 操作简便, 基本能满足竞赛的各方面要求。当然, 系统在使用中也存在若干问题, 某些方面做得还不够成熟, 还有待进一步改进。

摘要:通过调查和分析学科竞赛的举办流程和实施细则, 提出了竞赛管理系统的信息化需求和系统功能, 运用Asp.Net等相关技术设计和实现了开放式学科竞赛管理系统。该系统基本能够使学科竞赛各个环节达到开放化、网络化、规范化管理, 大力减少竞赛管理的工作量, 提高了学科竞赛工作效率, 同时也确保学科竞赛的公平、公正和公开。

关键词:学科竞赛,竞赛管理,管理系统,Asp.Net

参考文献

[1]陈荣.毕业设计中C/S和B/S结构的取舍与结合[J].中国教育技术装备, 2006 (10) .

[2]陈旭, 张学杰.基于ASP.NET技术的Web人事管理信息系统的设计与实现[J].计算机应用研究, 2004 (5) .

[3]邓春妮, 聂元铭.ASP.NET企业级开发案例精解[M].北京:人民邮电出版社, 2005.

[4]郭兴峰, 陈建伟.ASP.NET动态网站开发基础教程 (c#篇) [M].北京:清华大学出版社, 2006.

上一篇:无症状心力衰竭下一篇:形式化需求