清华大学信息学院软件工程教学大纲

合集下载

(完整word版)软件工程课程教学大纲

(完整word版)软件工程课程教学大纲

《软件工程》课程教学大纲一、课程代码与名称(小四号宋体加粗)课程代码: CS132201中文名称: 软件工程英文名称: Software Engineering二、课程概述及与相关课程关系软件工程是计算机科学与技术专业的专业必修课, 是指导学生按照工程化、标准化和规范化的方法开发软件系统的一门课程。

通过本课程学习, 学生能够掌握现代软件设计与开发的基本原理、方法和技术;熟悉结构化和面向对象软件设计与开发的全过程;了解软件项目管理、软件维护等方面知识。

软件工程与前后课程间关联关系、课程群对应的局部鱼骨图分别如下所示:图例:应用方向软件工程课程群及对应课程群项目、学年项目(局部)图图例:三、课程教学对象与教学目的适用专业: 计算机科学与技术教学目的:通过理论教学和实践相结合, 使学生初步具备运用软件工程的概念、原理、技术和方法开发与维护软件的能力, 并提高学生编写相关技术文档的能力, 及分析问题和解决问题的能力和团队工作交流能力。

*注: 该表所列指标可对照培养方案中所列指标来解释。

A: 认知, 指从教、学活动中、从生活经验和社会经验等多种信息渠道获得知识, 侧重知识的获取, 没有实训要求。

B: 训练, 指教、学活动中由教师引导开展的基础测试或练习, 匹配有课程讨论、课后研讨等环节。

C: 实践, 指以学生为主导, 通过实练而形成的对完成某种任务所必须的活动方式, 匹配有课程的三级项目或其它实践环节。

D: 探索, 指学生独立探寻问题、摸索、解答的活动, 不设置专门的考核。

(留空表示无该项要求)四、课程内容、学时分配及主要的教学方法本课程对主要软件开发方法采用项目驱动教学模式, 结合实验和项目开发实践, 使课程的实践与理论教学内容紧密配合, 同步进行, 达到理论指导实践, 实践促进理论学习目的。

通过理论教学、实践(实验)、团队项目开发实践3环节将理论与实践紧密联系。

教学中采用问题引导方式推进学生基于问题的学习(problem based learning), 以为学生为中心鼓励学生参与课程讨论, 促进学生采用主动学习方法(active learning)。

《软件工程》课程教学大纲36学时

《软件工程》课程教学大纲36学时

《软件工程》课程教学大纲一、课程基本信息二、课程教学目标通过本课程的学习,要求学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展方向;如何用工程化的方法开发软件项目,以及开发过程中应遵循的流程、准则、标准和规范。

本课程以理论结合实践的方式进行同步教学。

课程分三个部分:理论授课部分、工具与实践授课部分和学生实践部分。

配合理论教学,对学生进行使用工具能力的训练,从而进一步提高学生的实践能力。

三、教学学时分配《数据结构》课程理论教学学时分配表*理论学时包括讨论、习题课等学时。

四、教学内容和教学要求第一章软件工程的基本概念(2学时)(一)教学要求1.了解软件概念、特点及分类方法。

2.了解软件发展及软件危机的起因。

3.了解软件工程的概念及其要素。

4.了解软件工程的基本目标和原则。

5.了解软件工程的近期研究的课题。

(二)教学重点与难点教学重点:无教学难点:无。

(三)教学内容1.软件的定义、特点和分类2.软件的发展和软件危机3.软件工程方法学4.开发方法的特点与选择5.软件的生命周期6.软件生存期模型第二章需求分析与设计(8学时)(一)教学要求1.了解需求分析的概念、原理与方法。

2.明确需求分析的任务和目的。

3.了解获取需求的手段。

4.了解结构化分析方法与建模。

5.了解需求规格书的主要内容。

6.了解需求定义的验证方法。

(二)教学重点与难点教学重点:需求分析的概念。

教学难点:需求获取。

(三)教学内容1.可行性分析2.需求分析的概念和任务3.获取需求的方法4.结构化分析建模方法5.数据库分析建模方法第三章软件设计(8学时)(一)教学要求1.了解软件设计的任务,目标和文档;2.理解软件设计的原理和优化准则;5.掌握软件的结构设计。

(二)教学重点与难点教学重点:软件设计的原理和优化准则,软件的结构设计。

教学难点:软件的结构设计。

(三)教学内容1.软件设计的过程模型2.软件设计的策划3.用户界面设计4.体系结构设计5.用例设计6.子系统设计7.构件设计第四章软件实现(6学时)(一)教学要求1.了解什么是程序设计;2.理解程序设计的原则;3.理解程序设计风格的要求;4.掌握提高程序效率的方法。

《软件工程》课程教学大纲 .doc

《软件工程》课程教学大纲 .doc

谢谢你的观赏GDOU-B-11-213《软件工程》课程教学大纲课程简介课程简介:《软件工程》是计算机科学与技术专业、计算机软件工程专业、计算机网络工程专业的一门专业基础课,旨在使学生掌握软件工程的基本概念、原理和方法,从软件开发技术、软件工程管理和软件工程环境等几个方面了解如何将系统的、规范化的和可以度量的工程方法运用于软件开发和维护中。

通过本课程的学习,基本掌握结构化方法、面向对象方法等软件开发技术,初步了解软件复用的概念及基于构件的开发方法,同时对软件工程管理和环境等内容有一个总体的了解。

课程大纲一、课程的性质与任务:软件工程是计算机专业学生的一门专业必修课。

主要讲授软件开发方法和软件工程的基本理论、基本方法、基本技术,学会运用系统工程学的基本方法,定量分析软件及其开发过程的各种特性,科学管理软件工程,同时让学生了解软件开发的最新方法和发展动态。

二、课程的目的与基本要求:通过本课程的学习,要求学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展方向;如何用过程化及面向对象的方法开发软件项目,以及开发过程中应遵循的流程、准则、标准和规范。

平时成绩(作业和实验)占30%,期末考试占70%。

三、面向专业:计算机科学与技术四、先修课程:“计算机操作系统”“数据库系统原理”“C语言程序设计”和“数据结构”等。

五、本课程与其它课程的联系:学习本课程要求有一定的程序设计经验,应至少学习一门程序设计语言课程。

本课程涉及到数据结构、数据库、操作系统等的一些知识和概念,因此先导课程为数据结构、数据库原理、操作系统。

本课程将为信息系统开发打下坚实基础。

六、教学内容安排、要求、学时分配及作业:第一章软件危机及软件工程2学时1 教学内容1.1 软件危机1.2 软件工程1.3 技术审查及管理复审2 教学目的及要求了解软件的特点,软件生产发展的三个阶段,各阶段的特点,软件危机的产生及其表现形式;初步了解软件的生存周期模型;理解软件工程的定义及特点,软件生存期各阶段的特点和内容;深刻理解软件危机产生的原因。

《软件工程》教学大纲

《软件工程》教学大纲

《软件工程》课程教学大纲《软件工程》是一门为计算机科学与技术专业开设的专门介绍软件开辟思想、方法、技术、管理和应用的专业基础课程。

通过本课程的学习,旨在使学生树立良好的软件开辟理念,建立正确的、符合工程规范的、系统化的软件工程思想,训练软件分析的思维能力,掌握软件系统的各种开辟方法,提高软件设计水平,为以后的软件开辟打下良好的基础。

课堂教学51 学时,机动3 学时。

采用课堂讲授、多媒体课件为主,课外做开辟一个小型软件系统作业的实践活动为辅的教学方法。

本课程面向计算机科学与技术专业的本科专业。

通过本章的学习,了解软件、软件危机和软件工程的有关概念。

主要内容:软件和软件工程的有关概念以及软件工程的基本理论。

教学重点:软件定义和软件产品特点;软件危机和解决软件危机的途径;软件工程定义和基本原则。

教学难点:软件工程的基本原则。

1、软件工程过程的定义2、软件工程的三要素3、软件工程工具本章采用课堂讲授和多媒体课件的方式进行教学。

1.5 学时。

通过本章的学习,了解软件和软件工程过程的有关概念,掌握软件工程过程、软件生命周期及其模型等内容。

主要内容:软件工程过程的概念、软件工程过程模型及软件工程过程技术和软件重用的基本理论。

教学重点:软件工程过程模型及技术。

教学难点:软件重用。

本章采用课堂讲授和多媒体课件的方式进行教学。

2 学时。

通过本章的学习,了解可行性研究的目的任务,掌握可行性研究的方法和技术。

主要内容:系统需求识别的目标、过程,可行性研究的目的、任务、步骤,可行性研究的成本/效益分析的方法和系统体系结构建模、方案制定与评价。

教学重点:可行性研究的目的、任务、步骤,可行性研究的成本/效益分析的方法和系统体系结构建模、方案制定与评价。

教学难点:可行性研究的成本/效益分析的方法和系统体系结构建模。

1、硬件和硬件工程2、软件和软件工程3、人机交互工程4、数据库和数据库工程1、目的2、任务本章采用课堂讲授和多媒体课件的方式进行教学。

《软件工程》教学大纲

《软件工程》教学大纲

《软件工程》教学大纲教学目的:本课程的教学目的是通过课堂教学和实践训练,使学生掌握软件工程的基本原理,包括需求分析、软件设计、软件实现和软件测试等,从工程学角度认识软件在大型系统中的设计和应用,能够在用户需求的基础上为一个系统或现有系统的扩展部分开发清晰的、简明的和正式的需求规格说明,使用UML语言进行正确建模,应用设计原则和设计模式进行设计和开发,实现系统的简单图形用户界面,最终集成为一个完整系统进行测试,具备作为软件工程师从事软件开发所需的专业能力。

教学任务:本课程从软件生命周期的角度讲解软件工程的基本概念、基本原理和基本方法,内容涉及开发管理、需求建模、设计实现和测试维护等四大部分的相关基础知识,强调软件工程的根本性和永久性原则,诸如可测试性、软件体系结构、模块化和可复用性等,关注软件系统的复杂性问题以及迭代式的开发方法,重视分析问题与解决问题的能力以及软件工程实践训练,培养学生良好的工程化开发习惯。

在课程实验中,要求学生以开发团队(一个团队通常由4-5人组成)的方式开发一个具有一定规模的软件系统,侧重培养学生发现问题、独立分析问题和解决问题的能力以及团队协作精神,使学生初步体会到一个软件项目开发的全过程。

教学方法:•课程讲授:在软件工程理论知识的讲解中注重贯穿实际的软件开发案例,使学生真正理解这些理论知识,建立软件开发的系统化与工程化观念和质量意识,掌握软件工程的最新技术。

•启发思考:注重鼓励和引导探索式学习,学生通过文献查阅以及与软件企业人员的接触交流,真正体会当前软件工程业界的真实案例和最佳实践。

同时,在教学过程中营造轻松活跃的课堂气氛,开展互动式的讨论,鼓励学生结合课程实践中的问题进行专题报告和软件演示。

•课程实验:注重培养学生分析问题和解决问题的能力,要求学生以小组形式协作完成一定规模的课程实验项目,在实践过程中内化和提升理论知识,真正学会运用软件工程的思想和技术解决实际问题。

教学内容结构:教学单元:(1) 软件工程概述教学目标:引导学生从软件的本质特性看待软件开发所面临的挑战,掌握软件工程的基本概念及其要素;了解软件质量的内涵和属性,学会从产品和用户的角度评价什么是好的软件;理解软件过程的基本活动,掌握瀑布模型和迭代开发模型。

《软件工程》教学大纲+授课计划

《软件工程》教学大纲+授课计划

《软件工程》教学大纲+授课计划《软件工程》教学大纲及授课计划引言:软件工程是计算机科学中的重要领域,对开发高质量软件至关重要。

本文将从教学大纲和授课计划两个方面,详细介绍《软件工程》课程的内容和组织安排,旨在培养学生系统地理解和应用软件工程的知识和技能。

第一部分:教学大纲1. 课程简介1.1 课程背景1.2 学习目标1.3 先修要求2. 课程内容2.1 软件需求工程2.1.1 需求获取和分析2.1.2 需求规格化和验证2.2 软件设计与建模2.2.1 结构设计2.2.2 行为设计2.3 软件构建与测试2.3.1 编码规范和实践2.3.2 软件测试技术2.4 软件项目管理2.4.1 项目计划与进度管理2.4.2 风险管理3. 教学方法3.1 理论讲授3.2 实践操作3.3 课堂讨论3.4 项目实践4. 考核方式4.1 期中考试4.2 课堂表现和作业4.3 项目实践成果第二部分:授课计划1. 第一周1.1 课程介绍与教学大纲解读1.2 软件工程导论2. 第二周2.1 软件需求工程概述2.2 需求获取和分析方法3. 第三周3.1 需求规格化和验证基础3.2 用例建模与需求验证4. 第四周4.1 软件设计与建模概述4.2 结构设计原理与实践5. 第五周5.1 行为设计基础5.2 状态图与活动图6. 第六周6.1 软件构建与测试概述6.2 编码规范与实践7. 第七周7.1 软件测试基础7.2 单元测试与集成测试8. 第八周8.1 软件项目管理概述8.2 项目计划与进度管理9. 第九周9.1 风险管理基础9.2 风险识别与应对策略10. 第十周10.1 软件质量保证与持续改进10.2 课程总结与复习结语:本教学大纲和授课计划旨在帮助学生系统学习软件工程的理论与实践,全面提升他们软件开发与管理的能力。

通过理论讲授、实践操练和项目实践等方式,学生将掌握软件需求工程、软件设计与建模、软件构建与测试以及软件项目管理等关键知识和方法。

软件工程》实践教学大纲(3篇)

软件工程》实践教学大纲(3篇)

第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. 维护实验:对已完成的软件进行维护,修复已知问题和优化性能。

专业核心课程《软件工程》 课程教学大纲

专业核心课程《软件工程》 课程教学大纲

《软件工程》课程教学大纲一、课程简介二、课程目标三、课程学习内容与方法(一)理论学习内容及要求4567(二)实验学习内容及要求89四、课程考核(一)考核内容与考核方式(二)成绩评定1.平时成绩评定(1)课堂表现(30 分):理论和实验学习课堂,利用学习通平台课堂签到、互动答题、选人、主题讨论等课程活动的参与情况自动评分,辅以课堂纪律保持情况手动评分。

(2)在线作业(30分):各知识模块利用学习通平台发布在线作业,根据作业完成情况进行评分。

(3)阶段性测验(40分):利用学习通平台在线题库选题组卷在线考试,或手动组卷线下测验,或验收软件项目建模成果等方式进行评分。

2. 实验完成情况(100分):根据学生对实验任务的完成情况和完成质量,以及报告内容的格式和详略情况进行评分,再辅以对小组分工情况抽问回答情况进行评分修正。

3.期末成绩评定期末考核主要考察学生对软件工程的基本概念、软件过程及过程模型的理解。

可以根据软件项目实际合理选择合适的过程模型,组织软件开发活动,能很好的使用面向对象方法开展软件需求和设计建模及文档编写,能熟练使用UML建模软件工具设计模型图表示模型信息,能组织或高效的参与软件开发团队,能与包括用户/客户在内的软件相关角色进行沟通和协作。

考核方式闭卷考试。

3.总成绩评定总成绩由平时成绩、实验成绩和期末考试成绩构成。

总成绩(100%)=平时成绩(20%)+实验成绩(20%)+期末考试成绩(60%)4.课程目标考核方式评分标准考核项目评分标准90-100分80-90分70-80分60-70分0-60分课堂表现理论课上严格遵守课堂纪律,按要求完成课堂练习且正确率高。

积极主动参与课堂讨论,讨论表述的论点正确有新意,有自己的见解,能体现良好的职业道德、职业使命感和社会责任感。

实验课不迟到早退,遵守机房管理规范、爱护实验设备,课上积极与老师互动,实验室项目按时提交。

理论课上遵守课堂纪律,按要求完成课堂练习且正确率比较高。

软件工程教学大纲

软件工程教学大纲

软件工程教学大纲《软件工程》课程教学大纲一、课程的基本情况课程中文名称:软件工程课程英文名称:softwareengineering课程代码:1302031课程类别:专业基础课课程学分:2.5课程学时:44讲课对象:计算机科学与技术专业、软件工程专业前导课程:高级语言程序设计、数据结构、数据库原理二、教学目的《软件工程》是计算机专业的一门必修的专业课程,通过本课程的学习,要求学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展方向;如何用工程化的方法开发软件项目,以及开发过程中应遵循的流程、准则、标准和规范。

《软件工程》是一门综合性和实践性很强的专业课程。

应注重方法、技术的实际应用,能应用相应的图形工具开发小型软件项目,为更深入地学习和今后从事软件工程实践打下良好的基础。

三、教学基本建议ch1introduction基本要求:§1.1softwarecrisis§1.2softwareengineering§1.3lifespan§1.4softwareprocess重点与难点:lifespanch2feasibilitystudy基本要求:§2.1task§2.2process§2.3systemflowdiagram§2.4dataflowdiagram§2.5datadictionary§2.6cost/benefit重点与难点:dataflowdiagram,datadictionarych3requirementsanalysis基本建议:§3.1task§3.2process§3.3conceptionmodel&e-rdiagrams§3.4otherdiagramtools重点与难点:conceptionmodel&e-rdiagramsch4formalspecificationmethods基本建议:§4.1statemachine§4.2petrinetwork§4.3zspecificationlanguage重点与难点:statemachinech5systemdesign基本建议:§5.1designprocess§5.2designconcepts§5.3designprinciples§5.4diagramtoolsofsoftwarearchitecture§5.5datafloworienteddesignmethods:transform&transactionmapping重点与难点:datafloworienteddesignmethods:transform&transactionmappingch6programdesign基本要求:§6.1structuredprogramdesign§6.2interfacedesign§6.3proceduredesigntools§6.4datastructureorienteddesignmethods重点与难点:datastructureorienteddesignmethodsch7implementation基本要求:§7.1coding§7.2softwaretestingfundamentals§7.3unittesting§7.4integrationtesting§7.5va lidationtesting§7.6white-boxtesting§77black-boxtesting重点与难点:ch8maintenance基本建议:softwaretestingfundamentals§8.1definitions§8.2softwareevolution§8.3maintainabil ity-softwaremeasurement重点与难点:softwareevolutionch9object-orientedmethodology基本要求:§9.1introduction§9.2concepts§9.3objectmodelingtechniques-3models(object,dynamic,function)重点与难点:3models(object,dynamic,function)ch10object-orientedanalysis基本要求:§10.1modelingprocess§10.2requirementspresentation§10.3createobjectmodel§10.4createdynamicmodel§10.5createfunctionmodel重点与难点:modelingprocess,requirementspresentationch12object-orientedimplement基本要求:§12.1programminglanguages§12.2programmingstyles§12.3ootestingstrategies§12.4testcasedesignforoosoftware重点与难点:ootestingstrategiesch13softwareprojectmanagement基本建议:§13.1softwaresizing§13.2costestimation§13.3softwareplan§13.4personnel§13.5qualityassurance§13.6.projectplan重点与难点:softwareplan,projectplan四、课程内容与学时分配课程内容与学时分配表中内容ch1introductionch2feasibilitystudych3requirementsanalysisch4formalspecificatio nmethodsch5systemdesignch6programdesignch7implementationch8maintenancech9object-orientedmethodologych10object-orientedanalysisch12object-orientedimplementch13softwareprojectmanagement总学时4444426462242444学时五、教材与参考书教材:张海藩主编,《软件工程导论(第四版)》,清华大学出版社,2021参考书:[1]rogers.pressman,《softwareengineeringapractitioner’sapproach》5edition,chinamachinepress,2000[2]rogers.pressman著,梅宏译,《软件工程-实践者的研究方法》原书第5版,机械工业出版社,2002th六、教学方式和考核方式1、教学方式课程的讲授应当将理论教学与实验教学紧密结合,并使之相互辅助,提升教学效率。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对象所应具有的东西:标识属性
3第6周
第九章
第十章
第十一章
标识实例关系
标识服务和消息
质量问题
3第7周
第十二章
第十三章
第十四章
第十五章
编制分析模型的文档
评审和修正分析模型
过渡到设计
问题论域中的问题
3第8周
第十六章
第十七章
第十八章
第十九章
定义用户界面
任务管理问题
定义数据库设计
设计级的质量问题3Fra bibliotek9周第二十章
第二十一章
设计模型的文档编制和评审
实现方面的问题
1第10周
结构化设计方法、软件测试(补充教材)
8第11、12周
项目管理(补充教材)
6第13、14周
大作业总结
3第15周
课堂考查
3第16周
教学内容
第一章
引论
2学时第1周
面向对象的基本概念(补充教材)
面向对象分析、面向对象设计
3第2周
第二章
事例分析
1
结构化分析方法(补充教材)
3第3周
第三章
第四章
第五章
发现和标识合适的对象
类和对象的标识
类和对象的细化
3第4周
软件工具(补充教材)
3第5周
第六章
第七章
第八章
处理复杂事物:标识结构
处理复杂性:标识主题
相关文档
最新文档