《代码大全》中对关联图的讲解很是详尽,大致内容如下:关联图让软件项目范围的描述为我们正在开发的系统和宇宙万物之间划清了界线。关联图通过正在开发的系统或正在讨论的问题和外部世界之间的联系来描述这一界线。关联图确定了通过某一接口与系统相连的外部实体(称为“端点”或“外部实体”),同时也确定了外部实体和系统之间的数据流和物流。我们把关联图作为按照结构化分析所形成的数据流图的最高抽象层。可以把关联图写入项目视图和范围文档或软件需求规格说明中,或者作为系统数据流模型的一部分。业务需求代表了需求链中最高层的抽象:他们为软件系统定义了项目视图和范围。软件功能需求必须根据用户的需求来考虑,且要与业务需求所设定的目标相一致,对不利于实现项目业务目标的需求应该排除在外。一个项目可能包括一些与软件没有直接关系的需求,例如:硬件的购买、产品的安装、维护或广告。但在此,我们只关心与软件产品有关系的业务需求。如果一个项目缺乏明确的规划和良好的信息交流途径,那将是十分糟糕的。如果项目的参与者持有不同的目标和优先权,那么他们只能各抒己见,无心工作。如果项目的风险承担者在产品所能满足的业务需要和产品所能提供的利益问题上不能达成一致的意见,那么需求决不会稳定。一个清晰的项目视图和范围过于分散在多个地方开发,在这样的项目中,地理位置上的分离使项目开发组成员必须天天进行相互沟通才能保证他们之间能进行更有效的合作。业务需求中某些特性最初被列入规格说明,而后又被删除,最后又加入,则说明此业务需求未完全定义好。在确定详细的功能需求之前,必须很好地解决项目的视图和范围问题。对范围和局限性的明确说明将在很大程度上有助于对所建议特性的探讨和最终产品的发行。一个明确定义了项目视图和范围的文档也可以为所建议的需求变更的决策提供参考,项目视图可以把项目参与者定位到一个共同和明确的方向上。项目视图描述了产品所涉及的各个方面和在一个完美环境中最终所具有的功能。相反的,范围描述了产品应包括的部分和不应包括的部分。范围的说明在包括与不包括之间划清了界线,当然,它还确定了项目的局限性。项目的业务需求在视图上和范围上形成文档,这些必须在创建项目之前起草。开发商业软件的公司经常编写市场需求文档,其实这种文档也是为了类似的目的,但这种文档较为详细地涉及关于目标市场部分的内容,这是为适应商业的需要。视图和范围的文档为项目的主办者或具有同等地位的人所拥有。业务需求是从各个不同的人那里收集来的,这些人对于为什么要从事该项目和该项目最终能为业务和客户提供哪些价值有较清楚的了解。它们包括主办者、客户、开发公司的高级管理人员及项目的幻想者。 项目视图和范围的文档(vision and scope document)把业务需求集中在一个简单、紧凑的文档里,这个文档为以后的开发工作奠定了基础。项目视图和范围文档包括了业务机遇的描述、项目的视图和目标、产品适用范围和局限性的陈述、客户的特点、项目优先级别和项目成功因素的描述。这必须是一个相对简短的文档,也许只有3~8页纸,这取决于项目的性质和大小。