软考高级:系统设计 - MDA 模型 AI 解读

========== 生活化例子 ==========

想象一下,你要建造一栋房子。建房子需要三个阶段:

  1. CIM (概念阶段):这是你想象中的房子。你大概知道房子需要几间卧室、厨房、卫生间,但是还没有详细的设计图。就像在脑海中有个大概的想法:我要建个温馨的家。

  2. PIM (平台无关模型):这个阶段就像你找了建筑师,把你的想法变成了图纸。这些图纸没有考虑具体建房子用的材料或者工具,只是明确房子该怎么建。比如,卧室要多大、窗户放在哪,图纸是标准化的,不管你用什么建筑材料,它都能适用。

  3. PSM (平台相关模型):这是建房子前最后的阶段。建筑师根据图纸,选择具体的材料和施工工具,比如用什么品牌的水泥、木材、电线等。这个阶段的设计很具体,直接对接施工队,开始动工。

========== 概念讲解 ==========
在这里插入图片描述

MDA 模型中的 CIM (Computation Independent Model, 计算无关模型)PIM (Platform Independent Model, 平台无关模型)PSM (Platform Specific Model, 平台相关模型) 是软件开发中常用的三种模型,用来描述软件系统在不同阶段的设计和实现。

  1. CIM (计算无关模型):这是软件开发的概念阶段,主要聚焦于业务需求和功能逻辑,不涉及技术细节。CIM 描述了系统要做什么、解决哪些问题,比如用户的需求、系统的业务流程等。这个阶段不关心技术实现,而是理解客户想要什么。

  2. PIM (平台无关模型):这一阶段转向技术实现的逻辑设计,但不考虑特定平台的技术限制。PIM 描述了系统的结构和行为,但不具体说明在哪个平台上实现,也不依赖特定的编程语言或数据库。例如,定义了系统要有的模块、模块之间的接口,但没有提到是用 Java 还是 Python 开发。

  3. PSM (平台相关模型):这个阶段就是要具体到技术实现。PSM 基于 PIM 的设计,考虑了特定平台的要求,例如要在 Windows 上开发,还是用 MySQL 作为数据库。这个模型包含了具体的代码结构、技术栈选择等,是可以直接转换为程序代码的详细设计。

========== 简单记法 ==========

记住MDA模型的三个层次,可以用这样一句话:

“概念先想清,设计不依赖,最后平台定。”

  • CIM:先想清楚概念,明确业务需求;
  • PIM:设计时不依赖具体平台;
  • PSM:最后根据平台来具体实现。

通过这句话,你可以快速记住每个阶段的重点!

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

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

相关文章

C++ 关于继承和多态常见的一些问题

大家好久不见,我是残念,希望在你看完之后,能对你有所帮助,有什么不足请指正!共同学习交流 本文由:残念ing原创CSDN首发,如需要转载请通知 个人主页:残念ing-CSDN博客,欢迎…

【含文档】基于Springboot+Vue的高校洗浴管理系统(含源码+数据库+lw)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统定…

OJ在线评测系统 前端 完善题目提交服务 细讲异步前端请求与后端接口交互

题目提交服务完善 这则笔记是我们来梳理一下前后端逻辑 主要是我们的提交逻辑 先是看前端 按钮绑定的是这个异步请求 async 关键字表示这个函数内部会使用 await 来等待异步操作完成。 异步提交表单数据 const doSubmit async () > {// message.error("刷题机架构…

如何为创新成果进行专利保护?

专利作为保护创新成果的重要法律手段,如同为创新者披上了一层坚实的盔甲,确保他们的智慧结晶免受侵犯。然而,随着科技的飞速发展,专利侵权现象也日益增多,如何有效保护专利,维护创新者的合法权益&#xff0…

使用SNAP工具处理Sentinel-1数据应注意磁盘和内存问题

近期使用SNAP处理数据比较多,有一些心得给大家分享一下!在预处理Sentinel-1数据 的过程中出错基本上是有3种情况: 磁盘被写满 由于JAVA优化一般是通过空间换效率的方式。所以SNAP为了提高效率,本版本升级增加了数据本地缓存的比重…

C++冷门知识点1

1.特殊情况汇总: 负数,空指针,叶节点,INT_MAX和INT_MIN 2.双指针法(快慢指针,头尾指针),三数指针法(链表逆序那块) 3.一定要注意极端情况 2.e后边可以跟负数,但是不能跟小数 3.string的push_bac…

工具介绍---效率高+实用

Visual Studio Code (VS Code) 功能特点: 智能代码提示:内置的智能代码提示功能可以自动完成函数、变量等的输入,提高代码编写速度。插件丰富:支持成千上万的扩展插件,例如代码片段、主题、Linting等,能够…

Iceberg 基本操作和快速入门

安装 Iceberg 是一种适用于大型分析表的高性能工具,通过spark启动并运行iceberg,文章是通过docker来进行安装并测试的 新建一个docker-compose.yml文件 文件内容 version: "3" services: spark-iceberg: image: tabulario/spark-iceberg co…

FastAPI 第五课 -- 基本路由

目录 一. 前言 二. 根路径路由 三. 路径参数 四. 启动应用和测试路由 一. 前言 在 FastAPI 中,基本路由是定义 API 端点的关键。每个路由都映射到应用程序中的一个函数,用于处理特定的 HTTP 请求,并返回相应的响应。 二. 根路径路由 创…

Java中使用ZXing和QRCode生成二维码(附Demo)

目录 前言1. 基本知识2. ZXing3. QRCode 前言 对于Java的基本知识推荐阅读: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)【Java项目】实战CRUD的功能整理(持续更新) 1. 基本知识 生成二维码在J…

SpringBoot实现自定义Redis的连接

SpringBoot实现自定义Redis的连接 1.docker安装Redis docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf2.maven 的pom文件导包 <dependency>&…

PDF 秒变 JPG,2024 这些工具来助力

有些扫描仪默认将扫描文档保存为PDF格式&#xff0c;若事先未加留意&#xff0c;便可能累积大量PDF文件。然而&#xff0c;在需要将这些文件插入到其他文档或进行图形设计时&#xff0c;PDF格式可能会显得不够灵活或便捷。这时&#xff0c;将PDF转换为JPG图片格式就成为了一个实…

选对工具很重要!师姐花了1天写代码,我3分钟就做出一样的倾向性得分匹配结果!...

风暴统计 √浙中大学统计老师郑卫军主持 √ 基于R语言软件开发 √ 免费使用&#xff0c;无需注册 √一键生成发表级图表 www.medsta.cn/software &#xff08;电脑端浏览器打开&#xff09; 倾向性得分方法&#xff08;PSM&#xff09;可有效降低混杂偏倚&#xff0c;得到类似随…

2024外研社综合能力大赛第一场真题

网上找滴~自用 审核不过&#xff0c;备考指南发知乎了&#xff1a;https://zhuanlan.zhihu.com/p/730698685

Spring Boot在甘肃非遗文化网站开发中的应用

2 相关技术 2.1 SSM框架介绍 本课题程序开发使用到的框架技术&#xff0c;英文名称缩写是SSM&#xff0c;在JavaWeb开发中使用的流行框架有SSH、SSM、SpringMVC等&#xff0c;作为一个课题程序采用SSH框架也可以&#xff0c;SSM框架也可以&#xff0c;SpringMVC也可以。SSH框架…

[网络]数据链路层-MAC帧与ARP协议

目录 一、数据链路层 二、以太网 2.1 认识以太网 2.2 数据碰撞 2.3 交换机 2.4 MAC帧格式 2.5 局域网通信过程 2.6 认识 MAC 地址 2.7 对比理解 MAC 地址和 IP 地址 2.8 认识 MTU 2.9 认识MSS 三、ARP 协议 3.1 了解ARP协议 3.2 ARP协议的工作流程 3.3 ARP 数据…

火车票有电子发票吗?没纸质火车票怎么报销?

火车票有电子发票吗&#xff1f; 火车票、高铁票目前没有电子发票&#xff0c;但是现在已经实行电子客票&#xff0c;车票即购票证件&#xff0c;乘车时&#xff0c;只需购票证件原件&#xff08;如身份证、护照、临时身份证等&#xff09;即可乘车。 没纸质火车票怎么报销&am…

“AI+Security”系列第3期(五):AI技术在网络安全领域的本地化应用与挑战

近日&#xff0c;由安全极客、Wisemodel 社区、InForSec 网络安全研究国际学术论坛和海升集团联合主办的“AI Security”系列第 3 期技术沙龙&#xff1a;“AI 安全智能体&#xff0c;重塑安全团队工作范式”活动顺利举行。此次活动吸引了线上线下超过千名观众参与。 在活动中…

3D 模型GLTF、GLB格式文件介绍使用;FBX格式

一、GLTF、GLB介绍 GLTF&#xff08;GL Transmission Format&#xff09;和 GLB&#xff08;GL Binary&#xff09;是用于在 Web 和各种应用程序中传输和加载 3D 场景和模型的开放标准格式。它们由 Khronos Group 开发&#xff0c;旨在提供一种高效、可扩展且易于使用的 3D 内…

9.26号算法题

数组的遍历 414.第三大的数 题解&#xff1a; class Solution {public int thirdMax(int[] nums) {TreeSet<Integer>treeSet new TreeSet<Integer>(); //生成一个TreeSet对象&#xff0c;存储有序唯一整数for (int num : nums){//遍历数组treeSet.add(num);//将…