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

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.

主站蜘蛛池模板: 洮南市| 普格县| 江油市| 祥云县| 永寿县| 鄢陵县| 满洲里市| 阿尔山市| 平乐县| 肥乡县| 黄平县| 隆子县| 甘德县| 阳谷县| 长葛市| 金阳县| 徐水县| 南华县| 隆昌县| 平利县| 保山市| 安溪县| 和林格尔县| 普兰县| 普格县| 临沭县| 颍上县| 萨嘎县| 土默特左旗| 格尔木市| 平原县| 赫章县| 洛川县| 五常市| 乳山市| 大关县| 耒阳市| 资阳市| 贵港市| 博乐市| 墨竹工卡县|