
# 步骤4：业务设计
[步骤1：基本配置](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0015.html)、[步骤2：框架配置](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0016.html)和[步骤3：生成策略](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0017.html)中参数，只需要用户根据自身业务直接在界面进行勾选配置。而业务设计需要用户根据实际的需求，进行业务模型的设计和配置。
例如，创建一个简单的订单系统，订单系统中包括用户（User）、订单（Order）和订单详情（OrderDetail）三个业务对象，且三个对象之间存在聚合关系，即用户存在时，订单才会存在，订单存在时，订单详情才会存在。同时一个用户可以关联多个订单，订单通过单号进行标识，一个订单又可以关联多个商品，例如手机、耳机等，商品可以记录数量。实现上述业务逻辑，需要进行如下设计：
1. 在业务设计页面，拖拽所需的对象到设计区，并修改对象名称。 
   AstroPro提供了BO、Abstract BO和Value Object三种类型的对象，请根据业务需求进行选择。
   - [BO](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0041.html)：业务对象，业务对象映射到服务中的一个实体，对应数据库中的一张表。
   
   - [Abstract BO](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0042.html)：抽象对象，不能实例化，没有对应的数据库表，需要和业务对象有个继承的操作。例如，业务对象A继承一个抽象对象B，则B中的字段都会被A继承过来。
   
   - [Value Object](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0044.html)：值对象，不能单独存在，需要和业务对象建立聚合的关系。
   
   
   本示例中，拖拽三个BO对象到设计区，选中对应的BO，修改对象名称为User、Order和OrderDetail。
   图1拖拽三个BO到设计区   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000002183754313.png)
   
   
2. 设置对象属性。 
   本示例中，因为一个用户需要关联多个订单，订单通过单号进行标识，一个订单又可以关联多个商品，商品可以记录数量。所以需要为"User"添加"name（用户名）"字段，用于记录用户信息。为"Order"添加"orderNo（订单编号）"字段，用于记录订单的编号。为"OrderDetail"添加"product（商品）"、"amount（数量，integer类型）"字段，分别用于记录商品的详情和商品的数量。
   图2为User对象添加name   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000002183755361.png)
   图3为Order添加orderNo   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000002148319036.png)
   图4OrderDetail添加product和amount   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000002183678693.png)
   
   
3. 建立对象之间的关系。 
   AstroPro提供了一对多、多对多、聚合、树递归和继承五大关系，请根据自身业务需求进行选择。各对象间关系详细介绍，请参见[对象间关系](https://support.huaweicloud.com/usermanual-astropro/astropro_05_0045.html)。
   本示例中的订单系统，当用户存在时，订单才会存在，订单存在时，订单详情才会存在，此时需要为三个对象之间建立聚合关系。聚合关系中，次要方必须依赖首要方，任何对于次要方的操作首先要经过首要方才能继续往下操作。在User和Order的聚合关系中，User为首要方，Order为次要方，即用户存在时，订单才会存在。在Order和OrderDetail的聚合关系中，Order为首要方，OrderDetail为次要方，即订单存在时，订单详情才会存在。
   图5设置对象间关系   
   ![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000001957946441.png)
   
   
4. 设置完成后，单击"下一步"，进行服务依赖设置。
 
