开发方法 | 说明 | 备注 | 应用场合 | |
1 | 结构化开发方法 | 由结构化分析(数据流图建立功能模型)、结构化设计(软件结构图建立物理模型)、结构化程序设计(标准控制结构实现模块功能)构成,是一种面向数据流的开发方法。 | 是软件工程中最早出现的开发方法 指导思想:自顶向下、逐层分解 基本原则:功能的分解与抽象。 | (1)特别适合数据处理领域; (2)不适合解决大规模、特别复杂的项目 (3)不适合需求变化大的项目。 |
2 | 原型化开发方法 | 需求无法预先定义,反复修改不可避免。 开发工具的快速发展,使得迅速开发出一个可见系统框架成为可能。用户就能根据样板提出需求。 | 首先确定用户需求,开发原始模型,然后征求用户对初始原型的改进意见,并根据意见修改原型。 | (1)适合用户需求不清、业务理论不确定、需求经常变化的情况 (2)适合规模不大也不太复杂的项目 |
3 | 面向对象开发方法 | 包括面向对象分析、面向对象设计和面向对象实现。 | 以对象(客观世界的事物、事件、概念和规则)作为最基本元素,也是分析问题、解决问题的核心。 | 1997年推出统一建模语言(Unified Modeling Language, UML)是面向对象的标准建模语言,通过统一的语义和符号表示,使各种方法的建模过程和表示统一起来,成为面向对象建模的工业标准。 |
4 | 敏捷方法 | 加入灵活性,使用户能够在开发周期的后期增加或改变需求。 | 总体目标:是通过“尽可能早地、持续地对有价值的软件的交付”使客户满意 | |
极限编程(Extreme Programming, XP) | 是一种轻量级(敏捷)、高效、低风险、柔性、可预测的、科学的软件开发方式。由价值观、原则、实践和行为4个部分组成,并通过行为贯穿于整个生存周期。 | |||
水晶法(Crystal) | 每一个不同的项目都需要一套不同的策略、约定和方法论。 | |||
并列争求法(Scrum) | 使用迭代(30天)的方法,按需求优先级来实现产品。通过简短日常情况会议来协调 | |||
自适应软件开发(ASD) | 6个基本原则;使命作为指导;特征被视为客户价值的关键点;确定的交付时间及风险 |