版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《软件工程》教学大纲一、课程基本信息1.课程编号:2.课程中文名称:软件工程3.课程英文名称:SoftwareEngineering4.课程性质:必修课5.考核方式:平时成绩+期末考试6.开课专业:软件工程专业7.开课学期:第三学年第1学期8.先修课程:《数据结构与算法》、《程序设计基础与C程序设计》、《面向对象方法与C++程序设计》9.后继课程:《系统分析与设计》、《软件测试与质量保证》等10.学时安排:总学时理论教学实践教学周学时学分课外学时48484312二、任课教师三、教材及主要参考资料教材:《软件工程》.朴勇,周勇.电子工业出版社.2019.参考资料:《软件工程:实践者的研究方法指南》(第8版).(美)普雷斯曼著,郑人杰等译.机械工业出版社.2016.四、课程简介《软件工程》是软件工程专业大类课程之一,主要围绕软件的系统工程化开发过程,介绍相关的理论、方法、技术和工具。以面向对象的分析和设计为主线,遵循UML2标准,从基本理论为出发点,介绍对软件开发的组织管理以及业务流程分析;重点针对软件开发的生命周期,讨论对业务需求进行分析、面向对象的概要设计、从概要设计到代码框架的生成、面向对象的详细设计、设计优化、面向对象实现、交互设计、测试与质量保证等重要环节;介绍软件开发环境,包括项目计划管理与跟踪以及主流配置管理工具的使用。五、课程目标(一)课程培养能力体系1级能力指标2级能力指标课程培养能力指标3.设计/开发解决方案:能够设计针对复杂工程问题的解决方案,设计满足特定需求的系统、单元(部件)或工艺流程,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。①掌握软件生命周期要素,了解软件开发过程管理模型、ISO国际质量标准、CMMI软件评价标准(中级能力)掌握软件开发过程的基本规律和规范,了解ISO及CMMI的原理及适用范围。5.使用现代工具:能够针对复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对复杂工程问题的预测与模拟,并能够理解其局限性。③对复杂工程问题进行预测与模拟,并能够理解其局限性(初级能力)掌握复杂工程问题分析方法,通过分析方法对问题进行预测与模拟,提出其局限性6.工程与社会:能够基于工程相关背景知识进行合理分析,评价专业工程实践和复杂工程问题解决方案对社会、健康、安全、法律以及文化的影响,并理解应承担的责任。①具备基于工程相关背景知识进行合理分析的能力②具备评价专业工程实践和复杂工程问题解决方案的能力,能够评价对社会、健康、安全、法律以及文化的影响(高级能力)培养学生的工程实践学习能力,使学生掌握软件建模和实现的工程方法,具有运用软件工程自动化平台开发软件的能力。(初级能力)评估软件系统对社会的影响及作用的能力,理解开发人员应具有的社会责任。11.项目管理:理解并掌握工程管理原理与经济决策方法,并能在多学科环境中应用。①掌握技术管理、人员管理、工程管理的原理②理解并掌握与成本、风险等相关的经济决策方法(中级能力)了解项目管理中的技术管理、人员管理、工程管理方法和应用的能力。(二)教学目标目标内容具体目标专业知识了解可行性分析的方法和原理掌握需求分析方法了解结构化设计的启发式规则,知道系统抽象、模块化、信息隐藏、功能独立等了解面向对象的设计原则掌握系统宏观设计方法掌握系统详细设计方法掌握系统测试与实现方法了解软件架构、设计模式了解系统集成、项目管理方法专业技能掌握使用数据流图方法掌握使用数据字典分析系统方法掌握结构化设计的架构设计方法,会使用变换流和事物流的方法完成总体设计掌握软件逻辑的详细设计方法,会用程序流程图、盒图、PAD图、伪码等方法设计程序逻辑掌握数据库设计方法掌握基于UML的面向对象系统分析与设计方法(三)教学任务本课程的任务是使学生从软件生存期的角度,建立软件开发的系统工程方法认识,初步学习和掌软件开发中的分析、设计、质量检验、过程管理等现代软件工程的普遍原理和方法,具备能够运用各种方法来规范化、系统化地表达实现简单系统的软件开发能力,为进一步开发复杂软件系统建立扎实的基础。六、各章节(知识单元)教学内容及基本要求(一)理论知识单元内容及要求本课程分成4大部分:第一部分概述软件工程相关的概念、技术与方法;第二部分围绕软件开发过程,对软件开发的组织管理以及过程分析;第三部分主要围绕软件工程开发的生命周期,讨论对业务需求进行分析、概要设计、详细设计、设计优化、实现、交互设计、测试与质量保证等内容;第四部分包括软件开发环境,项目计划管理与跟踪等。第一部分:软件工程基本原理学生要了解的基础知识:软件危机的产生以及软件工程的由来、软件工程包括的主要内容以及软件开发的主要方法及技术等。软件危机的基本概念及产生原因内容包括:软件危机的概念,软件的特点,软件危机产生的原因,软件危机的表现,软件危机的应对。软件的分类及发展历史内容包括:软件的分类方法,软件发展历史以及前沿发展动向。软件工程的意义及主要内容内容包括:软件工程的引入及其必要性,软件工程的作用,软件工程知识体系,系统工程与UML。软件开发的主要方法及技术内容包括:结构化和面向对象开发方法的概念和各自特点,适用场合及其理解。第二部分:软件过程软件开发过程以及软件开发生命周期的定义,软件产品开发的任务框架和规范。软件开发过程模型,包括传统的瀑布模型、增量模型、螺旋模型、喷泉模型等以及敏捷模型中的极限编程、SCRUM、MSF等。软件开发过程中的过程建模,使用UML的活动图进行过程建模的方法以及风险管理过程。软件开发过程及生命周期内容包括:开发过程与生命周期的定义及其联系,过程模型的说明。传统的过程模型内容包括:瀑布模型、快速原型模型、增量模型、喷泉模型及其特点,适用情况。迭代开发等敏捷开发模型内容包括:敏捷模型的特点,敏捷宣言,以极限编程、SCRUM、MSF等为代表的敏捷模型的特点及其适用情况。过程建模的方法及风险管理过程内容包括:应用UML活动图进行建模的方法,风险管理过程及其模型。第三部分:软件开发活动本部分主要介绍完整的软件系统的开发过程,涵盖需求分析、概要设计、详细设计、实现及测试等各个环节的详细介绍。本部分包含了软件开发的主要活动,也是本课程的主题部分,着重培养学生分析解决实际工程问题的技术和能力。软件需求分析内容包括:可行性分析、需求的获取、系统目标和涉众的确定、基于数据流图的分析方法、用例建模与用例规约、功能需求与非功能需求。软件系统概要设计内容包括:传统模块化的层次方法、基于类图的设计方法、通过顺序图对设计的补充和验证、需求跟踪。软件系统详细设计内容包括:详细设计中的主要活动、传统过程化的详细设计方法、通过状态图对详细设计的丰富、对象约束语言(OCL)。交互设计内容包括:人机工程、可用性的概念和内涵、可用性的验证方法。设计优化内容包括:结构化设计的启发式规则,如系统抽象、模块化、信息隐藏、功能独立等。面向对象的设计原则、设计模式以及架构模式。软件系统的实现与测试内容包括:CASE实现工具,类图中单个类、关联关系、归属关系的代码生成方法,软件架构的代码组织、其它影响程序运行的因素等实现方法。非功能需求、分布式系统、XML、程序库、组件、框架、数据的持久化、领域特定语言、模型驱动架构(MDA)、重构等具体实现技术。形式化验证、断言、单元测试与junit、可测试性等测试相关的概念和技术,等价类、控制流等测试方法,测试分类与测试环境、测试度量、建设性质量保证、人工测试等其它测试活动。第四部分:软件开发环境主要介绍软件开发人员进行团队开发所涉及到的相关管理方法、技术和工具,包括软件配置管理、项目计划、质量管理与过程改进以及人员的组织和管理。软件配置管理内容包括:软件配置管理的基本原理与主要活动,生成管理,发布管理及变更管理。项目计划与跟踪内容包括:项目计划与工作分解、任务安排与工程网络图、项目组织与甘特图、项目计划与跟踪。工作量估算内容包括:软件规模的评估方法,开发成本的评估方法。质量管理内容包括:质量管理与过程改进,能力成熟度与过程模型。项目人员与沟通内容包括:项目中的人员管理与组织,人员沟通模型。(二)课外学习内容及要求序号具体内容要求教学周学时考核方式1面向具有工程背景的问题,进行系统需求分析提出系统需求方案,同时考虑社会、环境等因素52课后作业2运用数据流图、数据字典、UML等软件工程方法设计系统架构掌握系统分析与设计全过程中的开发工具810课后作业3构建系统宏观架构,实现系统详细设计实现系统需求、设计具有创新、考虑社会、环境等因素
七、实践项目实施计划表序号项目名称项目类型教学周项目内容项目成果实施方法课内学时考核方式实践场所实验类型1需求分析单元项目5面向具有工程背景的案例,进行系统需求分析完成系统分析报告实践教学课程作业课下综合型试验2框架设计单元项目8运用开发工具和UML软件工程方法、进行设计系统架构设计完成系统框架设计报告实践教学课程作业课下综合型试验3详细设计单元项目12运用开发工具和UML软件工程方法、进行设计系统详细设计完成系统详细设计报告实践教学课程作业课下综合型、验证型试验4系统测试与实施方案单元项目15评价实施方案,考虑创新性、社会、法律等影响完成系统测试与实施报告实践教学课程作业课下综合型试验八、各单元知识点、技能点分布及学时分配表单元标题小节标题知识点与技能点能力目标掌握程度教学实施考核方式各教学环节学时分配理论教学实践教学课内小计课外小计讲课习题测验其他课外随堂实验室课外1软件工程基本原理1.1软件危机的基本概念及其产生原因软件危机的概念,软件特点,软件危机产生的原因,软件危机的表现,软件危机的应对6-①初级了解讲授、讨论软件的分类及发展历史软件的分类方法,软件发展历史以及前沿发展动向6-①初级了解讲授、讨论软件工程的意义及主要内容软件工程引入的必要性,软件工程的作用,软件工程知识体系,系统工程与UML6-①初级了解讲授、讨论软件开发的主要方法及技术结构化和面向对象开发方法的概念和各自特点,适用场合及其理解6-①中级了解讲授、讨论0.50.52软件过程2.1软件开发过程及生命周期开发过程与生命周期的定义及关系,过程模型的概念6-②中级3-①中级掌握讲授、讨论112.2传统的过程模型瀑布模型、快速原型模型、增量模型、喷泉模型及其特点、适用情况6-②中级3-①中级掌握讲授、讨论112.3迭代开发等敏捷开发模型敏捷模型的特点,敏捷宣言,以极限编程、SCRUM、MSF等为代表的敏捷模型的特点及其适用情况。3-①中级5-初级了解讲授、讨论112.4过程建模的方法及风险管理过程应用UML活动图进行建模的方法,风险管理过程及其模型5-初级掌握讲授、讨论11测试A5-初级随堂测试3软件开发活动3.1软件需求分析可行性分析、需求的获取、系统目标和涉众、基于数据流图的分析方法、用例建模与用例规约、功能需求与非功能需求。3-①高级5-初级6-①高级掌握/运用/分析讲授、讨论66需求分析面向具有工程背景的案例,进行系统需求分析3-①高级5-初级6-①高级掌握/运用/分析讨论课后作业223.2软件系统概要设计传统模块化的层次方法、基于类图的设计方法、通过顺序图对设计的补充和验证、需求跟踪。3-①高级6-①高级6-②初级掌握/运用/设计讲授、讨论55框架设计运用开发工具和UML软件工程方法、进行设计系统架构设计3-①高级6-①高级掌握/运用/设计讨论课后作业443.3软件系统详细设计详细设计中的主要活动、传统过程化的详细设计方法、通过状态图对详细设计的丰富、对象约束语言(OCL)。3-①高级6-①高级掌握/运用/设计讲授、讨论553.4交互设计人机工程、可用性概念和内涵、可用性的验证方法3-①高级6-①高级6-②初级了解讲授、讨论223.5设计优化结构化设计的启发式规则,如系统抽象、模块化、信息隐藏、功能独立等。面向对象的设计原则、设计模式以及架构模式3-①高级6-①高级6-②初级掌握讲授、讨论44详细设计运用开发工具和UML软件工程方法、进行设计系统详细设计3-①高级6-①高级掌握/运用/设计讨论课后作业44测试B3-①高级5-初级6-①高级随堂测试3.6软件系统的实现与测试CASE实现工具,类图中单个类、关联关系、归属关系的代码生成方法,软件架构的代码组织、其它影响程序运行的因素等实现方法。非功能需求、分布式系统、XML、程序库、组件、框架、数据的持久化、领域特定语言、模型驱动架构(MDA)、重构等具体实现技术。形式化验证、断言、单元测试与junit、可测试性等测试相关的概念和技术,等价类、控制流等测试方法,测试分类与测试环境、测试度量、建设性质量保证、人工测试等其它测试活动。3-①高级6-①高级6-②初级掌握讲授、讨论1414测试C3-①高级6-①高级随堂测试系统测试与实施方案评价实施方案,考虑创新性、社会、法律等影响3-①高级6-①高级6-②初级掌握/运用/实现讨论课后作业224软件开发环境4.1软件配置管理软件配置管理的基本原理与主要活动,生成管理,发布管理及变更管理。11-①中级掌握讲授、讨论224.2项目计划与跟踪项目计划与工作分解、任务安排与工程网络图、项目组织与甘特图、项目计划与跟踪。11-①中级掌握讲授、讨论114.3工作量估算软件规模的评估方法,开发成本的评估方法11-②中级掌握讲授、讨论114.4质量管理质量管理与过程改进,能力成熟度与过程模型3-①高级11-①中级了解讲授、讨论114.5人员管理与沟通项目中的人员管理与组织,人员沟通模型。6-②初级11-①中级了解讲授、讨论11测试D11-①中级11-②中级随堂测试合计48124812九、教学方法及组织形式1.课堂讲授为主,实验和课后作业为辅。本课程从通过系统分析与设计的基础知识讲解、案例分析以及项目实践,不断提升学生能力。以课堂讲授、课堂练习和测试、实验等手段,最终实现培养目标。2.基于工程教育理念,以“互动、启发式和探究式”组织教学,采用演示教学、练习教学、实验教学、探究教学、任务分析等多种教学方法,并将构思、设计、实施和运行引入教学过程中。3.教学过程中,以学生为主体,鼓励学生自主学习,团队协作等、加强职业能力的训练,运用启发引导、任务引领、问题导向、分组讨论、协同教学等多种互动式教学方法,完成课程教学任务。4.教学实施过程中,提供丰富的教育资源丰富,如课件、案例、录像、网络资源等等。5.结合课程实施过程,从知识掌握、能力水平、态度表现等方面,对学生进行全方位的考核。十、教学环境1.使用投影仪,采用多媒体与板书相结合教学手段2.一次实验时间为2学时。十一、形成性考核与终结性考核(一)课程考核内容及总体安排类别考核项目考核主要内容考核方式考核时间权重形成性考核平时表现日常表现:迟到、早退一次扣2分,旷课一次扣4分。日常考核10%课后作业需求分析第5周15%课后作业概要设计第8周课后作业详细设计第12周课后作业实现与测试第15周测验A软件工程基础第2周15%测验B需求分析与设计第12周测验C软件实现与测试第15周测验D软件开发环境第16周终结性考核期末考试全部知识单元教学内容考试周60%(二)命题要求考核项目重点考核知识点、技能点备注日常考核占总成绩10%课后作业3-①高级,5-初级,6-①高级占总成绩15%课后作业3-①高级,6-①高级课后作业3-①高级,6-①高级课后作业3-①高级,6-①高级,6-②初级测试A5-初级占总成绩15%测试B3-①高级,5-初级,6-①高级测试C3-①高级,6-①高级测试D11-①中级,11-②中级期末考试3-②高级,5-初级,6-①高级,11-①中级,11-②中级占总成绩60%(三)终结性考核安排考试时间100分钟记分方式■百分制□等级制终结性考核方式试卷考试学生考核提交类型■纸版□电子版□其他试题类型、题数、分值比例单项选择题:20个、40分简答题:5个、15分分析题:3个、45分其他:个%试题难易程度基本题:60%灵活题:20%综合题:20%其他:%教学大纲覆盖率教学大纲覆盖率=含考题内容的学时/课程总学时数*100%=(96%)备注(四)总成绩评定标准等级评定指标(定性与定量结合)优秀(100-90)平时按时出勤,课堂表现认真,实验按时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年大学生职业规划 职业能力
- 2026年派出所大练兵活动实施方案
- 2026年幼儿园远期规划方案
- 2026年贵州省遵义市汇川区中考英语适应性试卷(含详细答案解析)
- 电力部门与学校共建协议书
- 2026年人教版高二第二学期物理期末教学质量监测试卷(附答案可下载)
- (2026年)校园的春天作文
- 2026年人教版高二第二学期数学期末考点梳理检测试卷(附答案可下载)
- 2026思想政治报告(2篇)
- 2026年人教版高二第二学期生物期末核心素养测评试卷(附答案可下载)
- 2026年重庆市中考物理试卷(含答案及解析 )
- 2026年高考试题(全国二卷)-数学+答案
- 《智能网联汽车环境感知技术》课件 项目5视觉传感器技术及应用
- 阜南县会龙路及顺河路西延建设工程项目水土保持方案报告表
- 2026年广州市信息科技学八年级下学期模拟考试卷(含答案)
- 2025年湖南省郴州市八年级地生会考真题试卷(+答案)
- 2025年新疆中考生物试卷真题(含答案)
- 病案管理委员会工作汇报
- 中国抗日战争史智慧树知到期末考试答案章节答案2024年浙江大学
- 高一生物必修一复习资料
- 大学武装部正规化建设实施方案
评论
0/150
提交评论