软件工程方法

软件开发

系统开发

系统架构设计


浏览:621 次

软件工程的目标是在给定成本和进度的前提下,开发具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追溯性、互操作性和满足用户需求的软件产品。追求这些目标将有助于提高软件产品的质量和开发效率,并降低维护难度。

1、 软件开发方法

1.结构化方法

即面向过程的开发方法。它的基本思想是“从上到下逐步改进”,将一个复杂的系统分解为简单的组件。它侧重于系统开发过程的用户至上、工程、文档和标准化。要严格区分工作阶段,每个阶段都要有明确的任务和应有的成绩。

2.面向对象方法

面向对象的开发方法是自下而上的,主要表现为与真实事物的结合,抽象世界中的一切,形成一个又一个抽象对象。与结构化方法相比,它具有更好的可重用性。分析、设计和实施的界限并不明确。关键是要建立一个全面、合理、统一的模型。

3.以服务为导向的方法

面向服务方法是面向对象方法的扩展。它的服务建模分为三个阶段:服务发现(分析)、服务规范(契约规范)和服务实现(具体实现)。

SO方法主要有三个层次(运营、服务和业务流程);

SOAD分为三层:基本设计层(底层的构建)、应用服务层(服务之间的接口和服务级别的协调)和业务组织层(业务流程的建模和服务流程的编排)

4.原型方法

4.1废弃原型

业务完成后,原型就没用了

4.2进化原型

逐步修改原始模型并保留

2、 软件开发模型

1.瀑布模型

瀑布模型,也称为生命周期方法,是结构方法中最常用的开发模型。它关注从需求获取到开发再到测试的过程。缺点是它不灵活和死板,并且适合在有明确需求的场景中使用或进行二次开发。

2.增量和螺旋模型

增量模型采用随时间变化的线性序列。每个线性序列都会生成一个可交付的产品,并缓慢迭代以满足最终需求。

螺旋模型分为四个阶段:计划制定、风险分析、项目实施和客户评估。基于原型,瀑布模型按照上述步骤重复开发。

3.V型

V模型是一个测试驱动的模型,测试贯穿整个过程。

4.喷泉模型

喷泉模型主要支持面向对象的开发方法。系统的某些部分经常多次重复工作。相关函数在每次迭代中都得到了改进,主要体现了迭代和无间隙的特点。所谓无间隙是指开发活动中的分析、设计和编码之间没有明确的界限。

5.快速app开发(RAD)

RAD是一种增量软件开发模型,它强调极短的开发周期。它是瀑布模型的高速变体。通过使用大量可重用组件,采用基于组件的方法来赢得快速开发

6: 部件装配模型

组件组装模型是指在整个app开发过程中提取各种功能模块以形成可重用组件的过程,以便于重用。与构建块一样,整个组件被集成成一个接一个的app系统。

3、 统一过程(UP/RUP)

统一过程,也称为UP或RUP,是基于组件的。统一过程是一个通用的过程框架,可用于各种软件项目。

特点:用例驱动、以基础架构为中心、迭代和增量。

基于UP的软件过程是一个迭代过程,它有四个阶段:

a、 初始阶段:建立系统的业务模型并确定项目边界;

b、 细化阶段:分析问题区域并建立良好的架构基础。主要完成系统架构。

c、 组件阶段:开发剩余的组件和app功能,形成产品并进行详细测试

d、 交互阶段:主要任务是β测试(用户环境、用户测试)

4、 敏捷开发

它适用于中小型项目,但不适用