P2_C4-7:初始阶段
初始阶段:利益相关人就产品范围、愿景、使用场景达成一致
Inception is not requirements phase
阅读书上第4章
Inception Phase 初始阶段:预见项目的范围、设想和业务案例
- 初始阶段需要考虑的事情:继续还是停止?购买还是自己构建?话费?涉众是否有统一看法?
- 大多数analysis 是在elaboration中进行的
- inception 阶段的activity和artifacts:vision、10~20%的用例、计划书等等
- 该阶段时间要短,如果到一周甚至多周,进入了更深的研究就失去了意义
Evolutionary requirements
阅读书上第5章
Requirements
- 需求是项目必须提供的能力和必须满足的条件
- Goal:确定并文档出真实的需求
- Challenge: 定义没有歧义的需求
- 需求的类型可以按照“FURPS+”模型来进行分类和管理
- Functional(功能性)
- Usability (可用性)
- Reliability (可靠性)
- Performance (性能)
- Supportability (可维护性)
- UP会产生的需求制品:以下为可选的关键制品
- 用例模型、补充性规格说明、词汇表、愿景书、业务规则
Use cases
阅读书上第6章
Actors(参与者):与系统进行交互的外部实体,如人、计算机、组织等。
- Primary actors:
- 特点:使用sud完成所具有的用户目标。
- 作用:发现驱动用例的用户目标
- Supporting actors:
- 特点:为sud提供服务,通常是一个系统
- 作用:为了明确外部接口和协议
- Offstage actor:
- 特点:在用例性为中有影响或获益,如政府机构
- 作用:完备考虑利益关系
Use Case, 为满足驻澳参与者的目标而定义用例
- 在FURPS中强调“F”, 功能性需求
- scenario/use case instance:参与者和系统的一系列交互和活动
- use case: 一组相关的成功和失败的场景集合
- UML use case:提供了一个很好的系统的语境图
- Use Case 的三种常见形式
- Brief: 一段摘要,在早期的需求分析中很快得到的,主要用于成功场景
- Casual:覆盖多个不通场景
- Fully:(模板:书上P50)详细编写所有步骤和所有变化,包括前置条件和成功保证
- use case name: 以动词开始
- level:user-goal(实现)或subfunction(支持)
- 用essential风格编写用例(摆脱UI)
- essential style: 管理员标识自己的身份
- concrete style: 管理员在对话框中填写了自己的ID和密码
- black-box use cases:不对内部工作构件进行秒速,只通过职责来描述
- take an actor and actor-goal perspective:关注涉众及其关注点
- 如何发现用例
- choose system boundary:
- identity the primary actors and their goals
- define use cases that satisfy user goals :基于参与者/基于事件
- 什么测试有助于发现用例
- boss test:
- EBP test:一个人于某个时刻在一个地点所执行的任务
- size test:规模不能太小,如输入定义、移动棋子
应用UML
- 用例图
- 准则:绘制简单的用例图,并与 参与者-目标 列表关联。重点是文本而不是图
- 活动图
- 描述某一用例中执行的步骤,使业务流程可视化
- 可用于早期描述重要场景,用业务流程图识别用例
- 重要的表示符号!!(ppt P66)
Other requirements
阅读书上第7章
除了用例以外的需求制品:
- supplementary specifications:各种类型的补充说明,包括URPS中的一些元素(样例:书上P78)
- glossary:数据字典
- vision:项目的设想(样例:书上P82),文档中包含的特性最好少于10个
- business rules(domain rules):长期政策法规
越努力越幸运~