面向教学软件的RUP改进模型的设计研究

来源 :电化教育研究 | 被引量 : 0次 | 上传用户:dongfa
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
   [摘 要] 在深入分析统一软件开发过程(Rational Unified Process,简称RUP)模型中的核心工作流及其迭代开发模式的基础上,针对当前教学软件开发模型中所存在的一系列不足之处,提出一个面向教学软件的RUP改进模型来指导教学软件的开发过程,并予以实际应用。改进后的模型把教学软件的特点与RUP模型中“用例驱动、迭代开发、架构设计为中心”的软件工程过程思想紧密地结合起来,设计出领域分析、需求建模、教学设计、系统设计、测试、软件评价等教学软件开发中特有的关键活动,并为其提供必要的准则及指导,同时建立起清晰的过程结构体系。最后把RUP改进模型运用到一个实际的教学软件项目开发实例中予以实现,取得良好的效果。
   [关键词] RUP; 教学软件; 改进; 模型
   [中图分类号] G434 [文献标志码] A
   [作者简介] 余久久(1979—),男,安徽合肥人。讲师,硕士,主要从事软件工程、计算机教学研究。E-mail:[email protected]
  
  一、引 言
   统一软件开发过程(Rational Unified Process,简称RUP)模型是一个重量级的二维软件开发模型,如图1所示。[1]横轴反映软件开发过程的时间维,是过程展开的生命周期特征。[2]
   初始阶段、细化阶段、构造阶段与交付阶段这四个阶段依次顺序体现出开发过程的动态结构,每个阶段结束时通过技术评审来确定是否进入下一阶段。模型的纵轴以内容来组织相应的逻辑活动,包括软件开发及项目组织管理所涉及的九个核心工作流(六个过程工作流和三个支持工作流),体现开发过程的静态结构。重复和迭代贯穿RUP模型的整个过程,支持用例驱动、迭代和增量式开发过程及以基本架构为中心是其三个显著特点。
   这一复杂和详尽的流程框架,没有一个实际项目能使用RUP的全部内容,制定针对具体项目的专用开发流程是项目开发者必须考虑的问题,这套“大而全”的开发过程也缺乏对中小规模软件目标的支持。[3]对于运用在特定行业领域、需深刻体现出行业背景特点的软件系统的开发过程,完全照搬RUP是不适用的。所以,近些年针对实际开发项目特点对RUP模型进行有效裁剪或改进的活动已成为国内外学者的研究热点。
  二、教学软件的特点
   (一)教学软件的定义
   教学软件指计算机辅助教学使用的程序或软件,通过计算机呈现教学内容、结构和教师教学意图,指导和控制教学活动,接受学生的要求与回答,存储有关教学资料进行教和学的活动等。[4]在相应软件环境下运行,由某种格式的计算机可执行文件(如PowerPoint环境下运行的.ppt文件等)制作出来的多媒体课件、教师课堂上使用的教学辅助类软件、课外供学生使用的自学辅助类软件、网络课程学习系统等也属于教学软件的范畴。[5]学生是软件使用者的主体。
   (二)特点分析
   不同于普通商业性软件,教学软件从反映内容层面看,把教师教学理论与学生学习认知心理结合起来,针对教学目标及学生特点,合理选取与设计教学信息并进行有机组合,从而形成并优化教学结构及教学资源。开发过程中除了实现软件自身功能属性(包括软件的可靠性、可维护性、可移植性等各种质量属性)之外,尤其具备三方面特点:
   1. 教学设计策略
   作为学生的“学习环境”或“认知工具”,教学软件表面上体现出系统功能模块的设计与开发,实质上蕴涵着以符合学生相应认知心理、思维习惯和学习需要的教学目标分析与设计、学习过程的设计、教学软件内容的组织等。[6]所涉及的学习信息的选择与组织、教学案例程序、学习导航、问题设置等方式需要反映出教师相应的教学策略和教学过程。从教师角度看,软件中所蕴含的教学设计策略将以细微的细节体现,比如软件界面的布局、教学内容主题目录的排列方式、各浏览页面间的位置关系等都可能对学生学习效果产生影响。
   2. 教学软件评价过程
   教学软件评价即依据软件的教学目标对教学过程及结果进行价值判断并为教学决策服务的活动,是研究教师的教和学生的学的价值的过程。[7]不同于对软件自身功能实现方面的评测,而是对软件中所特有的教学因素的评价过程。
   教学软件评价主要体现在教学设计(教学过程与活动设计是否合理、媒体呈现方式是否科学、软件承载的知识内容是否符合教学要求等)和教学使用(软件使用环境是否稳定、作用效果是否明显等)两个方面。[8]总之,从软件设计者角度来看,软件教学评价过程有助于发现问题,调整设计开发方向,提高开发质量;从使用者角度来看,该过程可以为其选择合适的教学资源,激发学习兴趣,提高学习效率。
   3. 人机交互
   人机交互也是教学软件所具有的重要特点及优势所在。用户与软件之间传递信息是双向的,用户通过交互界面进行人机交互作用,软件的交互界面成为用户和计算机进行信息交换的“走廊”。人机交互需要反映出教学软件的易用性、及时响应性等特点:如操作软件简单便捷、符合人们使用习惯;使用过程中尽可能地减少系统接收操作的响应时间;通过设计时间运行进度条、时间倒计时等方式提示用户等待时间等。
  三、当前教学软件开发模型的不足之处
   教学软件亦需要借助软件开发模型来指导其开发过程。近些年,国内已有学者对其特点进行研究,指出教学软件的开发历经反复迭代过程,适合采用原型或螺旋模型开发方法。其中较为典型的有:图2所示的三重螺旋开发模型;[9]图3所示的原型开发模型;[10]图4所示的原型与螺旋相结合开发模型。[11]
   现有的教学软件开发模型中尽管体现出原型或阶段迭代的开发思想,大体包含教学设计、系统设计、多媒体元素的制作、编辑与合成、测试等几个关键步骤。但是以上模型均存在一些不足之处:(1)过多强调的是软件中的教学素材、媒体元素的制作或编辑流程,缺乏整体上对软件的体系结构建模。(2)模型过于笼统,未能形成一套完整的软件开发过程全框架。(3)体现不出教学设计环节中一些核心活动(如人机交互设计、界面设计等)。(4)教学设计和软件工程活动相互间联系不明确。(5)尽管强调了开发后期产品的测试过程,但是重要的教学软件评价活动被完全忽视。(6)开发组织的职责或任务没有被明确分派,缺乏软件过程活动中所生成的主要工作制品等。
   四、教学软件RUP模型的改进方法
   (一)改进过程所遵循的原则
   应用RUP关键之处在于根据项目自身特点,结合实际对其“量体裁衣”。但是,改进不等同于随意地裁剪与去除RUP的迭代阶段或工作流。我们遵循“用例、迭代式开发和分层架构是RUP改进过程所不可缺少因素”的思想,[12][13]主要采取下列四个原则指导对RUP模型的改进方法:(1)迭代开发思想始终贯穿于软件开发全过程。(2)系统从需求至测试阶段都坚持对用例的使用。(3)依据项目规模特点制定开发过程所需的工作流,确定工作流所产生的工件。(4)在充分考虑到架构与风险关系的同时,注重精简架构设计。
   当然,改进过程中有关候选架构与严重风险的缓解、架构基线等可以在哪一个阶段哪一个工作流中完全建立起来等一系列问题也是需要考虑的。[14]
   (二)RUP改进模型的设计
   教学软件开发要考虑软件的教学因素,以教学设计为基础,结合RUP思想,我们对RUP模型进行相应改进。改进后的模型保留用例驱动、迭代开发和架构设计为中心的特点,但是把初始、细化、构造与交付四个阶段的迭代周期数目划分为1,2,1,1。合并与修改了部分工作流:由于实际开发项目规模较小、业务流程简单以及开发迭代规模不宜过大的特点,把原RUP中的商业建模工作流,变换成对特定的软件教学领域分析工作流。基于教学软件所具备的教学属性与系统自身功能实现属性两方面因素,把原RUP中的分析和设计工作流分解成需求与设计两个工作流,需求工作流完成对软件建模活动,设计工作流同时进行教学设计与系统设计的并行活动,通过细化阶段的两个迭代周期完成。改进后模型根据系统开发风险较小、项目团队规模不是太大的情况,适当简化了配置管理、项目管理、环境管理三个支持工作流及所产生的文档。每个迭代周期并行展开领域分析、需求、设计、实现、测试、实施、配置管理、项目管理、环境管理共九个工作流,见表1。
  五、实例应用
   “计算机基础应用”网络课程学习系统是作者参与开发的教学软件研究项目之一。该系统基于校园网络环境,文科院系非计算机类专业学生是主要用户。系统以注重学生认知规律的人机交互方式,通过各种诸如视频、文本、动画、音乐等多种媒体形态所呈现出的计算机基础知识的教学内容设计和为学生学习提供支持服务。
   项目开发团队由不超过10人组成,成员分工明确,有项目经理、学科教师、软件设计师、程序员、美工编辑及软件测试人员等。依据用户需求,Project2003作为项目管理工具,Visio2007作为系统建模工具,系统开发工具采用ASP.Net 2.0标准,SQL-Server2007作为后台数据库管理工具。项目采用RUP改进模型开发,整个开发周期三个月。
   (一)初始阶段
   初始阶段主要在深入分析项目应用领域的基础上明确系统开发规模与用户需求,制定项目管理计划及软件配置与管理计划书、变更报告说明书等,建立起系统的评测标准和使用方案,评估潜在的风险。初始阶段的重点工作是对项目领域分析。
   (二)细化阶段
   项目在细化阶段根据实际需求选择了简单的C/S体系结构,采用图6所示的把教学设计与面向对象建模方法合为一体的“面向对象—教学设计”的建模方法作为系统建模方法。在此基础上,分别从教学设计与系统设计两个方面进行详细的迭代设计过程。与设计工作同步展开,测试人员依据软件需求设计制定出初步的软件测试计划和重要模块的测试用例,为软件产品的实际测试工作提供指导依据。该阶段结束前还需要完成制定软件编码规范与数据词典,为开发出可运行软件产品的测试版本提供规范。
   作为计算机基础课程的学科教师,作者在项目中主要承担了细化阶段有关系统的教学设计工作。由于篇幅所限,这里主要介绍教学设计中的教学内容设计的过程。
   教学内容设计即对教学课程中所包含的知识点进行策略性的组织,章(模块)是课程教学内容的组织单元,节(知识点)则是章(模块)的下一级组织对象。[23]每一章由本章概述、本章学习先决条件、本章所包含节(知识点)、练习、评价与总结六个部分组成。其中,每一章中又包含若干节(知识点),每一节中也要设计该节的内容、学习目标、难点重点、节学习先决条件及练习等。“本章学习先决条件”即确定使用者学习该章之前所具备的知识水平,“练习” 即从本章所在层级的目标为使用者提供必要的、能够反映出相关知识的运用方面的习题,“评价”可以设计为该章的学习反思、问卷调查以及电子档案等内容,“总结”的设计即为理清该章的组织结构,提炼内容。最后可以根据实际需要进行该章扩展资源方面的设计。
   (三)构造阶段
   构造阶段的主要任务是系统的开发与测试工作。在完成多媒体素材的编辑与合成操作以及系统经开发集成所生成的应用程序之后,按照事先制定好的测试计划和测试用例进行相应的测试活动,主要包括对系统的功能实现、使用操作、应用效果等方面的黑盒测试活动。测试活动中尤其注重系统所呈现出教学内容及是否具备创意方面的测试,检查所展示的内容能否激发使用者的学习兴趣,并作出相应的改进。
   (四)交付阶段
   软件评价活动在交付阶段进行,即系统正式投入使用前在实际的运行环境中开展。除了系统开发人员外,教育教学专家、学科教师、美工人员、学生等需要共同参与到软件评价活动。软件评价体系指标可以由教学内容、教学设计、技术实现、呈现艺术四部分组成,每一部分又可以分解成一系列二级评价指标,例如:教学设计可以分解为教学目标组织、教学交互设计、学习评价等;技术实现分解为系统架构设计、运行环境、操作性能等;呈现艺术分解为界面设计、媒体选择、美工效果等。系统交付前只有在实际环境中通过对其广泛的使用,才能有效发现所存在的内在不足之处与特点,从而进行更好的设计与完善。
   以上各阶段结束时,用户代表、第三方技术专家与项目组人员都参与了项目评审过程。该系统遵循RUP改进开发模型,规范了项目开发与管理流程,在交付期内顺利完成。系统运行期间基于实际环境与用户要求,项目组又对其进行两次进化过程。目前该系统在试点院系进行了实际应用,反映良好,目前考虑进一步推广使用。
  六、结束语
   本文从对RUP模型的特点分析着手,结合教学软件项目自身特征,对模型进行相应改进,从而更好地服务于教学软件开发全过程。RUP改进模型针对教学软件的一些关键的、特有的开发活动提供了必要的准则与指导,并建立清晰的过程结构体系,从而为教学软件开发过程提供了较大的通用性。
  
  [参考文献]
  [1] Jacobson I,Booch G,Rumbaugh J. 统一软件开发过程[M].北京:机械工业出版社,2002.
  [2] 何晓蓉.软件工程与UML案例解析[M].北京:中国铁道出版社,2010.
  [3] 毛力,须文波.基于RUP的J2EE应用建模研究[J].计算机工程与设计,2007,28(4):852~854.
  [4] [8] [15] [22] [23] 余胜泉.教学软件设计指导手册[M].北京:清华大学出版社,2011:436,129,436,271~273.
  [5] 方海光,任剑锋,陈蜜.教育软件工程框架的构建[J].计算机科学,2009,36(1):29~33.
  [6] 黄少颖,刘美凤,张霞.教学软件需求分析有效实施的指导原则研究[J].现代教育技术,2007,17(3):10~12.
  [7] 教学评价[EB/OL].http://www.baidu.com/教学软件评价/教学评价_百度百科.htm,2010.
  [9] 刘新阳,张从善,常淑娟等.关于新型教学软件开发模式的构想[J].中国电化教育, 2003(5):65~67.
  [10] 谷震离.多媒体教学软件原型法开发模型研究[J].计算机工程与设计,2006,27(10):1828~1830.
  [11] 李为民,张军征.教学设计与软件工程结合的教学软件开发模式[J].现代教育技术,2009,19(7):49~52.
  [12] 赵艳.RUP过程裁剪在组卷系统中的应用[J].洛阳师范学院学报,2008(5):51~53.
  [13] 王建,冯伟森,李旭伟等.基于UML和RUP的中小项目的设计和实现[J].四川大学学报(自然科学版),2009,46(4):935~938.
  [14] 翁楠.RUP在信息系统中的开发研究[D].大连:大连海事大学,2006.
  [16] 学习者特征分析[M/CD].教育技术培训,2008.
  [17] IEEE[DB/OL].http://ltsc.ieee.org,2000.
  [18] ADL[DB/OL].http://www.adlnet.org index.cfm?cfid=584157&cftoken=30417847,2000.
  [19] [20] [21] 浅析学习系统的软件建模方法研究[DB/OL].http://www.northedu.com.cn/quanguogaoxiao/show2.jsp?informationid=20101201113
  1269064.
  
  基金项目:2012年安徽三联学院科研基金项目“教育软件测试过程模型的设计研究与实现”(项目编号:2012011 )
其他文献
近年来,我国公路建设规模不断扩展,与之密切相关的工程机械,也随其迅速改造升级。不仅表现出种类繁多、功能多样的特点,而且机械的规格、精密度、复杂性也与日剧增,给实际管
日光温室草莓高产栽培乐亭县徐家店乡广大农民,近年来在日光温室内栽培冬春茬草萄,每公顷产草莓31.5~36t(吨),产值达37.5~45万元。其主要措施是:一、选择优种选择全明星草莓.该品种生长旺盛,果型大,最
人类为什么要创造出影像作品?人类创造的影像作品之表征方式发生了怎样的发展演变及其如何反作用于人类自身?这是影像传播研究必须要回答的两个基本问题。本文作者对这两个问题
孔雀养殖漫谈目前,随着孔雀身价的日益上升,其养殖业悄然兴起、为了方便养殖户养殖,现将有关事宜介绍如下:一、孔雀的生物学特性孔雀有绿孔雀、蓝孔雀之分,前者又称爪哇孔雀,后者又
[摘 要] 手持式设备和无线通信技术的快速发展促进了移动学习应用研究的深入,使得学习者利用手持式设备在任何时间、任何地点开展学习成为可能。本文将移动学习模式应用于中等职业学校服装专业服装销售实习环节,提出了基于手持式设备的服装销售学习系统,详细分析了该系统的设计过程,并在中职学校服装专业服装销售实习环节进行了实验。实验结果表明:系统不仅有助于学习者学习服装销售知识,而且相对于传统学习方式,学习