当前位置:蚂蚁文档网 > 述职报告 > “软件需求分析”实验教学研究和实践

“软件需求分析”实验教学研究和实践

时间:2022-03-12 10:07:36 浏览次数:

摘要:以金陵科技学院软件工程学院“软件需求分析”实验课程开展为例,研究探讨该课程教学模式。以USDM平台环境的“需求/设计管理工具”为实验平台,从软件需求项目准备、项目启动、项目展开、项目定型、项目评审五个环节开展实验,项目分组,角色轮换。学生自行提出Dirty Example,通过课后团队协力工作,课中讨论和评审,辅以及时的检查考核,并配套实验教材,细化各环节,提出融知识能力培养与职业能力培养于一体的工程教育教学模式。

关键词:软件需求分析;USDM;Dirty Example

中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2015)48-0131-02

一、引言

需求是软件系统成功的基础,软件需求是软件工程最重要的阶段。软件需求分析实验是软件需求分析类课程重要的实践环节,其目的是贯彻理论联系实际,在理解软件需求工程的过程、方法、工具的基础上学习掌握实际软件项目中的需求分析和需求管理,提高学生应用相关工具进行软件需求分析和管理的能力。软件需求分析理论课程枯燥、难理解,如何从有限的学时中巩固学生对理论内容的理解,并很好地应用到实验环节,训练学生的工程能力,是软件工程专业人才培养研究的核心问题。

金陵科技学院软件工程学院开展课程改革,按照“华盛顿协议”标准要求,开展工程教育,培养工程能力强的应用型本科人才。目前已编写出版该课程实验教材,正积极申报该课程为校级优秀课程,准备开展建设MOOC教学网站等一系列工作。

二、本课程开展过程及内容

实验课的过程和任务,首先需要分组,每组提出一个dirty example,要求课题复杂度适中,解决应用型软件中可能存在的问题。然后完成项目的准备工作,分析功能需求和非功能性需求,编写项目的前景和范围文档,用例说明文档和软件需求规格说明书。本课程从软件需求项目准备、项目启动、项目展开、项目定型、项目评审五个环节开展实验。每个实验环节均以USDM平台环境的“需求/设计管理工具”(下文简称“该工具”)为实验平台,并在该环境下完成相应文档和过程管理。

(一)USDM平台介绍

USDM,全称Unified Software Data Management System,中文意思为统一软件数据管理系统。它是基于CMM/CMMI模型的企业级管理平台,内容覆盖了从CMM/CMMI最新模型框架1.2的中文学习到软件开发每个过程的生命周期,具有完整性、规范性和实用性。CMM/CMMI作为当前世界上最流行、最实用的有关软件生产过程的评价标准,已被国际软件产业界公认为软件企业进入国际市场的通行证,有效的帮助了软件企业规范其生产效率和保证产品按时、按质、按量完成。本课程各实验环节均在USDM平台的“需求/设计管理工具”下完成文档和过程管理。

该工具支持项目组管理,包括项目团队的组建、成员角色、权限管理和维护;岗位角色管理,包括岗位角色设置、默认权限管理和维护。每次每个项目组学生及角色一目了然,方便教师管理和指导,为设置和轮换学生在项目团队中的角色起到记录、监督等管理作用。

该工具是基于UML的软件开发实训过程管理系统,有全套的软件建模工具,软件需求建模过程可在该平台下轻松完成。

该工具支持跨平台。实验各环节文档可以生成自定义格式,也可生成word等格式,方便导入和导出,方便学校留存教学资料,记录教学管理过程。

该工具支持自动统计度量。对所有项目各阶段的生产数据进行集中、自动统计度量并存储,同时支持自动化和手动计算度量结果,允许自定义计算公式,并形成报表输出;也可根据用户的定义生成报表。例如,可以对学生实验环节产生的用例数进行统一度量,生成评审报告等。

该工具支持并行、串行或串并混合工作流程。例如,支持同一时间段内多个教师同时在线、离线评审。该功能是支持实验各环节评审和同行评审的重要组件。

(二)课前、课中、课后安排

1.课前准备。课前准备的主要工作是组建项目团队,并在USDM平台的“需求/设计管理工具”中完成角色设置。后续的角色轮换工作,也在该工具下实现记录和管理。课前准备要求在理论课上提出。

(1)组队,每队提出dirty example,并多角色工作。具体过程为每个小组构想或调研得到一个需要解决的实际问题,请其他小组提供解决方案。也就是每个小组提出一个Dirty example,该Dirty example通过随机选择的方式,最后由其他小组来解决,这样每个小组最后有了一个别组提出的Dirty example。该Dirty Example一定是符合本课程的、有问题的应用型软件,并且复杂度适中。如课题过于复杂,评审时,教师指导裁减部分功能,如过于简单,则增加部分功能。例如可以是“××管理系统”或者“××网站设计”等。提出Dirty example的小组扮演客户方,负责解决问题的小组扮演需求团队,以需求工程团队为主,完成项目的业务需求,建立用户需求,最终完成系统需求以及每个工程中的文档。

自由组队,建议4人左右一队,推举组长,即每个队选择一个项目经理。每个小组成员充当不同角色,包括客户方(用户评审方)、需求工程师、技术评审方。每个成员都要注意工作中的交流和沟通能力。要求队员能力互补,各有所长,组内能够有效协调。该环节较好培养学生的团队协作能力、交流和沟通等职业能力。多角色工作,真实模拟实际企业工作流程和环境,与企业无缝对接,帮助学生适应就业。

Dirty example的来源,改变了传统由教师定课题的模式,培养考察学生的业务捕捉能力、生活观察能力、思维创新能力等。以金陵科技学院软件工程专业2012级某班学生本课程提出的Dirty example为例,有“金科通”、“广播放放”、“记单词软件”、“智能规划时间软件”、“用户问答系统”。很多课题在后续课程中得到很好的延续和实现;很多软件申请了著作权、专利,参加各类竞赛,获得诸多奖项,包括国家级奖项;部分优质软件,学院正在推广,以期商品化、产业化。学院为此专门开设创新实验室,吸引更多学生将提出的Dirty example在该课程后进行实现。可见,学生的力量是无限的,教学就是挖掘学生的能量,使之释放,绽放灿烂光芒,为人类科技进步努力。

(2)选择选择示范小组,有效指导考核。由任课教师挑选一个示范小组,详细跟踪和考核该小组的各个实验环节,有问题及时沟通解决。该组进度比其他组进度控制稍快。其他组有问题可以和示范组沟通解决,解决不了的可以提请任课教师解决。该过程使实验中既有目标可以参照,又能使“优带差”,节省教师的精力,较好完成实验指导任务。

(3)强调实验规则。课前对实验课程要求部署,并强调实验规则,包括实验计划、注意事项,强调每个环节的度量要求。度量数据通过USDM平台工具记录并自动计算,控制整个实验过程。

2.课中讨论评价。课堂上主要针对各实验环节进行考核和问题解决,并将过程及文档记录到实验平台工具下。课堂形式主要有学生现场讨论、模拟讨论、分组讨论、报告发言、辩论等。教师把控现场,评审学生实验结果,记录各阶段考核结果,并对学生遇到的问题进行探讨解答。该过程锻炼和培养学生的知识运用能力,即实际工程能力,同时培养学生表达、思维、分析等职业能力。该过程真实有效考核学生所做工作,并帮助其分析,以得到良好的教学效果。进度慢的要督促,有严重问题的要指出,以防偏离方向。过程、文档、结果度量、注意事项均记录在USDM平台工具中。配套实验教材演示其在USDM中的相应完成过程。

3.课后自主学习。每个实验环节的内容都由学生自主进行课后调研、探讨、分析、完成,然后提请课堂讨论,针对课堂讨论提出修改意见,课后调整实验内容结果,最终完成每个实验环节。该过程充分调动学生的自主能动性、自学能力、社交能力、工程能力,能有效使用和反馈理论课堂内容,缩短理论和实践的距离,增强学生的学习兴趣。另外课后时间自由安排,学生自主性、自控能力凸显。

(三)配套实验教材,细化各实验环节,强调系统性

本课程市场上很难找到实验教材,针对这种情况,金陵科技学院软件工程学院根据几年的教学积累,组织课程组,联合企业,合作编写《软件需求工程实验指导》教材,帮助学生熟悉本课程实验平台环境,解决学生对需求分析文档来源、实现过程难以理解的问题。以实际企业项目为案例,指导学生开展每个实验环节,既考虑了各实验环节的细节及迭代,又体现教学的系统性,帮助学生理解整个需求分析过程的各个环节及过程。

三、结语

如何较好地开展实验课程,有良好的教学效果和教学反馈,培养与实际企业无缝接轨的工程能力和职业能力一体化的人才,是软件工程专业教育的目标和方向。目前需求分析方法种类繁多,创新方法也较多,如何针对每个案例,采用合适的方法,很好地指导学生开展实验,值得探讨。该课程如何与软件工程专业后续课程有效衔接,将学生提出的Dirty Example课题很好的实现,值得研究。

参考文献:

[1]张勇.电子线路实验教材编写研究[J].实验科学与技术,2008,(8).

[2]陈昊,等.软件工程课程群实验教学改革探讨[J].实验科学与技术,2011,(8).

[3]毛利峰.对软件需求分析的一些思考[J].计算机时代,2008,(07).

推荐访问:教学研究 实践 需求 实验 分析

猜你喜欢