《软件工程》全套课程系统的软件开发理论、技术和方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
静
坚实的基础。
萍
2020/5/9
哈
尔
滨
工
课程主要内容
业 大 学
本课程比较全面、系统地介绍软件工程的概念、技术 与方法。
主要内容包括:软件工程概述、软件生存周期及软件
需求分析、软件设计方法、软件测试技术等。
通过本课程的学习,使学生能真正的从中了解软件开
韩
发的整个过程。为了让学生真正得以实践,结合实际软件
《软件工程》全套课程 系统的软件开发理论、技术和方法
2020/5/9
哈
尔
滨
工 业
课程的性质、目的与任务
大
学
软件工程是计算机科学与技术专业的一门专
业核心课程。通过本课程的学习,使学生掌握系
统的软件开发理论、技术和方法,使用正确的工
程方法开发出成本低、可靠性好并在机器上能高
韩
效运行的软件,为今后从事软件开发和维护打下
1
1-6周
约2000行
韩
中型
2-5
1-2年
5000-50000行
静
大型
5-20
2-3年
5万-10万行
萍
甚大型
100-1000
4-5年
100万行
极大型
2000-5000 5-10年
1000万行
2020/5/9
哈
尔
滨
工
业
大 学
3、按软件开发划分
软软
件件
项产
韩
目品
静
开开
萍
发发
2020/5/9
哈
1.2 软件工程的概念及范畴
静
开发项目,让学生从问题定义开始,经过可行性研究、需
萍
求分析、概要设计、详细设计、编码直到最后要对自己开
发的软件还要进行测试,这样一个软件开发过程,从而使
学生掌握软件开发的基本技能。
2020/5/9
哈
尔
滨
工
业
学习本课程的基本要求
大
学
本课程是继程序设计课程之后,对提高学生软件
开发能力有重要作用的一门课程。要求学生在学习本
尔
滨
工
1、“软件工程”----Software Engineering
业 大
于1968年 NATO 组织在 德国召开的一次会议上提出
学
韩
静
是把软件当作一种工业产品,要求 “采用工程化的
萍
原理与方法对软件进行计划、开发和维护 ”。
2020/5/9
哈
2、 软件工程学
尔
滨
工
业
软件开发方法学
大 学
软件开发技术 软件工具
课程前应掌握信息管理系统、数据结构、结构化程序
韩
设计、面向对象程序设计以及程序设计方法论。
静
通过本课程的学习,为学生后期的毕业设计环节
萍
奠定了良好的基础。
2020/5/9
哈
各章学时安排
尔
滨
工
业
章 学时 章 学时 章 学时 章 学时
大
学
1
2
3
4
9
4 13 2
补充 2
4
2 10 2 14 4
2
2
8
4 12 2
Life.
韩 静 萍
每天醒来的时候,要对技术给生活造成的改变
始终拥有一份 激情。
2020/5/9
哈
3、软件的演变(即从传统软件开发到现代软件开发)
尔
滨
工
程序 软件 软件产品
业
大
学
传统软件开发 现代软件开发
营业额
韩
240
增长曲线
静
萍
80
0.00016 1975
1989
2000
2020/5/9
哈
1.3 软件生存周期 (SW life cycle)
2020/5/9
哈
1.1 软件的概念与特点
尔
滨
工
1、软件
software soft+ware
业
大
软制品
学
(软体)
韩
软件是计算机系统中与硬件相互依存的另一部分。
静
它包括程序、数据及其相关文档的完整集合。
萍
2020/5/9
哈
2、软件特点
尔
滨 工
. 软件是一种逻辑实体,而不是具体的物理实体
业
. 软件的生产与硬件不同
大
. 在软件的运行和使用期间,没有硬件那样的机械
学
磨损,老化问题
修改点
失
磨合
失
韩
效 调整 率
磨损
效
用坏
率
静
萍
实际曲线 理想曲线
时间 硬件失效率曲线
软件失效率曲线
时间
2020/5/9
哈
. 软件的成本相当昂贵
尔
滨
工
业
大
学
软
件
软件需求
成本%
复 杂
差距
性 软件技术
韩
硬件
软件
静
时间
1950 1970 1985 1995 年份
尔
滨
工 业
把软件从产生、发展到成熟、直至衰亡为止
大
学
韩 静 萍
2020/5/9
软件生存周期模型(瀑布模型 Waterfall Model)
哈
尔
滨
问题定义
特点:
工 业
计划 时期
可性行研究
上一阶段的变换结果 是下一阶段的变换的 输入,相邻两个阶段
大
需求分析
具有因果关系,紧密
学
相联。
概要设计
开发 时期
详细设计
韩
总学时 46=38(讲授)+8(课程设计)
静
萍
2020/5/9
哈
第一章 软件工程概述
尔
滨
工
业
传统工程
水利工程 建筑工程 机械工程 … …
大
学
新兴工程
气象工程 生物工程 软件工程
韩
本章将对软件的地位和作用、软件的特点、软件
静
的发展、软件的危机以及软件工程学科的形成、软件
萍
生期等方面的问题和基本概念
萍
软件技术的发展落后于需求
硬、软件成本比例的变化
2020/5/9
哈
3、软件的分类
尔
滨
工
业
1、按软件的功能进行划分
大
学
系应支
统用撑
软软软
件件件
韩 静 萍
2020/5/9
哈
支撑软件
尔
滨
工
业
一般类型:
支持需求分析:
大
文本编辑程序
PSL/PSA问题描述语言
学
文本格式化程序
关系数据库管理系统
支持设计:
支持测试:
图形软件包
静态分析器
韩
结构化流程图绘图程序
测试覆盖检验程序
静 萍
支持实现:
支持管理:
编辑程序
标准检验程序
连接编辑程序
库管理程序
2020/5/9
哈
2、按软件的规模进行划分
尔
滨
按开发软件所需的
工
人力、时间以及完成的
业
源代码行数。
大
Hale Waihona Puke Baidu
学
类别
参加人数
研制期限 产品规模(源代码行数)
微型
1
1-4周
约500行
小型
软件工程环境
软件工程学
韩 静 萍
软件工程管理
软件工程管理学 软件经济学
---- 软件工程学的范畴
2020/5/9
哈 尔 滨
工
业
微软企业文化宗旨部分内容
大
学
Wake up every day with a feeling of passion
for the different technology will make in people’s
韩
编码
静
萍
测试
运行 时期
运行与维护
2020/5/9
哈
原型模型(Prototype Model)
尔
滨
工
原型:是指模拟某种产品的原始模型
业
大
学
快速分析 和设计
1、原型系统仅包括未来系统的 主要功能,以及系统的重要
接口。
韩 静
加工 原型
原型
建造 原型
2、为了尽快向用户提供原型, 开发原型系统时应尽量使用
萍
能缩短开发周期的语言和工
客户
具。
评价原型
2020/5/9
哈
第二章 问题的定义与可性行研究
尔
滨
工
业 大 学
当我们在着手做任何一件工作以前,必须明确工 作的性质、任务,制定完成任务的计划,这是非常必 要的。同样对于软件产品的开发 ,显然也应该解决好
这样类似的问题,明确该软件产品开发的任务,以及