“问题域”这个术语对业务分析师意味着什么?

  从广义上讲,问题域描述了正在进行分析的领域。问题域的范围需要由业务分析师预先确定。问题域的大小和范围可能会根据正在进行的项目的目标而有很大差异。范围可以与整个组织的边界一致,也可以更精细,与单个组织单元,特定业务流程或特定系统保持一致。

  即使问题域的范围与特定组织或系统的边界一致,它也可能包括流程或组织之外的利益相关者,例如客户,供应商或提供输入或接受输出的任何其他利益相关者等。

  简而言之,问题域是定义所分析区域、充分理解其过程的输入和输出、以及实现所分析区域的目标所需的所有、任意事物,仅此而已。

  领域驱动设计DDD中这个领域也有问题域的意思,问题域的界定其实说容易也容易,说难也很难,因为问题域的正确提出与解决方案复杂与否很有关,问题域划分得正确,解决方案就可能简单,否则就会导致解决方案的复杂性。

  问题域类似提问题,提问题比解决问题更重要:

"Programming is like any other kind of problem solving, ask the right questions and the solutions are simple. If your code is incredibly complex, you may be asking the wrong questions." - @jadenkore

  提问题比解决问题更重要,提问题相当于指出方向性,如果方向选择错误,南辕北辙。但是如果我们习惯答题,而不善于提问题,很可能就没有提问题的习惯,也就不会在提问题方式上多加琢磨。

  存在意义比存在方式和形态更重要,问题的存在比问题的内容和形式更本质,但是我们通常认为问题的内容更重要,就如同一个在家里是父亲,在单位是经理,他到底是什么?我们会认为他的身高 体重等这些人的内容更本质,在家和单位只不过扮演不同角色,其实从海德格尔存在主义看来,正好相反,父亲或经理比肉体更本质,没有父亲或经理这些现象,肉体有何用呢?现象就是本质。

回到问题的提出这个话题,认识到问题存在意义比问题本身更重要,注重问题意义而提出问题则可能带来更简单的解决方案,比如针对当前上下文场景中,这个问题的意义是什么?我们就能在当前域中解决这个问题。

业务分析设计