软件工程概述
2020-03-18 09:41:22 0 举报
AI智能生成
软件工程概述思维导图
作者其他创作
大纲/内容
增量模型
基本思想
软件模块化,把软件产品作为一系列增量组件来设计、编码、集成和测试
使用范围
软件开发人员对应用领域不熟悉,难以一次性地进行系统开发
软件产品可以分批次地进行交付
项目管理人员把握全局的水平较高
待开发的软件系统能够被模块化
缺点
到要求待开发的软件系统可以被模块化
优点
开发顺序灵活
以组件为单位进行开发降低了软件开发的风险
系统模块化,分批次地提交软件产品,使用户可以及时了解软件项目的进展
软件开发模型
瀑布模型
缺点
不支持软件复用和集成技术
开发期长,一旦修改,则损失惨重
文档驱动,风险大
需求难开始就完全确定
优点
到迫使开发人员采用规范的方法
到严格规定了每一阶段必须提交的文档
到要求各阶段的产品必须经过质量验证
特点
保证质量
- 每一个阶段都要对已完成的文档进行复审,以便及早发现隐患
- 每一个阶段都要完成规定的文档
尽可能推迟软件的编码
软件生存周期的顺序性
子主题
喷泉模型
六大步骤
系统分析
系统设计
对象设计与实现
测试
系统组装集成
演化
特点
迭代
演进无缝
基本概念
软件
特点
软件是逻辑实体,而不是物理实体
软件的生产与硬件不同
软件是复杂的
软件的成本是非常昂贵的
软件没有硬件的老化问题
软件危机
发展存在的问题
打补丁
软件依赖
多次修改无法维护
开发能力不等于需求
具体表现
开发效率低
质量靠不住
软件成本上升
不可维护
产生原因
与软件本身的特点有关
规模庞大
逻辑部件
和软件开发与维护的方法不正确有关
忽视需求分析
缺乏方法论指导
文档缺乏
忽视测试,维护
忽视交流
解决途径
对软件和软件开发的正确认识
推广和探索开发软件的成功技术和方法
开发和使用软件工具
软件工程
基本原则
提供高质量的工程支撑
采用合适的设计方法
选取适宜的开发模型
重视软件工程的管理
基本原理
用分阶段的生命周期计划严格管理
坚持进行阶段评审
实行严格的产品控制
采用现代程序设计技术
结果应能清楚的审查
承认不断改进软件工程实践的必要性
开发小组的人员应少而精
三要素
过程
方法
工程
本质特性
软件必须有效地支持它的用户
开发软件的效率非常重要
软件经常变化
软件工程的中心课题是控制复杂性
软件工程关注于大型程序的构造
软件生命周期
软件定义时期
问题定义
可行性研究
需求分析
软件开发时期
系统设计
总体设计
详细设计
系统实现
编码和单元测试
综合测试
软件维护时期
螺旋模型
优点
利于维护
质量保证
风险驱动
缺点
对开发人员要求高
要求用户参与阶段评价,对用户来说比较困难
增量方式
增量提交
增量开发
0 条评论
下一页