首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

软件开发的必备技能,UML建模思维方法锦集!(干货预警!)

建立用例模型 建立用例模型一般需要分为4步: (1)发现用例者 在这里有几个发现用例者的技巧可以参考: ①谁使用该系统 ②谁改变系统的数据 ③谁从系统获取信息 ④谁需要系统的支持以完成日常工作任务...⑤谁负责维护、管理并保持系统正常运行 ⑥系统需要应付哪些硬件设备 ⑦系统需要和哪些外部系统交互 ⑧谁对系统运行产生的结果感兴趣 (2)获取用例 执行者提出问题获取用例以下几个方法,同样获取用例需要知道...( (4)用例间关联 用例之间存在泛化关系、扩展关系和包含关系,这三个关系中的每一个用例之间都存在相应的联系。 1、泛化关系 即一般和特殊的关系 : ?...2、聚集关系 聚集关系是一种特殊的关联关系,描述的类与类之间的关系是整体与部分的关系陈述需求中使用的“包含”、“组成”、“分为…部分”等字句,意味着存在聚集关系。...2、状态转换 事件说明(守卫条件)/动作表达式~发送子句 事件说明: 事件名(参数表) 守卫条件: 事件发生且守卫条件为真状态转换 动作表达式:状态转换开始、执行的表达式 发送子句: 动作特例,在状态转换期间发送消

97320
您找到你想要的搜索结果了吗?
是的
没有找到

AI 调教师:绘制 ER 图

如上图,我们希望能做到比如: 创建数据模型,让 ChatGPT 帮我们推断表应该包含的字段、字段类型、主键、索引、表之间的关联关系等等 优化数据模型。..." } } ] } ] 你可以根据问题创建多个对象,以数组的形式返回。...--- 以 JSON 数组的格式回答,不要解释 --- 当你无法理解请求时, 请回答直接返回: [SORRY] 不要解释 ` 这个 Prompt 结构算是比较典型: 角色定义。...数据库建模专家 任务。将用户需求转换为概念模型 规则。字段的类型,引用关系的描述,主键 输出规则。输出 JSON,如果失败就返回 [SORRY] 示例。...因此我们就需要引入 Few-shot Prompt 的进阶技巧 —— Few-Shot Chain of Thought: 通过大语言模型展示一些少量的样例,并在样例中解释推理过程,大语言模型在回答提示时也会显示推理过程

1.1K40

TypeORM学习笔记(一)

TypeORM是一个基于JS的ORM框架,支持MySQL、SQLite、PgSQL、MSSQL、Oracle、MongoDB等多种数据库,可以运行在服务端nodejs上,也可以运行在C端上(React-native...一、快速开始1.全局安装typeormnpm install typeorm -g2.创建项目--name是创建的目录名称,--database是使用哪种数据库,可以用下列数据库:mysql,mariadb...,可以参考手册:https://typeorm.bootcss.com/entities#%E5%88%97%E7%B1%BB%E5%9E%8B#4 特殊列类型simple-array可以自动将列转成数组...', total); const user = await userRepo.find({where:{id:4}}); console.log('user', user);})();5.关系关系可以帮忙我们精简多个相关表的操作...一对一 使用 @OneToOne多对一 使用 @ManyToOne一对多 使用 @OneToMany多对多 使用 @ManyToMany以最简单的一对一为例:import { Entity, PrimaryGeneratedColumn

21710

基于 Nest.js+TypeORM 实战,项目已开源,推荐!

数据关系 前面文章中已经说了TypeORM建表时,是通过@Entity()装饰的class 映射为数据表, 所以实体中的关系也就是表关系。...接下来探索一下如何用TypeORM创建一对一、一对多和多对多的关系。 一对一 一对一指的是表中一条数据仅关联另外一个表中的另一条数据。例如用户表和用户档案表, 一个用户只有一份档案。...TypeORM在处理“一对多”的关系时, 将一的主键作为多的外键,即@ManyToOne装饰的属性;这样建表时有最少的数据表操作代价,避免数据冗余,提高效率, 上面的实体关系会生成以下表: |...关系装饰器: @OneToOne: 用于描述一对一关系 @ManyToOne、@OneToMany:用于描述一对多关系,OneToMany总是反向的,并且总是与ManyToOne成对出现。...,这方法是在posts.entity.ts中定义的, 因为在很多返回文章数据的地方都需要对数据进行格式化,比如,直接查询出来的结果,标签是嵌套的数组对象, 而前端只需要显示标签,我们直接返回多个标签名就可以了

10.6K41

揭秘超以太网联盟 UEC 工作组的最新进展!

自上一次云计算大潮以来 产业界也许从来没有如此亢奋过 从底层器件到上层软件都到了十字路口 以太网平稳发展50年 越过山丘突然发现还有人等候 InfiniBand 老树新芽枯木又逢春 不得已带头大哥又吹响集结号成立...链路层新增的几个能力LLR、CBFC、PRI,需要协商才能支持,主要思路是扩展LLDP,增加一个UEC OUI,用于设备间新增链路层能力的协商。...的主要模块如下图所示: UET包含Packet Delivery、Security、Semantics三个模块,各个模块功能如下: Packet Delivery sulayer(PDS): 报文传送子层包含可靠性和拥塞管理两个模块...可靠性传输层需要检测重复报文,以确保每一个报文只能语义层传送一次。...04 软件层工作组 软件层通过与当前各种广泛采用的通信库(*CCL、MPI和SHMEM)兼容的方式,使用libfabric API作为数据平面框架,促进对UEC的快速采用。

1.6K10

Mobius:区块链生态系统与真实世界数据的通用协定套件

何以代币作为登录机制的服务将有相似的技术基础需求,这与代币支付设施类似。Mobius将提供简单的REST API,它会把登录时要求确认代币身份的区块链开发抽象来出来,方便开发者做登录确认。...二级市场允许人们匿名买卖会员,与此同时,无须与中心的金融机构,比如信用卡、借记卡交互,或买卖完全匿名的银行账号,比如匿名协议代币Zcash、Monero、PIVX等。...多重关系的会员身份也可通过不同数量的代币来获得不同层级。比如,一个基本的会员身份不仅可以要求一个代币登录,也可要求五个代币登录。...协议特点 将现实世界数据与区块链链接 利用Mobius代币实现区块链进行高保真数据传输 高吞吐量数据传输到安全的智能合约 团队成员 Cyrus S....:公募结束后立即币,币三天内可上线交易 交易所:会在40多家交易所陆续上线 官网:https://mobius.network/zh 中文白皮书:https://docsend.com/view/gr63mgi

1.4K70

Spring Data JPA 就是这么简单

,首次启动项目的时候,默认会在数据中生成一个同实体类相同名字的表(table),也可以通过注解中的 name 属性来修改表(table)名称, @Entity(name=“stu”) , 这样数据库中表的名称则是...一对多的关系,jpa 使用的注解是 @OneToMany 多对一的关系,jpa 使用的注解是 @ManyToOne 多对多的关系,jpa 使用的注解是 @ManyToMany 在使用 jpa 的时候,...,教室到学生的关系就可以定义为 @OneToMany 很多学生容纳在一个教室当中,学生到教室的关系可以定义为@ManyToOne 一个学生可以有很多的老师,一个老师可以有很多的学生,这里学生和老师的关系就互为...@ManyToOne 学生类 Student 中关键新增代码片段如下: @ManyToOne private ClassRoom classRoom; 一对多和多对一的关系维护中,通常在多的一方进行外键的维护...的数组,下面来重点解释和分析各种 CascadeType, 没有使用 cascade ,默认是 default, 就是不存在级联。

6.8K50

深度学习项目:歌词的自动生成

2:加载数据集,整理汉字和id之间的映射。从我们的txt文件中读取歌词,每一行是一首歌,因为我们的部分歌中含有应为,我们这里也做一个小小的处理,那就是将英文占比比较大的歌扔掉不用。...输出是: 共36616首歌 3:整理汉字与需要的映射关系,并存到本地,因为我们把模型训练好了,拿到其他地方运行,这个映射是不能少的 ? ?...最后的输出: 只剩下钢琴被我弹了一曲表演 失去故事的存在重叠入襟 要不是孩子们流浪 谁能放下好吧气 不是因为我不怕孤单 不习惯习惯睡 街景屠水的泛泛 清流旧枝既渺重交可斟学...至少 我不说说诉 也许我会 甚麽不要分手 爱是寂寞的执着 用我感情谱生音 轻吻着梦的人生瞬间 天高后回想到最后一切 啊 旁条 逛来驾 静静等个黎明我俩才能够我的承认...何以朽,因果师岭名掘互相。。

1.5K10

深入浅出Spark:存储系统

SparkContext 初始化 任何一个存储系统要解决的关键问题无非是数据的存与取、收与,不过,在去探讨 Spark 存储系统如何工作之前,咱们先来搞清楚 Spark 存储系统中“存”的主要是什么内容...驻扎在总公司的 BlockManagerMaster 作为空降派主要成员,随时老大戴格汇报建筑材料明细,当然这里的建材指的不仅仅是原始建筑材料钢筋、水泥、砂石料,还可以是任意加工过的半成品楼板、承重墙面等等...由此可见,二者的关系是一种博弈,所谓的“以空间换时间”和“以时间换空间”,具体的取舍还要看使用场景,想省地儿,您就用字节数组,想以最快的速度访问对象,对象值的存储方式还是来的更直接一些。...fetchBlockSync 方法和 uploadBlockSync 方法都属于客户端方法,用于服务端提交“下载数据块”和“上传数据块”的请求。...作为一款内存计算引擎,内存的探索与利用自然尤为重要,毕竟不知 MemoryManager 如何以统一的方式打理内存,且听下回分解。

82610

iOS算法——图的拓扑排序

在一个表示工程的有图中,用顶点表示活动,用弧表示活动之间的优先关系的有图 称为顶点表示活动的网(Activity On Vertex Network),简称AOV网。...AOV网中的弧表示活动之间存在的某种制约关系,比如上面说到将大象装入冰箱,必须先打开冰箱门,才能将大象装进去,大象装进去才能关上冰箱门,从而完成我们的任务。...还有一个经典的例子那就是选课,通常我们是学了C语言程序设计,才能学习数据结构,这里的制约关系就是课程之间的优先关系。 1.4 什么是拓扑序列?...而这条弧的弧尾顶点Vk的事件⽣了, 它才可以发生....MAXEDGE 30 #define MAXVEX 30 #define INFINITYC 65535 typedef int Status; /* Status是函数的类型,其值是函数结果状态代码,OK

56010

Monogo实践及原理

字段值可以包含其他文档,数组及文档数组 { name:"sue", age:23, status:"A", groups:["news","sports"] } mongo功能...MongoDB中可用的数据模型使我们可以更轻松地表示层次结构关系,存储数组和其他更复杂的结构。 可伸缩性– MongoDB环境具有很高的可伸缩性。...在系统重启之后,搭建的持久化缓存可以避免下层的数据源过载。 大尺寸、低价值的数据:使用传统的关系数据库存储一些数据时可能会比较贵,在此之前,很多程序员往往会选择传统的文件进行存储。...,索引创建、删除,查看统计或访问system.profile userAdmin:允许用户system.users集合写入,可以找指定数据库里创建、删除和管理用户 dbOwner: 数据库拥有者(最高...clusterManager: 集群管理角色,允许对分片和副本集集群执行管理操作,addShard,resync等 clusterMonitor:集群监控角色,允许度分片和副本集集群监控,查看serverStatus

99920

Service Mesh详解

Mesh 主流实现 Service Mesh 的主流实现包括: Linkerd:背后公司是Buoyant,开发语使用Scala,2016年115日初次发布,2017年123日加入CNCF,2018年51布...二、负载均衡:服务的消费方如何以某种负载均衡策略访问集群中的服务提供方实例?...ServiceMesh比较正式的术语也叫数据面板(DataPlane),与数据面板对应的还有一个独立部署的控制面板(ControlPlane),用来集中配置和管理数据面板,也可以对接各种服务发现机制(...上图左下角,每个主机上同时居住了业务逻辑代码(绿色表示)和代理(蓝色表示),服务之间通过代理发现和调用目标服务,形成服务之间的一种网络状依赖关系,控制面板则可以配置这种依赖调用关系,也可以调拨路由流量。...发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

81430

如何确保SDN基础设施的安全

根据Gartner公司在2014年六月布的SDN调研报告显示,只有4%的企业机构正处在部署该技术的过程中,但也有其他的研究表明,许多企业均热衷于采用该技术。...鉴于这一趋势的迅猛发展,在本文中,我们将为广大读者介绍企业如何以最为安全的方式部署SDN?...数据层(南向) 一些南向API和协议被控制器用来网络上沟通,OpenFlow(OF),OpenvSwitch数据库管理协议(OVSDB),思科onePK,应用中心基础设施(ACI),等等。...“企业选择控制器的时候应注重安全选项的可用性因素(SSL)。” 使用TLS(需要SSL)来验证控制器和终端将有助于防止窃听、伪造南向连接通信。 控制层 SDN控制器也是黑客们感兴趣的攻击目标。...预计未来的可能威胁 想要精确的预测黑客将如何以SDN为目标进行攻击是很难的。毕竟,SDN基础设施的部署仍然很新,其控制器和协议也是如此。我们只能猜测攻击者会如何攻击。

58740

TCC分布式事务的设计、实现与示例

,有很多优质文章 【技术闲聊吧】,或点开上面文章,关注作者即可大家赏个star吧 : https://github.com/ikenchina/octopus理论论文Pat Helland于2007年表...事务真正的执行者,管理TCC事务的状态转换,重试,持久化等等,不涉及与RM和AP的交互TCC子事务处理和回滚:TCC Executor并不处理子事务,而是将子事务操作写入Channel,由外层去向RM发送子事务请求...TCC事务通知:TCC Executor不执行具体的通知操作,而是将操作写入Channel,由外层去执行AP数据持久化:TCC Executor将TCC数据存储到本地数据库中来保证数据的持久化,也同时依赖本地数据库的事务特性...异常点3:由于重试策略,导致APRM发送了多于1次的Try请求,或者TCRM发送了多次Confirm或者Cancel请求。...:RM收到Try请求后,需要检查是否有Cancel记录或Try记录,没有才能需要执行Try。检查和执行需要在一个事务中,避免其他线程或进程同时对子事务进行Cancel或者Try修改。

6210

AI有了数字感,跟人类和动物惊人相似!

这一现有助于深入了解人工智能在没有明确指导的情况下可以学到什么,或许也会有助于研究动物如何产生数字感。 “数学能力是一个非常复杂的概念,有许多因素起作用。”...德国蒂宾根大学的神经生物学家Andreas Nieder及其同事,使用了大约120万张标记图像的数据来训练人工神经网络,以识别图片中的动物和车辆等物体。...然后研究人员AI展示了包含1到30个点的点图案,询问图案是否包含相同数量的点,并记录了各种虚拟神经元的反应。 当显示特定数量的点时,AI中对该数字敏感的虚拟神经元优先激活。...这些神经元对某些数字的偏爱程度,与之前研究来自猴子神经元的数据几乎相同,在类似的匹配任务上也是如此。...但他说,究竟如何以及为什么在这种人工神经网络中出现数感仍然不清楚。 Nieder及其同事认为,人工智能中数字意义的出现可能有助于生物学家了解人类婴儿和野生动物如何在不被教导的情况下获得多种感觉。

54420

SpringDataJPA笔记(1)-基础概念和注解

声明一个实体类 Customer,它将映射到数据库中的 customer 表上 @Table 当实体类与其映射的数据库表名不同名时需要使用 @Table 标注说明,该标注与 @Entity 标注并列使用...@Column 标注的常用属性是 name,用于设置映射数据库表的列名。此外,该标注还包含其它多个属性,:unique 、nullable、length 等。...one2one关系关系维护端的主键作为外键指向关系被维护端的主键,不再新建一个外键列 元数据属性说明: name:列名。...joinColumns:定义指向所有者主表的外键列,数据类型是JoinColumn数组。...inverseJoinColumns:定义指向非所有者主表的外键列,数据类型是JoinColumn数组 @JoinColumn 如果在entity class的field上定义了关系(one2one或one2many

3.9K20

京东Java岗:来自面试官的夺命连环56问,你怀疑人生了吗?

在断开TCP连接时,需要通过四次挥⼿来断开,过程是: 客户端服务端发送FIN 服务端接收FIN后,客户端发送ACK,表示我接收到了断开连接的请求,客户端你可以不发数据了, 不过服务端这边可能还有数据正在处理...服务端处理完所有数据后,客户端发送FIN,表示服务端现在可以断开连接 客户端收到服务端的FIN,服务端发送ACK,表示客户端也会断开连接了 9、消息队列如何保证消息可靠传输 消息可靠传输代表了两层意思...4、epoll和poll的区别 select模型,使⽤的是数组来存储Socket连接⽂件描述符,容量是固定的,需要通过轮询来判断是否⽣了IO事件 poll模型,使⽤的是链表来存储Socket连接⽂件描述符...客户端服务端发送数据之前,需要先建⽴TCP连接,所以需要先建⽴TCP连接,建⽴完TCP连接后,服务端会先给客户端发送公钥,客户端拿到公钥后就可以⽤来加密数据了,服务端到时候接收到数据就可以⽤私钥解密数据...⾮对称加密+对称加密还不⾜以能保证数据传输的绝对安全,因为服务端客户端发送公钥时,可能会被截取 所以为了安全的传输公钥,需要⽤到数字证书,数字证书是具有公信⼒、⼤家都认可的,服务端客户端发送公钥时

55652

向量数据库101-非结构化数据入门

另一方面,结构化数据是指可以以基于表的格式存储的数据,而半结构化数据是指可以存储在单级或多级数组/键值存储中的数据。如果这一切对你来说还没有意义,不要烦恼。...关系数据库中最流行和最著名的两个例子是 MySQL (1995年布)和 PostgreSQL (1996年布)。 半结构化数据是不符合传统的基于表的模型的结构化数据的子集。...Cassandra (2008年布)、 MongoDB (2009年布)和 Redis (2009年布)是当今半结构化数据最流行的三种数据库。...这对使用 data1的行业和公司提出了新的挑战: 我们如何以类似于结构化/半结构化数据的方式转换、存储和搜索非结构化数据?...·机器日志数据: 由机器、设备或应用程序生成的数据,包括系统日志、应用程序日志和事件日志。 ·物联网数据: 从智能设备(智能恒温器、智能家庭助理和可穿戴设备)收集的数据

17510
领券