首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从软件设计的角度管理多个关系?

如何从软件设计的角度管理多个关系?
EN

Software Engineering用户
提问于 2013-04-04 04:33:05
回答 1查看 129关注 0票数 2

当有两个需要维护的基本关系时,我该如何管理项目呢?我能想到的最明显的例子就是一家公司从事某种基于地点的咨询。

我一直在绞尽脑汁地思考如何解释这个问题,本质上,这就是要点版本:

  • 每个有多个位置的客户端
  • 有几个项目与特定的客户地点有关。
  • 这些项目有可交付的
    • 每个交付品我只与项目链接的几个地点有关。

当您覆盖这两种主要关系时,系统似乎会崩溃;一个具有多个位置的客户端分配给它们的项目,以及连接到各个位置的可交付产品。你只会有太多的关系,这些关系很难管理。

问题是在系统中可视化这一点。你有一个客户记录和位置子记录。每个位置记录都有许多与其相关的项目记录。每个项目记录都有可交付的记录,然后这些交付品与特定的润肤液相关。

我意识到,这似乎有点刻板,但有没有办法简化这一点,使它在视觉上可以理解?

EN

回答 1

Software Engineering用户

发布于 2013-04-09 04:41:27

这似乎是一种相当简单的关系数据结构。

代码语言:javascript
运行
复制
client <- location; or
client <- clientLocation -> location

project <- location; or
project <- projectLocation -> location

deliverable <- location; or
deliverable <- project; or
deliverable <- location
            <- project

的确,如果你有很多很多的关系,你最终会得到更多的表格,但我们只谈论几个实体。

这么说是不对的

当您覆盖这两种主要关系时,系统似乎崩溃了。

如果系统正确地描述了这些关系,系统就会正常工作。如果可视化变得过于复杂,那么正确的方法就是将可视化分解为各个阶段或层次。

例如,是否需要同时查看来自多个客户端的数据?如果没有,那么只需有一个初始筛选器,将相关数据限制为单个客户端。或者,您可以将其限制在单个位置或项目上。

关键是优先考虑可视化过程的重要性和逻辑进展。例如,用户将首先选择客户端,然后选择相关项目,最后按位置排序。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/194364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档