0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 软件开发

软件工程中的软件开发方法论-

发表时间:2023-12-03 09:03:12

文章来源:炫佑科技

浏览次数:169

菏泽炫佑科技

软件工程中的软件开发方法论-

本章主要讲软件工程中的软件开发方法论。 主要测试点是软件开发方法和软件开发模型模块(主要测试各个模型的特点以及在哪些场景下使用)。 其他逆向工程和洁净室软件工程很少经过测试,而且大多数都会出现。 综合知识题值一两分,需要掌握的内容如下:

注:在实际的项目使用场景中,我们不会单独使用某种开发方法或模型。 相反软件开发,我们会结合多种模型和开发方法,并提取它们的优点来使用。

1、软件开发方法

使用的方法根据随时间的变化主要分为结构化方法、面向对象方法、面向服务方法和原型方法。 有些人也将敏捷开发和统一过程(UP/RUP)软件开发方法称为敏捷开发。

A。 结构法:面向过程的开发方法。 其基本思想是“自上而下、逐步细化”软件工程中的软件开发方法论-,将复杂的系统拆分成简单的组件,形成单独的组件。 它强调的是用户至上,系统开发过程是工程化的、文档化的、标准化的。 严格区分工作阶段,每个阶段都有明确的任务和应有的结果。

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

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

SO方法主要有三个层次(操作、服务、业务流程);

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

d. 原型法:适用于需求不明确的场景,包括废弃原型和进化原型。

一次性原型机:业务完成后,原型机不再有用;

进化模型:逐步修改原有模型并继续使用;

2、软件开发模型

IT行业有多种软件开发模式。 这里我只列出几个比较常用的开发模型。 主要经典开发模型如下:

上图是基于瀑布模型和原型,在整个过程中采用了迭代思维,体现了迭代模型。 原型分为两个阶段。 **阶段,通过原型获取需求; 第二阶段,系统开发。 在我们的实际开发中,通常会再次使用瀑布模型来完成第二阶段的开发。

A。 瀑布模型:

瀑布模型又称生命周期法,是结构法中*常用的开发模型。 它强调从需求获取到开发再到测试的瀑布式流动。 缺点是不灵活、死板,适合在需求明确或者二次开发的场景下使用。 瀑布模型的开发结构如下:

b. 增量和螺旋模型:

增量模型:随着时间的推移使用线性序列,每个线性序列都会产生一个可交付的产品,并缓慢迭代以达到*终的要求。

螺旋模型:分为四个阶段:规划、风险分析、实施工程和客户评估。 在原型的基础上,添加瀑布模型,重复上述步骤进行开发。

C。 V型:

V模型是一个测试驱动模型,测试贯穿始终。

d. 喷泉模型:

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

e. 快速应用程序开发(RAD):

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

RAD的流程可以分为:

开发软件app需要多少钱_软件开发_开发软件怎么开发

①业务建模:哪些信息驱动业务流程运行? 要生成什么信息? 你想达到什么效果? 数据流图可以用来回答上述问题(相当于需求分析和理解需求);

②数据建模:找到支持业务数据流的数据对象集合,定义数据对象属性,并与其他数据对象关系形成数据模型。 这可以通过ER图来补充(相当于创建业务对象并找出对象之间的关系)。 关系)。

③. 流程建模:使数据对象能够完成信息流中的各种业务功能,即细化数据流图中的处理窗口(相当于功能模块的实现,如CRUD等服务)。

④. 应用生成:打通各个功能模块之间的关系,构建整个应用系统。

⑤. 测试和交互。

f:组件装配模型:

组件组装模型是指在整个应用程序开发过程中将各个功能模块抽离成可复用的组件,以便于复用。 类似于搭积木,将所有组件一一集成起来形成应用系统。 流程图如下:

3. 统一过程(UP/RUP)

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

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

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

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

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

C。 组件阶段:开发剩余组件和应用功能,形成产品并进行详细测试

d. 交互阶段:主要任务是进行beta测试(用户环境、用户所做的测试)

4. 敏捷开发

适合中小型项目,理论上不适合大型项目。 但在实际开发中,我们常常将大项目拆分成多个小项目,然后采用敏捷开发方法。

在敏捷开发方法的发展过程中,出现了许多不同的流派,例如:

A。 极限编程(XP):是所有敏捷方法中*引人注目的方法。 它提出了四项价值观、五项原则和 12 项*佳实践。 *适合对某些费用控制严格的公司。

开发软件app需要多少钱_开发软件怎么开发_软件开发

b. 自适应软件开发

C。 水晶法:它侧重于以*少的纪律仍然可以成功的方法。

d. 特征驱动开发(FDD):强调特征驱动和快速迭代,既保证快速开发,又保证适当的文档和质量。

Scrum开发模型的基本思想是在两到四个星期内完成一次冲刺( )。 首先粗略研究整个项目需要做什么功能和业务( ),然后从中提取出一项功能业务作为*新一轮冲刺要完成的目标( )。 两到四个星期完成工作(4周),每天通过扁平会议了解工作进展; 然后进行下一轮任务冲刺或者完成整个项目的功能。 整个过程中都会发生迭代和增量。

5.逆向工程

逆向工程是对整个过程进行逆向,一般用于现有系统的大版本迭代和重做场景。 它有四个抽象层次,逻辑图如下:

6、洁净室工程

洁净室工程是一种正式的软件开发方法,可以生成高质量的软件。 主要强调模型的重要性。 其目标和结果非常高且错误率很低,这是使用非正式方法很难或不可能实现的。 。

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多