UML和模式应用4:初始阶段(2)--需求科目之进化式需求
1. 前言
UP开发包括四个阶段:初始阶段、细化阶段、构建阶段、移交阶段;
UP每个阶段包括 业务建模、需求、设计等科目;
需求是UP科目之一,在初始阶段需求科目的工作量占据较大的部分。但是初始阶段的需求科目并非定义所有需求,而是需要在后续的细化阶段逐步迭代。
同时需求科目工作的成果会形成相关的制品。
2.相关术语
| 术语 | 说明 |
| 需求 | 系统必须提供的能力和遵从的条件 |
| 需求管理 | 定义需求的方法 |
| 瀑布式需求管理 | 编程之前项目的第一个阶段就试图完全定义和固化需求 |
| UP式需求管理 | 用一种系统的方法来寻找、记录、组织和跟踪系统不断变更的需求 |
表 需求相关术语说明
3. 寻找需求的方法
- 与客户一起编写用例
- 开发者和客户共同参加客户讨论会
- 请客户代理参加焦点小组
- 把每次迭代的成果给客户演示以求得到反馈
4. 需求的类型和种类
| 需求种类 | 说明 |
| 功能性(Functional) | 特性、功能、安全性 |
| 可用性(Usability) | 人性化因素、帮助、文档 |
| 可靠性(Reliability) | 故障频率、可恢复性、可预测性 |
| 性能(Performance) | 响应时间、吞吐量、准确性、有效性、资源利用率 |
| 可支持性(Supportability) | 适应性、可维护性、国际化、可配置性 |
| 如下为“+” | |
| 实现(Implementation) | 资源限制、语言和工具、硬件等 |
| 接口(Interface) | 强加于外部系统接口之上的约束 |
| 操作(Operation) | 对其操作设置的系统管理 |
| 包装(Packaging) | 物理的包装盒 |
| 授权(Legal) | 许可证或其它方式 |
表 按照FURPS+模型需求的分类
注:需求按照FURPS+模型进行分类,其中+是指一些辅助的、次要的因素
5. UP需求制品
| UP需求制品 | 说明 |
| 设想 | 概括了高阶需求。这些需求在用例模型和补充性规格说明中细化 |
| 业务规则 | 又称领域规则,描述了凌驾于软件项目的需求或政策,这些规则是领域业务所要求的 |
| 用例模型 | 一组使用系统的典型场景 |
| 补充性规格说明 | 基本上是用例之前的所有内容,主要用于非功能性需求,例如性能、授权 |
| 词汇表 | 定义重要术语 |
表 UP初始阶段需求科目对应的需求制品
注:UP提供了如上表的需求制品,这些需求制品是可选的
6. 本书包含的UP需求制品
本书包含的需求制品包括:
- 设想
- 业务规则
- 用例模型
- 补充性规格说明
- 词汇表
UML和模式应用4:初始阶段(2)--需求科目之进化式需求的更多相关文章
- UML和模式应用4:初始阶段(1)--概述
1.前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: 初始阶段是项目比较简短的起始步骤,主要目的是收集足够的信息来建立共同设想,调查项目的总体目标和可行性,确定是否值得进一步深入. ...
- 《UML和模式应用(原书第3版)》目录
学习 <UML和模式应用(原书第3版)>目标: 理解OOA/D思想 如何使用UML建模 如何使用设计模式 如何设计分层架构 目录: 第1部分 绪论 第1章 面向对象分析和设计 第2章 迭代 ...
- UML和模式应用4:初始阶段(6)--迭代方法中如何使用用例
1.前言 用例是UP和其他众多迭代方法的核心.UP提倡用例驱动开发. 2. 迭代方法中如何使用用例 功能需求首先定义在用例中 用例是迭代计划的重要部分,迭代是通过选择一些用例场景或整个用例来定义的 用 ...
- UML和模式应用4:初始阶段(4)--需求制品之用例模型模板示例
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...
- UML和模式应用4:初始阶段(3)--需求制品之用例模型
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...
- UML学习笔记—基本概念和初始阶段
chpater1 1.什么是分析和设计 分析:对问题和需求的调查研究 设计:满足需求的概念上的解决方案 做正确的事(分析)和正确地做事(设计) 2.什么是Object-Oriented-Analysi ...
- UML和模式应用5:细化阶段(4)--如何创建领域模型
1.前言 以当前迭代中所要设计的需求为界,创建领域模型的步骤: 1.寻找概念类 2.将其绘制为UML类图中的类 3.添加关联和属性 2.如何寻找概念类 寻找概念类有如下几种方法: 重用和修改现有的模型 ...
- UML和模式应用5:细化阶段(1)--第1次迭代
1.前言 从本文开始进入细化阶段,讨论迭代技术的基础,本次讨论将着重讨论第一次迭代,以POS机为例. 2. 第一次迭代处理的需求(以NextGen POS项目处理销售用例) 实现 处理销售 用例中基本 ...
- UML和模式应用5:细化阶段(5)---系统顺序图
1.前言 系统顺序图(SSD)是为阐述系统相关的输入和输出事件而快速.简单的创建的制品,它们是操作契约和对象设计的输入. SSD展示了直接与系统交互的外部参与者.系统(作为黑盒)以及由参与者发起的系统 ...
随机推荐
- BZOJ 3745: [Coci2015]Norma(分治)
题意 给定一个正整数序列 \(a_1, a_2, \cdots, a_n\) ,求 \[ \sum_{i=1}^{n} \sum_{j=i}^{n} (j - i + 1) \min(a_i,a_{i ...
- jasperReport和Ireport
<!-- groovy --> <dependency> <groupId>org.codehaus.groovy</groupId> <arti ...
- 自学Python5.2-类和对象概念
自学Python之路 自学Python5.2-类和对象概念 面向对象编程的2个非常重要的概念:类和对象 对象是面向对象编程的核心: 在使用对象的过程中,为了将具有共同特征和行为的一组对象抽象定义,提出 ...
- 洛谷 P1078 文化之旅 解题报告
P1078 文化之旅 题目描述 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家).不同的国家可能 ...
- 深入理解Adaboost算法
理解算法确实是欲速则不达,唯有一步一步慢慢看懂,然后突然觉得写的真的太好了,那才是真的有所理解了. Adaboost的两点关键点: 1. 如何根据弱模型的表现更新训练集的权重: 2. 如何根据弱模型的 ...
- 【模板】Splay
Splay 均摊复杂度证明见此处 \(\rightarrow\) 链接 代码如下 #include <bits/stdc++.h> using namespace std; const i ...
- Java设计模式--缺省适配器模式
我认为这个模式比较常见,还记得我们学习Swing的时候吗,有没有见过很多Adapter?那时候不知道Adapter的意义所在,但至少知道他能够省去我们不需要的实现. 这个社会有N中职业(job),但是 ...
- java常见面试题及三大框架面试
Java基础方面: 1.作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ ...
- django在读取数据库时未筛选到符合条件的记录会报错
(1)报错情况如下: DoesNotExist: Publisher matching query does not exist. (2)处理方法: try: p = Publisher.o ...
- 通过Cloudera Manager部署CDH5.15.1的webUI界面详解
通过Cloudera Manager部署CDH5.15.1的webUI界面详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客CDH的部署完全通过Cloudera Mana ...