软件工程课程设计文档-课程管理系统需求文档
摘要:《软件工程》课程设计是《软件工程》课程内容的综合应用和实践。针对《软件工程》课程理论性和实践性较强的特点,提出了《软件工程》课程设计的实施步骤,包括课程设计题目的确定、团队组建、中期检查、成果展示等,并进行了几轮的实践。实践证明,该方法不仅加深了学生对《软件工程》理论的理解,而且锻炼了学生的动手能力和综合知识的应用能力,激发学生学习的积极性。
关键词:软件工程;课程设计;实践
中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)10-0151-01
《软件工程》课程是高等学校计算机科学与技术学科各专业的一门重要的专业基础课程。长期以来,许多高校的《软件工程》课程都偏重于理论的讲解,侧重于软件工程目标、过程和方法的介绍,并主要围绕软件生存周期的技术和方法,采取灌输式课堂教学。然而,对于缺乏软件开发经验及软件管理经验的在校本科生来说,理解这些理论比较困难。鉴于此,结合《软件工程》课程理论性和实践性较强的特点,近几年,石河子大学信息科学与技术学院计算机科学与技术系对人才培养方案进行修订,在《软件工程》课程结束后,专门安排两周的《软件工程课程设计》,目的是在系统学习软件工程课程后,使学生加深对软件工程理论的认识和理解,能较好地掌握软件开发模型、软件生存周期、软件工程方法等在软件项目开发中的作用和意义,熟悉软件开发过程中相关文档的书写,积累软件开发经验,并培养学生的团队合作意识,从而达到提高学生的软件工程综合能力和软件项目开发管理能力的目的[1-3]。
以下就是我院《软件工程》课程设计的具体实施过程。
1课程设计题目的确定
课程设计题目采取任课老师出题和学生自拟题目相结合的方式。在选题之前,先有任课老师给出20个左右的题目软件工程课程设计文档,供学生自由选择;如果学生有好的设计题目,或结合学生自己的特长及正在进行的项目,学生也可以自拟题目,在老师同意后方可实施。鉴于《软件工程》课程的特点,老师在选择课程设计题目时,尽量选择规模和难度适中的题目,重点考虑学生实施的可行性,并重点考虑课程设计题目对软件开发周期、各阶段相关文档的书写等内容的综合应用与检测。
我院近几年在《软件工程》课程设计题目选择中,重点将课程设计题目分为如下几类:1)应用软件开发类,如图书管理系统、人类资源管理系统、学生成绩管理系统等;2)网站开发类,如购物网站开发、选课网站开发等;3)游戏类软件开发,如游戏开发、游戏虚拟场景设计等;4)其他类型软件开发,如系统软件类、病毒处理类等。
在确定课程设计题目的同时,将课程设计所要达到的要求、中期检查时间、最终完成时间、最终提交成果及文档书写要求等告知学生。
2课程设计团队的组建
在我院《软件工程》课程设计团队组建方面,我们采取学生自愿组队的原则,要求每队学生成员不超过5人,并要求每队需有1人担任团队队长,负责本队学生的任务分工及日常管理。在学生组队时,任课老师给出组队建议,如队长需考虑每个队员的专业基础、特长、性格、技能等,使每个队员在团队中担任不同角色,从事不同工作,如系统分析师、系统架构师、程序员、测试员等。这种角色的设置及人员职责的划分,使学生对项目团队有了初步认识,更加深刻地认识到团队协作的重要性。
实践证明,这种团队划分和组建方法,能充分发挥每个学生的积极性,使得每个学生的工作量得到较合理的分配,并能发挥每个队员的特长,使课程设计顺利地进行。
3课程设计中期检查及指导
由于我院《软件工程》课程设计持续时间较长,为2周,所以,对课程设计的中期检查显得非常有必要。我们一般将课程设计的中期检查时间定在课程设计开始后的第1周周末。中期检查主要针对各个团队提交的开发计划、完成百分比、后续工作量等进行检查,以此指出每个团队存在的问题,监督其开发过程,并给予适当的指导和建议,同时督促每个团队成员完成后续的工作。
4课程设计成果展示及提交
课程设计结束时,我们要求每个团队必须按照规范格式提交项目成果(可运行的系统及各类文档),同时,每个小组团队依次采用答辩的方式现场展示所完成的系统。每个团队用大概10分钟左右的时间介绍团队分工、需求分析、设计、测试等过程,并将每个过程中重点成果进行叙述,并演示可运行的系统。任课老师现场提问,每个团队成员均可回答,并记录回答问题的情况。
在学生的课程设计成绩评定中,我们不仅考虑每个团队总体的项目完成情况,如项目完成质量、需求分析和设计的合理性、程序代码的质量、测试的充分性等,还考虑每个学生在团队中的表现及其工作量比重。我们将每个学生课程设计的成绩划分为3个组成部分:考勤占20%,所在团队的项目总体完成情况占40%,个人在团队中的表现和工作量完成情况占40%。
该实践模式在我院计算机科学与技术专业2010级、2011级和2012级《软件工程》课程设计中进行应用,取得了较好的效果,不仅激发和鼓励了学生实践动手的能力和兴趣,让每一个同学都能真实地将学习到的技术进行应用,而且增强了学生规范化的软件开发意识,锻炼了学生规范化的文档书写能力。同时,培养了学生严谨、务实的学风,激发了学生的自我实现意识和团队合作意识。
5结束语
针对《软件工程》课程理论性较强的特点软件工程课程设计文档,我们通过《软件工程》课程设计,进行软件工程理论的实践。我们不仅强调理论的重要性,更要强调实践的重要性,通过《软件工程》课程设计实践,不仅加深了学生对《软件工程》理论的理解,而且锻炼了学生的动手能力和综合知识的应用能力,激发学生学习的积极性。虽然我们在《软件工程》课程设计实践中取得了一定的成绩,获得了学生的好评和认可,但这种实践在我院依然处于探索阶段。在以后的《软件工程》课程设计中,我们会继续对这种实践进行完善,以此达到培养生的动手能力、分析问题和解决问题的能力、团队合作能力,培养出高层次的软件开发人才。
参考文献:
[1] 赖均.软件工程课程设计实践教学探索[J].课程教育研究,2014(2):243-244.
[2] 韦宇炜,聂笃宪.软件工程课程设计教学模式探索[J].考试周刊研究,2010(11):159-160.
[3] 韦宇炜,聂笃宪.软件工程课程设计教学模式探索[J].现代计算机,2013(3):42-44.