哈尔滨工业大学

图片
课程概述

本课程作为软件工程专业的入门课程,主要使学生初步了解软件工程专业与学科,认识软件工程专业知识内容与学习方法,为进入软件工程专业学习打下良好基础。具体而言,本课程帮助学生了解软件工程的基本概念、知识体系与学科范畴;学习计算思维与计算机基本原理;认识软件与程序表达及问题求解算法;了解软件设计与构造技术及艺术;了解软件工程技术与过程管理;理解软件工程专业学习方法及职业发展。

本课程共计11讲。

1 软件工程之启蒙:初识软件工程专业

2 计算思维之起步:符号化-计算化与自动化

3 软件与程序思想:组合-抽象-重复-构造-递归

4 软件之灵魂:算法

5 软件系统构造:函数-对象-组件-服务

6 软件的生命周期

7 理解问题:软件需求

8 软件技术与艺术结合:软件设计

9 软件工程技术:软件测试与维护

10 软件工程管理:软件项目管理

11 软件之人才–软件工程教育与职业发展

证书要求

设置“合格”(达到60分)、"优秀"(达到80分)两档课程标准,由任课教师签发课程结业证书,其中成绩“优秀”者将颁发优秀证书。

预备知识

暂无

授课大纲

本课程共计11讲。

1 软件工程之启蒙:初识软件工程专业

使学生初识软件工程基本概念;了解计算机发展历程、软件工程技术发展及趋势;初步学习计算机学科与软件工程学科范畴、软件工程专业知识体系。

2 计算思维之起步:符号化-计算化与自动化

使学生认识和理解基于0/1符号的信息表示、0/1二值逻辑及位运算、计算思维与自动计算基本原理、计算机机器语言与高级语言、程序的基本概念、程序控制与自动执行等。

3 软件与程序思想:组合-抽象-重复-构造-递归

介绍计算系统与程序的关系、程序的组合-抽象-重复-构造机理与思维、程序的构造方法、程序中的迭代与递归思想及其运用等。

4 软件之灵魂:算法

讲授算法与程序的关系、运用算法求解问题的思想、数学建模与算法策略、算法思想的精确表达、算法的程序设计、算法分析与算法复杂性等。

5 软件系统构造:函数-对象-组件-服务

讲解软件系统的构造方法,基于函数的构造;基于对象框架的构造;基于对象和类的构造;基于组件和结构框架的构造;基于服务的构造等;面向对象程序设计语言、面向对象思维的表达-统一建模语言UML;软件系统构造方法的演变等。

6 软件的生命周期

介绍什么是软件的生命周期;软件的生命周期模型及基本过程;模型驱动的软件开发方法;面向生命周期的软件开发方法;生命周期相关的软件工程生态环境等。

7 理解问题:软件需求

阐述软件需求问题、理解软件需求的一种思维方法--结构化思维方法、软件需求的多样性、软件需求工程的过程(包括需求分析、需求建模、需求规范、需求验证、需求管理等)。

8 软件技术与艺术结合:软件设计

什么是设计?什么是软件设计?软件设计范畴;软件设计过程及符号;软件设计的抽象与构造;软件设计的一种思维方法--面向对象思维方法;软件设计的知识体系等。

9 软件工程技术:软件测试与维护

介绍软件工程技术中的软件质量、软件测试技术与方法、软件维护技术与软件演化过程、软件配置管理技术、软件过程与软件能力成熟度CMM等方面。

10 软件工程管理:软件项目管理

阐述软件工程项目管理的重要性,介绍软件项目管理相关的人员组织与管理、软件度量、软件项目计划、风险管理、软件质量保证、软件过程能力评估等。

11 软件之人才–软件工程教育与职业发展

    帮助学生了解软件工程专业人才的知识、能力与素质要求、软件工程教育培养方案与课程体系、软件工程专业学习过程与方法、软件人才发展途径与职业规划等。

参考资料

1、孙家广等,《软件工程——理论、方法与实践》,高等教育出版社,2008

2、战德臣等,《大学计算机-计算思维导论》,电子工业出版社,2013年第1

3、朱少民等,《软件工程导论》,清华大学出版社,2009

4、徐晓飞等,《服务工程方法论》,清华大学出版社,2011

5Shari Lawrence Pfleeger, Software Engineering-- Theory and Practice (4th Edition), Prentice Hall, 2009

6Roger S. Pressman, Software EngineeringA Practitioners Approach (7th Edition), McGraw-Hill Education, 2007  (中文翻译版,机械工业出版社,2011)

7、其他“软件工程导论” “软件工程概论”的参考书


常见问题

暂无