1. 课程概要
本课程概要如表1-1所示。
表1-1 “现代软件工程”课程概要
课程编号 |
304064030 |
学分 |
3 |
学时 |
48 |
开课学期 |
三年级秋季学期 |
课程名称 |
中文名现代软件工程 |
||||||
英文名Modern Software Engineering |
|||||||
课程定位 |
软件工程是计算机科学与技术专业的一门重要的专业必修课。它是软件设计与开发以及各种计算机应用系统开发的重要基础。在计算机科学与技术等专业人才培养中,对提高学生的能力、素质和形成良好的知识结构都具有重要意义。通过该课程的学习,可以培养学生用工程化的方法高效地开发高质量软件的初步能力,以及项目管理的初步能力,为以后从事计算机软件的开发和研制打下良好的基础。 |
||||||
课程简介 |
软件工程是计算机学科中一个新兴的并且充满活力的研究领域,软件工程的重要性在于它对贯穿软件的开发过程、运行以及维护的系统化研究。本课程主要内容包括软件过程、方法和工具三个层次,分为两个部分进行课堂讲授:第一部分为软件过程及过程模型,包括软件工程的基本概念和原则,软件过程的通用框架活动和保护性活动,常用的主要软件过程模型和敏捷开发及其过程模型;第二部分为软件建模、构造的方法,包括软件需求分析和建模、软件设计原则、体系结构设计、构件级设计、界面设计和测试策略与技术,软件需求建模与软件设计方法侧重于面向对象技术和UML建模方法,涵盖了WebApp和移动App的分析和设计方法。
|
||||||
教学要求 |
通过授课和实践,使学生: (1) 掌握软件工程的概念和原则,理解软件过程的通用框架活动(沟通、策划、建模、构造和部署),了解软件过程的保护性活动(项目跟踪与监控、风险管理、可复用管理、软件配置管理等); (2) 掌握瀑布模型、增量模型、演化模型等常用软件过程模型及适用条件,理解敏捷开发的理念和常用的敏捷过程模型:XP(IXP)和scrim; (3) 理解需求分析建模原则,掌握软件功能、信息和行为的需求建模方法;理解软件设计概念和基本原则,掌握软件体系结构设计、构件级详细设计和软件界面的设计方法;了解WebApp和移动App的分析和设计方法。 (4) 理解软件测试的概念,掌握软件单元测试、集成测试、确认测试和系统测试等测试策略,掌握白盒测试和黑盒测试技术及其应用; (5) 通过课程实践,实际运用软件工程的原则和方法,掌握软件项目管理和团队开发的工作方法。 |
||||||
教学特色 |
(1)教材与教案均为英语,授课以中文为主,英语为辅; (2)课堂讲授为主,结合课堂小组讨论 (3)软件工程原理、方法与案例相结合 |
||||||
课程类型 |
☑专业基础课程☐专业核心课程 ☐专业选修课程☐实践训练课程 |
||||||
教学方式(单选) |
☑讲述为主☐实验/实践为主 ☐专题讨论为主 ☐案例教学为主☐自学为主☐其他(为主) |
||||||
授课语言(单选) |
☐中文☑中文+英文(英文授课比例10%) ☐英文☐其他外语 |
||||||
考核方式 |
☑考试 ☐考查 ☐考试+考查 |
||||||
成绩评定标准 |
期末成绩40%+(期中成绩30%+作业40%+平时表现30%)*60% |
||||||
教材及主要参考资料 |
教材: [1] (美)罗杰.S.普莱斯曼 软件工程实践者的研究方法(英文精编版 第8版) 机械工业出版社2016.1 或 [2] (美)罗杰.S.普莱斯曼 软件工程实践者的研究方法(英文 原书第8版) 机械工业出版社2016.11 [3] (美) 罗杰.S.普莱斯曼 软件工程实践者的研究方法(原书第8版本科教学版)出版社:机械工业出版社2016.12 注:[1]、[3]为[2]的节选版。 主要参考资料: [1] 伊恩·萨默维尔 软件工程(原书第10版) 机械工业出版 |