教学计划副本解决方案介绍

教学计划副本方案分析和设计报告

 

教学计划副本方案目的:

在远程教育领域内,教学计划和课程无法保证不变化,并且这种变化的实际需求十分迫切。而教学计划和课程变化后,将引起新老学生面对变化前后不同的教学计划的应用矛盾,这种矛盾将深刻影响教学活动,学生管理,考试安排,费用处理,学生毕业等一些系列管理问题。

上面的问题属于网络远程教育问题域内的一个客观问题, 教学计划副本就是解决上面问题的一套完整的解决方案。该方案是在经过综合分析教学教务管理全部活动的情况下建立起来的,功能具体而实用,并具备必要的扩展能力。

教学计划副本方案的功能描述:

一:教学计划副本对课程和教学计划的管理,是基于课程资源的。课程资源是对教学课程的抽象提取,课程资源包含所有课程的公有属性,例如:课程名称,版本等。建立教学计划后,将课程资源应用于教学计划,应用于教学计划的课程资源,被最终称为课程。这样课程资源教学计划课程,三者一起组成了教学资源管理基础。

二:教学计划和课程发生了比较大的变化以后,例如增加了教学计划,大量的课程停用和升级的情况下,需要创建教学计划副本。创建的教学计划副本包含所有的当时教学计划的所有的课程资源,所有教学计划和课程。当学生创建学籍的时候,必须与当前系统最新的教学计划副本建立关系,学生学习的教学资源都来源于对应的教学计划副本,教学计划副本与副本之间没有任何关联,完全独立。

三:在教学计划副本方案下:教学计划变化以后,系统能保证新老学生都能浏览到最新的教学计划内容,并保证老学生能浏览到已经学习的老教学计划的内容。

四:在教学计划副本方案下:课程变化以后,需要保证已经学习了老课程的学生不受影响,而对于没有学习该课程的学生从此浏览到的都是该课最新的结果。如果课程的学分发生变化,还要涉及到学生选课扣费的问题。

五:所有这些变化都将会直接影响学生的毕业资格。随着教学计划的变化,不同的学生毕业的详细标准都会出现微弱的不同,如果能识别出毕业标准的不同,如何能处理好毕业业务,也属于教学计划副本综合解决方案的一部分。

六:教学计划副本最终实现的结果是,教学管理人员,始终维护着一套最新的教学计划结果,而在教学计划经过较大的变更以后创建副本。副本创建后教学计划的任何改动都将由系统负责更新所有的副本下的内容。关于变化后如何更新教学计划副本的规则需要参照教学部门的教学策略。

教学计划副本方案目前包含的业务有:

       1:教学计划的属性信息变化

2:教学计划添加课程

3:教学计划关闭课程

4:课程停用

5:课程升级

6:课程替代

7:课程学分变更

8:提供了强行升级学习了老版本的课程的学生处理

9:提供强行替代学习了老课程的学生处理。

10:学生毕业的综合审查。

       教学计划副本方案的一种特例描述:

在目前应用于多个学校的平台中,为了能够满足教学计划不断变化的需求,建立了入学批次对应的教学计划的方案,这种方案的核心思路是,为每一个新的入学批次创建一个全新的教学计划,这些教学计划每一套都是独立而完整的,对应的入学批次内的学生只能学习这个批次对应的教学计划下的教学资源。

其实这种方案就是教学计划副本方案的一个特例。也是一种教学策略的具体体现。根据教学计划副本的解决方案,对应与每一个入学批次的独立的教学计划就是一个教学计划副本。应用教学计划副本方案,可以在原有的基础上做到入下突破。

1:所有独立的教学计划(副本)都是用同一套课程资源,减少了在不同的独立的教学计划下维护同一个课程的问题,降低了管理的难度。

2:实现了自动创建副本的过程,免去了每一个创建教学计划的重复繁琐的过程。

3:由于使用了共同的教学资源,所以降低了在转专业,转层次,转学生类型方面的实现难度,甚至可以支持学生转副本(即在不同的批次下进行转变)。

4:可以支持更加复杂的教学策略,例如可以支持改学分,改课程类型等等业务。

5:免去了必须在创建一个新批次的情况下,必须创建一个全新的教学计划的规则,可以根据教学策略在任何需要的情况下创建全新的教学计划副本。

 

教学计划副本之人大实现方案:

       人大关于教学计划变化策略描述:

              教学计划变化策略是详细定义教学计划变化后,对所有副本的变化规定,并描述这些变化,对学生学习,毕业的影响。

              在上面的第3部分的教学计划副本中描述的教学计划变化的功能如下:

       1:教学计划的属性信息(毕业信息)变化

2:教学计划添加课程

3:教学计划关闭课程

5:课程升级

6:课程替代

7:课程学分变更

1添加新课:当教学计划添加新的课程的时候,所有的副本下对应的副本教学计划同样添加该课程,如果添加的是必修课,在副本中必须以选修必修课(可选必修课)添加,其他课程类型不用做任何改变,直接添加原类型即可。

副本添加了新课以后,老的学生可以学习也可以不学习。由于人大在毕业阶段不采用必修课总学分判断该学生是否可以毕业的条件,而是采取所有必修课的课程都通过了就可以毕业的方法,所有新加的“选修必修课”对于老生学与不学针对毕业没有任何影响。

2关闭课程:关闭课程,并没有任何的课程替代该课程。这种教学计划中课程的变化直接影响所有的副本纪录,副本中所有的对应的教学计划下的课程都跟随变化。课程关闭的动作,分为课程停用,安排3次考试,课程关闭3个过程。

在课程停用后,所有学生如果没有学习这门课程不能再选该课程(在选课列表中不出现了),所有的学生如果已经选了该课,或已经学习了该课,将依然能继续学习该课程,并可以参加最多3次的考试。如果没有完成3次考试的学生,由学校给与退课。

3课程升级:针对一门课程资源升级,将当前的课程停用,添加一门新课。停用的课程按照关闭课程的流程顺序执行停用,和3次考试,3次考试以后,执行课程关闭,当因为升级而停用的课程被关闭后,执行强行课程升级操作。直到所有学习该课程的学生都停止使用该课程。

强行升级的动作是将学生正在学习的需要升级的课程关闭,并执行新课的选课扣费,然后执行开课。同样的升级流程可以通过学生在选课阶段主动执行课程升级来选课,然后有学务部门于与开课。

在课程升级的过程中,如果升级后的课程和升级前的课程学分不同,需要针对学分进行处理,如果升级后的课程学分大于老课程,需要在升级的过程中补扣费用,如果是升级后的课程学分小于老课程,需要退还学生扣除的费用。

4课程替代:针对一个教学计划下的一个课程执行课程替代,是将几门没有在当前教学计划的课程加入到该教学计划,并将被替代的课程执行关课流程,流程依然是停用,和3次考试,然后执行课程关闭,课程关闭后执行强行替代。

强行替代的业务处理流程和升级完全相似。

5课程学分变化:学分在人大的系统中是属于课程资源信息中的一项,也就是所有的教学计划下的该课程都是相同的学分。而当课程资源的学分变化后,所有的教学计划副本下的课程资源全部跟随变化。

针对已经学习了该课程的老生,学分保持原学分不变。而这些学生学习的这些课程在升级或替代的时候,按照新的学分扣费。对于那些没有学习该课程的学生,学分按照变化后的学分扣费。

6关于毕业信息变化:目前人大系统的毕业信息变化要求所有的副本跟随变化,所有的学生已毕业当时的毕业条件作为必要的标准。

       人大关于教学计划副本的数据库ER设计:

教学计划的副本的数据结构与系统中的教学计划数据结构有所不同,在现有系统中的教学计划结构,为了适应教学计划变化的特点,进行了比较灵活的设计,尤其是教学计划的毕业条件,几乎是以一种灵活的方式拼凑出来的,没有完整的教学计划的数据结构。在这里我们就不详细描述教学计划的数据结构。

在教学计划副本中,没有延续这个结构而是使用根据教学计划中的信息,直接拼凑出实际的课程资源,教学计划的二维数据结构。例如学历教学计划,直接建立了带有各种毕业条件数据结构。的这样有利于简化学务,毕业等业务操作的复杂程度,也起到了原始教学计划和实际教学计划应用的隔离。在教学计划副本这层中,将高起本教学计划从虚拟的拼凑,转变成了实际的教学计划。同时也在教学计划的副本中实现的过程中,完成了添加新课到教学计划后,老学生学习的必修课转变为选修必修课的实际操作。

具体的数据结构,参见附件中的“教学计划副本数据结构图”。

 

       人大教学计划副本实现技术描述

为了实现上面的数据结构,我们需要复制大量的存在的并大量重复的数据,副本创建的越多数据冗余越多,而且根据人大的教学计划变化策略,教学计划的变动将带来大量的副本的联动。这无疑也带来了大量的复杂的数据操作。面对实际功能需求和当前的设计结果,在实现人大教学计划和教学计划副本的过程中我们又创建了处于教学计划和副本中间层数据结构。这层数据结构实际上是原教学计划数据结构的缩影,大部分的数据表格都是各种主健的关联表,没有实际的数据内容。基于这个中间层,按照的副本数据结构创建试图,完成教学计划副本数据的建立。

教学计划副本的中间层数据结构参见附件中“教学计划副本中间层数据结构图”。

这样大量的数据可以基于教学计划的数据,而不用大量的复制和联动,当然这种方案的实施也是基于人大上面的教学计划变化策略,大部分的教学计划变化都要影响已有的教学计划副本,并且保持一致,这是导致试图方案的得以实施的关键。

              在创建教学计划的过程中,首先是一个创建全新的教学计划的过程,该过程被包装在TeachPlanCopyProcessB类的NewTeachPlanCopyCreate()方法中。创建教学计划后,后续的所有变动都是通过该类的方法实现的,后续的联动动作包括:

              1:增加课程到副本学历教学计划时候,副本的联动。

              2:为指定的一个教学计划对应的副本添加课程的操作。

              3:增加课程到副本专业进修教学计划时候,副本的联动。

              4:增加课程到副本单科进修中的副本联动。

              5:给一个指定的教学计划副本创建课程替代副本记录。

              上面的这些联动动作除少数方法是通过代码实现以外,其他所有动作都是使用了存储过程。其实这部分的代码基本上起到的是操作借口的作用,用于保证以后教学计划副本变化后修改的一致性。

  2004629日星期二

李凌

附件

教学计划副本数据结构图

 

教学计划副本中间层数据结构图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值