0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

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

软件架构设计系列之三——软件开发方法

发表时间:2023-09-30 17:00:47

文章来源:炫佑科技

浏览次数:199

菏泽炫佑科技

软件架构设计系列之三——软件开发方法

软件开发方法

软件开发方法的分类有很多种。 从开发方式上可以分为自上而下和自下而上的开发方式; 从性质上可分为正式方法和非正式方法; 从使用范围来看,可分为整体法和局部法。 方法。

我们主要讲的软件开发方法是比较具体的方法:结构化方法、面向对象方法、基于组件的软件开发方法、面向服务的开发方法、基于模型的软件开发方法。

结构化方法是一种基于模块化、信息隐藏和模块独立性的自上而下、循序渐进的软件开发方法。 分解和抽象是人们控制问题复杂性的两种基本手段。 结构化方法是结构化分析、结构化设计和结构化编程的有机结合。

结构化分析方法进行需求分析。 建立的模型的核心是数据字典。 围绕这个核心,存在三个层次的模型,即数据模型、功能模型和行为模型。 使用实体关系图(ER图)表示数据模型,使用数据流图(DFD)表示功能模型,使用状态转换图(STD)表示行为模型。

结构化设计包括架构设计、界面设计、数据设计和流程设计等任务。 它是一种面向数据流的设计方法,在结构化分析阶段产生的结果的基础上,进一步自上而下、逐步细化和模块化的过程。 概要设计阶段的主要任务是设计软件的结构,确定系统的模块组成以及各模块之间的关系。 它使用模块结构图(包括模块、调用和数据)来描述程序的结构。 它还可以使用层次图和HIPO(层次图加输入/处理/输出图)。

面向对象方法就是面向对象软件架构设计系列之三——软件开发方法,以对象为中心,将数据封装在对象内部成为对象的属性,将面向过程的功能转化为对象的行为方法,将对象抽象为类,类用于描述、设计和开发软件。 系统。 面向对象方法以客观世界中的对象为中心。 其分析和设计思想符合人们的思维方式,容易被人们接受。 在面向对象的方法中,分析和设计之间的界限并不明显。 它们用相同的符号表示,分析阶段可以顺利过渡到设计阶段。 客观世界中的对象之间的关系是相对稳定的,因此采用面向对象的方法进行分析和设计的结果也是相对稳定的。

面向对象分析的目标是开发一系列模型来描述计算机软件以满足客户需求的方式。 对象技术的流行已经演变成数十种不同的 OOA 方法。 每种方法都引入了产品或系统分析的过程、一组过程演化模型以及使软件工程师能够以一致的方式创建每个模型的方法。 象征主义。 其中比较流行的方法有OMT、OOA等方法。 但无论采用哪种方法,面向对象分析的主要步骤基本相似,即:①发现角色/参与者,②发现用例,③建立用例模型,④进行领域分析,⑤建立对象关系模型, ⑥ 建立对象——行为模型, ⑦ 建立功能模型。

OOA/OOD方法:OOA模型包括主体、客体类、结构、属性和服务5个层次。 它需要识别对象类、识别结构和关联(包括继承、聚合、组合、实例化等)、划分主体、定义属性、定义服务,5个步骤才能完成整个分析工作。

OMT方法:OMT是 的缩写,主要用于分析、系统设计和对象设计。 包括对象模型(系统的静态、结构化“数据”性质,通常使用类图)、动态模型(系统的瞬态、行为“控制”性质,通常使用状态图)和功能模型(代表不断变化的“功能”)。 “系统的性质,通常使用数据流程图)。

结构化分析方法与面向对象分析方法*大的区别在于,结构化分析方法将系统视为过程的集合,包括由人和计算机完成的过程; 而面向对象方法则将系统视为一个相互交互的系统。 对象集。 结构化分析方法的特点是利用数据流图来帮助人们理解和分析问题。

基于组件的软件开发简单地说就是使用可重用组件来开发应用程序。 基于组件的软件系统中的组件可以是商业组件,也可以是通过其他方式(例如自行开发)获得的组件。 基于组件的软件开发软件开发的重点从程序编写转移到基于现有组件的组装软件开发,以更快地构建系统,并减少支持和升级大型系统所需的维护负担,从而降低软件开发成本。 提高软件开发效率和质量。

组件是指独立发布的功能部分,其服务可以通过其他接口访问。

基于组件的软件开发可以实现分析、设计、类等多个层面的复用。 在分析抽象层面,重用元素包括子系统和类; 在设计层面,复用元素包括系统架构、子系统架构、设计模式、框架、容器、组件、类库、模板、抽象类等。

软件复用的形式大致可分为垂直复用和水平复用。

水平复用是软件元素在不同应用领域的复用,如数据结构、排序算法、人机界面组件等。标准函数库是典型的原始水平复用机制。

垂直重用是在一类具有更多共同属性的应用领域之间重用软件组件。 垂直复用活动的主要关键点是领域分析:根据应用领域的特征和相似性来预测软件组件的可重用性。

模型驱动开发(MDD Model-):一种比较新的软件开发方法——面向模型的分析和设计方法。 说到MDD,就不得不提到MDA,MDA(Model)模型驱动架构,它是国际对象管理组织(OMG,Group)于2001年7月提出的基于MDD方法的模型驱动架构。所谓驱动架构,实际上是将模型与具体技术分离,以实现关键业务部分的可移植性、互操作性和可重用性。 由于业务和代码的解耦,可以更好地适应两个层面的扩展和适应性。 技术的迭代发展和业务的变化互不影响。

MDD驱动流程:

1、从实际业务场景中推导出初步的领域和有界上下文(),以及上下文之间的关系;

2、分析脉络,划分实体和价值对象;

3、关联聚合实体和值对象,得到聚合类别和聚合根;

4、从聚合根开始设计仓库(资源库),设计如何创建实体和值对象;

5、应用模型,并在实践中不断重构模型。

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

相关案例查看更多