gydtep
发表于 2020-10-25 12:44:28
我们总是在孜孜不倦地追求美好的事物,但现实存在的问题就是,首先我们的脑袋也理解不了太过复杂的东西,其次脑海里的想象有时候也很难真实无损的映射成现实的系统,再者由于总是资源有限的,我们并没有花不完的预算。
gydtep
发表于 2020-10-26 09:52:33
特别是对刚入行的人可能觉得设计离自己比较远,因为习惯了打开 idea 才开始考虑业务,写代码才开始思考领域模型,这是非常不好的习惯,
gydtep
发表于 2020-10-26 11:06:44
在面对复杂业务的场景下,我们需要做出如下的思考:
确定系统实体对象和预期功能
抽象系统实体之间的关系,功能与实体的关系
划定系统的边界和外部环境的关系
预测系统带来的效果
gydtep
发表于 2020-10-26 14:19:13
而对系统的分解也是讲究方法的,可以参考以下总结的一些方向:
体系归纳
层级分解
逻辑关系
自顶向下
自底向上
由外向内
由内而外
gydtep
发表于 2020-10-26 15:19:43
功能 = 主体 + 操作 + 操作对象,比如嘴巴有“吃饭”功能,飞机有“搭载乘客”功能,报表平台有“展示报表”功能。
gydtep
发表于 2020-10-26 15:31:34
操作:对象经历的一种转换模式,过程设计操作数的状态变化;
gydtep
发表于 2020-10-26 16:35:24
提供共同的词汇集合
包括推荐标准列表
包括可用于实现构建块的兼容产品列表
gydtep
发表于 2020-10-26 19:17:21
架构师是软件开发活动中的众多角色之一,它可能是一个人、一个小组,也可能是一个团队,我们分析的是架构师这个角色,能胜任这个角色的才是架构师,那么在这个角色上能做得更加出色的就是好的架构师。
gydtep
发表于 2020-10-26 19:37:10
以上架构师职责是整体上的描述,在细分领域有不同的分类。微软对架构师有一个分类参考,我们参考一下,他们把架构师分为 4 种:
gydtep
发表于 2020-10-27 09:19:27
它要求团队里有资深的业务领域专家,该专家对业务领域极其了解,不但要了解其然,还要理解其所以然,或者是能够跟领域专业人员学习到足够的领域知识。