软件需求分析--阅读笔记3

读《需求工程——软件建模与分析》第三部分 需求分析 有感

在需求获取中,需求工程师可以得到关于问题域的描述信息,可以得知涉众对软件系统的期望。可是,上述这些被记录在获取笔录上的内容都还是属于现实世界的信息,它们是用户和其他涉众对现实世界的理解和描述,使用的是实际业务的表达方式。因此,需求分析的根本任务是:(1)建立分析模型,达成开发者和用户对需求信息的共同理解。(2)依据共同的理解,发挥创造性,创建软件系统解决方案。

  模型是对重要知识的集中描述,这种描述是通过模型语言实现的。模型语言有三个要素:语法、语义、语用。模型语言的三个要素之间互为依赖,每个要素都为下一个要素提供了一个必须的环境。非形式化的自然语言是一种语法规则非常复杂的模型语言,他可以描述现实世界中发生的各种情况。

  建立分析模型的任务集中体现在需求分析的需求建模子活动中。软件需求分析的关键是为真实世界的问题建立模型,即问题域建模。具体模型类别的选择要视问题的情况来确定,一般有以下影响因素:(1)问题域的特性:不同类型的问题域有不同类别的分析要求,例如实时的应用处理要求建立控制流和状态模型,信息系统会要求建立数据模型等。(2)需求分析人员的技能:在多种模型类别都能满足需要时,需求分析人员通常会此采用自己更加熟练和更有经验的建模语言和方法。(3)客户的过程需求:客户可能会要求使用其喜欢的建模语言和方法,或者禁止使用其不熟悉的建模语言和方法。(4)方法和工具的可能性:尽管适合于默哀书特定的问题,但是培训和工具不支持的建模语言和方法是可能不会被广泛接受。

  常用的需求分析技术包括:上下文图、数据流图、实体联系图、功能实体矩阵、功能分解图、过程依赖图、用例图、类图、交互图、活动图、对象约束语言等。实践表明,需求工程师在建模与分析中遭遇的最大难题不在于某些具体技术的掌握问题,它们有足够的能力学习和掌握每一种技术。对需求分析技术的综合运用才是需求分析人员最大的困难。

原文地址:https://www.cnblogs.com/andibier/p/8397426.html