需求工程之软件需求分析

需求分析概括为:
  • 需求分解:采用自顶向下的方法(产生软件需求规格说明书的大纲)
    • 以业务流程为主线索:适合联机事物处理系统,管理信息系统等
    • 以程序结构为主线索:适用于问题域不复杂或者系统与问题域关联性不强的情况
    • 基于场景的分解结构:适用于决策支持系统,面向用户的嵌入式系统
    • 基于数据的分解结构:适用于诸如数据仓库之类的数据类项目
  • 需求提炼:采用自底向上的方法
    • 业务项目
    • 业务流程
    • 每一个单据
    • 每一条记录
  • 需求分析与提炼的过程中消除矛盾
需求建模:(使用UML)

建模的目标

  • 帮助需求分析员按照实际情况或按照需求的样式对系统进行可视化
  • 提供一种详细说明文档的结构或行为的方法
  • 给出一个指导系统构造的模板
  • 对需求分析所做出的决策进行文档化

建模的要点

  • 设计要考虑到计划之外的变化
  • 设计要文档化
  • 用可视化的模型表达架构,有助于理解变化所代表的含义
常见的需求分析方法:
  • 结构化分析(SA)
  • 面向对象分析(OOA)
  • 面向问题域分析(PDOA)
1. 结构化分析方法

结构化分析:是面向数据流的需求分析方法,致力于系统范围内发事物处理,数据流以及存储数据结构的建模(与人类思维很相似)

建模模型包括:

  • 数据流图(DFD)(功能模型)(四要素:外部实体、加工、数据流。数据存储)
    • 从描述信息中辨识实体
    • 确定实体标识符
    • 建立实体间关系
    • 添加详细的描述信息
  • 数据字典(DD)(名称、别名、使用地点、使用范围、描述、单位/格式)(能够准确定义数据流图中各组成成分的具体含义)
    • 数据流条目
      • 数据流名称
      • 说明
      • 数据流来源
      • 数据流去向
      • 数据流组成
    • 数据项条目
    • 数据文件条目
    • 数据加工条目
  • 实体关系图(ERD)(数据模型)

常见的结构化分析技术包括:

  • 数据建模
  • 过程建模
  • 行为建模
  • 过程、数据关系建模
  • 信息工程方法
2. 面向对象分析方法

    面向对象分析的起点是一份原有的需求文档,或者甚至是一份行为规格说明,OOA的真正本质意义是作为解系统的高层体系结构的设计,并且有利于系统的下一步开发设计。

面向对象分析方法

  • 标识出问题域中的对象类
  • 定义这些类的属性和方法
  • 定义这些类的行为
  • 对这些类之间的关系模型

面向对象分析的工具:(UML)

  • 用例图
    • 基本用例模型(用于对行为需求建模)(需求获取阶段构建)
    • 系统用例模型(用于为行为分析建模)(需求分析阶段构建)
  • 类图
  • 交互图
    • 序列图(顺序图)
    • 协作图
  • 活动图
  • 对象约束语言
  • 状态转换图(STD)(行为建模)
3. 机构化分析方法和面向对象分析方法的比较

相同特性:

扫描二维码关注公众号,回复: 11000239 查看本文章
  • 主要模型是结构模型
  • 通常焦点集中在对解系统建模上
  • 两种方法都较少的应用于需求获取领域
  • 分析与内部设计之间没有明显差异
分析过程的两个阶段:
  • 理清业务与流程
  • 确定需求细节
发布了72 篇原创文章 · 获赞 3 · 访问量 3552

猜你喜欢

转载自blog.csdn.net/id__39/article/details/105063417
今日推荐