软件工程
- 软件危机和软件工程
软件危机 落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发和维护过程中出现一系列严重问题的现象
软件工程
软件开发技术 | 软件开发方法学、软件工具、软件工程环境 |
软件项目管理 | 软件质量、项目估算、进度控制、人员组织、配置管理、项目计划 |
- 软件生命周期
- 瀑布模型
存在的问题: 1. 强调时间顺序的严格执行。前阶段不完成,后阶段不开始。2. 将测试放在了编码之后。没有体现出测试贯穿软件生命周期的原则。可以避免需求的问题一直延续到代码完成才暴露或者被发现;3.不适应用户需求的变化。
优点:1.为项目提供了按阶段划分的检查点 2.当前一阶段完成后,只需要去关注后续阶段
缺点:1.各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;2.先行开发,用户等到整个过程的末期才能见到开发成果,从而增加了开发风险。3.瀑布模型不适应用户需求的变化。
- 螺旋模型
- 迭代模型
-
敏捷开发模型
-
增量模型
增量模型一般会和迭代模型一切运用。
1.软件增加了新功能;
2.优化了···功能;
3.修复了某些未知/已知bug。
-
快速原型模型