文档介绍:第一章软件工程概念
软件工程课件
1
软件工程
授课老师:清华大学计算机系殷人昆
yinrk432@
2
软件工程
提示:设计与建模要点
结构化分析建模:数据流图、实体关系图、状态迁移图、数据字典
结构化设计建模:数据流图转换为系统结构图
结构化程序设计:程序流程图、N-S图、PAD
程序环路复杂性计算
测试用例设计:逻辑覆盖、循环测试、基本路径覆盖、因果图
可靠性分析:估算测试前程序中潜在错误
OMT建模:对象模型、动态模型(状态图、事件追踪图)
UML建模:用例图、类图、顺序图、活动图
3
软件工程
第一章软件工程概念
软件的定义与分类
软件的发展
软件工程定义
软件工程过程与软件生存周期模型
软件开发范型
软件工程原理和原则
4
软件工程
软件的定义与分类
软件的定义:软件由计算机程序、数据及文档组成。
程序是按事先设计的功能和性能要求执行的指令序列
数据是使程序能正常操纵信息的数据结构
文档是与程序开发,维护和使用有关的图文材料
软件与硬件、数据库、人、过程等共同构成计算机系统。
5
软件工程
软件的特点
软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性
软件的生产与硬件不同,在它的开发过程中没有明显的制造过程
在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题
软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的依赖性
6
软件工程
软件的开发至今尚未完全摆脱手工艺的开发方式
软件本身是复杂的
实际问题的复杂性
程序逻辑结构的复杂性
软件成本相当昂贵
相当多的软件工作涉及到社会因素
7
软件工程
软件的分类
按软件的功能进行划分:
系统软件
操作系统
数据库管理系统
设备驱动程序
通信处理程序等
支撑软件
文本编辑程序
文件格式化程序
8
软件工程
程序库系统
支持需求分析、设计、实现、测试和支持管理的软件
应用软件
商业数据处理软件
工程与科学计算软件
计算机辅助设计/制造软件
智能产品嵌入软件
事务管理、办公自动化软件
计算机辅助教学软件
9
软件工程
按软件规模进行划分:
类别参加人员数研制期限源程序行数
微型 1 1~4周
小型 1 1~6月 1k~2k
中型 2~5 1~2年 5k~50k
大型 5~20 2~3年 50k~100k
甚大型 100~1000 4~5年 1M(=1000k)
极大型 2000~5000 5~10年 1M~10M
10
软件工程