0°

BABOK Guide3.0(7.4)Define Requirements Architecture


BABOK Guide3.0(7.4)Define Requirements Architecture


Purpose


The purpose of Define Requirements Architecture is to ensure that the requirements collectively support one another to fully achieve the objectives.


之前我们在做需求的获取以及建模的时候,很多需求都是零散的,甚至是相互矛盾的。

在这一步中,我们需要对之前的这些需求关系进行分析,并且确保它们是奔着目标去的。


这个步骤和7.1需求模型的定义,很相近。

更多情况下可能会一起使用。

比如在对需求进行建模和定义的时候,分析需求之间的关系,并且建立需求矩阵等。

最近看的几本书,关于解决“只见树木,不见森林”需求分析case的,感觉上就是利用各种方法进行需求架构的定义。


Description


Requirements architecture is the structure of all of the requirements of a change.


需求架构定义的目的是什么呢?

• understand which models are appropriate for the domain, solution scope, and audience

理解模型作用的领域、范围以及相关干系人。


• organize requirements into structures relevant to different stakeholders

因为不同的干系人关注的点不一样,需要根据不同干系人的关注点来进行需求的组织。

比如,对业务相关干系人,更关心的是业务的流程以及各个角色的职责。

而解决方案设计人员可能会更加关心实现和接口等等。


• illustrate how requirements and models interact with and relate to each other, and show how the parts fit together into a meaningful whole

需要对需求以及模型之间的关系和影响进行说明。


• ensure the requirements work together to achieve the overall objectives

确保需求实现后可以达到整体目标。


• make trade-off decisions about requirements while considering the overall objectives

根据总体目标决定需求的优先级即必要性等。

这里需要注意一点的就是,需求架构并不是简单的对需求进行分解。

而是需要保证需求之间相互作用下,解决方案会是可行的。


比如需求之间有一些是有相互依赖的,或者有数据传递的。

我们需要做的是搭建一个框架,使得整个故事可以完整的推演下去,并且到达我们事先设定好的目的地。


Inputs


• Information Management Approach

• Requirements (any state)

• Solution Scope


Elements


Requirements Viewpoints and Views


这个元素我还真不知道应该怎么翻译成中文,说观点觉得怪怪的。

我就分享下我的理解吧,如果你有合适的词也希望留言给我。


搭建需求架构的时候,我们会使用到很多的建模工具和模型,这个在7.1中已经说过了。

那么不同的建模工具和模型其实就是这里所说的Viewpoint。

比如用来表达业务流程的,业务流程模型。

比如用来表达数据关系的,数据模型。

比如用来表达交互的,用例或者UE模型。

我们不能仅仅使用一种模型或者一个角度来进行需求架构的设计。

必须多角度看待需求。


就好像我们无法使用一个视角来描述一个三维的物体,我们会有俯视图、仰视图、侧面图等等。

使用这么多的视角,我们就必须保证其一致性。

这就是Requirements Viewpoints and Views要做的事情。


Template Architectures


An architectural framework is a collection of viewpoints that is standard across an industry, sector, or organization.


我们可以事先定义一些模板来构建需求架构。

比如很多的SRS模板中就有用例、流程、对象关系、权限矩阵等章节。


Completeness


An architecture helps ensure that a set of requirements is complete.


需求模型之间可以互相校验。

打个比方,你使用用例图描述各个角色的业务动作。

那么这些动作和角色是否可以和你的活动图对应上。

如果有缺失,肯定是某个模型需要进行补充。

在探讨为什么会缺失的时候,其实你可能会挖掘出来一些之前忽略的需求和信息。


Relate and Verify Requirements Relationships


这个其实和上面一个差不多的意思,相互验证,确保完整性。


Business Analysis Information Architecture


其实在整个需求分析和需求建模的过程中,肯定会有一些信息是没有办法表述在模型里面的。

针对这部分信息,可以考虑进行记录和管理。

我觉得这是一个美好的愿望。

讲真。


我曾经尝试过用Excel或者其他工具将需求获取、分析、交流以及模型、约束等等进行关联和记录。

但是,更重要的是后期的维护和更新。

这个会耗费很多的精力。

渐渐的,也就没人去做了。

期待有好的方法可以实现这样的构建,因为这些都是非常重要的信息。

比如为什么客户之前的表述是这样,而方案或者需求记录成那样。

过个一年半载,很难回忆的起来。


Guidelines and Tools


• Architecture Management Software

• Legal/Regulatory Information

• Methodologies and Frameworks


Techniques


• Data Modelling

• Functional Decomposition

• Interviews

• Organizational Modelling

• Scope Modelling

• Workshops


Stakeholders


• Domain Subject Matter Expert, Implementation Subject Matter Expert, Project Manager, Sponsor, Tester

• Any stakeholder


Outputs


• Requirements Architecture

the requirements and the interrelationships among them, as well as any contextual information that is recorded.



小婧是一名行走在实践路上的资深业务分析师(BA),如果想与我同行,就请关注我吧!

BABOK Guide3.0(7.4)Define Requirements Architecture




「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论