《Power Designer系统分析与建模实战》——1.1 软件建模

简介:

本节书摘来自华章计算机《Power Designer系统分析与建模实战》一书中的第1章,第1.1节,作者:谢星星,朱婵著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.1 软件建模

在软件工程的整个实施过程中都采用模型而非文字来描述,这样的实现过程称为软件全程建模。
软件全程建模的特点如下:
1)模型相互之间是有关联的,模型代替文字和图形等成为软件工程过程各阶段展现的主体,通过建模的方式将原来纯文字加图形描述的各种文档模型化,使从需求到代码能够统一起来,实现需求的变动直接影响代码的变化,提高代码对需求的有效性联系。
2)解决过去经常出现的“编码改动, 文档就失效”的问题。
随着软件工程理论研究的深入和软件技术的不断发展,软件建模也日益完善。尽管不同的软件建模平台的建模工作存在差异,但大体可以把软件建模分成3类,即业务建模、数据建模和应用程序建模。
1.1.1 业务建模
业务建模(business modeling)是以软件模型方式描述企业管理和业务涉及的对象和要素,以及它们的属性、行为和彼此关系,业务建模强调以体系的方式来理解、设计和构架企业信息系统。
业务建模的目的是对业务进行建模,主要包括对业务流程建模、对业务组织建模、改进业务流程、领域建模等方面。Power Designer提供的企业架构模型和业务处理模型等都属于业务建模的范畴。
1.1.2 数据建模
数据建模是指对现实世界各类数据的抽象组织,确定数据库需管辖的范围、数据的组织形式等,直至转化成现实的数据库。
数据建模大致分为3个阶段,分别为概念建模阶段、逻辑建模阶段和物理建模阶段。其中,概念建模和逻辑建模阶段与数据库厂商没有关系,换言之,与MySQL、Oracle、Informix、DB2或SQL Server等数据库没有关系。物理建模阶段和数据库厂商存在很大的联系,因为不同厂商对同一功能的支持方式不同,如高可用性、读写分离、索引和分区等。
Power Designer的概念数据模型对应概念建模阶段,在概念建模阶段,主要做3件事:
1)客户交流。
2)理解需求。
3)形成实体。
Power Designer的逻辑数据模型对应逻辑建模阶段。在逻辑建模阶段,需要将实体细化成具体的表,同时丰富表结构。该阶段的产物是,可以在数据库中生成的具体表及其他数据库对象,如主键、外键、属性列、索引、约束、视图和存储过程等。
Power Designer的物理数据模型对应物理建模阶段。在物理建模阶段,可以将在逻辑建模阶段创建的各种数据库对象进一步细化,生成相应的SQL代码,以便用于创建具体数据库对象(大多数建模工具都可以自动生成DDL SQL代码)。但是这个阶段不仅仅需要创建数据库对象,针对业务需求,设计人员也可能进行数据拆分(水平或垂直拆分)等操作。
1.1.3 应用程序建模
统一建模语言或标准建模语言(Unified Modeling Language,UML)是始于1997年的一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,再到构造和配置。面向对象的分析与设计方法的发展在20世纪80年代末至20世纪90年代中出现了一个高潮,UML是这个高潮的产物。它不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且对其做了进一步的发展,并最终统一为大众所接受的标准建模语言。
应用程序日渐复杂,而且重要性也与日俱增。为了帮助管理这种复杂性,需要为 Web 应用程序建模。可以使用UML对应用程序建模,Power Designer的面向对象建模中提供用例图、时序图、类图和包图等UML图形用于对应用程序建模。

相关文章
|
Web App开发 监控 JavaScript
|
存储 Java API
写给大忙人看的 - Java中从MinIO服务器中下载文件(3)
前面两章介绍了 MinIO 文件服务器的环境搭建,以及在 Java 中上传文件至 MinIO 文件服务器中,现在,一起来看下如何从 MinIO 文件服务器中下载文件吧
2957 0
|
存储 前端开发 Java
spring boot 实现Minio分片上传
spring boot 实现Minio分片上传
1885 1
|
SQL Oracle 关系型数据库
PowerDesigner?国产PDManer更值得一试!
🚀 尝试PDManer,告别PowerDesigner!
1622 3
|
5月前
|
存储 监控 前端开发
大文件上传下载处理方案-断点续传,秒传,分片,合并
本文介绍了大文件上传下载的断点续传技术方案。上传方面,通过前端将大文件分块(如5MB/块),后端使用MinIO存储分块并合并,实现断点续传和秒传功能。下载方面,采用Range请求分片下载,前端合并分片触发下载。技术要点包括:1)前端分块计算MD5;2)后端MinIO存储管理;3)分片校验与合并;4)进度监控和异常处理。该方案解决了大文件传输中断问题,提升用户体验,适用于视频等大文件传输场景,完整代码示例包含前后端实现。
|
数据可视化 前端开发 关系型数据库
基于Mybatis-Plus实现Geometry字段在PostGis空间数据库中的使用
本文讲解在mybatis-plus中操作geometry空间字段,同时实现查询和插入操作​。通过geojson,结合前端可视化组件即可完成​矢量数据的空间可视化。
3806 0
基于Mybatis-Plus实现Geometry字段在PostGis空间数据库中的使用
|
11月前
|
前端开发 NoSQL Java
jeecg-boot
JeecgBoot 是一个基于 Spring Boot 和 Vue3 的低代码开发平台,支持快速构建企业级应用。平台提供源码下载、技术架构清晰,涵盖前后端详细配置及代码生成指南。用户可通过 GitHub 获取源码,使用 IDEA 和 WebStorm 开发,结合 MySQL、Redis 等组件实现系统搭建。平台内置代码生成功能,支持表单开发、菜单配置与权限管理,便于快速实现增删改查等业务需求。
 jeecg-boot
|
存储 Java API
MinIO Java SDK 7.1.4 升级到 8.5.17 需要注意什么
现在我需要你帮我分析对比这个两个sdk在对外的接口设计上是否有不兼容的变更
1386 5
|
存储 前端开发 JavaScript
SpringBoot结合Minio实现文件切片极速上传
【10月更文挑战第21天】
1099 6
|
关系型数据库 数据库 PostgreSQL
PostgreSQL数据库的字符串拼接语法使用说明
【6月更文挑战第11天】PostgreSQL数据库的字符串拼接语法使用说明
2399 1