《(本科)1 软件工程课程实践设计概述ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)1 软件工程课程实践设计概述ppt课件.pptx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程主讲人:(本科)1. 软件工程课程实践设计概述ppt课件毛新军国防科技大学计算科学系复杂系统软件工程重点实验室软件工程课程实践教学之为什么要高度重视实践教学软件工程课程实践存在问题如何设计软件工程课程实践如何实施软件工程课程实践Copyright Xinjun Mao*课程实践的设计及要求加深对所学课程知识的理解和掌握学会运用所学知识来分析解决问题培养专业方向的多方面能力和素养积累工程实践的心得、经验和体会Copyright Xinjun Mao4软件工程是一门实践性很强的课程 课程教学绝不能仅仅停留在纸上谈兵层面通过实践教学着力培养“解决复杂工程问题”能力 软件是一项极为复杂逻辑产品,软
2、件开发是复杂工程行为 它是软件工程专业核心能力,充分体现软件工程专业特点Copyright Xinjun Mao*能力和素养的培养是软件工程课程教学的主要目标专业课程及其能力培养计算思维能力程序构造与分析类课程系统能力计算机原理类课程复杂工程问题能力软件工程课程能力不是由老师“教”出来的,而是学生在实践过程中“学、做、练、悟”中逐步形成的能力培养不是一次性的,而是一个循序渐进、长期实践的过程需对实践教学进行针对性设计,达成能力培养目的Copyright Xinjun Mao6实践设计实践实施实践考评老师全程参与实践内容要求不高 不具备复杂工程问题实践手段缺工程性 未能体现工程化要求实践方法过时
3、陈旧 难以保证实践的开展实践目的性不明确 能力培养成效不明显Copyright Xinjun Mao7 形式大于效果 教与做相脱节 难达预期成效没有足够的时间投入不知道如何去做实践许多问题找不到解答获得帮助的渠道有限无法获得有效的指导不知道做的结果如何Copyright Xinjun Mao8没有大规模工程经验没有足够精力来投入解答不了所问的问题无法提供所需的资源跟不上技术发展步伐缺乏有创意实践项目老师角度学生角度有“心”无“力”,有“力”不得“法”难以达成能力培养目标方法1:将课程实践融入到软件工程课程之中 示例:课程实践伴随着软件工程课程进行,讲到哪里就落实相关的实践内容 不足:基于局部知
4、识点和阶段性教学内容,难以运用系统性的知识和技能,无法做到持续性的迭代、改进和完善方法2:独立设计一门软件工程综合实践课程 示例:软件工程课程结束之后,给定2周时间集中开展综合实践 不足:实践周期短,单位时间实践强度大,无法满足复杂工程问题所需的时间要求,学生缺乏反思,难以做到持续性的迭代、改进和完善Copyright Xinjun Mao9Copyright Xinjun Mao10计算机程序设计实践软件项目开发实践聚焦于编码,关注于实现,存在规模小、忽视质量、缺乏好的编程经验,不足以体现复杂工程问题聚焦于完整软件开发,关注多个方面,要求有一定规模和复杂度,对工程能力培养提出更高要求实践存在
5、较大Gap,需要有过渡软件工程、软件项目管理等课程程序设计、数据结构、算法分析等课程无从下手、无法开展、不知对错难以应对、茫然困惑、.实践知识和时间的碎片性遇到问题多样性和差异性实践问题的解决的经验性教师学生间非持续接触性实践个体个性化和同一性实践的参与性以及体验性实践实施过程的长周期性Copyright Xinjun Mao11无法系统性讲授难做到及时答复不可能一一回答做不到量身定做找不到完美老师学生互助不现实靠优秀TA不可能实践教学与课堂教学有很大差异性需要在实践教学理念和方法找出路Copyright Xinjun Mao12教师和TA学生(个体或团队)物理或局域网络空间p 实施空间的局部
6、性p 参与对象的封闭性p 辅助渠道的单一性p 实践资源的有限性教室或软件平台 实践教学成效高度依赖于教师的决心、投入、经验和水平 今年的成功并不意味着明年的成功,难以复制以代码和质量为切入点,从学习他人工程经验入手循序渐进开展实践,不能一蹴而就Copyright Xinjun Mao13阅读和维护开源软件代码开发软件系统实践任务1实践任务2多次迭代从读代码、理解质量、学习经验再到完整开发一个软件系统Copyright Xinjun Mao14理解和掌握高质量程序学习(产品、过程等)实践(技术和管理活动)开发一定规模高质量软件系统评价-学习再学习和实践(改进与提高)开发一定规模高质量有创意软件系
7、统须有大规模高质量软件、长时间实践、团队协作的工程经历突出“规模、综合、集成、创意、质量”内容要求反映“复杂工程问题”特征,强化“能力”培养Copyright Xinjun Mao15实践内容要求规模性创意性集成性演变性综合性高质量规模反映复杂性, 10000行程序代码问题和需求、解决方法、技术手段等人机物、遗留系统、异构、分布式需求和设计等变化,反复权衡、完善综合多种知识、技术、语言和平台对质量提出明确要求且可验证迭代开发,持续点评和指导,不断改进和提升Copyright Xinjun Mao*第一次迭代第二次迭代第n次迭代分析设计编码测试不要寄期望学生能够一次性就能完成实践并达成能力培养互
8、联网大众成为指导学生实践和能力培养的“老师”互联网资源成为指导学生实践和能力培养的“教材”互联网平台成为指导学生实践和能力培养的“空间”*高质量的开源软件GitHub用户2800+万人海量高水平的软件开发人员“考”为辅“评”为主持续考评,以“评”促“改”针对“能力考评”设计考核要素及指标Copyright Xinjun Mao*借助工具辅助实践的开展及考评 掌握现代、主流的软件开发工具 提高软件开发的效率和质量 及时掌控、分析和考评实践情况Copyright Xinjun Mao19Trustie-Forge协同开发和版本管理Trustie-CodePedia代码阅读、分析和标注Trustie-Ossean开源软件检索和开发知识分享LearnerHub实践交流、分享和讨论Copyright Xinjun Mao20阅读和改进高质量开源软件开发有创意、较大规模、高质量软件项目实践支撑软件工具开源软件和软件开发知识迭代软件工程课程实践教学之