UML和模式应用4:初始阶段(1)--概述
1.前言
UP开发包括四个阶段:初始阶段、细化阶段、构建阶段、移交阶段;
初始阶段是项目比较简短的起始步骤,主要目的是收集足够的信息来建立共同设想,调查项目的总体目标和可行性,确定是否值得进一步深入。
注:关于初始阶段的系列文章,虽然是以初始阶段为标题,但是实际的很多制品和介绍会跨越初始阶段、细化阶段和构造阶段
2. 初始阶段的主要工作
2.1 初始阶段的主要工作
. 项目的设想和业务用例是什么?
. 是否可行?
. 购买还是开发?
. 粗略估计一下成本
. 项目应该继续还是停止?
2.2 初始阶段的其它工作
同时为了能够在细化阶段进行编程,初始阶段还将完成如下的工作:
. 对10%的用例进行分析
. 关键的非功能需求的分析
. 业务案例创建
. 开发环境准备
3. 初始阶段特性
- 初始阶段的目标不是定义所有需求
- 初始阶段持续的时间相对较短
- 初始阶段的预算和计划并不是可靠的
- 不会定义架构(架构是在细化阶段用迭代方式进行)
- 会产生业务案例和设想制品
- 会选择部分用例进行详细分析,以便获得对问题范围的真实认知
4. 初始阶段的制品
初始阶段会创建如下表中的全部或部分制品:
制品 | 说明 |
设想和业务用例 | 描述高阶目标和约束,业务案例,并提供执行摘要 |
用例模型 | 描述功能需求。确定大部分用例名称,并详细分析10%的用例 |
补充性规格说明 | 描述其它需求,主要是关键的非功能性需求 |
词汇表 | 关键领域术语和数据字典 |
风险列表和风险管理计划 | 描述风险(业务,技术,资源,进度)及应对和缓解方法 |
原型和概念验证 | 澄清设想,验证技术思路 |
迭代计划 | 描述第一个细化迭代的任务 |
阶段计划和软件开发计划 | 对细化阶段的持续时间和工作量进行粗略估计。工具、人员、教育和其它资源 |
开发案例 | 就特定项目,对UP步骤和制品进行定制的描述。 |
表 初始阶段的制品及说明
几点说明:
- 如上表中的制品都是可选的,有选择的创建对项目有价值的制品
- 如果价值未证实,则弃用
- 初始阶段不是形成完整的规格说明,而是形成初始、粗略的文档
- 文档将在细化阶段迭代精化
- 创建制品的重点是其中蕴含的思想及分析和前期准备
如上初始阶段的制品中与需求先关的制品包括:设想、业务用例、用例模型、补充性规格说明、词汇表,下一章会重点介绍这些与需求相关的制品
UML和模式应用4:初始阶段(1)--概述的更多相关文章
- UML和模式应用4:初始阶段(6)--迭代方法中如何使用用例
1.前言 用例是UP和其他众多迭代方法的核心.UP提倡用例驱动开发. 2. 迭代方法中如何使用用例 功能需求首先定义在用例中 用例是迭代计划的重要部分,迭代是通过选择一些用例场景或整个用例来定义的 用 ...
- UML和模式应用4:初始阶段(4)--需求制品之用例模型模板示例
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...
- UML和模式应用4:初始阶段(3)--需求制品之用例模型
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...
- UML和模式应用4:初始阶段(2)--需求科目之进化式需求
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: 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和模式应用
引言 Applying UML and Patterns,以一个商店POS系统NextGen和一个掷骰子游戏Monopoly为例,围绕OOA/D的基本原则GRASP,以迭代作为基本方法.以UML为表达 ...
- 《UML和模式应用》重点之思想篇
本书是帮助开发人员和学生学习面向对象分析和设计(OOA/D)的核心技能的重要工具. UML不是OOA/D.也不是方法,仅仅是图形表示法,假设没有真正掌握怎样创建优秀的面向对象设计,或者怎样评估和改进现 ...
随机推荐
- Leetcode 347.前K个高频元素 By Python
给定一个非空的整数数组,返回其中出现频率前 k 高的元素. 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], ...
- 自学Python6.3-内置模块(1)
自学Python之路-Python基础+模块+面向对象自学Python之路-Python网络编程自学Python之路-Python并发编程+数据库+前端自学Python之路-django 自学Pyth ...
- SpringCloud学习(二)---Eureka
Eureka 重点在使用,概念和源码基本不涉及 Eureka是一个基于REST(REST是HTTP协议的)的服务,主要在亚马逊网络服务(AWS)云中使用,定位服务来进行中间层服务器的均衡负载和故障转移 ...
- xrandr: 命令行修改分辨率工具
常用功能举例 查看支持的分辨率 xrandr -q 将分辨率设为1024×768 xrandr -s 1024×768 恢复到默认分辨率 xrandr -s 0
- 【洛谷P4735】最大异或和
题目大意:给定一个长度为 N 的序列,支持两个操作:在序列末尾添加一个新的数字,查询序列区间 \([l,r]\) 内使得 \(a_p\oplus a_{q+1}\oplus ... a_N\oplus ...
- 使用React.cloneElement()给子组件传值
React提供了一个克隆组件的API: React.cloneElement( element, [props], [...child] ) 可以利用该方法,给子组件传值,使用如下: class Pa ...
- Faster RCNN代码理解(Python)
转自http://www.infocool.net/kb/Python/201611/209696.html#原文地址 第一步,准备 从train_faster_rcnn_alt_opt.py入: 初 ...
- linux command ------ find
find | grep luoluo 将当前目录及子目录的文件名中含有luoluo的文件过滤出来 | 是管道,把find查找的内容传递给下个命令(grep) find后面不加其他内容(比如路径)表示打 ...
- printf()格式化输出详解
% - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少. ②-:有-表示左对齐输出,如省略表示右对齐输出. ③0:有0表示指定空位填0,如省略 ...
- 如何下载网易云音乐APP里的MV和短视频?
本人:网易云音乐死粉,朋友圈大多都用的是云音乐,因为推荐功能牛逼 然后:发现云音乐APP里越来越多吸引我的短视频,经常看到好的就想保存到相册,然后微信发给朋友 但是:不知道怎么下载网易云音乐的短视频, ...