软件工程深度学习实践教学模式
- 格式:doc
- 大小:27.50 KB
- 文档页数:8
第1篇一、引言随着计算机技术的飞速发展,软件工程已经成为我国高等教育中一门重要的专业课程。
为了提高学生的实际操作能力和综合素质,我校软件工程专业积极开展教学实践活动,通过项目驱动、实践环节等多种方式,让学生在理论知识与实际应用之间架起桥梁。
本文将对我校软件工程教学实践情况进行总结和分析,以期为进一步提高教学效果提供参考。
二、教学实践内容1. 项目驱动教学项目驱动教学是一种以项目为核心,通过学生自主完成项目来学习知识、提高技能的教学模式。
我校软件工程专业在教学中,选取了具有代表性的实际项目,让学生分组进行实践。
(1)项目选取:根据课程大纲和教学目标,选取具有代表性的项目,如:企业资源计划(ERP)、电子商务平台、移动应用开发等。
(2)项目实施:教师引导学生进行项目需求分析、系统设计、编码实现、测试与部署等环节,使学生全面掌握软件开发流程。
(3)项目评价:通过项目答辩、代码审查、团队协作等方面对学生的项目进行评价,提高学生的综合能力。
2. 实践环节实践环节是软件工程专业教学的重要组成部分,旨在培养学生的动手能力和团队协作精神。
(1)实验课程:设置实验课程,让学生在实验过程中掌握软件工程的原理和方法,如:数据结构、算法设计、数据库管理等。
(2)课程设计:组织学生进行课程设计,让学生运用所学知识解决实际问题,提高设计能力和创新能力。
(3)毕业设计:指导学生完成毕业设计,培养学生的独立思考、创新意识和实际操作能力。
3. 校企合作校企合作是提高软件工程专业教学质量的必要途径。
我校与多家企业建立了合作关系,为学生提供实习和就业机会。
(1)企业实习:组织学生到企业进行实习,让学生了解企业需求,提高实际操作能力。
(2)就业指导:邀请企业专家进行就业指导,帮助学生了解就业形势,提高就业竞争力。
三、教学实践效果1. 提高学生的实践能力通过项目驱动教学和实践环节,学生的动手能力和实际操作能力得到了显著提高。
学生在项目实施过程中,学会了如何分析问题、设计解决方案,并能够独立完成软件开发任务。
校企深度融合的软件工程专业实践教学体系构建与实践全文共四篇示例,供读者参考第一篇示例:校企深度融合是当前高等教育领域的热门话题,软件工程专业作为信息技术领域的重要学科之一,更是需要与企业深度融合,以此促进学生实践能力的培养和专业素质的提高。
本文将从软件工程专业实践教学体系构建与实践的角度出发,探讨校企深度融合对于软件工程专业实践教学的重要意义,并结合具体案例分析,提出一些建议与思考。
校企深度融合对软件工程专业实践教学的意义不言而喻。
传统的教学模式注重理论知识的传授,而对实际问题的解决能力、团队协作能力、创新能力等方面的培养较为薄弱。
而校企深度融合则可以为学生提供更加真实、贴近实际的实践环境,让学生在实践中学习、在实践中成长,培养他们的实践能力和综合素质。
在构建软件工程专业实践教学体系时,应当充分考虑校企深度融合的机制。
与企业合作开设实践课程、创立实践基地、开展实习实训项目等,都是促进校企深度融合的有效途径。
还可以结合企业需求,开展项目合作、科研合作等活动,使教学内容更贴近实际需求,提高学生的就业竞争力。
在实践教学过程中,学校和企业需要形成紧密的合作关系,共同为学生提供更好的实践环境和支持。
学校可以通过建立专业实践教学中心、设立导师制度、完善实践评价机制等措施,提升实践教学的质量和水平。
而企业则可以提供实际项目、技术支持、导师指导等资源,共同推动学生的实践能力培养。
在实践教学的具体实践中,我们可以以合作项目为例进行分析。
以某软件企业开发项目为实践课程的教学内容,学生在实践项目中扮演各种角色,负责需求分析、设计开发、测试维护等工作。
通过与企业的深度合作,学生不仅可以学到相关理论知识,更能在实际项目中锻炼自己的实践能力和解决问题的能力,提高团队协作和沟通能力,为将来的职业发展奠定坚实基础。
在校企深度融合的实践教学体系构建中,我们还应注意解决一些问题与挑战。
比如教育资源不均衡、企业与学校理念不同、师资力量不足等问题都会影响校企深度融合的实践效果。
实践贯穿始终的软件工程教学模式摘要:软件工程是一门实践性较强的课程。
针对课程的特点和本科阶段教学的重点,提出以实际应用为主导的教学改革方法,通过开展课堂教学改革、校园创新实验室、校外实习基地、课外实践等一系列以实践贯穿始终的若干教学活动,提高学生学习的积极性。
关键词:软件工程;实践;教学改革软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义:1)Barry Boehm给出的定义:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。
2)IEEE在软件工程术语汇编中的定义是:①将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;②在①中所述方法的研究。
3)Fritz Bauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。
4)《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。
软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。
其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。
目前比较认可的一种定义是:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验且证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
学生对软件工程课程的理解与掌握程度将直接影响学生毕业后软件开发能力和项目管理能力,同时因为该课程的抽象性和实践性强的特点,常规的教学方法和实践模式使学生无法真正理解与掌握软件工程的精髓,更难以做到学以致用。
笔者看来,本科阶段软件工程教学的重点在于学习经过时间考验且证明正确的开发方法、管理技术等。
首先,要让学生深刻意识和体会到软件工程对实际软件项目的指导作用;其次,学生要掌握相关的理论、方法和技术。
软件工程实践教学方法探讨软件工程实践教学是培养学生软件工程实践能力的重要环节,也是教学改革的重要内容之一。
由于软件工程实践内容庞杂、理论与实践紧密结合,教学难度较大。
本文将从课程设置、教学内容、教学方法三个方面对软件工程实践教学进行探讨。
首先是课程设置。
软件工程实践教学应该与软件工程理论课程相结合,理论与实践相互渗透,形成有机的整体。
课程设置应注重培养学生的实践能力,包括项目管理、需求分析、设计、编码、测试、维护等方面的能力。
应根据学生的实际情况,设置合适的课程难度和学时,使学生能够逐步掌握实践技能。
其次是教学内容。
软件工程实践内容繁多,教学应以培养学生的综合能力为目标,注重理论与实践的结合。
可以通过案例分析、项目实战等方式,将理论知识与实际问题相结合,引导学生进行深入思考和综合应用。
教学内容应贴近实际,注重解决实际问题,培养学生的动手能力和解决问题的能力。
最后是教学方法。
软件工程实践教学需要灵活运用多种教学方法,如讲授法、案例分析法、项目实战法等。
教师应灵活运用不同的教学方法,根据学生的实际情况和不同的教学内容,采用不同的教学手段。
教师应重视培养学生的团队协作能力,鼓励学生积极参与课堂讨论和实践活动,加强学生之间的合作与交流。
软件工程实践教学是培养学生软件工程实践能力的重要环节,需要关注课程设置、教学内容和教学方法。
通过合理设置课程,注重培养学生的实践能力;通过贴近实际的教学内容,培养学生的动手能力和解决问题的能力;通过灵活运用多种教学方法,激发学生的学习兴趣和参与热情。
只有如此,才能更好地提高学生的软件工程实践能力,培养适应社会发展需求的高素质软件工程人才。
第1篇摘要:随着信息技术的飞速发展,软件工程已经成为我国高等教育中不可或缺的专业之一。
本文从软件工程教学实践的角度出发,分析了当前软件工程教学存在的问题,提出了相应的改进措施,旨在提高软件工程教学质量和学生的实践能力。
一、引言软件工程是一门研究软件开发过程中涉及的理论、方法、工具和过程的技术学科。
在我国,软件工程教育起步较晚,但近年来发展迅速。
随着我国信息化建设的不断推进,软件工程人才需求量逐年增加。
因此,提高软件工程教学质量和学生的实践能力成为当前教育工作者亟待解决的问题。
二、当前软件工程教学存在的问题1. 理论与实践脱节目前,部分高校的软件工程教学过于注重理论知识传授,忽视实践环节的培养。
学生在课堂上学习到的知识无法直接应用于实际项目开发中,导致理论与实践脱节。
2. 课程设置不合理部分高校的软件工程课程设置不够合理,课程内容与实际需求脱节。
同时,课程之间缺乏衔接,导致学生学习过程中难以形成系统性的知识体系。
3. 教学方法单一目前,部分高校的软件工程教学仍采用传统的讲授式教学方法,学生被动接受知识,缺乏主动性和创新性。
4. 实践教学环节薄弱软件工程实践教学环节是培养学生实践能力的关键。
然而,部分高校的实践教学环节薄弱,实验设备不足,实践项目单一,无法满足学生多样化的实践需求。
三、软件工程教学实践改进措施1. 强化实践教学(1)优化实验课程设置,增加实验课时比例,提高学生动手能力。
(2)引入实际项目案例,让学生在实践中学习软件开发流程和方法。
(3)加强校企合作,为学生提供实习机会,让学生在实际工作中锻炼自己。
2. 优化课程设置(1)根据市场需求,调整课程设置,增加与实际应用相关的课程。
(2)加强课程之间的衔接,形成系统性的知识体系。
(3)引入前沿技术课程,拓宽学生的知识面。
3. 改进教学方法(1)采用启发式、讨论式、案例式等多种教学方法,激发学生的学习兴趣。
(2)鼓励学生参与课堂讨论,培养学生的创新思维。
软件工程实践教学方法探讨软件工程实践课程是计算机系软件专业的一门重要课程,旨在培养学生实际应用软件工程技术和方法解决实际问题的能力。
本文将探讨软件工程实践教学方法,以期提高教学质量和学生学习效果。
对于软件工程实践课程的教学方法,重点应放在实践环节的设计和组织上。
学生通过实际的软件开发项目,接触和应用软件工程中的各种技术和方法,从而掌握软件开发的整个过程。
在项目实践中,可以采用小组合作的形式,让学生分工合作、共同完成一个完整的软件开发任务。
在项目的不同阶段,可以组织讨论、指导和评审,及时纠正错误和不足,提高学生的实践和解决问题的能力。
要注重理论与实践的结合。
软件工程实践课程既要传授相关的理论知识,又要注重实践操作。
理论知识可以通过课堂讲解和案例分析等方式进行传授,而实践操作则可以通过实验室教学、项目实践等方式进行。
理论知识与实践操作的结合,能够更好地帮助学生理解和掌握软件工程技术和方法,提高实际应用能力。
要注重实际案例与实际问题的引入。
软件工程实践课程的学习目标是学生能够解决实际问题,因此在教学中应该引入一些实际案例和实际问题,让学生在解决实际问题的过程中学习相关的技术和方法。
可以通过外出实地考察、企业合作等方式,了解真实的软件开发环境和实际问题,为学生提供一个贴近实际的学习环境。
要注重培养学生的团队合作和沟通能力。
软件开发是一个团队合作的过程,学生需要与他人进行合作、分工和沟通。
在软件工程实践课程中,教师可以设计一些小组合作的任务,让学生通过团队合作解决问题。
教师还可以通过讲解团队协作的技巧和方法,培养学生的团队合作和沟通能力,为将来的工作做好准备。
要注重学生的实践能力培养。
软件工程实践课程的目标是培养学生实际应用软件工程技术和方法解决实际问题的能力。
在教学中应该注重培养学生的实践操作能力。
可以通过实验室教学、项目实践等方式,让学生亲自动手操作和实践,提高实践能力。
软件工程实践课程的教学方法应注重实践环节的设计和组织、理论与实践的结合、实际案例与实际问题的引入、团队合作和沟通能力的培养,以及学生实践能力的培养。
第1篇一、课程简介《软件工程》是一门研究软件开发原理、方法和工具的学科,旨在培养学生具备软件开发的基本理论、实践技能和工程素养。
本课程通过实践教学,使学生能够掌握软件工程的基本方法,提高软件开发能力,为后续课程学习和实际工作打下坚实基础。
二、教学目标1. 理解软件工程的基本概念、原理和方法。
2. 掌握软件开发过程中的需求分析、设计、编码、测试和维护等基本技能。
3. 具备使用常用软件开发工具进行实际项目开发的能力。
4. 培养良好的团队协作和沟通能力,提高工程素养。
三、教学内容1. 软件工程概述- 软件工程的定义和发展历程- 软件生命周期和开发模型- 软件工程的目标和原则2. 需求分析- 需求获取和分析方法- 需求规格说明和文档编写- 需求管理3. 软件设计- 设计原则和模式- 数据库设计- 系统架构设计4. 软件开发- 编码规范和最佳实践- 集成开发环境(IDE)的使用- 版本控制工具的使用5. 软件测试- 测试方法和技术- 测试用例设计- 软件测试管理6. 软件维护- 维护过程和方法- 软件配置管理- 软件质量保证7. 软件项目管理- 项目管理的基本概念和原理- 项目计划、执行和监控- 团队协作和沟通四、实践教学安排1. 实践教学课时:共40学时,其中理论课24学时,实践课16学时。
2. 实践教学环节:(1)课堂演示:讲解软件工程的基本概念、原理和方法,演示常用软件开发工具的使用。
(2)案例分析与讨论:分析实际软件项目案例,讨论软件工程在实际开发中的应用。
(3)上机实验:完成以下实验项目:1. 需求分析实验:完成一个简单软件的需求分析,编写需求规格说明书。
2. 设计实验:完成一个简单软件的设计,包括数据库设计、系统架构设计等。
3. 编码实验:使用一种编程语言实现一个简单软件的功能。
4. 测试实验:编写测试用例,对软件进行功能测试和性能测试。
5. 维护实验:对已完成的软件进行维护,修复已知问题和优化性能。
软件工程实践实施最佳实践和模式软件工程是一门涉及软件开发、维护和管理的学科。
为了确保软件项目的成功,软件工程实践需要遵循一些最佳实践和模式。
本文将对软件工程实践中的最佳实践和模式进行探讨。
一、需求分析和规划在软件工程实践中,需求分析和规划是非常重要的一个阶段。
首先,软件开发团队需要与客户充分沟通,了解客户的需求和期望。
然后,在具体规划软件项目时,团队需要明确项目的目标、范围和时间表。
这些步骤可以确保软件项目满足客户的需求,并保持项目的可控性。
二、迭代开发模式迭代开发模式是一种常用的软件工程模式。
它将整个软件开发过程分为多个迭代周期,在每个迭代中实现一部分功能。
这种模式可以使开发团队快速响应客户反馈,及时调整开发方向。
此外,迭代开发模式还可以提高软件质量,因为每个迭代都可以进行充分的测试和修复。
三、敏捷开发敏捷开发是一种以人为核心的开发方法。
在敏捷开发中,开发团队通过密切合作和及时反馈来推动软件开发。
团队成员之间的沟通和协作非常重要。
敏捷开发注重快速交付可用的软件版本,以便客户尽早验证软件功能和提出反馈意见。
这种迭代的方式可以降低项目风险,并保持项目进度的可控性。
四、代码重用代码重用是软件工程实践中的一项重要策略。
通过重复利用现有的代码和组件,可以提高开发效率、减少开发成本,并改善软件质量。
为了实现代码重用,开发团队应该在开发过程中建立一个可维护和可扩展的代码库。
这个代码库可以包含一些常用的函数、类和模块,供团队成员在需要时进行调用。
五、测试驱动开发测试驱动开发是一种注重测试的开发方法。
在测试驱动开发中,开发者首先编写测试用例,然后根据测试用例编写代码。
这种方式可以保证代码的正确性,减少代码缺陷,并提高软件质量。
通过测试驱动开发,开发团队可以更好地理解软件需求,并及时发现和解决潜在的问题。
六、持续集成和部署持续集成和部署是一种自动化的软件发布方式。
在持续集成中,开发团队将代码集成到一个共享代码库中,并通过自动化的构建和测试流程进行验证。
第1篇一、引言随着信息技术的飞速发展,软件产业已成为我国国民经济的重要支柱产业。
为了培养适应时代需求的软件技术人才,提高学生的实践能力和创新精神,我国高校纷纷开展软件技术实践教学模式改革。
本文将从软件技术实践教学模式的意义、现状、策略等方面进行探讨。
二、软件技术实践教学模式的意义1. 提高学生实践能力。
实践教学模式使学生将理论知识与实际应用相结合,通过项目实践、实习等方式,提高学生的动手能力和解决实际问题的能力。
2. 培养学生创新精神。
实践教学模式鼓励学生勇于探索、创新,激发学生的创新思维和创造力。
3. 增强学生就业竞争力。
实践教学模式使学生具备较强的实际工作能力,有利于提高学生的就业竞争力。
4. 促进教学改革。
实践教学模式推动高校教学改革,优化课程设置,提高教学质量。
三、软件技术实践教学模式现状1. 课程设置不合理。
部分高校的软件技术实践课程设置过于单一,缺乏综合性、实践性。
2. 实践教学资源不足。
部分高校实践教学资源匮乏,如实验室、实习基地等,导致实践教学难以深入开展。
3. 教师实践能力不足。
部分高校教师实践经验不足,难以指导学生进行实践操作。
4. 学生实践积极性不高。
部分学生缺乏实践意识,对实践教学内容不感兴趣,导致实践教学质量难以保证。
四、软件技术实践教学模式策略1. 优化课程设置。
根据市场需求和行业发展,调整课程设置,增加实践性课程,如项目实践、实习等。
2. 加强实践教学资源建设。
加大投入,完善实验室、实习基地等实践教学资源,为学生提供良好的实践环境。
3. 提高教师实践能力。
鼓励教师参加实践培训,提高教师实践能力,为实践教学提供有力支持。
4. 激发学生实践积极性。
通过开展丰富多彩的实践活动,提高学生对实践教学的兴趣,激发学生的实践积极性。
5. 实施多元化评价体系。
建立多元化的评价体系,将学生实践能力、创新精神等纳入评价范围,全面评价学生综合素质。
6. 加强校企合作。
与企业建立紧密合作关系,为学生提供实习、就业机会,实现产学研一体化。
计算机专业软件类课程群的实训教学模式方案前言随着计算机技术的不断发展,计算机专业的软件类课程越来越重要。
为了培养具有实际能力的计算机专业人才,实训教学模式愈发成为计算机专业软件类课程群的重要教学方式。
本文旨在介绍计算机专业软件类课程群的实训教学模式方案,帮助学生深入了解并掌握实际应用能力,以应对社会需求。
实训教学模式方案针对计算机专业软件类课程群,我们提出以下实训教学模式方案:第一阶段:基础实训基础实训是培养计算机专业软件类课程群学生实际应用能力的关键。
教学方案如下:1.建立实训环境根据课程所要求的实际应用场景建立适当的实训环境。
如Java课程,建立能够支持Java开发的IDE环境。
2.确定实训任务根据课程要求制定实训任务。
例如,Java课程的实训任务可以包括基础语法练习、应用程序开发等。
3.完成实训任务学生根据指导书完成实训任务,亲自操作并且实时处理出现的错误,建立实际应用经验。
第二阶段:拓展实训拓展实训是培养计算机专业软件类课程群学生实际应用能力和综合素质的关键。
教学方案如下:1.经验分享学生进行经验分享,谈论在基础实训中遇到过的问题和解决方案,也可以讨论课程相关技术领域的最新发展。
2.课程实践设计一个适用于学生发挥想象力和创意的课程项目,并进行实践。
例如,Java 课程可以进行软件应用级开发实践。
3.团队协作学生形成团队,共同完成包含开发、测试、部署等全流程的项目。
软件工程相关基础课程可以引导学生使用开源代码库、版本控制、持续集成等工具;软件开发项目管理相关课程可以引导学生使用敏捷、水平、结对编程、Code Review等方式增强团队协作能力。
4.学生报告学生在实践之后向大家进行学术报告,阐述项目实现和体会,强化自己的表达能力和交流能力。
这样学生可以应对面试和学术交流等场合。
总结本文针对计算机专业软件类课程群提出了基础实训和拓展实训两个阶段的实训教学方案。
基础实训和拓展实训可以搭配使用,使得学生能够更好的掌握实际应用能力和综合素质,走向更好的计算机专业路上。
软件工程深度学习实践教学模式作者:杨谊喻德旷来源:《高教学刊》2019年第04期摘要:软件工程具有很强的工程性和实践性,在软件工程课程教学中,“如何开展学习”以及“如何促进能力培养”是需要研究探索和实践的重要命题。
文章把深度学习思想引入到软件工程的实践教学中,从课程目标、内容设计、开展形式、教学指导模式等环节进行改革,详细介绍了专题设计、创设场景、分析问题、自主探究和协作交流、自我总结与点评等具体措施,发挥学生的主体作用,培养学生深度加工知识信息、深度理解复杂概念、深度掌握核心技术的能力,进而建构个体知识体系用以解决现实复杂问题。
关键词:软件工程;深度学习;实践教学模式中图分类号:G642 文献标志码:A 文章编号:2096-000X(2019)04-0066-04Abstract: Software engineering has a strong engineering and practical nature. In the course of software engineering teaching, "how to carry out learning" and "how to promote ability training" are core propositions that need research and practice. This paper introduced the idea of deep learning into the practical teaching of software engineering, including course target, content design, teaching form and teaching mode, and introduced the special design, creation of the scene, analysis of problem, independent enquiry, cooperation and communication, self-summary-and-review in detail, to bring the students' initiative to its full extent, and to cultivate capability of processing knowledge information, understand the complex concepts, and grasp the core skills in depth,construct the individual knowledge system as to solve the complicated problems of reality.Keywords: software engineering; deep learning; practice teaching model《軟件工程》是计算机软件和相关专业的重要课程之一。
软件工程以提高软件质量,降低软件的开发和维护成本为目的,将系统化、规范化、可度量的工程化方法应用于软件的开发、运行和维护的过程,从而将经过时间考验的管理方法和先进的开发技术结合起来。
近年来,随着新兴经济结构的产生,计算机技术领域的不断发展,软件产业已经成为世界各国在信息时代新一轮的竞争焦点。
软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,不仅需要对软件需求分析、软件设计、软件测试、软件维护和软件项目管理等基础知识、基本方法熟练掌握,而且突出对软件开发、测试、维护和软件项目管理等专业技能的培养。
目前国内外行业产业最需要的都是真正能够很好实践软件工程的人才。
在软件工程课程教学中,“如何开展学习”以及“如何促进能力培养”是两个需要研究探索和实践的核心命题。
软件工程教育界早已认同理论联系实际,突出实战能力的培养思想。
而今,面对以碎片化为特点的浅层学习方式的渗透、覆盖和影响,越来越多的教育者和学习者已经开始认识到,流行的快餐式教育和浮光掠影的学习方式远远不能适应软件工程理论技术与实践发展的需求。
反之,对信息予以深度加工,深刻理解和掌握复杂概念的内在涵义,建构起具有个人特点的知识体系,通过知识的吸收、迁移、内化来获得完成任务的能力,成为软件工程学科所必须的教育和学习理念[1]。
一、深度学习模式概述根据学习者获取和加工信息的方式,可以分为深度加工和浅层加工。
前者采用深度学习,这是一种主动的、批判性的学习方式。
后者的浅层学习则是一种被动的、机械式的学习方式,被动接受、简单重复和机械记忆信息,缺乏对知识的深度理解、自我加工及长期保持,犹如沙滩上构建大厦一样没有基础,是无法实现知识建构、迁移应用及问题解决的[2]。
从学习目标的角度看,根据布卢姆(B·S·BLOOM)对认知领域学习目标的分类,包括“知道、领会、应用、分析、综合及评价”这六个逐渐提高深化的层次,浅层学习的认知水平停留在“知道、领会”这两个层次,主要是知识的简单描述、记忆或复制,处于较低的认知水平,涉及低阶思维活动;而深度学习的认知水平则可对应“应用、分析、综合、评价” 这四个较高级的认知层次,不只涉及记忆,更注重知识的理解和应用,处于高级的认知水平,涉及高阶思维活动[3]。
显然,深度学习的实现与高水平思维的运用密切相关,发展高阶思维能力有助于实现和促进高级能力的获得,有助于提高学习者的思维水平和学习效能。
从二十一世纪伊始,历经二十年,数字化、网络化、移动化的新型学习方式相继出现、发展到盛行,而越来越多的来自大、中学的调查研究和统计结果却表明,运用浅层学习虽然可以利用零星时间快速了解和接触碎片化信息,但在整体学习效率和综合效果上并没有得到了实质性的提高,相反,由于对新型学习工具和技术的不恰当使用,有些学习活动反而受到了阻碍[4]。
高度信息化的知识经济时代更要求学习者能够深度加工知识信息、深度理解复杂概念、深度掌握内在含义,进而建构个体知识体系,用以解决现实复杂问题。
深度学习已作为一种重要而有效的学习方式和学习理念,引起教育者和学习者极大的兴趣和关注。
二、深度学习模式在软件工程实践教学中的运用深度学习通过调动学习者的积极性,注重知识间的内在联系,强调知识应用,在学习者自主探究的过程中培养学生的终身学习能力、知识应用能力和知识创新能力,适合培养软件工程人才的需要[5]。
结合深度学习思想,本文探讨把深度学习思想引入到软件工程的实践教学中,从实践教学的课程目标、内容设计、教学指导模式等环节进行介绍,发挥学生的主体作用,培养学生自学能力和系统设计开发能力。
(一)课程目标要求学生通过软件工程实践课程的理论学习与实践练习,掌握运用工程化的方法开发软件项目的方法和技能,开发过程中应遵循的流程、准则、标准和规范,具备进行软件工程项目分析、设计、实现和进行有效的项目管理的基本能力。
具体课程目标如下:1. 掌握面向对象的软件开发基本过程、方法和工具,能用软件工程的方法开展软件项目的分析、设计、实现和维护。
2. 掌握软件需求分析的方法,包括结构化方法、面向对象、面向构件的方法等,学会根据需求进行合理的软件建模,学会编写符合规范、完整、明确的软件需求规格说明。
3. 掌握软件设计的方法,包括软件体系结构设计、界面设计、数据设计和模块设计等,学会建立软件设计模型,编写规范、完整、详实的软件设计文档。
4. 掌握软件实现的常用方法,学习使用合适的软件开发工具开发软件。
5. 掌握软件测试的基本方法,重点在测试计划和测试用例的设计,了解应做哪些方面的测试,测试数据如何设计,测试的内容和利用测试结果进行可靠性分析与预测。
6. 掌握软件开发过程管理和质量控制的基本方法,包括定义合适的项目过程、进行充分的可行性研究、需求分析、阶段划分、人员组织与分工、质量评估、缺陷检查与纠正、系统成本控制、系统配置管理和用户沟通等。
(二)实践教学内容设计软件工程的学科和课程最大的特性之一是“工程性”,因此实践教学以培养学生的软件工程能力和素质为核心,按照“案例导向、项目驱动”的设计思想,以项目开发带动软件工程的理论学习,又以软件工程的理论来指导软件开发的实践。
依据三个原则开展案例和项目设计:一是实用性原则,面向行业产业,面向应用,选择具有较强代表性的案例、项目,教学组讨论发掘各个选题的参考解决方案,同时,积极吸收和引用合作技术企业已有的项目进行改编,使之符合教学要求。
二是可行性原则,主要看所选案例和项目对于学生来说有无理解、设计和开发的可能,要结合学生的专业方向、学习基础、知识和能力水平、特长兴趣等人员因素综合考虑,同时还要考虑现有的实验设备和环境资源等外在因素。
三是创新性原则。
要在案例和项目中尽量体现发展和创造性,如是否发现了新问题、构建了新模型、运用了新技能、改进了新方法,让学生通过学习和练习,不仅实现模仿,而且激发出创新的胆识和能量。
(三)实践教学的开展实践教学分为课内实验和课外实践两部分开展。
课内实验的目标是巩固所学章节的内容及技能,包括可行性研究与软件工程标准化实验、软件开发工具实验、软件分析与建模实验、代码编写实验、软件测试工具与单元集成系统测试实验、软件项目管理实验等,按照“案例导向、项目驱动”的设计思想,指导教师分析案例,提出问题,学生结合所选具体项目进行相应的练习,达到对问题的理解和解决。
在课堂上完成的内容主要包括:项目开发指导,实例讲解,要点引导;小组讨论,小组报告;项目问题答疑和解决;教师和学生对各小组项目的阶段评审等。
课外实践是一项综合性的工程实践,通过一个完整项目开发的全过程实践,培养学生综合性的软件工程能力。
要求学生组成项目开发小组,采取组长负责制,组织结构可以根据组员的特长、能力来组内自定,各小组成员进行不同的工作职位角色的分工,角色可以轮换,以培养成员全面的能力[6]。
教师定期或不定期地对设计过程进行监控,可以召开小组会议,听取汇报,面对面地答疑指导,还可以通过网络在线形式开展交流。
鼓励项目组成员间利用目前流行的协同工作工具如GitHub、Teambox等进行交流和协同。
课外完成的内容主要包括:项目调研和资料的查阅,项目各阶段工作的完成,包括计划、分析、设计、编码、测试、编写文档等。
通过模拟软件企业的软件项目管理和开发过程,使得学生全面接触实际项目,积累开发经验。
(四)实践教学指导模式1. 专题设计通过研究课程教学目标和课程教学内容,确定核心概念、方法、技能和要点,结合课程知识点把软件工程实践技术分为8个专题,如表1所示。