DDD案例(1):从需求分析到领域分析(4)

简介: DDD案例(1):从需求分析到领域分析(4)

分析项目成员管理场景的活动。在添加或移除团队成员时,需要通过OA系统发送通知。通知的发送不在目标系统范围内,也不是由某个参与者发起,而是在添加或移除了团队成员之后进行,属于业务服务的执行步骤,不需要列入图20-15所示的业务服务图。


项目计划管理也分成了两个阶段,合并为一个业务服务图,如图20-16所示。


image.png


问题管理业务场景的业务服务图如图20-17所示。


image.png


问题issue)概念的获得并非一蹴而就。一开始,我倾向于使用任务(task)来表达这一概念,然而,在需求管理体系中,任务与用户故事(user story)、史诗故事(epic)、缺陷(defect)属于同一等级的概念,我需要寻找到一个抽象概念来同时涵盖这几个概念,由此就得到了问题概念。在JiraGitHub的需求管理工具中,都使用了这一领域概念。


项目管理者在创建问题时,会指定问题的基本属性,如问题的标题、描述、问题类型等。那么,问题所属的迭代、承担人(owner)、报告人(reporter)是否也属于问题的属性呢?在确定问题管理业务场景的业务服务图时,我确实困惑不已。例如分配问题给迭代分配问题给项目成员都可以认为是在编辑问题的属性。既然业务服务为角色提供了服务价值,很明显,无论是将一个创建好的问题分配给迭代,还是将其分配给项目成员使其成为问题的承担人,都具有项目管理价值,是由项目管理者向目标系统发起的一次独立而完整的功能交互,应该分别识别为两个业务服务。


在确定项目管理的业务服务时,统一语言再一次发挥了价值。最初在确定项目管理的业务流程时,项目管理者要查看问题的完成情况以了解迭代进度,故而将该流程中的一个活动命名为查看问题完成情况。在识别业务服务时,我认为该名称没有清晰地体现该业务服务的服务价值,经过与业务分析人员沟通,认为该业务服务需要清晰地表达问题在迭代周期内的过程,准确的术语是进度progress),将其命名为跟踪问题进度trackingissue progress)更加符合该领域的统一语言。


3)培训


培训的目的是提高员工的技能水平,需要根据员工的职业规划与企业发展制订培训计划,开展培训。培训的整个管理由人力资源部的培训专员负责。培训流程除了牵涉到培训专员,还牵涉到部门协调者、员工主管和员工本人。系统将分配给员工的培训机会称为票(ticket),这实际上是领域概念的一种隐喻。培训专员发起培训的过程,实际上就是分配票的过程,整个流程如图20-18所示。


培训专员在分配票之前,会设定过滤器。过滤器主要用于过滤员工名单,获得一个与该培训相匹配的提名候选名单(candidate)。培训专员将票分配给部门协调者,部门协调者再将票分配给属于提名候选名单中的部门员工。员工在收到培训邮件后,可以选择确认拒绝,若员工拒绝,票会退回给部门协调者,由部门协调者进行再分配,最终会形成一个提名名单(nomination)。


image.png


培训期间,每个参与培训的员工都需要通过培训专员出示的二维码签到,包括培训开始签到和培训结束签到。培训结束后,培训专员可以获得出勤名单。比较出勤与提名名单,可以获得缺席名单。培训专员确认了缺席名单后,系统会根据黑名单规则将缺席人员加入黑名单。员工若被列入黑名单中,将来就不会再出现在提名候选名单中,除非又被移出了黑名单。培训流程如图20-19所示。


image.png


                     图20-19 培训的服务蓝图

培训专员在确定培训计划并分配票时,还可以事先设置有效日期,用于判断票的有效期限。从发起培训开始,到培训结束,一共有4个重要的截止时间(deadline):

q提名截止时间;

q缺席截止时间;

q培训开始前;

q培训结束前。

在不同的截止时间,员工取消票的流程都不一样,票的处理规则也不相同,如图20-20所示。


image.png


相关文章
|
消息中间件 存储 数据采集
iLogtail社区版使用入门 - 主机环境采集业务日志到SLS
本文将会详细介绍如何使用社区版iLogtail,并结合SLS云服务快速构建出一套高可用、高性能的日志采集分析系统
2360 0
|
算法 物联网 开发者
【手把手教程】无限场景风格LoRA与固定人物LoRA的融合-酷蛙FaceChain0826周记(GitHub已4K Star!)
酷蛙FaceChain项目计划后续联合社区的力量不断打磨该开源项目,解锁更多高阶玩法(比如人物表情包、人物连环画故事、虚拟试衣间……),并进行更深层次的算法创新,发表相应顶会论文。
|
传感器 数据采集 监控
上千个完整设计的单片机、8086、STM32制作教程和资料-转发分享
在网上收集了接近上千个完整设计的单片机、8086、STM32制作教程和资料-转发分享(涵盖了大部分的毕设课设题目),学习单片机的最好教程,也可以作为帮助大家在做电子课设毕设时有利的帮助,可以从以下百度网盘下载(按照编号下载)。
2894 0
上千个完整设计的单片机、8086、STM32制作教程和资料-转发分享
|
算法 关系型数据库 MySQL
十五张图带你快速入门 shardingsphere-proxy
Apache ShardingSphere 是一款分布式的数据库生态系统,它包含两大产品: - ShardingSphere-Proxy - ShardingSphere-JDBC 很多同学对于 ShardingSphere-JDBC 已经能非常熟悉的使用了,但关于网上关于 ShardingSphere-Proxy 5.5 的使用教程却非常少。
十五张图带你快速入门 shardingsphere-proxy
|
开发框架 网络协议 Java
RPC调用和HTTP调用的区别你知道吗
RPC调用和HTTP调用的区别你知道吗
468 1
|
机器学习/深度学习 自然语言处理 语音技术
智能语音助手的技术原理与实现
【7月更文挑战第31天】智能语音助手的技术原理与实现涉及语音识别、自然语言处理、知识图谱以及多模态交互等多个方面。随着人工智能技术的不断发展和创新,智能语音助手将更加智能化、高效化和普适化,为我们的生活带来更加便捷和丰富的体验。
2966 0
|
安全 算法 数据安全/隐私保护
HTTPS 加密工作过程
HTTPS 加密工作过程
|
存储 Kubernetes jenkins
在k8S中,Jenkins发布详细流程是什么?
在k8S中,Jenkins发布详细流程是什么?
|
消息中间件 数据采集 网络协议
谈谈嵌入式系统中多进程设计与进程通信
谈谈嵌入式系统中多进程设计与进程通信
351 0
谈谈嵌入式系统中多进程设计与进程通信