面向软件工程学科的算法课程建设.docVIP

面向软件工程学科的算法课程建设.doc

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

面向软件工程学科的算法课程建设   摘 要:算法不但是计算机科学与技术专业的核心课程,也是软件工程专业的核心课程。算法知识不仅广泛地用于软件系统的设计与分析中,同时对培养学生分析和解决实际问题的能力具有重要的作用。本文基于北京大学软件与微电子学院的教学实践,对软件工程专业硕士研究生算法课程的教学改革进行了总结,提出了相应的教学实施方案。本方案的特点是:以素质和能力培养为目标,构建面向不同教学要求的模块化的知识框架,并注重理论联系实际,在软件系统建模和分析中强化应用。   关键词:算法设计与分析;软件工程;硕士研究生课程;教学改革;计算思维   北京大学软件与微电子学院是一所面向产业和领域需求,培养高层次、实用型、复合交叉型、国际化人才的学院。经过10年的探索与实践,提出一套“产学研用结合”的培养模式和“多层次、多方向、多领域、模块化、开放式”的课程体系[1]。在该课程体系中,“算法设计与分析”课程如何定位?面向工程硕士的算法课与本科生的算法课有什么区别?针对不同本科专业方向和基础的学生如何制订教学实施方案?这些都是需要探索的问题。   一、算法课程的定位和指导思想   教育部软件工程学科课程体系研究课题组在《中国软件工程学科教程》一书中提出了4种分别侧重于计算机科学、软件开发技术、系统认识和工程化理念的不同的本科生教学计划参考模式,其中“数据结构与算法”都是重要的核心课程之一[2]。软件工程是计算机科学与工程和管理学科的交叉学科,算法知识是计算学科的核心内容,是软件工程硕士必备的基础。特别对于从事软件工程的高层次、复合型人才,通过算法课程的学习有助于培养学生的计算思维与系统分析能力。   因此,在北京大学软件与微电子学院的课程体系中,“算法设计与分析”课程是面向全校硕士研究生的公共选修课,同时是软件开发、软件测试与质量保证专业与研发中心硕士研究生的必修课,总计3学分,48学时。   由于软件学院跨学科、多领域、产学研用相结合的培养模式,在制订算法课程的教学计划时遇到以下问题。   问题1:学习算法课的学生来自不同的专业方向,有着不同的培养目标和需求(见表1)。   表1给出了一个北京校区算法课脱产班212人专业方向分布的示例,其中必修学生156人,大约占3/4,剩下的是其他专业方向的选修生。不同专业方向、不同培养模式(脱产和在职班)的学生对算法课有着不同的需求。研究中心的学生由于要参与课题研究,需要较好的计算思维及更强的建模分析能力,其他学生更着重于软件工程实践及面向领域的应用,而在职班的学生则希望了解更多的应用背景。如何根据不同的培养目标确定算法课的教学内容?   问题2:算法课具有一定的难度,需要用到某些数据结构与离散数学的知识。而软件与微电子学院有部分学生本科专业不是计算机或相关专业,没有系统学过这些课程。   根据北京大学软件与微电子学院的特点,面向软件工程学科的硕士研究生算法课要在课程定位、教学目标、教学内容、教学设计等方面不断探索,制订出具有自己特色的教学实施方案。课程建设的指导思想是:   (1)突出能力培养。随着计算机的广泛应用,新的问题不断涌现,新的算法层出不穷,能力的培养尤为重要。与算法和问题求解相关的能力主要体现在以下4个方面:用适当的数学模型描述实际问题的建模能力,运用计算思维确定问题求解方法的算法设计能力,对给定算法做出性能评价的分析能力,对问题难度和复杂性的判定能力。针对软件工程专业硕士,在算法教学中应该着重于前3种能力的培养。   (2)构建统一的知识框架。该框架面向多个专业方向,适应于不同的本科基础,针对多样性的人才培养目标,采用层次化、模块化的结构,使得教师能够根据不同的教学需求制订相应的教学计划。   (3)进行科学的教学设计,不断更新教学内容,引入好的教学方法和教育技术。   (4)建设一系列配套的教学资源,包括教材、电子教案、教学辅导书、网上教学环境等。   (5)注重教师培养,建立老中青结合的教师队伍。   二、算法课程的教学目标与知识框架   针对软件工程专业硕士,算法课程的教学目标是:   (1)掌握计算机算法设计的基本技术――分治策略、动态规划、贪心算法、回溯与分支限界、随机算法等。   (2)掌握计算机算法分析的基本方法――了解评价算法的标准,能够对给定算法做出最坏与平均时间复杂度的估计,了解问题复杂度的界定方法。   (3)了解计算复杂性理论的基本框架和应用。   (4)培养针对实际问题进行建模并选择高效求解算法的能力,使得学生在计算思维、学科方法训练及专业素质方面得到提升。   根据软件工程的特点,算法课的核心内容以算法设计技术与分析方法为主,对于NP完全理论以及概率算法、近似算法等研究领域加以简要的介绍。算法课程的知识

文档评论(0)

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

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

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档