UML面向对象需求分析与建模(二)

一个软件要做的内容从何而来?——需要一个对系统应该提供的服务和所受到的约束进行理解、分析、建立文档、检验的过程——需求工程

软件需求的内容

UML面向对象需求分析与建模(二)
功能需求:对系统应该提供的功能及特定环境下的行为描述
领域需求:由软件系统的应用领域所决定的特有的功能需求
UML面向对象需求分析与建模(二)

需求工程的基本活动

获取需求:深入实际,在充分理解用户需求的基础上,获取系统需求
需求分析与建模:进行需求建模、对模型或原型进行分析
确认需求:确保需求说明准确、完整地表达系统的主要特性
进化需求:客户的需要总是不断(连续)增长的 ,进化需求是必要的。

以大学图书管理系统为例的需求获取:

功能需求

  1. 基本数据维护功能(读者及图书信息的录入、删除、更新)
  2. 基本业务功能(借书、还书、预留书等)
  3. 数据库管理功能
  4. 信息查询功能

非功能需求:

  1. 系统安全性需求(用户权限设置等)
  2. 对系统可用性的需求
  3. 对系统查询速度的需求
  4. 对系统可靠性的需求

领域需求:
与图书管理业务相关的需求。(如符合相关法律法规)

需求分析及建模

需求分析和建模又包含三个层次的工作:
1、需求分析
2、需求建模(分为企业建模、功能需求建模和非功能需求建模等)
3、需求规格说明—不同的描述方式

SA法的描述方法
1、分层的数据流图(DFD图)
2、数据词典
3、描述加工逻辑的结构化语言、判定表及判定树
UML面向对象需求分析与建模(二)
面向对象的分析方法(OOA):
基于用例的方法”来识别和获取需求,是从外部的角度来看系统功能,描述外部执行者(Actor)所理解的系统功能。即待开发系统的功能需求。