[架构之路-226]:信息系统建模 - 实体关系图、数据流图、数据字典、流程图

news2025/1/12 3:41:13

目录

一、信息系统建模概述

二、常见建模工具

2.1 实体关系图 -- “实体=》类” =》关注实体,对象

2.2 数据流图 -- 数据流动 -- 关注数据本身

2.3 业务-流程图 -- 活动步骤 -- 关注动作、活动

三、建模工具的比较

3.1 数据流图与业务流程图的区别

3.2 数据、信息、活动的比较


一、信息系统建模概述

信息系统建模是指在信息系统开发过程中,使用不同的建模技术和工具来描述和表示系统的各个方面,以便于系统分析、设计和实施。

信息系统建模的主要目的是为了理解和描述系统中的各种元素、过程和关系,以便于进行系统需求分析、功能设计、数据建模和流程优化等工作。它可以帮助开发团队和利益相关者更好地沟通、共享和验证对系统的理解。

以下是常用的信息系统建模方法和技术:

  1. 业务-实体关系图(Entity-Relationship Diagram,ER图):用于描述系统中实体之间的关系和依赖,以及实体的属性和约束。实体关系图会进一步分解成类图。

  2. 业务-数据流图(Data Flow Diagram,DFD):用于描述系统中数据的流动和处理过程,包括数据流、处理过程和数据存储。

  3. 业务-流程图(Business Process Diagram):用于描述系统中的业务流程和操作步骤,展示不同角色和组织之间的交互。

  4. 用例图(Use Case Diagram):用于描述系统的功能需求和用户与系统之间的互动场景。

  5. 类图(Class Diagram):用于描述系统中的对象或类之间的关系、属性和方法。

  6. 时序图(Sequence Diagram)和活动图(Activity Diagram):用于描述系统中的交互行为和处理流程。

通过使用这些建模方法和技术,进行信息系统建模可以帮助开发团队和利益相关者更好地理解系统的需求和设计,减少误解和沟通障碍,提高开发效率和系统质量。

二、常见建模工具

2.1 实体关系图 -- “实体=》类” =》关注实体,对象

实体关系图(Entity-Relationship Diagram,简称ER图)是一种用于描述数据模型的图形化工具,主要用于表示实体之间的关系

在ER图中,包含以下几个主要的构件:

  1. 实体(Entity):代表现实世界中的某个独立的事物、对象或概念。一个实体可以是一个人、一个物品、一个地点等等。实体由一个矩形框表示,框内写有实体的名称。

  2. 属性(Attribute):用于描述实体的特征或性质。属性可以是实体的某个具体的数据项,例如一个人的姓名、年龄、性别等。属性由椭圆形框表示,与对应的实体连接在一起。

  3. 关系(Relationship):表示实体之间的关联或连接。关系用菱形表示,关系的名称写在菱形内部。关系线连接实体,并可以标明关系的类型,例如一对一、一对多、多对多等。

  4. 主键(Primary Key):唯一标识实体的一个或多个属性。主键通常用下划线标记。

通过使用这些构件,ER图可以清晰地表示数据模型中实体的结构和关系。ER图通过实体之间的关系来展示数据表之间的联系,例如主键-外键关系。它可以帮助开发者和分析师更好地理解数据模型,进行数据库设计、系统开发和需求分析。

绘制ER图时,需要考虑实体之间的关系、属性的定义以及实体之间的约束等。ER图是数据建模中常用的工具,被广泛应用于数据库设计、系统分析和软件开发中,有助于组织和设计数据结构,减少数据冗余和不一致性,并提高数据的完整性和一致性。

2.2 数据流图 -- 数据流动 -- 关注数据本身

数据流图(Data Flow Diagram,DFD)是一种图形化工具,用于描述系统中数据的流动和处理过程。

在数据流图中,包含以下几个主要的构件:

  1. 过程(Process):表示对数据进行处理或转换的操作步骤,可以是一个功能、算法、转换或计算过程等。过程由圆角矩形表示,通常用简短的文本描述其功能。

  2. 数据流(Data Flow):表示在系统中传输的数据,可以是输入数据、输出数据或在过程中进行的数据处理。数据流由箭头线表示,箭头指向数据的流向。数据流可在过程间、过程与外部实体之间传递。

  3. 数据存储(Data Store):表示数据的持久储存位置,可以是数据库表、文件、内存等。数据存储由矩形框表示,通常包含数据的名称。

  4. 外部实体(External Entity):表示与系统交互的外部对象、人员或其他系统。外部实体由矩形框表示,并用简短的文本描述其名称。

通过使用这些构件,数据流图可以清晰地表示数据在系统中的流转路径、传递过程以及参与的实体和存储位置。数据流图用于描述系统的功能和数据流程,帮助分析师和开发团队理解系统需求,展示系统的整体架构和过程流程。

绘制数据流图时,需要考虑系统中的过程、数据流、数据存储和外部实体之间的关系,以及数据的输入、输出和处理操作。数据流图可以用于需求分析、系统设计和改进过程中,有助于识别系统中的问题、瓶颈和改进机会,提升系统性能和效率。

常用的数据流图包括级别0(Context Diagram)和级别1(Level 1 Diagram),通过分层和细化的方式,逐步展示系统的数据流程和处理细节。

2.3 业务-流程图 -- 活动步骤 -- 关注动作、活动

业务流程图(Business Process Diagram)是一种流程图的类型,用于描述和分析组织或企业中的业务流程。它以图形化的方式展示各个步骤、活动、决策和数据流在业务流程中的顺序和关系。

在业务流程图中,常见的符号和构件包括:

  1. 开始/结束符号:表示业务流程的开始和结束点,通常用椭圆形表示。

  2. 活动符号:表示业务流程中的具体活动、步骤或任务。活动符号通常用矩形框表示。

  3. 决策符号:表示业务流程中需要进行决策、判断的部分。决策符号通常使用菱形框表示,通常在不同决策分支之间使用箭头表示流程的分支。

  4. 连接线/箭头:表示业务流程各个步骤之间的顺序和流向,通常使用箭头线连接符号,表示操作或判断之间的流程连贯性。

  5. 数据流符号:表示业务流程中的数据流动,例如输入数据、输出数据等。数据流符号通常使用箭头线表示,指示数据的流向。

通过使用这些符号和构件,业务流程图可以清晰地描述和分析业务流程中的步骤、活动、决策和数据流动等。它可以帮助组织和企业理解、分析和改进业务流程,发现潜在问题、优化瓶颈和改进机会,以提高效率和效益。

在绘制业务流程图时,需考虑业务流程的开始和结束点、活动步骤的顺序和流转、决策判断的分支和数据流动等。业务流程图通常采用层级结构,从高层次的流程图开始,逐步细化和展开各个活动和子流程,以完整地呈现业务流程的详细内容。

业务流程图常用于业务流程设计、分析和改进,用于制定和优化组织和企业中各个业务领域的流程,如销售流程、采购流程、客户服务流程等。通过业务流程图,可以更好地识别和理解业务流程中的问题、瓶颈和改进机会,提升业务效率和质量。

三、建模工具的比较

3.1 数据流图与业务流程图的区别

数据流图(Data Flow Diagram)和业务流程图(Business Process Diagram)是两种常用的流程图类型,用于描述和分析系统、组织或企业中的业务流程信息流动

它们有以下几个主要区别:

  1. 重点不同:数据流图着重于描述信息和数据的流动,强调数据在系统中的输入、输出、存储和处理过程。它关注的是数据的流向和转换。而业务流程图则着重于描述业务活动、步骤和决策,在业务层面上展示业务流程的顺序和关系。

  2. 符号和构件不同:数据流图使用一组特定的符号,如箭头、圆圈、矩形框等,来表示不同类型的数据流、数据存储、过程和外部实体等。业务流程图则使用不同的符号,如椭圆形、矩形框、菱形框等,来表示业务流程中的开始/结束点、活动步骤、决策和数据流动等。

  3. 重点层级不同:数据流图通常采用层次结构,从高层次的全局视图开始,逐步细化和展开各个子流程,以完整地描述数据的流向和处理。而业务流程图则可以包含多个层级的业务活动、子流程和决策,以更详细地展示业务流程的各个步骤和关系。

  4. 分析角度不同:数据流图主要用于系统分析和设计,关注系统中各个模块、子系统和数据之间的关系,以便分析和改进系统的数据流动。而业务流程图更倾向于业务流程的建模和优化,用于分析和改进业务流程中的活动、决策和数据流动,以提升业务效率和质量。

尽管有不同之处,数据流图和业务流程图可以相互补充和结合使用,以更全面地描述和分析系统或业务流程。数据流图将关注点放在数据流动和处理过程上,而业务流程图则更侧重于业务流程中的活动和决策。通过结合使用这两种图形表示方法,可以更好地理解和优化流程和信息流动。

备注:流程

流程是指为了完成特定任务或实现特定目标而经过的一系列有序的活动或步骤。

它描述了事物或信息在时间上的顺序和流动方式,通常包括输入、处理/转换和输出三个主要方面。

流程可以应用于不同的领域,如管理、生产、工程、计算机等。在管理领域,流程被用于描述组织中的工作流程,包括各种任务、决策和业务活动的顺序和关系。在生产领域,流程被用于描述生产线上的物料处理和加工流程。在工程领域,流程被用于描述工程项目的各个阶段和活动的执行顺序。在计算机领域,流程被用于描述程序的运行流程和算法的执行路径。

一个流程通常包括以下几个要素:

  1. 输入:流程需要接收和处理的起始数据、信息、资源或条件。

  2. 处理/转换:流程中的操作、活动或步骤,用于对输入进行处理、转换和操作,以产生输出。

  3. 输出:流程生成的最终结果、数据、信息或产品。

  4. 顺序和关系:流程中各个步骤或活动之间的顺序和依赖关系,通常以有向箭头或连接线表示。

  5. 决策和控制:流程中的决策点和分支,用于根据不同的条件选择不同的路径或活动。

流程的目的是为了优化和管理工作的执行,提高效率、效果和质量。通过定义和优化流程,可以帮助组织和个人更好地掌握任务的执行顺序和方法,减少重复、错误和浪费,提高工作的协同性和响应能力。流程还可以为相关方提供清晰的指导和参考,以达到预期的目标和结果。

3.2 数据、信息、活动的比较

数据、信息和活动是在流程和系统中经常使用的相关概念。

它们有以下几个主要方面的比较:

  1. 定义和特点:

    • 数据(Data)是描述事实、观察结果或原始元素的符号化形式。它通常是离散、原始、未经处理的符号表示,可以是数字、文本、图像、声音等形式。
    • 信息(Information)是通过对数据进行组织、处理和解释而产生的有意义、可理解和可用于决策的内容。信息通过加工和分析数据,提供给用户或系统相关的指导、见解和结论。
    • 活动(Activity)是为达到特定目标而进行的一系列有序的行为或操作。活动可以是个人或系统执行的任务、步骤或操作,通常涉及对数据和信息的处理、转换和传递。
  2. 关系和依赖:

    • 数据是信息的基础。信息是通过对数据进行处理、组织和解释而产生的。数据提供了信息的原始材料和内容。
    • 活动需要使用数据和信息作为输入和输出。活动在执行过程中操作和处理数据和信息,以达到特定的目标和结果。
  3. 目的和用途:

    • 数据可用于描述和记录事实、观察结果和原始元素。数据通常用于存储和传递信息的基本形式。
    • 信息的目的是提供有价值的内容和洞察力,以支持决策、判断和实际应用。信息提供了对数据的解释、分析和上下文的提炼。
    • 活动的目的是执行特定的任务、步骤或操作,以实现特定的结果和目标。活动对数据和信息进行处理、转换和传递,以便产生所需的输出。

综上所述,数据是基本的符号化元素,信息是对数据的加工和解释,而活动是为了实现目标而执行的行动和操作。数据、信息和活动之间存在相互依赖和关系,在流程和系统中相互作用,以支持组织和个人的工作和决策。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1053243.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux高性能服务器编程 学习笔记 第九章 IO复用

IO复用使程序能同时监听多个文件描述符,这可以提高程序的性能,通常网络程序在以下情况需要使用IO复用: 1.客户端进程需要同时处理多个socket。 2.客户端进程需要同时处理用户输入和网络连接。 3.TCP服务器要同时处理监听socket和连接socket…

网络-Ajax

文章目录 前言一、Ajax优点:缺点: 二、使用步骤XNLHttpRequest对象完整代码 总结 前言 本文主要记录Ajax技术的简介,以及用法。 一、Ajax Ajax是一组用于在Web浏览器和Web服务器之间进行异步通信的Web开发技术。 它代表着Asynchronous Java…

如果在 Mac 上的 Safari 浏览器中无法打开网站

使用网络管理员提供的信息更改代理设置。个人建议DNS解析,设置多个例如114.114.114.114 8.8.8.8 8.8.4.4 如果打不开网站,请尝试这些建议。 在 Mac 上的 Safari 浏览器 App 中,检查页面无法打开时出现的信息。 这可能会建议解决问题的…

第 114 场 LeetCode 双周赛题解

A 收集元素的最少操作次数 模拟: 反序遍历数组&#xff0c;用一个集合存当前遍历过的不超过 k k k 的正数 class Solution { public:int minOperations(vector<int> &nums, int k) {unordered_set<int> vis;int n nums.size();int i n - 1;for (;; i--) {if…

nodejs+vue活鲜物流监控系统elementui

第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;技术背景 5 3.2.2经济可行性 6 3.2.3操作可行性&#xff1a; 6 3.3 项目设计目标与原则 6 3.4系统流程分析 7 3.4.1操作流程 7 3.4.2添加信息流程 8 3.4.3删除信息流程 9 第4章 系统设计 11 …

蓝桥等考Python组别十级003

第一部分&#xff1a;选择题 1、Python L10 &#xff08;15分&#xff09; 已知s Pencil&#xff0c;下列说法正确的是&#xff08; &#xff09;。 s[0]对应的字符是Ps[1]对应的字符是ns[-1]对应的字符是is[3]对应的字符是e 正确答案&#xff1a;A 2、Python L10 &am…

【OpenCV-Torch-dlib-ubuntu】Vm虚拟机linux环境摄像头调用方法与dilb模型探究

前言 随着金秋时节的来临&#xff0c;国庆和中秋的双重喜庆汇聚成一片温暖的节日氛围。在这个美好的时刻&#xff0c;我们有幸共同迎来一次长达8天的假期&#xff0c;为心灵充电&#xff0c;为身体放松&#xff0c;为未来充实自己。今年的国庆不仅仅是家国团聚的时刻&#xff…

SSL/TLS介绍以及wireshark抓包TLS Handshake报文

文章目录 1.概念1.1 SSL/TLS发展历史1.2 TLS两个阶段1.3 TLS报文头 2.TLS Handshake2.1 Handshake具体过程2.1.1 单向认证和双向认证2.1.2 复用TLS协商结果Session Identifier&#xff08;会话标识符&#xff09;Session Ticket&#xff08;会话票据&#xff09; 2.2 Handshake…

实验篇——根据群体经纬度提取环境数据(数据降维)

实验篇——根据群体经纬度提取环境数据&#xff08;数据降维&#xff09; 文章目录 前言一、先导二、R语言实现2.1. 分气温、降水、光照、风速、蒸汽压划分数据集2.2. 对每个数据集降维处理2.2.1. 气温2.2.2. 降水2.2.2. 光照2.2.3. 风速2.2.4. 蒸汽压2.2.5.定义一个函数&#…

【小沐学前端】Node.js实现UDP和Protobuf 通信(protobuf.js)

文章目录 1、简介1.1 node1.2 Protobuf 2、下载和安装2.1 node2.2 Protobuf 3、node 代码示例3.1 HTTP3.2 UDP单播3.4 UDP广播 4、Protobuf 代码示例4.1 例子:awesome.proto 结语 1、简介 1.1 node Node.js 是一个开源的、跨平台的 JavaScript 运行时环境。 Node.js 是一个开源…

基于 SpringBoot+Vue 的教室人事档案管理系统

1 简介 教师人事档案管理系统利用信息的合理管理&#xff0c;动态的、高效的、安全的实现了教师的各种需求&#xff0c;改变了传统的网上查看方式&#xff0c;使教师可以足不出户的在线查看最适合自己个人档案、奖惩信息、档案变动、培训报名或者新闻资讯。 1、教师后台功能模…

闪存工作原理

前言 1、闪存类型 闪存有两种分类&#xff0c;NAND型闪存主要用于存储 2、MOS的特性 MOS管的三个引脚分别是Gate&#xff08;G&#xff09;、Source&#xff08;S&#xff09;和Drain&#xff08;D&#xff09;。Gate&#xff08;G&#xff09;引脚是晶闸管的控制引脚&…

Qt::图层框架-图片图层-序列图层-QGraphicsPixmapItem

二维矢量动画智能制作软件开发合集 链接&#xff1a;软件开发技术分享及记录合集 个人开发二维矢量动画智能制作软件界面如下&#xff1a; 目录 一、图片序列图层原理 二、图片序列图层代码实现 三、图片序列图层软件测试视频 结束语 一、图片序列图层原理 本软件的11种…

Sentinel学习(2)——sentinel的使用,引入依赖和配置 对消费者进行流控 对生产者进行熔断降级

前言 Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件&#xff0c;主要以流量为切入点&#xff0c;从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 本篇博客介绍sentinel的使用&#x…

后端各层的部署开发

目录 一、创建数据库 二、entity层 三、mapper层 四、service层 五、controller层 一、创建数据库 CREATE TABLE user (id bigint NOT NULL AUTO_INCREMENT COMMENT id,name varchar(10) DEFAULT NULL COMMENT 姓名,sex varchar(5) DEFAULT NULL COMMENT 性别,phone varcha…

NLP 03(LSTM)

一、LSTM LSTM (Long Short-Term Memory) 也称长短时记忆结构,它是传统RNN的变体,与经典RNN相比&#xff1a; 能够有效捕捉长序列之间的语义关联缓解梯度消失或爆炸现象 LSTM的结构更复杂,它的核心结构可以分为四个部分去解析: 遗忘门、输入门、细胞状态、输出门 LSTM内部结构…

如何在Qt中引入Network模块

2023年10月1日&#xff0c;周日凌晨 如果用的是CMake find_package(Qt6 COMPONENTS Network REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Network) 如果用的是qmake QT network

zemax光线光扇图

光线光扇图&#xff1a; 过光瞳Y轴的光束剖面&#xff0c;称为子午光扇&#xff1b; 过光瞳X轴的光束剖面&#xff0c;称为弧矢光扇。 可以显示作为光瞳坐标函数的光线像差。 对于视场内任意一点&#xff0c;取其子午面内的光线&#xff0c;以光线在光阑面上的透射点坐标为横…

IDEA 使用

目录 Git.gitignore 不上传取消idea自动 add file to git撤销commit的内容本地已经有一个开发完成的项目&#xff0c;这个时候想要上传到仓库中 Git .gitignore 不上传 在项目根目录下创建 .gitignore 文件夹&#xff0c;并添加内容&#xff1a; .gitignore取消idea自动 add…

毛玻璃态卡片悬停效果

效果展示 页面结构组成 页面的组成部分主要是卡片。其中卡片的组成部分主要是包括了图片和详情。 卡片的动效是鼠标悬停在卡片上时&#xff0c;图片会移动到左侧&#xff0c;并且图片是毛玻璃效果。所以我们在布局的时候图片会采用绝对布局。而详情则是基础布局。 CSS3 知识…