软件工程基础图式(第一章)
学习目标
1)掌握软件的概念特点
2)理解软件危机与现状
3)掌握软件工程的定义和发展过程
1、软件
软件定义:软件=程序+数据(结构)+文档,可执行部分:程序,不可执行部分:文档
软件特征(不全):工程化非制造、易移植、难估计、多修改、测试困难
软件的双重作用:用软件开发软件
软件分类:系统软件、应用软件、支撑软件
2、软件危机:开发维护过程中遇到的一系列问题
客观:逻辑部件、规模庞大(现代化编程工具)
主观:不正确的开发方式(软件不等于编程):忽视需求分析(工程化)、轻视软件维护(团队化)
软件工程是解除软件危机的科学的开发方法
3、软件工程:一种层次化技术
层次图:工具-方法-过程-质量焦点
三要素:工具、方法、过程
知识体系:需求、设计、构建、测试、维护,配置管理、工程管理、过程、工具、质量。
软件工程不是创建文档,而是创建质量。
4、发展阶段
一代——传统
二代——对象工程
三代——过程工程
四代——构建工程
5、七原则
1)阶段性生命周期计划管理
2)进行连续的验证
3)保证严格的产品控制
4)现代编程工具
5)责任明确
6)用更好更少的人
7)保持过程改进