软件工程基础与案例教程 教学大纲、授课计划_第1页
软件工程基础与案例教程 教学大纲、授课计划_第2页
软件工程基础与案例教程 教学大纲、授课计划_第3页
软件工程基础与案例教程 教学大纲、授课计划_第4页
软件工程基础与案例教程 教学大纲、授课计划_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《软件工程》教学大纲课程代码:课程总学分:3课程总学时数:54一、课程目标本课程目的是培养本科生对大中型软件开发过程中所涉及的软件过程模型、设计方法、工程开发技术和工具有全面系统的理解和掌握,指导软件生产和管理,并通过项目开发过程实践掌握软件开发的基本过程和方法以及思想,为以后工作中的软件分析、设计、维护及管理等活动打下良好的基础。本课程是一门综合且实践性较强的课程,需要先修过数据结构、数据库原理、程序设计语言、面向对象技术等课程才能够掌握。二、教学内容、要点和课时安排第一章软件工程概述3学时第一节关于软件1、软件及其特性2、软件开发技术演化第二节关于软件工程软件危机的出现及其解决途径软件工程概念第三节软件工程原理与原则1、基本原理2、基本原则第四节软件工程范型1、结构化开发范型2、面向对象开发范型第五节软件工程基本活动第二章软件过程与模型6学时第一节软件生存周期第二节软件过程框架第三节软件过程评估1、软件产品与过程2、软件过程评估第四节软件能力成熟度模型能力成熟模型CMM五级模型第五节软件过程模型第六节传统的软件过程模型1、瀑布模型2、增量模型3、螺旋模型第七节面向对象过程模型1、构建集成模型2、统一过程模型第三章敏捷软件过程3学时第一节敏捷软件工程过程1、敏捷过程2、敏捷开发原则第二节Scrum软件开发过程1、Scrum思想2、Scrum术语与过程第三节极限编程1、什么是极限编程?2、极限编程要素第四节结对编程1、什么是结对编程?2、结对编程分析第4章需求获取3学时第一节关于用户需求与软件需求第二节需求获取过程第三节基于会谈的需求获取方法第四节基于调查表的需求获取方法第五节基于场景的需求获取方法第六节基于用例的需求获取方法1、用例分析2、构建活动图和泳道图3、用例描述第五章结构化分析6学时第一节结构化分析概述第二节结构化分析模型第三节数据流分析方法1、数据流图2、数据字典3、数据流分析步骤第四节数据分析方法第五节状态分析方法第六节结构化分析步骤第六章结构化设计6学时第一节概述第二节软件设计过程1、概要设计2、详细设计第三节结构化设计原理第四节软件模块独立性度量第五节软件结构化设计软件结构设计数据流模型3、数据流设计方法第六节软件详细设计详细设计任务详细设计方法第七章软件结构化测试3学时第一节软件测试概述软件测试的目的验证与确认软件测试的原则第二节软件测试策略1、单元测试2、集成测试3、确认测试4、系统测试第三节测试用例设计第四节黑盒测试技术等价类划分2、边界值分析3、错误推测第五节白盒测试技术1、逻辑覆盖2、路径覆盖3、循环路径测试策略第六节集成测试技术1、集成策略2、性能测试第八章面向对象分析6学时第一节面向对象分析模型逻辑模型交互模型3、实现模型4、部署模型第二节面向对象建模语言(UML)1、UML组成2、UML视图第三节面向对象分析过程第四节领域分析与业务建模1、识别业务类和领域类2、构建业务类图3、识别属性和操作4、构建协作图5、构建包图6、构建软件的逻辑架构第五节软件的交互行为分析1、建立系统顺序图2、建立操作契约3、建立顺序图4、系统状态图第9章面向对象设计6学时第一节面向对象设计概述1、面向对象设计过程2、面向对象设计原则第二节构件设计1、构件概念2、构件设计步骤3、构件设计原则第三节确定并发性第四节面向对象详细设计1、模型精化2、逻辑架构与设计模式3、类详细设计第五节部署设计第十章面向对象实现与测试3学时第一节面向对象实现第二节面向对象测试基础1、面向对象分析的测试2、面向对象设计的测试3、面向对象程序的测试第三节面向对象测试策略1、类方法测试2、类测试3、类簇测试4、系统测试第十一章软件维护3学时第一节软件维护概述第二节软件可维护性第三节软件维护活动的类型第四节软件维护技术第五节软件维护技术与过程第六节提高软件的可维护性第十二章软件项目管理6学时第一节软件项目管理概述第二节软件团队第三节软件项目管理的度量1、软件过程度量2、软件项目度量第四节软件风险管理1、风险识别2、风险预测3、风险管理第五节软件配置管理1、基本概念2、件配置管理活动3、版本管理第六节软件项目规模估算1、软件项目资源2、软件项目规模度量第七节软件项目估算的分解技术1、基于问题分解的估算2、基于过程分解的估算第八节中级COCOMO估算模型第九节软件项目进度管理1、进度计划2、进度安排3、进度跟踪三、教学方法《软件工程》是一门理论性、实践均较强的课程,在教学程中要注重理论教学,分组讨论和项目实践教学相结合的教学模式。四、成绩考核方法按学校、学院有关课程的成绩考核规定执行,综合平时学习、课程作业、实验成绩和期末考试成绩给出总评程序。期末考试采用闭卷形式;实验成绩则根据学生平时实验情况和完成实验报告情况评定。评分标准:平时课程作业成绩(20%)+项目实践成绩(40%)+期末考试成绩(40%)。六、教材与主要参考书目教材:1、《软件工程基础与案例教程(微课视频版)》,窦万峰,清华大学出版社,2024年。主要参考书目:1、《SoftwareEngineering–APractitioner’sApproach》(EighthEdition),R.S.Pressman,著,黄柏素,梅宏译,机械工业出版社,2007年版;2、《SoftwareEngineering》,IanSommerville著,程成,陈霞等译,机械工业出版社,2003年版;3、《SoftwareEngineeringwithJAVA》,StephenR.Schach著,袁兆山等译,机械工业出版社,1999年版;4、《软件项目管理案例教程》,韩万江主编,机械工业出版社,2015年年版;5、《软件度量》NormanE.Fenton,ShariLawrencePfleeger,杨海燕,赵巍,张力等译,机械工业出版社,2004年版。6、《软件工程方法与实践》,窦万峰,机械工业出版社,2016年版。学年第2学期教学周历学生人数课程名称软件工程主讲教师周次日期讲课或实验、实习等(章节、题目名称及要点)教学形式及时间分配备注讲授实验习题课课堂讨论考试考查实习社会调查作业见习1第1章软件工程理论基础1.1关于软件;关于软件工程、1.3软件工程基本原理与原则;1.4软件工程范型;1.5软件工程活动。32第2章软件过程与模型2.1软件生存周期;2.2软件过程框架;2.3软件过程评估;2,4软件能力成熟度模型;2.5软件过程模型;2.6传统的软件过程模型;2.7面向对象过程模型。33第3章敏捷软件工程方法3.1敏捷软件工程过程;3.2Scrum软件开发过程;3.3极限编程;3.4结对编程。34第4章需求获取4.1关于用户需求与软件需求;4.2需求获取过程;4.3基于会谈的需求获取方法;4.4基于调查表的需求获取方法;4.5于场景的需求获取方法;4.6基于用例的需求获取方法。35第5章结构化分析5.1结构化分析概述;5.2结构化分析模型;5.3数据流分析方法:5.4数据建模分析方法;状态分析方法;5.6结构化分析过程;5.7软件需求规格文档。36案例分析。37第6章结构化设计6.1概述;6.2软件设计过程;6.3结构化设计原理;6.4软件模块独立性度量;6.5软件结构化设计方法;386.6软件详细设计;案例分析39第7章结构化软件测试7.1软件测试概述;7.2软件测试策略;7.3测试用例设计;7.4黑盒测试方法;7.5白盒测试方法;7.6集成测试方法。310第8章面向对象分析8.1面向对象分析模型;8.2面向对象建模语言;8.3面向对象分析过程;8.4领域分析与业务建模。3118.5软件的交互行为分析。案例分析。312第9章面向对象设计9.1面向对象设计概述;9.2构件设计;9.3确定并发性;9.4面向对象详细设计3139.5部署设计;案例分析。314第10章面向对象实现与测试。10.1面向对象实现;10.2面向对象测试基础;10.3面向对象测试策略。315案例分析,系统实现,讨论。316第11章软件维护11.1软件维护概述;11.2软件的可维护性;11.3软件维护活动的类型;11.4软件维护技术;11.5提高软件的可维护性。317第12章软件项目管理的12.1软件项目管理概述;12.2软件工程管理度量;12.3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论