Uml 不同用户查看相同对象还是不同对象?
假设我有一个web应用程序,它有两个用户。申请人发送申请表,案件处理人处理申请。不同的用户对申请表有不同的看法。实际上,它可能是同一份申请表。但在电子加工中,它们可以被视为具有依赖关联的不同对象。我的问题是,在作出决定时应考虑哪些因素,是使用一个申请类别,还是将其分为两个类别,一个用于申请表格,一个用于案例表格。我的看法是,两个用户对对象都有自己的操作,并且他们不“共享”相同的操作。创建两个类图可能更有意义,因为每个类都有明确的职责,但我需要为应用程序表单类的每个子类创建新的类,这将是大量的类。Uml 不同用户查看相同对象还是不同对象?,uml,ooad,Uml,Ooad,假设我有一个web应用程序,它有两个用户。申请人发送申请表,案件处理人处理申请。不同的用户对申请表有不同的看法。实际上,它可能是同一份申请表。但在电子加工中,它们可以被视为具有依赖关联的不同对象。我的问题是,在作出决定时应考虑哪些因素,是使用一个申请类别,还是将其分为两个类别,一个用于申请表格,一个用于案例表格。我的看法是,两个用户对对象都有自己的操作,并且他们不“共享”相同的操作。创建两个类图可能更有意义,因为每个类都有明确的职责,但我需要为应用程序表单类的每个子类创建新的类,这将是大量的类。
您的第二个模型与第一个模型进行语义分割,将
大小写
与应用程序
分开。然后创建其中一个的专门化。这似乎没有道理。如果您的拆分主要是因为重复使用了相同的应用程序
,并且只专门处理案例
,或者反之亦然,那么您的拆分是有意义的:
我喜欢您的Model2图表,尽管您可以做一些事情来改进它。您的图表已经清楚地表明,在问题域中,
ATypeApplication
仅启动ATypeCase
,而BTypeApplication
仅启动BTypeCase
我要做的是改进图表:
- 考虑使用可选的多重性。应用程序是否始终具有关联的案例?(在提交之前怎么样?)
- 将关联结束属性添加到三个关联中,如| Application |--由[1]发起--initiates[0..1]--| Case |(很抱歉使用了洋泾浜UML,我不想启动我的UML工具并找到一个放置图形的位置。) |Application|--initiated by [1]----------initiates [0..1]--|Case|
- 在子类之间的关联的关联端使用
,以明确您正在进一步约束每个属性的类型{redefines}