问题标签 [conceptual-model]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
uml - 地铁铁路UML类图
我正在尝试在 UML 中为以下问题绘制和定义类。
地铁铁路信息系统
设计上述系统的概念方案的一部分,使我能够注册车站(通过区分立交桥和终点站)、车站的互连(即网络拓扑)和距离(铁路线的公里数)他们分开。
每列火车通过运行连续路线排成一列,即在规定的极端站对之间移动,每条路线上不一定相同(例如布朗克斯 - 曼哈顿,布鲁克林 - 皇后区)。每条路线都有特定的到达时间并在每个车站停留。每个车站的实际到达时间可能与编程的不同,以及车站之间的交通速度。
我的第一个想法是主要课程应该是:
我正在努力如何表示预定时间和实时时间。
constraints - 有约束的组织的无约束概念模型?
我们被分配了一个任务,我们要在其中创建一个由文本文档描述的概念模型。文档中给出了许多约束,但我们也被指示不要在模型中使用约束。
我们已经能够解决一些限制,但有一个我们无法解决。我已经编造了一个场景,它与我们遇到的任务部分有点相似。
您的任务是创建游戏工作室结构的模型。公司由多个部门组成,每个部门至少有一名员工。每个员工都在一个部门工作。员工分为三种不同类型:开发人员、设计师和工程师。
除此之外,员工还可以担任许多领导角色:部门主管、部门副主管、CTO 或 CEO(是的,CTO 和 CEO 是普通员工的角色)。每个部门必须有一名部门主管和至少一名副主管。
除此之外,只能有一名 CTO 和一名 CEO,而这些角色只能由工程师担任。每个员工只能担任一个领导角色。
为了解决这个问题,我们制作了一个额外的抽象实体:BasicRole。该实体是LeadershipRole的一个特化,是任何员工可以担任的三个角色的泛化。这解决了其中一个问题,现在我们可以简单地在 Designer/Developer 和BasicRole之间创建适当的关联
但是,除了与 CEO 和 CTO的关联外,我们还希望 Engineer 与BasicRole有关联。添加这些关联会产生一个概念模型,如下所示:
但是,这是有问题的,因为现在我们说工程师可以拥有 0 到 3 个角色。
我们已经考虑将公司作为一个实体包括在内,并在公司和 CTO/CEO 之间添加关联,以指定公司只能拥有一个,但在本课程中我们被一遍又一遍地告知不要包括该事物我们正在建模为模型中的实体。
现在,似乎我们所有的问题都可以通过约束来解决(如果我们继续阅读这些),对三个关联进行某种异或。然而,鉴于我们被指示不要在概念模型中使用约束,我们不知所措。
javascript - 使用 for 循环对数组进行迭代真的有效吗?
我是一个 javascript 初学者,我了解如何迭代数组以及如何使用它,但我真的非常非常难以理解它为什么起作用。
例如:
我了解 for 循环中的 3 个部分中的每一部分发生了什么,但我真的不明白如何i
访问/通信/连接到/交换与数组的数据myArray.
在这段代码中我们告诉 javascript那个“i”以某种方式连接到“myArray”?
起初,我认为 for 循环本身隐含或隐含了某些内容,即,当我们编写i < myArray.length
它时,它以某种方式暗示i = myArray
(“i”被分配给 in 的任何值myArray
)。但经过进一步思考,i < myArray.length
这只是数组的长度(在本例中为 4),并没有真正将两者联系起来。
因此,除了 for 循环中的变量之外,这为我打开了一整套关于“i”真正在这里的概念。我一直在考虑将“i”视为我们创建的一种幽灵/临时变量,它将为我们执行循环,然后在完成后消失(我什至不确定这是否是正确的比喻)。
如果我没有清楚地表达这一点,我提前道歉,因为我只是一个初学者。
提前致谢。
c - 将数字与公差进行比较的概念
我想问是否有比我更好的方法来比较具有容差的数字。
编辑:似乎我的解释含糊不清。在文本中添加了一些信息。直到现在,这只是概念。我还没有编写任何程序。
我想相互比较大约 6000 个数字。测得的数字 [A] 比 [B] 的数字稍有偏差。[A] 是计算得到的分子的摩尔质量(具体为聚合物)。[B] 是测量的分子摩尔质量。由于测量误差和同位素丰度,测量的摩尔质量随着聚合物的每个添加重复单元而逐渐增加(= 分子中的更多元素,= 更多偏移)。摩尔质量的差异在较低的摩尔质量 (~ 0.1) 中相对较小,在较高的范围内可以达到 ~10。(此外,[B] 中的数字永远不会与 [A] 中计算的数字完全相同。)数字的范围从 ~100.000000 到 ~76000.000000(准确地说很多)。
我的目标是在 [B] 中找到一个数字的最接近的值,并将其链接到 [A] 中的一个数字,并将它们标记为“这个分子”。每个标记的数字/分子都不会被任何其他数字再次使用。[B] 的一个数字在 [A] 中只有一个匹配的数字,它们应该彼此相邻/写入。简而言之,我必须在 [A] 中找到最适合我的号码的 [B] 号码。(当 [B] 的两个或多个值与 [A] 相似且不可区分时,我也应该标记数字。但这是另一个问题)我现在的想法是,取一个数字 [A] 并比较它与 [B] 的每个数字。具有最低差异/偏移量的对 ( Num(A) – Num(B) ) 被认为是相同的并被进一步使用。
有一个更好的方法吗?是否有一个功能可以自行完成?您对我如何改进这种方法有什么建议吗?使用长度为 6000 的数组是否不好?
附带信息:我正在用 C 编程 实际值和理论值都存储在双数组中 [6000] 我正在将数据保存/写入 excel 中,如表结构
c - 将数字与公差概念进行比较:
Edit1:更改了问题以适应指导方针。我已经问过这个问题,但由于含糊不清而被删除。重写问题以使其更清楚。
我的目标是相互比较大约 6000 个数字并找到匹配/最接近的一对。但是没有一个数字是相等的,并且有误差/容差。
我的起始条件是两个数据块分别保存在两个数组中。数据块 [A] 是理论计算数字的数字。数据块 [B] 是实测值。[B] 是对象的实际测量值,应尽可能接近 [A](测量误差)。我必须找到匹配的 Bn 的 Am 。
[A] 的每个数字都比前一个数字高 X 或 Y。X 和 Y 都是可能的,因此之后会显示类似“树”的结构(对于比较过程并不重要)。[B] 中的每个数字都有测量误差,X 和 Y 的每个“加法”都有 1.1% 的几率降低 1%。这意味着在更高的数字范围内,与理论数字 [A] 的偏移量将变得更大。B_n 与 [A] (A_m) 数的最接近的拟合应该被链接/突出显示/以某种方式记住。
我的想法是计算一个 [B] (B_n) 和每个 [A] 数量之间的差异/偏移量。应记住具有最低偏移量的对,并且还应保存偏移量。
这看起来像这样(仍然不是代码,只是一个概念):
是否有它自己的功能/它是否类似/以不同的方式执行相同的结果?比较数字并返回最接近的一对。这种方法有效吗?
附带信息:编程语言 = C // 数字数据块 = 两个长度为 3000 及以上的数组 // 数字范围:~100.000001 到 ~100,001.000001 //
mysql-workbench - 概念模型实体-关系和物理模型mysql工作台
我正在设计一个数据库,我已经建立了我的概念实体关系模型,并且我已经在 mysql 工作台上实现了物理实现。但是,我发现自己必须管理与数据库交互的用户。
例如,一个学生只能查看与他的考试相关的数据,而不是所有学生。为此,我想引入一个包含“用户名”、“密码”和“用户类型”的“登录”表,以将该表连接到包含学生数据的表,我应该在该表中添加一个“用户名”属性。然而,我的问题涉及以下问题:我是否可以在物理模式中添加这些表而不在概念性 ER 模式中插入适当的实体,或者我是否也必须在概念模式中插入“登录”实体?
uml - 如何在同一个 UML 类图中表示同一实体类型(类)的不同版本?
我试图弄清楚如何使用以下属性对情况进行建模:
- 在域中存在一组实体类型 Ei...Ej 以及这些实体类型 Ri...Rj 之间的一组关系类型;
- 可以区分同时对系统的不同部分具有重要意义的那些实体和关系类型的至少两个不同版本。
在最简单的情况下,这些不同的版本可能是“实时数据”版本和“最后批准的快照”版本。在这种情况下,对系统的不同部分具有重要意义可能会转化为以下内容:
- 特权较少的参与者和用例只能与“最后批准的快照”版本一起使用;
- 同时有更多的特权参与者具有相同或不同的用例集,可以使用“实时数据”版本;
- 有实体类型 Ex...Ey 与来自“最后批准的快照”版本的实体 ei...ej 形成关系,或者其约束引用来自“最后批准的快照”版本的实体 ei...ej 的属性值;
- 同时存在不同的实体类型 Ea...Eb,它们要么与来自“实时数据”版本的实体 ei...ej 形成关系,要么其约束引用来自“实时数据”的实体 ei...ej 的属性值数据”版本。
如果我想在同一张图上显示上述示例中的所有实体类型 Ei...Ej、Ex...Ey 和 Ea...Eb 以及它们之间的约束和关系,我该怎么做?
我正在考虑为同一实体类型使用两个不同的类:一个类代表该实体类型的“最后批准的快照”版本,另一个类代表该类型的“实时数据”版本。
但我不太喜欢这种方法
- 这似乎是多余的;
- 我实际上不确定代表同一实体类型的两个不同版本的两个类之间存在什么样的关系以及如何在图表中表示这种关系(也许标准配置文件中的“派生”刻板印象在这里是合适的,但我没有把握)。
编辑
不幸的是,我不能使用我工作中的例子,所以我想出了这个完全虚构的例子,但它也部分模仿了我最近试图解决的问题。我将使用流行的“WorksInUsing”协会表示敬意。这将使问题更加具体。
另外,需要明确的是,我正在尝试创建概念模型,而不是创建 OOP/关系设计/实现模型。
让我们假设一个实体类型 Employee。
让我们假设一个名为“SkillAdministrator”的参与者管理以下实体和关系类型:
- 实体类型技能
- 实体类型部门
- 实体类型 Employee 和 Skill 之间的关系类型 KnownSkill
- 实体类型 Employee 和 Department 之间的关系类型 WorkInDepatment
让我们假设,所有上述实体和关系类型的更改很少发生,但是当它们发生时,它们会以非常大的批量发生,并且我们的技能管理员需要相当长的时间来处理每个此类更改。
完成更改处理后,他运行 PublishChange 用例,该用例创建实体和关系类型 Skill 和 KnownSkill 的快照,并使该快照可供系统的其他用户使用。
现在让我们假设一个名为 Manager 的参与者管理以下实体和关系类型:
- 实体类型项目
- 实体类型 Employee、Skill 和 Project 之间的关系类型 WorksInUsing。
只有在上次运行 PublishChange 用例时存在的技能才能在 WorksInUsing 关联中发挥作用。同样,KnownSkill 对是三元组 WorksInUsing 的先决条件,但同样只有那些 KnownSkill 对,它们在 PublishChange 用例的最后一次运行中存在。
在 Manager 管理 WorksInUsing 关联的同时,SkillAdministrator 可以开始处理他所管理的实体和关系类型的下一个重大变化。Manager 不会看到这些更改,直到 PublishChange 用例再次运行。
(根据域,有多种不同的方法来处理系统管理员删除特定技能或已知技能关联,然后应用这些更改 - 在最简单的情况下,两种类型都可以假定为永久,因此可以添加新实例,但无法删除现有实例,例如法律以这种方式工作)
data-modeling - 如何在概念数据模型中正确显示 M:N 关系?
我通常会找到我需要的一切,但一切都是第一次......:D
我正在尝试创建一个概念数据模型,但我不知道如何正确显示 M:N 关系,默认情况下不应包含该关系,但您仍然可以分配抽象实体的动词和方向。假设我们有“项目”并且我们有“项目角色”,我该如何正确地展示关系?我可以有如图所示的 2 个箭头还是我必须添加连接表和??我无法解决这个问题..
提前非常感谢你:)