需求工程
软件需求概述
软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望
需求开发(技术)
需求获取
需求开发-需求分类
业务需求(整体全局)
用户需求(用户视解)偏操作
系统需求(计算机化)功能、非功能、设计约束
QFD:项目管理
基本需求(明示,常规需求)
期望需求(隐含)
兴奋需求(多余、镀金)
需求开发-需求获取
用户访谈:1对3,有代表性的用户 耗时
开放式问题 与封闭式问题相结合(选择题)
问卷调查:用户多,无法一一访谈
现在观察:针对较为复杂的流程和操作
参加业务实践:有效地发现问题的本质和寻找解决问题的办法
联合需求计划(JRP):高度组织的群体会议,各方参与,成本较高
会议的形式获取需求。
情节串联板:一系统图片,通过这些图片来讲故事(原型)
收集资料
阅读历史文档:对收集数据性的信息较为有用。
抽样调查:降低成本。样本大小=a
需求分析
结构化需求分析
数据流图(DFD) 功能模型
数据流、加工(功能模块)、数据存储、外部实体
一、补充实体
人物角色、组织机构、外部系统
二、补充存储
特征:”**文件、**表、**库、**清单、**档案”
三、补充数据流
1、数据平衡原则
2、按题目说明与图进行匹配
四、补充加工名
动词+名语
例外,如物流跟踪、用户管理
状态转换图(STD) 行为模型
节点即为状态--事件--节点
实体联系图(ER) 数据模型
实体A 联系 实体B
数据字典:数据元素、数据结构
面向对象需求分析
对象:属性+方法+对象ID
类:(实体类、控制类、边界类)
继承与泛化:复用机制
封装:隐藏对象的属笥和实现细节,仅对外公开接口
多态:不同对象收到同样的消息产生不同的结果
接口:只有定义没有实现
重载:一个类可以有多个同名而参数类型不同的方法
消息和消息通信:消息是异步通信的
OOA-UML
构造块
事务
结构事务:最静态的部分类、接口、协作、用例、活动类、
构件和节点
行为事务:代表时间和空间上的动作。消息、动作次序、连接
分组事物: 看成是个盒子, 包,构件
注解事物:UML模型的解释部分。描述、说明和标注模型的元素。
例题讲解:
类:是描述具有相同属性、方法、关系和语义的对象的集合
接口:是指类或构件提供特定服务的一组操作集合
构件是物理上或可替换的系统部分,实现了一个接口集合;
包是一组将组织的元素分组的机制
用例是一系列的动作,产生有价值的结果
协作:交互的操作,是一些解色和其它事物一起工作
节点:是一个物理元素,它在运行进存
关系
图
静态图(结构图)
类图、对象图、构件图、部署图(软硬件之间的映射)、制品图、包图
动态图(行为图)
用例图:系统与外部参与者的交互
顺序图:强调按时间顺序
通信图:协作图
定时图:强调实际时间
交互概览图
状态图:状态转换变迁
活动图:类似程序程图,并行行为
逻辑视图:展现系统功能 类与对象
实现视图:源代码结构
进行视图:并发与同步结构
部署视图:软件构件到物理结点映射
用户视图:需求分析模型
用例图:描述一组用、参与者及它们之间的关系
关系包括:
包含关系:原始指向被包含用例
扩展关系: 扩展指向原始
泛化关系:
规则
公共机制
OOA-需求建模
用例模型
识别参与者
合并需求获得用例
细化用例描述
调整用例模型
分析模型
定义概念类
识别类之间的关系
为类添加职责
建立交互图
需求定义(SRS)
严格定义法:瀑布模型的思想
原型法:
需求验证
需求评审
需求测试
用户签字确认
验收标准之一
需求基线
需求管理(管理)
需求跟踪
用户原始需求 to 软件需求(用例) to 下游工作产品
需求风险管理
无足够用户参与
忽略了用户分类
不断增加需求
模棱两可的需求
不必要的特性
过于精简的SRS
不准备的估算
2023年软考高级系统分析师学习笔记二【需求工程】
于 2023-03-31 14:13:51 首次发布