软件工程教学大纲
软件工程课程教学大纲
软件工程课程教学大纲一、课程概述软件工程课程旨在培养学生的软件开发能力和团队协作能力,通过理论学习和实践项目开发,使学生能够独立完成软件开发项目并具备解决实际问题的能力。
二、教学目标1. 理解软件工程的基本概念和原理;2. 掌握软件开发过程中的需求分析、设计、编码和测试等关键技术;3. 培养软件项目管理和团队协作的能力;4. 培养解决实际软件开发问题的能力。
三、教学内容1. 软件工程导论- 软件工程的定义与目标- 软件工程的发展历程- 软件工程的重要性和应用领域2. 软件开发过程- 瀑布模型- 增量模型- 敏捷开发模型- 迭代开发模型- 螺旋模型3. 需求分析与规格说明- 需求获取技术- 需求分析与建模- 法律、伦理和专业责任问题4. 软件设计与建模- 结构化设计- 面向对象设计- UML建模工具的使用- 设计原则与模式5. 软件测试与验证- 软件测试的基本概念- 黑盒测试和白盒测试- 单元测试、集成测试和系统测试- 测试策略与自动化测试工具6. 软件项目管理- 项目计划与进度管理- 项目风险管理- 团队协作与沟通- 质量管理与过程改进四、教学方法1. 理论授课:讲解软件工程基本概念和原理;2. 实践项目:学生以小组形式参与软件开发项目,包括需求分析、设计、编码和测试等环节;3. 讨论与案例分析:通过分析实际软件开发案例,学习解决问题的方法和策略;4. 实验与实践:使用软件工程相关工具进行实验和实践,加深对理论知识的理解和应用能力。
五、教材与参考书目主教材:- 《软件工程导论》(第4版),Ian Sommerville,人民邮电出版社,2020年。
参考书目:- 《软件工程:实践者导向》(第9版),Roger Pressman,机械工业出版社,2020年。
- 《UML和模式应用》(第3版),Craig Larman,机械工业出版社,2017年。
- 《软件测试:原理、技术与工具》(第3版),武汉大学软件工程研究所软件测试团队,清华大学出版社,2018年。
(完整word版)软件工程课程教学大纲
《软件工程》课程教学大纲一、课程代码与名称(小四号宋体加粗)课程代码: CS132201中文名称: 软件工程英文名称: Software Engineering二、课程概述及与相关课程关系软件工程是计算机科学与技术专业的专业必修课, 是指导学生按照工程化、标准化和规范化的方法开发软件系统的一门课程。
通过本课程学习, 学生能够掌握现代软件设计与开发的基本原理、方法和技术;熟悉结构化和面向对象软件设计与开发的全过程;了解软件项目管理、软件维护等方面知识。
软件工程与前后课程间关联关系、课程群对应的局部鱼骨图分别如下所示:图例:应用方向软件工程课程群及对应课程群项目、学年项目(局部)图图例:三、课程教学对象与教学目的适用专业: 计算机科学与技术教学目的:通过理论教学和实践相结合, 使学生初步具备运用软件工程的概念、原理、技术和方法开发与维护软件的能力, 并提高学生编写相关技术文档的能力, 及分析问题和解决问题的能力和团队工作交流能力。
*注: 该表所列指标可对照培养方案中所列指标来解释。
A: 认知, 指从教、学活动中、从生活经验和社会经验等多种信息渠道获得知识, 侧重知识的获取, 没有实训要求。
B: 训练, 指教、学活动中由教师引导开展的基础测试或练习, 匹配有课程讨论、课后研讨等环节。
C: 实践, 指以学生为主导, 通过实练而形成的对完成某种任务所必须的活动方式, 匹配有课程的三级项目或其它实践环节。
D: 探索, 指学生独立探寻问题、摸索、解答的活动, 不设置专门的考核。
(留空表示无该项要求)四、课程内容、学时分配及主要的教学方法本课程对主要软件开发方法采用项目驱动教学模式, 结合实验和项目开发实践, 使课程的实践与理论教学内容紧密配合, 同步进行, 达到理论指导实践, 实践促进理论学习目的。
通过理论教学、实践(实验)、团队项目开发实践3环节将理论与实践紧密联系。
教学中采用问题引导方式推进学生基于问题的学习(problem based learning), 以为学生为中心鼓励学生参与课程讨论, 促进学生采用主动学习方法(active learning)。
软件工程专业教学大纲
软件工程专业教学大纲软件工程专业教学大纲:
第一部分:导论
软件工程的定义与概念
软件工程发展历程
软件工程的重要性与应用领域
第二部分:基础知识
计算机科学与软件工程的关系
软件工程的基本原理
软件生命周期与软件开发过程
需求分析与软件设计
软件测试与质量保证
第三部分:主要课程及内容
数据结构与算法
计算机网络原理
操作系统与系统编程
数据库原理与应用
面向对象程序设计
软件项目管理与团队协作
第四部分:实践教学
软件工程实践课程介绍
软件系统设计与开发实践
软件测试与调试实践
软件项目管理实践
软件质量保证实践
第五部分:教学方法与评估
课堂教学与实践相结合
案例分析与小组讨论
考试、作业与实验报告评估
课程设计与项目实践评估
第六部分:教学目标与培养要求培养学生的计算机基本功
培养学生的软件开发能力
培养学生的团队合作与沟通能力
培养学生的解决问题能力与创新思维
第七部分:教学资源与保障
教材与参考书目
实验室设备与软件环境
教师团队与指导导师
学校资源与实习机会
第八部分:教学内容更新与发展
结合当前软件工程领域热点
引入新技术与新方法
持续改进课程内容与教学方法
总结:
通过本教学大纲的设计,旨在为软件工程专业的学生提供系统全面的课程安排,培养学生的软件工程能力,提高学生在软件领域的竞争力,为其未来的职业发展打下坚实的基础。
愿每一位学生在本专业的学习过程中都能获得实实在在的收获,成为优秀的软件工程师。
《软件工程导论》课程教学大纲(5篇)
《软件工程导论》课程教学大纲(5篇)第一篇:《软件工程导论》课程教学大纲《软件工程导论》课程教学大纲课程编号:课程中文名称:软件工程导论课程英文名称:Introduction of Software Engineering 总学分:2 总学时: 36 讲课学时:36习题课学时:0 实验学时:0 上机学时:0 授课对象:软件工程专业本科先修课程:程序设计课程要求:必修课课程分类:专业基础课一、课程教学目的随着计算机技术的发展,软件的规模越来越大,软件的结构越来越复杂,软件开发与维护的难度也越来越高,软件的质量难以保证,软件开发与维护的进度和成本难以控制,这就要求有一种科学的方法指导软件的开发与维护工作。
软件工程就是这样一种指导软件开发和维护的工程学科。
通过本课程的学习,使学生了解软件工程的概念、原理和技术,初步掌握软件开发的基本方法和常用工具,建立软件开发和维护的工程化意识,培养独立思考的能力和团队合作的精神,为后续相关课程的学习以及从事软件开发与维护的实际工作打下良好的基础。
二、教学内容及基本要求教学内容:1.课程内容简介(1学时)本课内容简介,基本要求和目标,教学方法,学习方法,教材(英1 文原版)的主要内容及使用,中文参考教材简介2.软件工程的基本概念(4学时)软件工程的基本概念,软件危机产生的原因,软件危机面临的问题及解决方法,什么是好的软件以及软件的质量的概念,实施软件工程的人员,软件工程的系统方法,软件工程的工程方法,软件工程的发展3.过程建模与生命周期(4学时)过程的概念,软件过程模型,软件生命周期,各种常用的软件过程模型,过程建模的工具和技术 4.软件项目计划与管理(4学时)软件项目进展跟踪,软件项目的人员,工作量的估算,风险管理,项目计划,项目管理 5.需求获取(4学时)需求过程,需求的类型,需求的特征,需求的表示方法,原型需求法,需求文档,需求过程的参加人员,需求确认,需求度量,需求表示方法的选择,表示需求的工具。
《软件工程》教学大纲
《软件工程》课程教学大纲《软件工程》是一门为计算机科学与技术专业开设的专门介绍软件开辟思想、方法、技术、管理和应用的专业基础课程。
通过本课程的学习,旨在使学生树立良好的软件开辟理念,建立正确的、符合工程规范的、系统化的软件工程思想,训练软件分析的思维能力,掌握软件系统的各种开辟方法,提高软件设计水平,为以后的软件开辟打下良好的基础。
课堂教学51 学时,机动3 学时。
采用课堂讲授、多媒体课件为主,课外做开辟一个小型软件系统作业的实践活动为辅的教学方法。
本课程面向计算机科学与技术专业的本科专业。
通过本章的学习,了解软件、软件危机和软件工程的有关概念。
主要内容:软件和软件工程的有关概念以及软件工程的基本理论。
教学重点:软件定义和软件产品特点;软件危机和解决软件危机的途径;软件工程定义和基本原则。
教学难点:软件工程的基本原则。
1、软件工程过程的定义2、软件工程的三要素3、软件工程工具本章采用课堂讲授和多媒体课件的方式进行教学。
1.5 学时。
通过本章的学习,了解软件和软件工程过程的有关概念,掌握软件工程过程、软件生命周期及其模型等内容。
主要内容:软件工程过程的概念、软件工程过程模型及软件工程过程技术和软件重用的基本理论。
教学重点:软件工程过程模型及技术。
教学难点:软件重用。
本章采用课堂讲授和多媒体课件的方式进行教学。
2 学时。
通过本章的学习,了解可行性研究的目的任务,掌握可行性研究的方法和技术。
主要内容:系统需求识别的目标、过程,可行性研究的目的、任务、步骤,可行性研究的成本/效益分析的方法和系统体系结构建模、方案制定与评价。
教学重点:可行性研究的目的、任务、步骤,可行性研究的成本/效益分析的方法和系统体系结构建模、方案制定与评价。
教学难点:可行性研究的成本/效益分析的方法和系统体系结构建模。
1、硬件和硬件工程2、软件和软件工程3、人机交互工程4、数据库和数据库工程1、目的2、任务本章采用课堂讲授和多媒体课件的方式进行教学。
《软件工程》教学大纲+授课计划
《软件工程》教学大纲+授课计划《软件工程》教学大纲及授课计划引言:软件工程是计算机科学中的重要领域,对开发高质量软件至关重要。
本文将从教学大纲和授课计划两个方面,详细介绍《软件工程》课程的内容和组织安排,旨在培养学生系统地理解和应用软件工程的知识和技能。
第一部分:教学大纲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 课程总结与复习结语:本教学大纲和授课计划旨在帮助学生系统学习软件工程的理论与实践,全面提升他们软件开发与管理的能力。
通过理论讲授、实践操练和项目实践等方式,学生将掌握软件需求工程、软件设计与建模、软件构建与测试以及软件项目管理等关键知识和方法。
《软件工程》课程教学大纲
《软件工程》课程教学大纲一、课程基本信息课程名称:软件工程英文名称:SoftwareEngineering课程编码:U223C课程类别:专业主干课总学时:48学时(含实验IO学时)总学分:3适用专业:计算机科学与技术/网络工程方向先修课程:高级语言程序设计,数据库设计原理,数据结构开课系部:计算机科学与技术系二、课程的性质和任务《软件工程》是计算机科学与技术专业本科生的一门专业主干课程。
它是一门指导计算机软件系统开发和维护的工程学科,也是计算机科学与技术领域的一个重要学科。
软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学,通过本课程的学习,使学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术,了解软件工程各领域的发展动向;开发软件项目的工程化的方法及在开发过程中应遵循的流程、准则、标准和规范等。
使学生掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为今后从事软件开发和应用打下良好的基础。
通过本课程的学习,培养学生对软件开发能力和项目管理能力。
三、课程教学基本要求(一)理论教学内容和基本要求第1章软件工程概述了解软件工程的产生和发展、软件危机的原因,知道如何消除软件危机。
明白软件工程的基本概念,知道软件工程中包含的领域范围重点:软件危机的产生和消除方法第2章软件过程软件与软件生命周期任务,软件开发过程中的基本开发模型,软件开发工具与软件开发环境。
掌握软件生存期模型,软件开发模型方法介绍。
重点:软件与软件生存期,软件开发过程模型难点:软件开发过程模型第3章结构化分析掌握软件需求获取的方法、软件需求工程的任务、软件需求的原则、主要的需求分析方法;需求工程的基本活动、需求的有效性验证、需求变动管理、需求规格说明;建立结构化分析的三种模型;三种模型对应的描述方法:E-R图,数据流图,状态图。
掌握分层数据流图、数据词典和加工逻辑说明的基本构造方法。
重点:软件需求获取方法、结构化分析方法、分析建模方法难点:结构化分析建模方法第4章结构化设计理解软件结构化分析与结构化设计的映射关系,软件设计的基本原理。
软件工程》实践教学大纲(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. 维护实验:对已完成的软件进行维护,修复已知问题和优化性能。
软件工程课程教学大纲
软件工程课程教学大纲软件工程课程教学大纲一、课程概述软件工程课程是一门面向软件开发和管理的综合性学科,旨在培养学生的软件系统分析、设计、实现和维护的能力,以及理解并应用软件工程原理和方法进行软件开发和管理的能力。
本课程涵盖软件开发的全过程,包括需求分析、设计、编码、测试、部署、维护和管理等方面。
二、课程目标通过本课程的学习,学生将能够:1、掌握软件工程的基本概念和方法;2、熟悉软件开发的全过程,理解并应用各种软件开发方法和模型;3、掌握常用的软件开发工具和技术,如面向对象编程、设计模式、版本控制等;4、掌握软件测试的基本技术和方法,理解并应用测试流程和管理方法;5、掌握软件维护和管理的基本技术和方法,理解并应用配置管理和版本控制等工具;6、增强团队协作和沟通能力,能够有效地参与和领导软件开发团队。
三、课程内容本课程将分为以下四个模块:1、软件工程基本概念和方法:介绍软件工程的基本概念、软件的生命周期、常用的软件开发方法和管理模型等;2、需求分析和设计:介绍需求分析的方法和工具,如USE Case图、数据流图等,以及软件设计的基本原理和方法,如面向对象设计、设计模式等;3、软件实现和测试:介绍编码的基本技术和规范,如代码风格、代码结构等,以及软件测试的基本技术和方法,如黑盒测试、白盒测试等;4、软件维护和管理:介绍软件维护和管理的基本技术和方法,如Bug 管理、版本控制等,以及配置管理和版本控制等工具的使用。
四、课程安排本课程将持续一个学期,共计36个学时,具体安排如下:1、软件工程基本概念和方法:10学时;2、需求分析和设计:12学时;3、软件实现和测试:10学时;4、软件维护和管理:4学时。
五、评估方式本课程的评估方式将包括以下方面:1、平时作业:占总评分的30%;2、期末考试:占总评分的50%;3、出勤率:占总评分的20%。
六、参考资料本课程将使用以下教材和参考书籍:1、《软件工程》(机械工业出版社,作者:史济民);2、《Head First Software Development》(中国电力出版社,作者:Andy Oram等);3、《敏捷软件开发》(人民邮电出版社,作者:Scott W. Ambler 等)。
软件工程》教学大纲
软件工程》教学大纲软件工程》是计算机科学与技术专业中一门综合性和实践性很强的核心课程,主要内容包括软件生存周期模型、可行性分析、需求分析、概要设计、详细设计、面向对象分析与设计、编码、软件质量与质量保证、项目计划与管理。
该课程的开设旨在使学生通过研究,掌握软件项目开发和维护的一般过程,掌握软件开发的传统方法和最新方法,为更深入地研究和今后从事软件工程的实践打下良好的基础。
研究本课程要求先修《数据结构》、《面向对象程序设计》、《数据库原理及应用》、《操作系统》等课程。
本课程的教学要求在每一章教学内容之后给出,大体上分为三个层次:了解、理解和掌握。
了解即能正确判别有关概念和方法;理解是能正确表达有关概念和方法的含义;掌握是在理解的基础上加以灵活应用。
本课程的理论教学内容包括概论、可行性分析和需求分析。
在概论中,学生需要掌握软件和软件工程的基本概念,并了解软件生命周期及软件开发的各个模型。
在可行性分析中,学生需要了解可行性分析的步骤。
在需求分析中,学生需要掌握需求分析的任务与步骤,并了解需求分析的原则和方法。
本课程的教学要求重点在于系统分析、系统设计、系统实现和系统维护。
其中,需求分析和软件测试是较为难点的内容。
学生需要能够用软件工程的方法参与软件项目的分析、设计、实现和维护。
总之,《软件工程》是一门重要的计算机科学与技术专业必修课程,通过研究本课程,学生可以掌握软件项目开发和维护的一般过程,为今后从事软件工程的实践打下良好的基础。
4.概要设计本章将介绍软件设计的概要阶段。
首先,我们将了解概要设计的任务和步骤,以及软件设计的概念和原则,如模块化、抽象、信息隐藏和局部化、模块独立性以及结构设计的评价原则。
然后,我们将介绍两种面向不同设计方法:面向数据流的设计方法和面向数据结构的设计方法。
最后,我们将介绍概要设计文档和评审。
5.详细设计本章将介绍软件设计的详细阶段。
首先,我们将了解详细设计的任务和原则,以及程序流程图PFC、N-S图、PAD图、HIPO图等详细设计方法。
软件工程教学大纲
软件工程教学大纲[简介]软件工程是计算机科学中的一门学科,旨在教授学生软件开发以及项目管理的理论和实践知识。
本文将介绍软件工程教学大纲的内容和目标,以及教学方法和评估方式。
[第一部分:引言]1. 软件工程的定义:软件工程是一种系统化、规范化和可重复的方法,用于开发高质量的软件。
2. 软件工程的重要性:软件在现代社会中的应用广泛,软件工程的实践能够提高软件开发的效率和质量。
[第二部分:教学目标]1. 理论知识:学生应该掌握软件工程的基本原理和方法,包括需求分析、设计、开发、测试和维护等方面的知识。
2. 实践能力:学生应该能够应用软件工程的理论知识解决实际问题,包括软件开发过程中的各个环节。
3. 团队合作:软件开发是一项团队活动,学生应该培养良好的沟通和协作能力。
[第三部分:教学内容]1. 需求分析:介绍需求工程的基本概念和方法,包括需求获取、分析和规格说明等内容。
2. 软件设计:讲解软件设计的原理和方法,包括结构化设计、面向对象设计以及设计模式等知识。
3. 软件开发:介绍软件开发的流程和方法,包括编码、调试、版本控制和软件测试等。
4. 质量保证:教授软件质量保证的理论知识和实践方法,包括软件测试、代码审查和性能优化等。
5. 项目管理:介绍项目管理的基本知识和技巧,包括项目计划、资源管理和风险管理等。
[第四部分:教学方法]1. 理论讲授:通过课堂讲解,向学生传授软件工程知识和理论。
2. 实践操作:安排实践环节,让学生亲自参与软件开发项目,提高他们的实践能力。
3. 小组讨论:组织小组讨论,让学生共同解决软件工程中的问题,培养他们的团队合作能力。
4. 项目实践:安排真实的软件开发项目,让学生在实际环境中应用所学知识,提高他们的实践能力。
[第五部分:评估方式]1. 考试:通过理论考试,评估学生对软件工程理论知识的掌握情况。
2. 项目评估:对学生在实际项目中的表现进行评估,包括项目成果和团队合作能力等方面。
《软件工程》 杜文峰 教学大纲(思政)
《软件工程》杜文峰教学大纲(思政)软件工程是一门重要的学科,是计算机科学和工程学的交叉领域,需要学习者掌握软件开发的基本原理及应用技术。
杜文峰教授担任软件工程的思政课程的授课教师,他制定的教学大纲包括课程的目标、教学内容、教学方法以及考核方式等内容,旨在为学生提供全面而深入的软件工程知识,培养学生的软件开发能力和综合素质。
一、课程目标本课程的目标是使学生了解软件工程学科的基本概念、方法和原则,理解软件开发的技术和管理的基本要求,掌握软件开发过程中的常用方法和工具,培养学生的团队协作能力和问题解决能力,从而提高学生的综合素质和职业能力。
二、教学内容1.软件工程的概念和基本原理:介绍软件工程的基本概念、软件开发生命周期、软件需求分析和软件设计等基本原理。
2.软件开发过程:介绍软件开发过程中的需求分析、系统设计、编码实现、测试和维护等各个阶段,以及常用的软件开发方法和过程模型。
3.软件工程的管理:介绍软件项目管理的基本原理和实践技术,包括项目计划、进度控制、资源分配等内容。
4.软件质量保证和测试:介绍软件质量的概念和评估方法,以及软件测试的方法和技术。
5.软件开发工具和环境:介绍软件开发过程中常用的开发工具和集成开发环境,包括代码编辑器、调试器、版本控制工具等。
6.软件项目实践:通过小组项目实践,培养学生的团队合作和项目实施能力,并为他们提供实际的软件开发经验。
三、教学方法本课程采用多种教学方法,包括课堂讲授、案例分析、小组讨论和项目实践等。
教师将根据具体的教学内容和学生的需求,合理选择教学方法,以激发学生的学习兴趣,提高他们的主动学习能力。
四、考核方式本课程的考核方式包括平时成绩和期末考试。
平时成绩的主要依据是学生的课堂表现、小组讨论和项目实践成果。
期末考试主要考察学生对软件工程知识的理解和掌握程度。
以上是杜文峰教授制定的《软件工程》思政课程的教学大纲。
通过本课程的学习,学生将全面了解软件工程的基本概念和方法,掌握软件开发的技术和管理要求,提高团队协作和问题解决能力,为今后的职业发展打下良好的基础。
软件工程教学大纲
软件工程第一章软件与软件工程软件软件危机软件工程软件生存周期软件工程的最佳实践第二章软件过程软件过程模型基于构件的开发过程统一软件开发过程RUP(IBM RUP 理论部分2 学时)能力成熟度模型CMM第三章软件项目管理项目管理的谱系软件项目管理的目的、任务和内容软件项目度量软件质量度量软件复杂性度量软件项目计划与估算风险分析与管理项目进度安排第四章需求分析需求分析基础需求分析方法需求分析模型软件需求管理基于用例的需求管理第五章软件设计软件设计基础软件设计过程软件总体结构设计软件过程设计技术与工具软件设计方法设计模式架构模式软件设计优化原则4 学时) 第六章面向对象的需求分析(IBM Rational 相关理论与实践相结合面向对象的概念统一建模语言UML 及十种视图基于UML 的软件开发过程基于UML 的需求分析基于UML 的需求建模UML 用例图的构建UML 类图构建,类之间的关系描述使用IBM Rational Rose 进行需求建模 (演示或上机实验)第七章面向对象的设计方法(IBM Rational 相关理论与实践相结合面向对象的软件设计过程基于UML 的设计UML 顺序图的构建UML 协作图的构建UML 状态图的构建UML 活动图的构建使用IBM Rational Rose 进行设计实现建模 (演示或上机实验)软件测试的目的和原则软件测试流程软件测试计划软件测试技术白盒测试4 学时)第七章软件测试(IBM Rational 相关理论与实践相结合 6 学时)。
《软件工程》教学大纲
《软件工程》教学大纲一、课程概述本课程向学生介绍与大型软件相关的规划. 分析. 设计. 实现. 测试. 维护等概念. 原理. 技术与工具,同时向学生讲述传统的结构化开发方法与当前流行的面向对象开发方法。
要求学生牢固掌握软件生命周期. 软件质量. 软件成本等基本概念以及传统的结构化分析. 设计与实现方法;掌握面向对象软件工程的基本概念与表示技术,基本掌握软件开发中的管理技术。
通过本课程的学习,让学生对软件工程学有一个全貌的了解,对其所涉及的基本概念. 原理. 方法和有关技术逐步领会并进行运用。
要求学生能够在已有的程序设计. 数据结构. 数据库等理论基础上,为今后进行实际的软件开发奠定一个良好的基础。
本课程应强调实际运用,最好在教学中安排学生参予系统开发的策划. 分析. 设计. 编码. 测试等阶段工作的环节,积极引导学生从个人的单纯编程活动转移到进行系统分析与设计方面上来。
如果受条件所限,可让学生在毕业设计中将这一环节补上。
本课程的先修课程为“面向对象程序设计”. “数据结构与算法”与“数据库”。
本课程的后续课程可以为“程序设计方法学”与“算法分析与设计”。
二、课程目标1.知道《软件工程》这门学科的性质. 地位. 独立价值. 研究范围. 基本框架. 研究方法. 学科进展和未来方向等。
2.理解该门学科的主要概念. 基本原理和策略等。
3.学会运用一些具体的策略或技术等,如软件测试过程中所用到的黑盒测试法和白盒测试法。
4.能够把所学的原理应用到具体的实践中去,如对于具体系统开发过程中所遇到的问题能够自行进行处理,培养学生发现. 分析和解决问题的能力等。
三、课程内容和教学要求这门学科的知识与技能要求分为知道、理解、掌握、学会四个层次。
这四个层次的一般涵义表述如下:知道———是指对这门学科和教学现象的认知。
理解———是指对这门学科涉及到的概念、原理、策略与技术的说明和解释,能提示所涉及到的教学现象演变过程的特征、形成原因以及教学要素之间的相互关系。
软件工程教学大纲
《软件工程》教学大纲学时:64适用专业:计算机应用一、课程的性质与任务课程性质:本课程属于计算机应用专业课程。
课程任务:通过本课程培养学生对计算机软、硬件发展的正确认识,明确软件工程对计算机发展所起的重要作用,通过实践使学生熟悉软件开发流程的过程,并具备一定的软件开发管理和维护能力,其中包括:软件开发计划能力、软件需求分析能力、软件设计能力、软件测试能力,软件维护能力以及软件文档的编制能力。
二、教学基本要求1. 教学目标通过本课程的学习,使学生了解计算机软、硬件发展的历史以及现代软件开发过程的特点,了解软件工程的研究范围和软件开发环境,熟悉软件工程的基本原理,基本概念,软件分析和设计方法,软件测试与维护的基本方法。
本课程的重点将放在软件开发过程的流程,软件分析方法、软件测试技术、软件工程标准化和软件文档等方面。
2. 基本要求(2.1)理论方面1)计算机软、硬件发展的历史及重大事件回顾2)软件工程背景与软件危机,软件生存周期3)软件过程的各个阶段4)软件文档规范化(2.2)实践技能方面1)能使用项目管理技术进行系统策划、可行性研究2)能用快速原型方法进行需求分析3)能用结构化思想进行软件系统的设计4)能根据实际情况设计测试用例,提交测试报告5)能编写符合预定标准的规范化文档。
6)能用系统化和规范化的方法维护软件。
7)能制作进度计划并按进度计划执行开发任务。
(2.3)素质方面由于软件开发是知识密集型的工作,要求消除个人英雄主义,培养团队意识,团结协作、服从大局,要有质量意识和时间意识,重视开发和管理的规范化和标准化。
三、教学条件多媒体教室四、教学内容及学时安排五、教法说明本课程是院选修课程,采用历史介绍、知识讲述、课堂练习相结合的教学方法讲、学、做结合,充分调动学生的积极性,提高学生的自学能力。
通过课堂练习对所学的知识巩固加强、综合练习、融会贯通。
采用中文教材,在讲授、做练习和课程设计时,尽量加入专业英语的内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件工程》课程教学大纲
课程代码:090142124
课程英文名称:Software Engineering
课程总学时:40 讲课:32 实验:8 上机:0
适用专业:信息与计算科学
大纲编写(修订)时间:2017.11
一、大纲使用说明
(一)课程的地位及教学目标
本课程是信息与计算科学专业一门专业课,它较详细地阐述了软件工程的基本理论和软件
开发的基本方法、基本过程。
通过本课程的学习,培养学生树立从系统的角度进行软件设计、开发、测试和评价的基本思想。
它为本专业学生在今后从事IT行业的编程、管理、技术协作等提供必要的知识,同时还承担着素质教育和工程教育的基本职责。
通过本课程的学习,学生将达到以下要求:
1.掌握面向过程和面向对象的程序设计方法,具有设计一般软件的初步能力;
2.树立正确的设计思想,了解国家当前的有关技术经济政策;
3.具有运用标准、规范、手册等有关技术的能力;
4.了解典型软件测试的实验方法,获得实验技能的基本训练;
5.了解软件工程的新发展。
(二)知识、能力及技能方面的基本要求
1.基本知识:掌握软件软件工程的一般知识,掌握可行性研究,需求分析、概要设计、详细设计、实现和维护的基本方法。
2.基本理论和方法:要求学生通过软件工程这门课程的学习,系统地掌握软件开发的基本方法和过程,熟练地掌握可行性分析、需求分析、概要设计和详细设计这几个阶段的基本目标、基本原理和基本方法,并能够熟练地应用软件工程的基本方法,解决系统软件开发的过程中所遇到的主要问题。
尤其重要的是让学生掌握系统流程图、系统结构图、数据流图等软件工程基本方法。
3.基本技能:掌握结构化程序设计的基本过程和基本技能等。
(三)实施说明
1.教学方法:课堂讲授中要重点对基本概念、基本方法和解题思路的讲解;采用启发式教学,培养学生思考问题、分析问题和解决问题的能力;引导和鼓励学生通过实践和自学获取知识,培养学生的自学能力;增加讨论课,调动学生学习的主观能动性;注意培养学生提高利用标准、规范及手册等技术资料的能力。
讲课要联系实际并注重培养学生的创新能力。
教师在讲解过程中应深入浅出、循序渐进、联系实际、结合实例,才能收到较好的效果。
为了能够深入的理解软件工程这门课程的基本理论和系统软件开发的基本步骤,树立正确的系统软件开发方法,学以致用、学以可用、学以善用,本课程需要学生上机实践,加深对理论课程中重点问题和难点问题的理解。
锻炼学生在实践中发现问题、分析问题和解决问题的能力,为以后的就业打好软件开发的基础。
该大纲的实施过程中,应站在培养人才的整体高度上,教师传授的不仅仅是知识,更重要的是如何获取知识。
因此,在整个课程的教学过程中,教师应成为学生的导师,指导学生如何学习;还应充当课堂讨论的组织者及引导者;扮演实践环节中应用软件项目开发的负责人。
2.教学手段:在教学中采用电子教案及多媒体教学系统等先进教学手段,以确保在有限的学时内,全面、高质量地完成课程教学任务。
(四)对先修课的要求
本课程的教学必须在完成先修课程之后进行。
本课程的先修课程有面向对象程序设计、数据结构、数据库原理。
本课程是信息与计算科学专业其它计算机类专业课程的综合运用,为学生毕业设计和就业打下良好的基础。
(五)对习题课、实践环节的要求
1.对重点、难点章节(如:概要设计、详细设计、系统实现等)应安排习题课,例题的选择以培养学生消化和巩固所学知识,用以解决实际问题为目的。
2.课后作业要少而精,内容要多样化,作业题内容必须包括基本概念、基本理论及设计方面的内容,作业要能起到巩固理论,掌握计算方法和技巧,提高分析问题、解决问题能力,熟悉标准、规范等的作用,对作业中的重点、难点,课上应做必要的提示,并适当安排课内讲评作业。
学生必须独立、按时完成课外习题和作业,作业的完成情况应作为评定课程成绩的一部分。
3.每个学生要完成大纲中规定的必修实验,通过实验环节,学生应掌握典型软件测试的基本方法,获得软件测试的基本训练。
实验成绩作为评定课程成绩的一部分。
4.安排大作业,大作业成绩作为平时成绩的一部分。
(六)课程考核方式
1.考核方式:考试
2.考核目标:在考核学生软件工程基本知识、基本原理和方法的基础上,重点考核学生的分析能力、设计能力。
3.成绩构成:本课程的总成绩主要由三部分组成:平时成绩(包括作业情况、出勤情况等)占20%,实验成绩占10%,期末考试成绩占70%。
平时成绩由任课教师视具体情况按百分制给出;实验成绩由实验老师参照相关规定按百分制给出,实验无成绩或实验不及格,取消期末考试资格,总成绩直接以不及格计。
(七)参考书目
《软件工程导论》(第6版),张海藩等编著, 清华大学出版社,2013年 8月
《软件工程——原理、方法与应用》(第3版),史济民等,高等教育出版社,2009年3月
二、中文摘要
本课程是信息与计算科学专业学生选修的一门理论性很强的课程。
课程通过对软件工程基本理论、方法等内容的讲授,使学生掌握软件设计的基本知识、基本原理和基本方法,并具有设计简单系统软件的能力。
课程主要内容包括可行性研究、需求分析、概要设计、详细设计、实现和维护等。
本课程是本专业计算机类课程的综合运用,将毕业设计和学生就业等奠定重要的基础。
三、课程学时分配表
四、教学内容及基本要求
第1部分软件工程学概述
总学时(单位:学时):2 讲课:2 实验:0 上机:0 具体内容:
1)软件危机
2)软件工程
3)软件生命周期
4)软件过程
重点:
软件危机产生的原因和解决的方法、软件生命周期。
难点:
软件生命周期。
习题:
软件危机及软件生命周期相关习题
第2部分可行性研究
总学时(单位:学时):6 讲课:6 实验:0 上机:0 第2.1部分(讲课2学时)
具体内容:
1)可行性研究的任务
2)可行性研究的过程
第2.2部分(讲课2学时)
具体内容:
1)系统流程图
2)数据流图
3)数据字典
第2.3部分(讲课2学时)
具体内容:
1)成本/效益分析
2)可行性研究案例分析
重点:
系统流程图、数据流图。
难点:
数据流图,数据字典。
习题:
数据流图相关内容。
第3部分需求分析
总学时(单位:学时):6 讲课:6 实验:0 上机:0 第3.1部分(讲课2学时)
具体内容:
1)需求分析的任务
2)与用户沟通获取需求的方法
第3.2部分(讲课2学时)
具体内容:
1)分析建模与规格说明
2)实体-联系图
3)数据规范化
4)状态转换图
第3.3部分(讲课2学时)
具体内容:
1)其他图形工具
2)验证软件需求
3)需求分析案例分析
重点:
实体-联系图、数据规范化。
难点:
分析建模与规格说明。
习题:
在本章习题中选择。
第4部分总体设计
总学时(单位:学时):6 讲课:6 实验:0 上机:0 第4.1部分(讲课2学时)
具体内容:
1)设计过程
2)设计原理
第4.2部分(讲课2学时)
具体内容:
1)启发规则
2)描绘软件结构的图形工具
第4.3部分(讲课2学时)
具体内容:
1)面向数据流的设计方法
2)总体设计案例分析
重点:
设计原理、面向数据流的设计方法。
难点:
面向数据流的设计方法。
习题:
在本章习题中选择。
第5部分详细设计
总学时(单位:学时):6 讲课:6 实验:0 上机:0 第5.1部分(讲课2学时)
具体内容:
1)结构程序设计
2)人机界面设计
第5.2部分(讲课2学时)
具体内容:
1)过程设计的工具
2)面向数据结构的设计方法
第5.3部分(讲课2学时)
具体内容:
1)程序复杂程度的定量度量
2)详细设计经典案例分析
重点:
过程设计的工具、面向数据结构的设计方法。
难点:
面向数据结构的设计方法。
习题:
在本章习题中选择。
第6部分实现
总学时(单位:学时):12 讲课:4 实验:8 上机:0 第6.1 部分(讲课2学时)
具体内容:
1)编码
2)软件测试基础
3)单元测试
4)集成测试
5)确认测试
第6.2 部分(讲课2学时)
具体内容:
1)白盒测试技术
2)黑盒测试技术
3)调试
4)软件可靠性
重点:
单元测试、集成测试、确认测试
难点:
集成测试、确认测试。
习题:
在本章习题中选择。
实验:
数据库设计 2学时
接口设计 2学时
编码 2学时
测试 2学时
第7部分维护
总学时(单位:学时):2 讲课:2 实验:0 上机:0 具体内容:
1)件维护的定义
2)软件维护的特点
3)软件维护过程
4)软件的可维护性
5)预防性维护
6)软件再工程过程
重点:
软件维护过程、软件再工程过程。
难点:
软件维护过程
习题:
在本章习题中选择。