如何在UML中将Business层映射到Model对象?

now*_*ed. 1 .net c# uml staruml asp.net-web-api

刚开始Star UML绘制一个class diagram.

与任何应用程序一样,MyBLL(业务层)Model在与DAO(数据库层)交互之后创建一个实例.

或多或少,简化(为清晰起见)类图如下所示:

在此输入图像描述

很明显,BLL完成后将不再使用模型类.

  1. 我应该在这里使用什么?aggregationcomposition映射MyBLLMyModel.

  2. 我使用了一个composition从关系MyBLLMyDAO.我的逻辑是在BLL图层存在之后,MyDAO将不再存在,因为它被引用MyBLL.它是否正确?

注意:这是WebAPI我使用C#创建的项目.

Bel*_*gix 5

聚合意味着孩子在没有父母的情况下可以存在.所以,Classroom(父)和Student(孩子)是最常见的例子.您可以在哪里独立拥有教室和学生.

复合意味着孩子在没有父母的情况下不能存在.所以,House(父)和Room(孩子)是最常见的例子.在没有房间的情况下你不能拥有房间的地方.

如果没有确切地知道你是如何编码的,我猜你会有这个:

1)MyModel可能是一个复合关系,因为它一直包含在MyBLL中(与其他模型一起).当MyBLL超出范围时MyModel也是如此.

2)MyDAO可能是一个聚合,因为它可以在没有MyBLL的情况下存在,因为它被其他组件使用?即它可能是由主机在你的MyBLL之外创建并注入你的BLL?

根据您构建系统的实际方式,这两种说法可能都不正确.