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.也不是方法,仅仅是图形表示法,假设没有真正掌握怎样创建优秀的面向对象设计,或者怎样评估和改进现 ...
随机推荐
- Python的栈和队列实现
栈 class Node: def __init__(self, data=None): self.next = None self.data = data class Stack: def __in ...
- SharePoint 2013 Central Admin 不能打开
当我准备打开CA时发现下面的错误: This operation can be performed only on a computer that is joined to a server farm ...
- Spark 集成开发
WordCount.py # coding:utf-8 from pyspark import SparkContext from pyspark import SparkConf def SetLo ...
- ormlite 文档
目录[-] A Fast, Simple, Typed ORM for .NET Download 8 flavours of OrmLite is on NuGet: Docs and Downlo ...
- Bash: about .bashrc, .bash_profile, .profile, /etc/profile, etc/bash.bashrc and others
Some interesting excerpts from the bash manpage:When bash is invoked as an interactive login shell, ...
- OI生涯回忆录 2017.9.10~2018.11.11
然而并没有退役 为了这两天,也准备了一年. 高一零基础的蒟蒻,NOIP2017仅有80pts 之后看着luogu的倒计时, 300天,200天,100天,30天, 直到10天.1天. 10号,11号的 ...
- 洛谷P3233 世界树
题意:给定树上k个关键点,每个点属于离他最近,然后编号最小的关键点.求每个关键点管辖多少点. 解:虚树 + DP. 虚树不解释.主要是DP.用二元组存虚树上每个点的归属和距离.这一部分是二次扫描与换根 ...
- javascript - ie - css - 动态更新鼠标指针形状
最近写了一个图片展示的页面,在弹出层中显示大图,在大图的左边和右边点击时可以翻页. 将鼠标在大图上移动时,移动到左边显示一个向左的箭头,移动到右边时显示一个向右的箭头. 当第一次显示大图时,如果鼠标位 ...
- JSON必知必会,浅尝辄止的整理
在使用JSON时常见的安全漏洞通常发生在JavaScript从服务器获取到一段JSON字符串并将其转化为JavaScript对象时, 在定位JSON安全问题时,应该记住三件事情: 1.不要使用顶级数组 ...
- 洛谷 P1020 导弹拦截(dp+最长上升子序列变形)
传送门:Problem 1020 https://www.cnblogs.com/violet-acmer/p/9852294.html 讲解此题前,先谈谈何为最长上升子序列,以及求法: 一.相关概念 ...