当前位置:耀景文档网>范文大全 > 公文范文 > 软件课程设计总结【五篇】

软件课程设计总结【五篇】

时间:2023-07-12 19:25:05 公文范文 来源:网友投稿

“软件工程”是一门理论与实践并重的基础课程,在教学实施方面存在较大的难度。现有的软件工程课程存在着体系不统一、定位不明确、知识与现实脱离等问题,课程内容比较庞杂和抽象,教学实践环节薄弱。因此,如何使教下面是小编为大家整理的软件课程设计总结【五篇】,供大家参考。

软件课程设计总结【五篇】

软件课程设计总结范文第1篇

关键词:软件工程 教学改革

“软件工程”是一门理论与实践并重的基础课程,在教学实施方面存在较大的难度。现有的软件工程课程存在着体系不统一、定位不明确、知识与现实脱离等问题,课程内容比较庞杂和抽象,教学实践环节薄弱。因此,如何使教学内容先进、讲授生动实际、实践效果良好,一直是软件工程课程教学需要解决的难点问题。

1.软件工程课程教学改革现状

普通高校传统的实验教学过于强调理论知识的积累,这限制了学生个性的发展、技能的培养和创新素质的形成。其课程设置与实践教学内容都严重滞后,实践教学学时占总学时也很少;
在实践教学内容方面对理论内容进行验证的实践教学环节占较大比例,而有利于培养应用能力的综合性、设计性实验等实践性教学比例偏少;
在实践教学安排上仍采取先理论,后实践的顺序来确定实践教学环节。特别是对实践教学内容、方法及过程与创新性应用型软件人才的培养目标是否相适应等问题的研究还相当不够。具体体现在:

(1)实践教学体系设置不够完善,缺乏对实践教学的过程管理,没有建立配套的质量监控与评价体系。

(2)对实践教学的认识不到位,存在着重理论,轻实践;重课内,轻课外的倾向,缺乏对实践教学内容的总体设计,实践教学的内容及形式陈旧。

(3)实践教学教学方法单一,仍旧采用以教师为主以灌输为主的教学方法,使学生的主观能动性、动手能力和创新精神的培养受到了很大的限制。

(4)不重视工程化思想的培养,普遍缺少对学生工程能力和职业素质的训练,没有很好利用先进的实践教学管理平台跟踪管理学生实践项目。

(5)实验设备和计算机专业教师严重不足,目前的实验室设备与管理模式已很难满足实践教学的要求,缺乏具备行业工程领域背景和国际化背景的高水平创新实践教学团队。

2.改革教学方式

在计算机科学与技术专业的四个专业方向中“软件工程”课程都是重要的专业必修课,该课程的教学效果直接影响到专业的发展,因此有必要从课堂教学、实验教学、实践教学这三个环节入手探索“软件工程”课程的一种新的教学模式。

2.1案例辅助教学

“软件工程”课程主要内容涉及指导软件开发的原理、方法、工具。若脱离了软件开发实践,这些原理、方法、工具会变得枯燥、难懂。在“软件工程”课程教学中引入案例辅助教学能有效地提高教学质量。课程中的每个重要知识点都应配备若干相关案例。在整个课程的教学中应有1到2个贯穿始终的综合案例。综合案例应为一个较为实际的软件系统的开发过程,包括问题定义、可行性研究、需求分析、总体设计、详细设计、编码、测试。综合案例中应包含各开发阶段中涉及的任务、技术、方法及工具。学生应在课余时间认真阅读案例,并进行分析,老师同步在课堂上讲授案例,然后学生在实验课中,按照案例中的步骤重视案例中的系统开发过程,最后总结归纳。

2.2实训式实验

实训式实验是通过实例演示及模拟、课堂练习、课后作业这三个环节使学生通过实验训练很好地掌握相关技术及方法。实训式实验包含如下三个环节:

(1)实例演示及模拟

每个实验,教师应先讲解实验步骤及要求。之后教师讲解并演示一个案例,在此过程中学生同步模拟每个实验步骤。教师做一步,学生跟一步,若有学生出现问题,教师及实验员应及时辅导使其能跟上大家的进度。

(2)课堂练习

案例讲解演示之后,教师应布置1到2个类似练习题学生参照前面所讲解的案例,按步骤完成这些练习。学生练习过程中教师应全程指导,实验课结束时学生应将实验结果以电子邮件形式发给教师,并书写实验报告。

(3)课后作业

实验课结束时,教师应布置一个相关作业,学生在课下参照教师讲解的实例及课堂练习完成作业,以巩固相关知识。

2.3综合实践

“软件工程”课程的教学中应注重综合实践环节的建设。综合实践环节包括以下三个方面:

(1)“软件工程”课程设计

“软件工程”课程应设置两周左右的课程设计。课程设计的目标是让学生体验软件开发的全过程,且学会与他人合作,培养团队精神。课程设计过程中,学生分成若干小组,每个小组选择一个项目,该项目的规模应与课程综合案例的规模类似。每个小组应完成项目的问题定义、可行性研究、需求分析、总体设计、详细设计这些阶段。各个小组由组长负责组织、分工、控制进度等,对小组成员的最终课程设计成绩有一定的分数浮动调整权;
组长带领全组顺利完成任务,总评可加一定分数。小组完成项目之后,应提交项目开发各阶段文档及课程设计报告。

(2)与其它课程的课程设计相结合

计算机专业的很多课程(如数据库原理、信息系统开发、数据结构、C语言等)的课程设计都与软件开发相关,可将这些课程的课程设计作为“软件工程”课程的辅助课程设计。在这些相关课程的课程设计中,可通过恰当地选择设计题目,将软件工程的原理、方法、工具应用于这些课程设计中,使学生体会到软件工程方法与各种软件开发的关系。

(3)与毕业设计相结合

计算机专业的毕业设计主要是进行实际的软件开发。目前毕业设计中学生一般面临全新的题目,设计过程中学生既要分析研究系统又要熟悉开发工具,这样很多学生会觉得头绪太多,忙不过来,最终不能完成一个理想的系统。鉴于此可将毕业设计作为“软件工程”课程设计的延续,延用课程设计中的分组,每个小组延用课程设计中的题目。由于课程设计时间较短,课程设计时各小组只进行了粗略并且简化的项目开发,在毕业设计的半年中,各小组可在课程设计的基础上进一步完善扩充已有成果,按照软件工程的步骤最终得到比较理想的系统。

参考文献:

软件课程设计总结范文第2篇

关键词 软件架构设计 案例 课程体系 实践

中图分类号:G420 文献标识码:A

Research and Practice in Case-centered Software

Architecture Design Course System

SHANG Jianga, ZHOU Shunping, FANG Fang, YUAN Guobin

(Faculty of Information Engineering, China University of Geosciences, Wuhan, Hubei 430074)

Abstract In the process of teaching software architecture course, because of abstract theories and lack of project experiences, college students feel lacking in flavor or interest in common. To begin with many teaching cases were constructed which can meet teaching and practice requirements and be shared with other software engineering courses. In this paper, we focus on research and practice in case-centered software architecture design course, which include the construction of teaching case resource database, the innovation of teaching content and methods, the relevant teaching system etc.. Also, we explore education mechanism cohering in studying in course, practice in experiment course, long-lasting extracurricular practice.

Key words software architecture design; case; course system; practice

0 引言

软件架构(也称软件体系结构)是一门源自于软件工程实践的学科,经过20 多年的发展,它已经成为大量复杂软件系统研发的核心,在现代软件行业中处于重要地位。作为一门在软件工程知识体系中提纲挈领的核心课程,“软件架构设计”是最能体现软件工程专业特色的课程,其教学质量直接关乎整个学科学生培养质量。然而因其涵盖面极为广泛,抽象程度高,对刚刚接触软件工程的学生来说难以理解和认同,使得传统的教学方法无法达到教学目的。

为了提高软件体系结构课程的教学效果, 我国不少高校都进行了软件体系结构或软件工程的课程建设和改革。为了使学生能够深刻领会和理解软件架构设计的思想和方法,在教学中普遍引入了案例,将复杂抽象的概念用具体案例进行解释,达到事半功倍的效果。但这些课程改革往往只是针对软件体系结构一门课程,并未考虑这门课与其他课程之间案例的共享和知识衔接问题。对于如何将教学、人才培养、科研有机结合,解决学生课堂上学习、实演课上练习、课下长期实践协调统一的培养机制问题缺乏深入研究。

本文针对上述问题,依托中国地质大学(武汉)教学研究项目“基于项目案例驱动的软件架构设计课程体系研究与实践”,以在该校开设的“软件架构设计”课程为对象,对案例为中心的软件架构设计课程体系进行了研究、探索。

1 课程特点与研究思路

1.1 软件架构设计课程特点

“软件架构设计”这门课是根据人们的软件设计经验总结出来的理论与实践相结合的课程。其主题是针对复杂软件系统的高层结构,组织元素之间的相互关系的描述,以及围绕这种描述开展的各项活动(如设计、评估、实现、管理、测试等),其关注的是系统大粒度(宏观)的总体结构(例如分层、子系统的划分等)。

软件架构的设计原则、技术、方法可以应用在不同的软件项目中,它们位于所有具体项目之上,针对全体软件项目,因而是抽象的。由于授课对象多是大三学生,项目开发经验有限,学生很难在头脑中将软件架构的抽象理论和实际联系起来,因此较难对这门课产生兴趣。在接受抽象的理论时,容易产生枯燥乏味的感觉。

软件中的一些质量要素经常是相互冲突的,即软件的质量要素之间既有正相关,也有负相关,因此在实际的软件系统设计过程中,必须根据具体情况对各种要素进行折衷与权衡,从而得到总体上满足用户要求的软件。怎么折衷和权衡,必须结合具体项目,根据项目的实际情况去把握,不能生搬硬套,对于习惯了套公式,寻求标准答案的中国学生而言这种需要更多交流和折衷考虑的学习实践在接受上有一定难度。

1.2 案例为中心的课程教学改革思路

案例教学以其独特的理念和模式在诸多学科和领域中得到了广泛应用。通过大量的案例分析,可以让学生更牢固地掌握所学的知识点;
从案例中分析各类软件系统架构设计风格的优缺点,可以让学生尝试提出相应的改进方案;
将软件架构设计教学必须与实际软件项目相结合,通过实践练习加强学生对软件架构概念和设计思想的理解,使他们有身临其境的感觉。

现代的软件开发尤其是大型软件开发多采用增量迭代、以架构为中心、用例驱动的软件开发方法,软件架构设计开发贯穿于软件生命周期全过程。因此,软件架构的教学内容与软件需求、软件测试、软件项目管理以及软件文档写作等课程紧密相关、甚至有部分重叠,教学中应针对不同课程的特点进行妥善安排,在教学内容上注意相关课程内容的相互渗透,并在课程之间合理复用包括案例在内的教学资源。但这种复用不能是简单的题目共享,既要考虑因不同课程教学目的和要求不同而导致的侧重不同,又要注意讲授课、实验课、实习的相互衔接。

我们针对“软件架构设计”课程教学实践中的问题,尤其是学生缺乏项目经验、实践安排不足等问题,从构建以满足软件架构设计课程教学实践为主并能兼顾其他相关课程教学案例和资源库出发,研究探索了基于项目尤其是实际项目的案例中心教学方法,强调课上与课下、教学与科研、抽象理论与实际应用的紧密结合,从而激发学生的学习兴趣,增强动手能力,为全面改进和提高软件工程学科的教学质量提供有益借鉴。

2 案例为中心的课程教学改革实践

我们本着“抽象与实践协调统一” 的教学理念,以软件产业人才需求为导向,走教学革新、人才培养、科学研究相结合的道路,围绕着案例建设、分析和运用,大胆探索实践了“软件架构设计”课程教学方法、课程体系和教学内容改革。如下图所示。

图 1 案例为中心的软件架构设计课程教学与实践研究框架

2.1 项目案例教学资源库建设

针对教学、实验、实习需要,通过教师科研项目、业界典型项目、学生团队项目等多渠道广泛搜集项目资料,整理、编写出符合学生接受能力的案例。对于教师科研项目资料主要选择近年来授课老师团队在科研开发工作中积累的软件系统开发经验、成果,业界典型项目主要选择典型商业软件和开源项目资料,学生项目主要用于问题分析使用。每个案例一般应包括案例简介、解决/设计方案、文献资料、架构文档、源码、构件库等资料,这些案例资料还将在以后的教学、实践中不断丰富、完善。此外,参考国内外高校、研究机构在软件架构教学和科研方面的最新研究成果,进一步完善了试题库、实习题库和文献资料库,力争授课时能将本领域最新的研究成果和前沿技术展示给学生,注重教学内容的丰富性和新颖性,追踪学科前沿。

通过系统研究上述教学资源的分类和编码,我们利用文献管理软件(如EndNote或NoteExpress)建立起可用于课堂教学、实验、实习的多源、多层次案例资源学习库,并通过引入SVN版本控制系统实现了对资料的版本控制、集中管理和网络共享,使得资料的使用可不受地域、时间的限制。例如针对数据流风格、过程调用风格、隐式调用风格等常见软件架构我们建立了经典的KWIC案例,针对事件驱动的软件架构建立了MessageIT、Rebeca、FAMOUSO等开源软件案例,针对C/S、B/S等流行多层软件架构建立了基于教师科研项目“城市三维地质信息系统”案例,所有案例源码一般都有Java和C++两种版本,供学生选择学习。

2.2 基于项目案例法的教学内容及手段创新

借助项目案例教学资源库,通过引入案例教学法,我们对原有教学方法、手段进行了一定程度的革新,改以前的单纯理论讲授为案例分析、研讨为基础的讲授,将知识点贯穿于案例中进行讲解,尽可能使所有架构知识都“落到实处”,触及具体案例、甚至代码,便于学生理解。由于有了案例做支撑,老师讲课更加自信,讲解也更透彻了,由于讲授中注重解决软件构架设计中的实际问题,学生普遍反映切实体会到了软件架构这门课的作用。通过课堂上案例讲解和指导学生完成一系列实验课练习和课下项目实训,让学生对构架分析和设计的方法、过程等产生了较深刻的感性认识。

对于本课程与软件工程其他课程的资源共享和衔接,课程实验及开发团队建设、课程考核方式方面我们也进行了探索。在本课程与软件工程其他课程衔接方面,通过让学生在不同课程(如软件需求、软件测试)中选择同一个题目来完成作业、实验、实习,既打通了不同课程知识体系之间的闭锁、实现了知识的融会贯通,又保证了学习质量。此外,我们还引导学生组成项目团队,通过参与教师研究课题、企业项目或进行兴趣研究等方式,获得更长期实践机会和锻炼。这种产学研结合培养方式,使得学生能有机会综合运用软件架构设计等软件工程方法、技术解决实际问题,将所学知识与社会需求相结合,又进一步激发了他们的学习兴趣。

3 总结与探讨

软件工程尤其是软件架构设计课程具有抽象程度高、强调工程实践的特点,在我们的研究中通过建立多源、多层次内容丰富的项目案例教学资源库,引入案例教学对教学方法和手段进行了一定程度的革新和改进。接下来,我们将会针对具体实施中存在的一些问题,修改、完善案例库结构和内容,进一步改革教学内容和教学方法,尤其是要加强软件架构课程与其他软件工程课程内容之间的深度衔接,探索案例资源库更大范围、更深层次共享服务的机制。

基金项目:中国地质大学(武汉)校级教学研究项目“基于项目案例驱动的软件架构设计课程体系研究与实践”(编号:2010B21)

参考文献

[1] 覃征,邢剑宽.软件体系结构课程教学:抽象与实践的协调与统一[J].中国大学教学,2009(7):14-15.

[2] 陈长清.软件体系结构课程教学探讨[J].教育与教学研究,2008(22):134-135.

软件课程设计总结范文第3篇

关键词:软件过程改进;
教学模式;
教学改革

中图分类号:G642

文献标识码:B

文章编号:1672-5913(2008)06-0041-03

1软件过程改进体系简介

为了使学生了解、掌握软件过程改进的相关问题,尤其是CMM、PSP和TSP的核心问题与实际运用方法,使学生成为软件行业的合格从业人员,我校为计算机科学与技术专业软件工程方向的学生开设了“软件过程改进”这门课。软件过程改进强调软件开发过程的规范化、标准化、可视化、文档化,进而软件过程的高效化。软件过程改进的整体框架主要包含以下四方面的内容。

(1) 软件过程改进架构:为支持过程必须具有两种类型的架构,分别是组织及管理方面的架构和技术方面的架构。

(2) 软件过程改进规划图:它指定一个所采用的软件过程模型,并且规划出实现高效软件过程的行动步骤。

(3) 软件过程评估方法:它指出对组织当前软件过程、活动以及架构进行评估所采用的方法及技术。

(4) 软件过程改进计划:为进行软件过程改进,根据评估所发现的问题,有针对性地制定出相应的改进方案。这四部分的相互关系如图1所示。

图1 软件过程改进的框架

按照软件过程改进的实施范围的不同软件过程改进又分为个人软件过程改进(PSP)、团队软件过程改进(TSP)和组织软件过程改进,组织软件过程改进的代表为CMM。三者之间的关系如图2所示。

图2 PSP、TSP和CMM之间的关系

2“软件过程改进”课程的教学模式

2.1课程的总体安排

按照软件过程改进的体系框架,结合计算机科学与技术专业特点和培养计划的总体安排,该课程设为计算机科学与技术专业软件工程方向的专业课,课程性质定为必修,总学时48,其中理论学时32,实验环节学时16。通过本课程的学习使学生了解软件过程改进的必要性和可行性,学生应掌握软件过程改进的相关概念、原理和方法,并能在软件开发过程中运用软件过程改进的方法,尤其是个人软件过程改进方法,以改善和提高软件的质量,同时提高学生开发高质量软件的能力和从业素质。

2.2教材的准备

由于软件过程改进的提出与形成也就是十年的时间,而把它作为课程在大学中进行讲授的时间就更晚了,在国内大学的本科生中开设该课程也就是近几年。目前国内出版关于软件过程改进尤其是介绍CMM的书较多,但是可作为教材的却较少。原因在于这些书有些是从培训的角度介绍软件过程改进的相关内容;
有些就是专门介绍CMM,相当于CMM的手册;
有些比较泛泛地介绍软件过程改进的相关理论;
有些专门针对个人软件过程或团队软件过程进行介绍等等。

按照教学大纲的要求,我们选择了几本典型相关书籍,把所需要的相关内容进行了改造和融合,再参考网上的资料,编写了一本内部讲义作为教材。

2.3理论课的安排与实施

按照教学大纲的要求和对理论课学时的规定,我院对理论课教学内容和学时做了较合理的安排。理论课教学安排了五大部分的内容。

第一部分:软件工程回顾。主要内容包括软件工程概念、需求分析、分析建模、软件设计、软件编码、软件测试和软件维护。重点强调软件开发过程中的文档,因为文档体现的是开发过程的可视化,只有可视化才能发现缺陷,进而修复缺陷。这部分主要是复习,特别强调了文档的重要性和编写,分配了6个学时。

第二部分:软件过程改进与管理简介。主要内容包括四部分:过程思想和软件过程改进框架的软件过程架构、软件过程改进规划图、软件过程评估,以及软件过程改进的行动计划。本部分重点强调过程的思想和有效的过程以及软件过程改进框架的构成,使学生了解软件过程改进的着手点。这部分内容较少,分配了4个学时。

第三部分:个体软件过程简介。主要介绍个体软件过程概述、个体度量过程、个体规划过程和个体质量管理过程。本部分重点强调个体度量的方法、个体规划的方法和个体质量管理的方法,通过个体软件过程改进如何提高个人技能,从而提高个人开发软件的质量。这部分与培养学生的个人技能关系密切且实用性强,还有相关的实验,分配了8个学时。

第四部分:团体软件过程简介。主要内容包括TSP小组的建立过程、操作过程、工作流程,TSP的结构,TSP的启动和TSP的质量管理。本部分重点强调TSP小组建立的原则、方法和工作流程,以及TSP的启动和质量管理。旨在使学生了解TSP的小组的重要性,使学生懂得团队的重要性和自己在团队中的角色与作用,从而提高团队的工作效率和工作质量。这部分内容较少,但目前软件企业进行项目开发时都是以团队为单位进行的,应重点关注,因此分配了6个学时。

第五部分:软件能力成熟度模型简介。主要介绍CMM中成熟度的五个级别、各级别的特征和过程能力,CMM的内部结构,CMM的使用,基于CMM的过程评估,以及SEI成熟度问卷、SEI辅助评估过程和SEI的软件能力评价。这部分主要强调关键过程域和CMM的使用,旨在使学生了解如何用CMM指导软件开发、提高软件质量、符合国际规范,如何用CMM进行评估和评价软件企业。这部分内容较多,企业中应用广泛,因此分配了8个学时。

2.4实验课的安排与实施

软件过程改进是一门实验性很强的课程,无论是CMM还是TSP或PSP都可进行相应的实验。但是对于大学本科生来说,进行CMM试验难度较大,原因是环境和条件的限制,因而这部分实验可操作性不强,不考虑在教学计划内。TSP是以团队为单位进行软件项目开发,这部分的实验应与实践环节中的IT项目实践结合进行。因为与PSP相关的内容的实验规模小、可操作性强,因此与理论课同时进行的实验课的主要内容就是与PSP相关的内容。实验课主要分四部分内容进行。

第一部分:软件工程实践。按软件工程的理论和方法,开发一个小的软件,重在熟悉软件开发过程和撰写相关文档。

第二部分:个体度量实验。在开发软件过程中进行软件度量,主要进行时间和缺陷度量,按PSP0过程中的相应脚本进行,主要是填写完整的时间日志和缺陷日志。

第三部分:个体规划实验。根据第一部分实验的结果,利用PROBE估算方法进行时间和规模估算,根据估算的结果制定开发计划。

第四部分:个体质量管理实验。在开发软件过程中进行设计评审和代码评审,具体操作方法是按代码评审脚本进行代码评审并填写代码评审检查单,按设计评审脚本进行设计评审并填写设计评审检查单。

本课程实验可以单独进行,可以同其他软件课程(如数据库课程、操作系统课程、编译原理课程等)的实验结合进行,把本课程的实验思想和方法融合到其他课程的实验中。

软件课程设计总结范文第4篇

关键词:多元教学模式;
软件工程;
案例教学法

作者简介:司春景(1981-),女,新疆阿拉尔人,塔里木大学信息工程学院,讲师;
李向阳(1973-),男,新疆阿拉尔人,塔里木大学信息工程学院,副教授。(新疆 阿拉尔 843300)

基金项目:本文系塔里木大学本科质量工程特色专业“计算机科学与技术”(项目编号:20090627)的研究成果。

中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)07-0098-03

“软件工程”是一门指导计算机软件系统开发、维护和管理的学科,主要利用工程概念、原理、技术和方法,将现代技术方法和正确的管理技术相结合,重点研究应用软件开发的基本理论和工程技术来指导软件系统的开发、维护和管理。“软件工程”课程是学生参加工作以后最能直接应用的一门专业核心课,它要求做出一个满足用户要求的系统,这是一个很具体的实践过程,具有很强的工程和项目背景。[1]

一、传统教学模式的问题

“软件工程”是计算机专业学生的一门基础必修课。在目前的教育体系下,大学生学习知识的主要途径是教师讲授。传统的“软件工程”课程教学模式在理论教学方面重视基本知识的教授;
在教学原则上强调教学的直观性、系统性和巩固性;
在教学方法上强调学生预习、教师讲授和学生反复复习记忆;
在教学组织形式上则选用“填鸭式”教学。这种强调知识的单线注入和忽略学生思维训练的方法,不能很好地调动学生的学习主动性,不能起到很好的学习效果。当前高校软件工程课程教学中存在以下突出问题:

1.教材重理论轻实践

对于没有任何大型软件开发经验或参与开发的高校本科生,如果教材只关注软件工程理论的讲解,包括软件开发模型、分析和设计方法等,则学生无法将理论联系实际,所学内容不知所云,更无法在日后发展中将理论与实际相结合。

2.实践教学缺乏系统性和针对性

目前许多高校“软件工程”课程除了理论讲解外,也加入了实践教学部分。往往受学时所限,实践分为软件项目若干设计文档的编写和软件工程工具的实验练习。前者受缺乏相应的开发环境、教师虚拟客户不能很好地反应现实需求、理工科学生的文字表达能力不足等因素的影响,设计文档的编写不能很好提高学生能力;
后者在一定程度起到了一定的作用,但对于培养学生分析问题、解决问题、管理和团体协作能力方面仍显不足。

3.评分模式单一

软件工程采用了传统的闭卷考试方式,平时成绩占总成绩的30%,期末考试占70%。平时成绩=上课出勤情况(10%)+实验完成情况(10%)+作业完成情况(10%)。任课教师通过对不同的考核内容赋予不同权重来评价学生对软件工程课程的掌握情况,主要考核学生对课程基本知识的理解。此方法不足以提高学生实际动手的能力,更不利于激发学生实际软件设计开发的兴趣。

二、现有的教学方法的分析

针对上述问题,从事软件工程的相关教师从不同角度,对软件工程课程进行了改革。归纳起来主要有如下几种教学方法改革:

1.自底向上教学法在“软件工程”课程中应用

授课方式主要是用倒叙的方式贯穿完整案例(包含警戒案例),以启发、讨论、辩论的形式讲授软件工程的原理、方法及过程,使学生不觉生疏,易接受,又符合IT从业人员的工作进程。[2]

2.模块化教学法在“软件工程”课程中的应用

在尊重教学规律和学生个性发展的原则上,根据课程体系和内容之间的关系,将教学部分划分为若干独立的模块,确定模块之间的关联,针对不同的教学计划要求,采用不同的模块组合有选择地进行讲授和学习。[3]

3.案例教学法在“软件工程”课程中的应用

软件工程案例教学是根据“软件工程”课程的教学目的和学生培养目标要求,教师选用相应的案例作为基本素材,引导学生对案例进行调查、思考、分析、讨论、设计、开发和交流等相关活动,在活动中教授学生软件工程的原理、方法及过程,进而提高学生分析和解决问题的能力,加深学生对基本理论知识的理解和掌握。[4]

4.项目驱动教学法在“软件工程”课程中的应用

项目驱动教学法是案例教学法的基础上采用“案例导向、项目驱动”的教学方法。首先,教师根据要讲授的理论知识预先准备一个或者多个小的软件开发项目;
然后,将学生作为主体,以软件开发项目的研发过程为引导,采用学生小组团队合作和学生个人独立完成相结合的教学形式,组织学生开展集体讨论并完成相应的实践性活动,在研发过程中同学和老师要对每位学生所完成的每个阶段任务加以点评、督促改进、分享经验等;
最后,学生将成功的软件给予演示。[5]

5.三位一体式教学法在“软件工程”课程中的应用

根据学生的认识特点和该课程自身的特点以及对“软件工程”课程在计算机科学专业的定位、教材的选取、课程培养目标的分析下,采取以综合能力培养为中心、项目实践为标准,模板、案例、指导说明为辅助的三位一体式的教学思路。[6]

对目前在“软件工程”课程改革中应用的五种方法针对改革侧重点进行汇总发现(见表1),单一的教学方法只是在理论教学、实践教学和考核方式某一方面发挥了很好的作用,而不能从全面发挥效果,而对于“软件工程”课程来说三者同样重要。

三、基于多元教学法的课程改革新模式

某一种教学模式改革已经不能满足现代“软件工程”课程教学的要求,只有将多元教学模式组合在一起,充分考虑各自对课程教学的优势,避其缺点,找到一种既能使学生具有良好的理论基础,又能充分培养学生实践能力,还能准确地考核学生的教学模式。本次课程改革就是本着这样一种思想,从理论教学、实践教学和考核方式三个方面进行多样化改革。

1.理论教学内容多样化

理论知识的学习在学生以后软件项目开发过程中具有必要性和重要性,软件工程学习过程中要重视基础和基本技能的培养。学生要具有开发软件项目的能力,首先要熟悉掌握软件工程相关的理论知识,特别是对如何按照工程化的方法系统地设计、实现、测试和维护大型软件,内容包括:软件开发的基本理论、方法和技术;
其次是了解目前已有系统、工具和技术。

(1)授课内容引入案例。教师在教学过程中引入与理论知识相匹配的实际案例,将比较抽象的软件工程原理、方法和技术转为具体生动的案例进行诠释,增强理论教学的艺术性、科学性、趣味性、形象性,使学生能够在课堂上深刻领会和理解软件工程的思想和方法,教学效果收到了事半功倍。

(2)适时更新教学内容。近几年,软件原理、方法和技术发展较快,许多适应时展的软件不断涌出,而目前的教材虽不断改版更新,但其更新的速度远远跟不上软件工程的发展。因此,教师在进行理论讲解时,除了要教授学生基本原理、技术和方法外,还要时刻关注新内容的出现。

(3)制作丰富多彩的课件。采用多媒体教学手段,在课件中插入图片、动画、声音、视频等多媒体元素,使教学内容更加充实和生动。

(4)课堂小组讨论。从小问题到大问题,让学生参与教学过程,有机会发表自己的看法。课堂讨论和分析试验,使理论有实践作支撑,抽象的知识变得看得见,用得着,大大激发学生学习的兴趣和自信。

2.实践教学内容多样化

软件工程理论的讲解是课程学习和技能培养的基础,而软件工程中许多理论内容如果只是教师讲解不加以实践,内容本身就会变得空洞和不可理解,例如:软件复杂性计算、软件可靠性与安全性的测量标准、结构化的实现方法等都需要学生动手实践才能更好地理解知识本身的内涵。掌握概念、原理、方法和技术,熟练应用软件开发实践中的方法和技术是“软件工程”课程对学生的培养目标。

(1)课程角色扮演。教师预先选择若干小项目,班内学生根据自己对项目熟悉情况选择项目名称,划分项目小组,每组人数不超过6人,每个项目小组成员根据自身特长选择不同软件工程角色,例如项目负责人、需求分析负责人、设计负责人、编码负责人、测试负责人和用户代表,进行项目分工。项目组成员按时完成自己负责任务,撰写相应文档。教师帮助学生分析和解决所遇到问题。在整个开发过程可以体现“学以致用”的思想,实现理论与实践相结合。

(2)课程设计。课程设计主要是针对高年级学生在学习软件工程课程时开展的专项训练。课程设计采取在学校内模拟IT企业环境下完成来自企业案例或开发一些具有应用价值项目或学校教师承担的开发项目的部分开发工作,也可以是学生自选项目,整个课程设计阶段严格按照工程实施的基本思想来实施。

(3)加强校企合作。一方面经常邀请软件公司长期从事软件设计、开发和项目管理的工程师和项目经理,给学生讲解自己在软件设计、开发和管理中的经验,高质量软件产品需要经过怎样的开发过程,软件生命周期中标准文档如何撰写等相关内容;
另一方面,利用寒暑假时间,让学生走出去,到软件产品的研发单位实地实习。

3.考试方式多样化

传统的考核方式已经不能反映学生实际软件开发的水平,也与多样化的教学模式不相匹配,为此多样化的考核方式才符合现实需求,主要包括:笔试、课后角色扮演、课程设计和项目总结。

(1)笔试占总成绩的35%,主要考查学生理论知识的掌握情况和学习效果。

(2)课后角色扮演占总成绩的15%。由教师根据每位学生在课后角色扮演中的具体表现进行打分,主要由3部分取平均值组成:1/3*(整个项目的成绩+自己负责完成的文档成绩+组内其他成员负责完成的文档的平均成绩)。

(3)项目总结或心得体会占总成绩的15%。根据学生在软件开发过程中所撰写的经验和教训总结报告、每个小组成员建立的个人开发记录或日志的实际情况,相互打分。

四、基于多元教学模式课程改革方案

基于上述改革理念,按照软件工程开发原理、方法和技术,选用典型项目案例,将学生按照项目分成若干个小组,每组人数不超过6人。每个小组对应着一个具体的项目,每个人对应着一个具体工作过程,按照如下步骤进行多元教学。

第一步,教师选用合适的教学内容,制作丰富多彩的课件,对学生进行基本理论和基本技能的讲解。在每一个软件生命周期结束后,教师进行案例场景描述。教师按照理论知识的内容,选择相应的案例进行描述,学生将所学内容运用到相关案例中。教师通过案例让学生明白理论知识如何应用,学生通过案例体会到小项目中所学的原理、方法和技术是如何实现的。

第二步,课后角色扮演。学生通过分组讨论的方式,完成项目分工,明确自己在项目中所扮演的角色。所有的任务通过集体讨论的方式,决出所要完成的任务,并由相应的角色人实际操作完成。例如,需求分析一章内容,学生课后进行项目小组讨论,决定需求分析的内容,进行相应的需求分析,并由扮演需求分析人员的学生完成需求报告。软件开发过程需要整个团队的通力合作,根据学生的性格、表达能力、开发能力、理论基础掌握情况等方面进行人员分组,将具有不同特点的学生组成一个团队完成项目开发。这种团队合作的方式,既能发挥学生各自的特长,又能培养学生的团队合作精神。

第三步,课程设计。当全部内容讲解完成,就可以开始长达2周的课程设计内容了。这段时间要求项目小组,彻底完成一个由教师虚拟的项目。此步骤中,主要培养学生良好的科研习惯,在开发过程中及时总结经验和教训,建立个人开发记录或日志,理论联系实际学着开发软件。

第四步,学生总结,教师点评。学生经过多个教学环节后,每个团队在一定程度上完成了各自的项目任务,对各自团队的成果进行总结。教师听取每个团队的汇报后,从横向和纵向两个方面对项目成果之间进行比较,从而让每一位学生明白自己在团队中发挥了什么作用,自己哪些方面不足。

第五步,请进来,走出去。通过学校和企业合作的方式,一方面经常邀请软件公司长期从事软件设计、开发和项目管理的工程师和项目经理,给学生讲解自己在软件设计、开发和管理中的经验,高质量软件产品需要经过怎样的开发过程,软件生命周期中标准文档如何撰写等相关内容;
另一方面,利用寒暑假时间,让学生走出去,到软件产品的研发单位,实地实习。

五、结束语

在多元教学过程中,理论教学利用多媒体PPT充实了课堂内容,小组讨论调动了学生积极性,不断更新的教学内容跟上了发展,以及启发式的案例教学提高了学生的能力;
实践教学从课后角色扮演、期末集中时间课程设计,到寒暑假校企实习,整个过程依据软件工程思想逐步的从小角色的扮演,团结合作做一个虚拟项目,到真正到软件公司去实习工作,提高了学生的语言表达能力、分析问题能力、实践动手能力和软件工程协作、纪律等。考核方式不再是单一的方式,除了考查基本理论的掌握情况,还考核学生是否已经具备了一定的动手能力和科研能力。从理论教学、实践教学和考核方式三个方面进行多元教学,按照方案进行实施,强调动手能力,将工作过程的职业环境融入学习过程中,将学生对知识、职业能力的掌握程度提高到了实践这一层面,使得学生能真正进入到“在学中做,在做中学”的理想学习环境中。

参考文献:

[1]张海潘.软件工程导论[M].第五版.北京:清华大学出版社,2008.

[2]温春友,敖广武.对软件工程课程自底向上教学模式的探索[J].辽宁高职学报,2008,(3):27-28.

[3]孙知信.软件工程课程模块化教学改革的实践与思考[J].南京邮电学院学报(社会科学版),2004,(2):39-42.

[4]彭佳红,彭佳文,等.基于案例的软件工程课程教学研究[J].高等农业教育,2009,(11):60-62.

软件课程设计总结范文第5篇

关键词:双语教学;软件工程;计算机专业;独立学院

中图分类号:G642 文献标识码:A

1引言

由于软件国际化和本地化研发、国际交流和学习先进计算机开发技术的需要,英语在IT行业的地位越来越重要。重点和一般本科院校的计算机专业普遍开设双语课程,以达到提高学生的英语应用能力的目标。

软件工程学科涵盖软件开发、维护和管理的基本概念、基本原理、开发软件项目的工程化方法和技术以及开发过程中应遵循的流程、准则、标准和规范等。因此,在软件工程课程实施双语教学,能够有效地规范课程、革新教法、重新定位培养目标和改善教学效果,实现计算机软件专业人才培养进入国际化轨道。

目前,大多数独立学院都开设了计算机专业,独立学院的人才培养基本目标是培养创新应用型本科人才,因此,在独立专业教学中开展双语教学是大势所趋。独立学院计算机专业学生的英语水平与重点或者一般本科院校学生的相比有较大差距,开展双语教学时面临一些新问题。

某独立学院在2007年春季学期对2004级计算机专业软件工程课程进行双语教学改革,总结经验教训后,决定在2008年春季学期对2005级计算机专业软件工程课程恢复普通教学。本文介绍了具体情况。

2教学目标

软件工程课程教学的主要目的是使学生通过课程学习掌握开发高质量软件的方法、有效管理软件开发活动并为参加大型软件开发项目打下坚实的理论基础。课程教学

包含课堂教学、实验教学和课程设计三个环节。课堂教学侧重于讲授软件工程的相关原理和概念;实验教学要求学生了解并掌握常用软件开发工具;课程设计主要通过适当规模的软件系统的需求分析、设计、实现、测试与部署,培养学生软件工程实践能力、遵循软件工程规范撰写软件开发文档的能力、团队协作精神和软件项目管理能力。

3教学实施

3.1基本情况

该学院计算机专业2004级和2005级学生人数、通过大学英语四级考试人数和第一次问卷调查时学生对双语教学持赞成态度的比率、Java与数据结构课程的平均成绩见表1。另外,2004级和2005级分别有24%和20%的学生在软件工程课程开课前参加了IT培训机构举办的软件设计培训。笔者此前担任这两个年级Java、数据结构课程的教学,试卷难度和知识覆盖情况基本保持一致。

上述基本情况表明两个年级学生的平均水平不显著。

3.2双语教学

课堂教学选用Ian Sommerville编著《Software Engineering》(Eighth Edition),参考教材为该教材的中译版。课程实验与设计教学采用自制的讲义。

该学院计算机专业人才培养计划规定,软件工程课程课堂教学是40学时、实验课时16学时、课程设计40学时(2周×5×8)。2008年春季学期的软件工程教学依然沿用该教学计划。2004级和2005级软件工程课堂教学均采用案例教学法,课程实验内容与课程设计的课题要求基本相同。

开展双语教学前,我们得到学院教务管理部门的大力支持,但未与学生协商。开课时,学生曾不愿意领发学院订购的《软件工程》教材,原因是学生担心教材看不懂和主讲老师会中途放弃该教材而换用其他教材。经过细致的解释工作,80%的学生领购该教材,20%的学生购买中译本。

在教学过程中,及时根据学生反馈调整教学形式。因多数学生感觉不适应“英语讲授+英文教案”形式,第9~20学时,调整成“汉语讲授+英文教案”形式;第21~34学时,调整成“汉语讲授+英文教案(中文对照)”形式;第35~3时,以小组为单位,学生报告自学教材部分章节。第40学时,点评学生自学情况和课程总复习。作业以中文或英文方式完成。

3.3普通教学

计算机专业课程教学中,专业课程教育应当是主线,“双语教学”只是给学生提供一个应用英语的机会,英语只是一个载体,实质还是应当培养学生掌握计算机专业的知识和技能。根据2005级计算机专业学生的基本情况和2004级双语教学的经验,我校2005级软件工程课程教学是采取普通教学形式。

教材采用《软件工程理论、方法与实践》(孙家广主编)。课堂教学课时安排和实验教学内容与2004级的基本相同,课程设计教材选用韩万江主编的《软件工程案例教程》。

3.4教学效果评价与分析

以两个年级工程课程的笔试成绩为依据,评价双语教学与普通教学的教学效果。自制试卷时,确保两个年级的试卷覆盖知识点和难度相同。被考察知识点分布、课时分配、平均成绩( , 表示第 个学生的成绩)和均方差( )见表2。第一列A~J分别表示概述、软件过程、需求工程、面向对象基础、面向对象分析、面向对象设计、软件实现、软件测试、项目管理各章和课程设计。“总计”行依次是总学时、总分、2004级和2005级的平均成绩、均方差。

表2中2005级的平均考试成绩比2004级的高,且均方差比2004级的小。显然,采取普通教学方式教学效果更好。

课程结束时进行第二次问卷调查(表3)。由表3可知:2004级使用英语教材的学生因为英语基础差,大部分精力浪费在对教材中的英语词句的理解上,平均每次课的复习时间比2005级学生多花费0.76小时;在回答对双语教学是否支持问题时,2004级计算机专业60%的学生赞成在专业课程教学中采取双语教学形式,比2005级的高。表明2004级学生在经历过双语教学后,清楚地认识到专业英语方面的差距,具有提高英语水平的强烈需求;两个年级有超过70%的2004级学生建议提前C/C++和Java语言程序设计等课程开展双语教学;近六成的学生建议“计算机导论”进行双语教学。2005级课程设计的教学效果好的主要原因是,他们能够在课余根据课程指导设计教材,进行自主学习。

4解决方案

独立学院确定在计算机专业课进行双语教学时需要重视如下问题:

(1) 应该对初次开设双语课程的学生进行双语教学的实质、教学形式以及意义等宣传,让学生从思想上与老师保持一致,这才有可能在教学过程中达到教学相长。

(2) 应尽力避免学生将主要精力浪费在对英语语句的学习方面。在双语教学前,需对学生进行英语水平调查,如果学生普遍英语水平不高,建议慎重考虑选择双语教学。

(3) 在开展计算机专业课程(如软件工程等)双语教学之前,建议在“计算机导论”、“C/C++”或“Java程序设计”等先导课程中先开展双语教学,并在第一学年第二学期开设专业英语选修课,以提高学生的专业英语阅读和应用水平。

(4) 应根据学生的实际英语水平灵活选择“汉语讲授+英语教材+中、英文作业”、“汉、英讲授+英语教材+中英文作业”或者“英语讲授+英语教材+英文作业”等形式。

推荐访问:课程设计 软件 五篇 软件课程设计总结【五篇】 软件课程设计总结(精选5篇) 软件课程设计报告总结

版权所有:耀景文档网 2012-2024 未经授权禁止复制或建立镜像[耀景文档网]所有资源完全免费共享

Powered by 耀景文档网 © All Rights Reserved.。备案号:鲁ICP备12016148号-1