系统架构设计:1论软件系统建模方法及其应用

目录

[一 软件系统建模方法](#一 软件系统建模方法)

1结构化建模

2信息工程建模

3面向对象建模

4功能分解法

5基于构件的开发方法

一 软件系统建模方法

软件建模体现了软件设计的思想,是连接需求和实现的桥梁,用于指导软件的具体实现。软件模型不是软件系统的完备表示,而是通过不同的视角采用不同模型去抽象描述一个系统。

主流的软件系统建模方法有:

1结构化建模

结构化建模方法是以过程为中心的技术,可用于分析一个现有系统以及定义新系统的业务需求。结构化设计的准则有分解与抽象、模块独立性、信息隐蔽等。

结构化建模方法所绘制的模型称为数据流图(DFD)。针对软件生存周期各个不同的阶段,结构化建模包含结构化分析、结构化设计和结构化程序设计等方法。对于流程较为稳定的系统可以考虑结构化建模方法。

结构化建模工具:

(1)数据流图

全面描述数据处理,综合反应系统中信息的变换处理、流动,用于系统的功能建模。数据流图中主要图形元素有数据流、数据源、数据存储。

数据流图在分析阶段和设计阶段的作用?

分析阶段:建立系统的功能模型,从而完成需求分析。

设计阶段:为模块划分与模块之间接口设计提供依据。

(2)数据字典

定义和描述数据的数据项、数据结构、数据流、数据存储、处理逻辑等,其目的是详细说明数据流图中的各个元素。数据字典中包含的信息有:名称、别名、使用范围、使用方法、内容描述等。

数据字典在分析与设计阶段的作用:是所有人员工作的依据、统一的标准。它可以确保数据在系统中的完整性和一致性。

(3)判定表

描述加工的图形工具,适合描述问题处理中具有多个判断,而且每个决策与若干条件有关的情形。

2信息工程建模

信息工程建模又称为数据库建模。该方法是一种以数据为中心,但过程敏感的技术,它强调在分析和研究过程需求之前,首先研究和分析数据需求。信息工程建模方法所创建的模型被称为实体-联系图(E-R图),主要用于数据建模。

实体-联系图(E-R图)是一种表示实体类型、属性和联系的方法,用于描述现实世界关系的概念模型。实体间的联系类型有1:1、1:n、m:n三种。

3面向对象建模

面向对象建模方法将"数据"和"过程"集成到被称为"对象"的结构中,消除了数据和过程的人为分离现象。面向对象建模方法所创建的模型被称为对象模型。随着面向对象技术的不断发展和应用,形成了面向对象的建模标准,即UML(统一建模语言)。

UML定义了几种不同类型的模型图。目前比较常用的建模方法。UML可以清晰地表示系统的逻辑模型和实现模型。UML支持Java、C++等面向对象语言的实现。UML由事务、关系、图三个部分组成。

面向对象建模可以实现软件复用,简化程序设计;系统易于维护;系统开发周期短。

4功能分解法

功能分解法将一个系统看成若干功能的集合,将系统划分为若干功能块,较大的功能模块则细分为较小的子模块,直到可以方便设计者定义为止。功能分解法完全是以系统需要提供的功能为中心来进行系统设计,总体思想就是分治。

功能分解法能准确地反映用户的需求,但是由于系统部分关联性较强,当需求改变时可能会导致系统整体框架的改变。

5基于构件的开发方法

基于构件的软件开发方法是指使用可复用的构件开发软件。构件就是系统中有价值的、独立的、可替换的部分,可以通过接口访问构件的服务。三大构件标准:CORBA、EJB和DNA2000。

构件的特性:

  • 独立部署单元;
  • 作为第三方的组装单元;
  • 没有(外部的)可见状态。

基于构件的方法支持软件复用,可以有效提高开发效率和质量,降低开发和维护成本。但是需要有构件支持,没有构件可使用的情况下需要重新开发构件。

构件、对象和模块的对比:

相关推荐
最小的帆也能远航3 小时前
2018年下半年 系统架构设计师 论文
系统架构
钟爱蛋炒饭4 小时前
支付子系统架构及常见问题
系统架构
chenglin0166 小时前
高并发、低延迟全球直播系统架构
系统架构
非晓为骁6 小时前
【Agent】DeerFlow Researcher:系统架构与执行流程(基于真实 Trace 深度解析)
系统架构·agent·trace·deerflow·langsmith
roman_日积跬步-终至千里7 小时前
【系统架构设计(27)】信息安全技术集成
系统架构
小鱼儿LY12 小时前
软考系统架构设计师之软件架构篇
系统架构·软考·软件架构
龙亘川14 小时前
智慧城市SaaS平台之智慧城管十大核心功能(七):后台支撑系统
服务器·人工智能·系统架构·智慧城市·运维开发·智慧城市saas平台
币须赢1 天前
机器人智能系统架构:大脑
系统架构·机器人
qqxhb1 天前
系统架构设计师备考第17天——企业资源规划(ERP)& 典型信息系统架构模型
系统架构·erp·b2c·b2b·g2g·g2b·g2c
谱写秋天1 天前
软考-系统架构设计师 *密钥管理技术详细讲解
系统架构·软考架构师