软件工程综合实训软件过程初探.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
 软件工程综合实训软件过程初探

软件工程综合实训软件过程初探 软件工程综合实训软件过程初探 摘要:软件工程综合实训应采用迭代的软件开发过程。基于实训课程目的的分析,提出一个为期20周、分6次迭代的实训模型。学生以小组为单位开展实践,分别任组长、开发经理、计划经理、测试经理及技术支持经理等角色,每完成两次迭代交换角色一次。实训中开展业务分析、需求、分析设计、实现、测试、部署、团队管理、计划管理、配置管理及环境支撑等领域的约30种活动,考核分迭代的考核和角色考核两种。 论文联盟   关键词:软件工程;综合实践;软件过程;迭代开发      为了提高软件工程人才培养的水平,增强学生的实践能力,文献[1]基于建构主义认知学说提出了一种创新的人才培养模式。该培养模式的特点是在第6—7学期引入长周期的综合实训。为便于实施,该综合实训可按学期分成两段。其中第6学期的实训为期20周,如何开展全面的软件工程过程实践,是本文要探讨的对象。此实训将部分原在课堂讲授的理论课贯穿在实训中讲解,并要求学生以小组为单位完成软件开发项目,从而理解和掌握软件开发过程与技术。为有效开展此实训,本文依据现有软件过程理论和经验,对实训中的软件过程进行探讨。   1概念与研究的必要性   软件开发过程是指在工业化环境(如软件公司、大型软件开发团队)开发软件的有先后顺序的一系列活动。它是将各种软件技术组织在一起的粘合剂,是合理高效开发软件产品的保证[2]。对软件过程的描述,往往包括过程模型、活动、角色、制品等方面。   软件工程综合实训课程的目的是为了让学生熟悉软件开发过程,掌握软件开发技术,增强实际动手能力。它与实际软件开发有以下几点不同:   1) 目标不同。前者以培养学生为目标,后者以生产软件为目标。   2) 实践主体不同。前者为学生,后者为工作者。   3) 环境不同。前者在学校的模拟环境进行,后者处于具体的软件开发环境。   这意味着实训教学中应该采用接近实际的软件开发过程,但又不能完全照搬实际过程。这是我们必须探讨综合实训软件开发过程的原因。以下从软件开发过程模型、过程角色、主要活动及对学生的考核等几方面对软件工程综合实训的软件开发过程进行讨论。   2综合实训的软件过程模型   历史上,出现过多种软件过程模型,但大致可分为线性模型和迭代模型两类。线性模型也称瀑布模型,已被实践证实不能适应需求变化的场景。迭代模型认为软件开发是一个反复的过程,比较符合软件复杂、易变的本质,是当今软件开发的主流思想。   在考虑实训教学软件过程模型的选取时,应以简单易行、便于软件技术学习、便于软件过程理解为出发点。单从简单易行的角度,采用瀑布模型比较有吸引力。瀑布模型的步骤和章法清晰,教学组织方便。但是,如果使用瀑布模型,对迭代过程的介绍只能停留在口头上,学生无法从实践中领会这一重要的过程思想。瀑布模型是一次性完成需求描述,然后做全面   设计。这不利于由浅入深、循序渐进地掌握软件架构、设计和编码方面的技术。如果采用迭代式模型,虽会令实训的组织和管理变得复杂,但既可以领会瀑布模型的章法,也可以克服瀑布模型的弊端。对于本文所针对的长达一个学期的综合实训,其教学目标是多维和综合的,既要在过程中传授显性知识,也要通过过程组织和实践指导传递隐性知识。如采用瀑布模型,会将开发过程理想化,而使很多隐性知识和实践经验难以传播。因此长周期的综合实训采用迭代式过程模型更合理。   按照有关迭代开发经验[3],对于小型项目,以3周为一次迭代较合适。我们决定将20周的实训分为开始1周、结束1周、中间6次迭代18周。各次迭代的目标如表1所示。   表中,迭代1的任务是发掘和初步表述系统的主要需求,并设计系统原型;迭代2要完成系统的主要功能,约占全部功能的30%~40%;迭代3完成系统的全部功能;迭代4对系统架构进行优化,增加业务逻辑层;迭代5进一步优化系统架构,增加数据读写层;跌代6使用现有框架对系统进行重构。   在实际的软件开发过程中,早期迭代要着重于影响架构的功能和性能需求的实现,从而一开始就为系统选择合理的架构。但在实训教学中,按由浅入深的教学规律,在学生具备一定的开发经验后引入架构设计知识。因此,前几次迭代较少涉及架构设计的细节,所完成的软件在架构方面是不成熟的。在后几次迭代中,通过对代码的重构逐渐完成软件架构的优化,从而让学生牢牢树立架构设计的理念。这是实训软件过程与实际软件过程的区别。   上述各次迭代的目标,也是系统开发的里程碑。教师检查各次迭代提交制品的同时,也考核了学生团队的成绩。   3综合实训过程中的角色   基于文献[4]及文献[5]的思想,软件工程综合实训学生团队应设置对等角色。即每个小组成员担任一种角色,负责一个方面的工作,同时又是其他成员所负责工

文档评论(0)

huidengyyuj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档