官术网_书友最值得收藏!

Modelled around business capabilities

A well-designed microservice should be modeled around the business capabilities that are meant to be implemented. Designing software has a component of abstraction and we are used to getting requirements and implementing them, but we must consider how everyone, including us, will understand the solution, now and in the future.

When we need to update, or even modify our microservices, we need to abstract back to the original concept that defined it. In that process, we could realize that something was not as we originally understood, or that our design could not evolve. We may even discover that we have to break the boundaries of our business domain and we don't implement the original capability anymore, or that actually it is implemented across a set of different non-related microservices. We could end up coupling our microservices together, and that is something that we want to avoid.

The domain experts of these business capabilities have a clear understanding of how they operate and how those capabilities are combined and used. Working with them could make our microservices understandable for everyone, including our future selves, and will move our services to become not just an abstraction, but a mapping of the original business capability.

Work as closely as you can with your domain experts, it will always benefit you.

We will deep dive more into this topic in the Domain-Driven Design section of this chapter.

主站蜘蛛池模板: 涪陵区| 阿克苏市| 上栗县| 滨海县| 临洮县| 张家港市| 祁连县| 北票市| 五河县| 阳东县| 金塔县| 绥中县| 咸丰县| 合山市| 资阳市| 临邑县| 定安县| 盐池县| 土默特左旗| 深泽县| 和顺县| 黔西| 共和县| 榕江县| 平邑县| 德安县| 临安市| 彰化县| 梁平县| 卫辉市| 新乐市| 西昌市| 凤阳县| 景东| 四会市| 浠水县| 晋中市| 甘谷县| 虞城县| 科技| 南江县|