UML学习笔记—基本概念和初始阶段
chpater1
1、什么是分析和设计
分析:对问题和需求的调查研究
设计:满足需求的概念上的解决方案
做正确的事(分析)和正确地做事(设计)
2、什么是Object-Oriented-Analysis (面向对象分析)
在问题领域发现和描述对象(或概念)**从问题发现需求然后从需求中抽象出对象* *
finding and describing the** concepts in (not software object or class) **the problem domain
3、什么是Object-oriented-Design(面向对象设计)
定义软件对象以及他们如何协助以实现需求
defining how the software objects collaborate to fulfill the requirements
4、什么是UML(统一建模语言)
统一建模语言 是描述、构造和文档化系统制品的可视化语言
a visual language for specifying, constructing and documenting the artifacts of systems
5、为什么需要UML
Use graphic notation to communicate more clearly than nature language (imprecise) and code (too detailed)
使用图形符号比自然语言和代码能更清晰地交流
Help acquire an overall views of a system
帮助获取系统的整体视图
UML is not dependent on any one language or technology
UML不依赖任何语言和技术
UML move us from fragmentation to standardization
UML使我们从零碎到标准化
chpater2
1、什么是UP(统一过程)
软件开发过程描述了构造、部署和维护软件的方式
UP is an Iterative and Evolutionary Development,Sample structure to apply OOA/D and UML
RUP(Rational Unified Process):对UP的精化
2、为什么使用UP
- UP is an iterative process.
- UP practices provide an example structure for how to do and thus how to explain OOA/D
- UP is flexible, and can be applied in a lightweight and agile approach
3、什么不是UP
waterfall lifecycle 试图在编程前定义大部分或全部的需求,是一种linear方法
4、What is Iterative and Evolutionary Development(迭代和进化式开发)?
迭代: development is organized into a series of short, fixed-length (for example, three-week) mini-projects 开发被组织成一系列短的、定长的小项目,相当于每次只实现系统的一部分
迭代的优点(P17)
- less project failure, better productivity, and lower defect rates
- early rather than late mitigation of high risks
- early visible progress
- early feedback, user engagement, and adaptation leading to a refined system that more closely meets the real needs of the stakeholders
- managed complexity
- the learning within an iteration can be methodically used to improve the development process itself, iteration by iteration
Inception初始阶段
chapter4
1、什么是Inception
预测项目的范围、设想和业务案例(Envision the product scope, vision, and business case)初始阶段不是需求分析而是可行性分析
解决的主要问题:涉众是否对项目设想达成基本一致,项目是否值得投入认真的调查
Do the stakeholders have basic agreement on the vision of the project, and is it worth investing in serious investigation
2、初始阶段会创建的制品(Artifacts)
- Vision and Business case 设想和商业用例
- Use-case Model 用例模型——按功能需求,在初始阶段确定大部分用例名并详细描述10%的用例
- Supplementary Specification 补充性规格说明——考虑对架构会产生主要影响的非功能性需求
- Glossary 词汇表——描述领域术语和数据字典
- Risk list and Risk Management Plan 风险列表和风险管理计划
- Prototypes and proof-of-concepts 原型和概念证明
- Iterations Plan 迭代计划
- Phase Plan and Software Development Plan 阶段计划和软件开发计划
- Development Case 开发用例
chapter6
1、什么是用例
用例是文本形式的情节描述,说明某参与者使用系统实现某些目标
用例图:P68
2、用例的组成
| 用例组成 | 注释 |
|---|---|
| 用例名称 | 动词开始 |
| 范围Scope | 归属的系统 |
| 级别 | 用户目标或子功能 |
| 主要参与者Actor | |
| 涉众及关注点Stakeholder and Interests | 用例涉及到哪些用户以及他们的利益,例如管理员希望能快速、准确添加数据并且没有错误发生 |
| 前置条件 Preconditions | 用例开始前必须为真的条件,例如用户必须已登录 |
| 后置条件 Postconditions | 用例完成必须满足的条件,例如库存信息被更新 |
| 主成功场景 Main Success Secnrio | 用例主事件流 |
| 拓展 Extensions | 对主事件流的拓展,例如密码错误时会发生的事件流 |
| 特殊需求 | 用例相关的非功能性需求,例如界面支持中英文、响应时间小于多少秒 |
参考文献
(美)Carig Larman著. UML模式和应用(原书第三版)[M]. 李洋等译. 机械工业出版社, 2006-05
UML学习笔记—基本概念和初始阶段的更多相关文章
- Oracle RAC学习笔记:基本概念及入门
Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章] oracle 10g real applica ...
- Java IO学习笔记:概念与原理
Java IO学习笔记:概念与原理 一.概念 Java中对文件的操作是以流的方式进行的.流是Java内存中的一组有序数据序列.Java将数据从源(文件.内存.键盘.网络)读入到内存 中,形成了 ...
- jQuery学习笔记之概念(1)
jQuery学习笔记之概念(1) ----------------------学习目录-------------------- 1.概念 2.特点 3.选择器 4.DOM操作 5.事件 6.jQuer ...
- UML学习笔记:类图
UML学习笔记:类图 有些问题,不去解决,就永远都是问题! 类图 类图(Class Diagrame)是描述类.接口以及它们之间关系的图,用来显示系统中各个类的静态结构. 类图包含2种元素:类.接口, ...
- UML学习笔记:活动图
UML学习笔记:活动图 活动图 活动图是UML中描述系统动态行为的图之一,用于展现参与行为的类的活动或动作.在UML里,活动图很类似于流程图,但是有一些区别: 活动图着重表现系统行为,描述对象活动的顺 ...
- tensorflow学习笔记——常见概念的整理
TensorFlow的名字中已经说明了它最重要的两个概念——Tensor和Flow.Tensor就是张量,张量这个概念在数学或者物理学中可以有不同的解释,但是这里我们不强调它本身的含义.在Tensor ...
- AngularJs学习笔记--concepts(概念)
原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...
- UML和模式应用4:初始阶段(4)--需求制品之用例模型模板示例
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...
- UML和模式应用4:初始阶段(3)--需求制品之用例模型
1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...
随机推荐
- isinstance用法
''' 作用:来判断一个对象是否是一个已知的类型. 其第一个参数(object)为对象,第二个参数(type)为类型名(int...)或类型名的一个列表((int,list,float)是一个列表). ...
- 微信小程序踩坑之前端问题处理篇
近期完成了一个小程序,自己做的前后端开发.真是惨哭我了o(╥﹏╥)o,下面几点希望大家可以避雷. 首先,想先介绍一下我遇到问题的解决思路: 1.先在postman调试接口,看数据获取是否正常, 2.在 ...
- 006.OpenShift持久性存储
一 持久存储 1.1 持久存储概述 默认情况下,运行容器使用容器内的临时存储.Pods由一个或多个容器组成,这些容器一起部署,共享相同的存储和其他资源,可以在任何时候创建.启动.停止或销毁.使用临时存 ...
- 12.DRF-节流
Django rest framework源码分析(3)----节流 添加节流 自定义节流的方法 限制60s内只能访问3次 (1)API文件夹下面新建throttle.py,代码如下: # utils ...
- angular 接入 IdentityServer4
angular 接入 IdentityServer4 Intro 最近把活动室预约的项目做了一个升级,预约活动室需要登录才能预约,并用 IdentityServer4 做了一个统一的登录注册中心,这样 ...
- 为什么说String是线程安全的
String是final修饰的类,是不可变的,所以是线程安全的. 一.Java String类为什么是final的? 1.为了实现字符串池 2.为了线程安全 3.为了实现String可以创建HashC ...
- 一不小心,我就上传了 279674 字的 MySQL 学习资料到 github 上了
自从2019年11月我们出版了<千金良方--MySQL 性能优化金字塔法则>一书之后,持续不断有人来询问我MySQL 4 个系统字典库相关的问题,因为篇幅原因,书中并没有完整收录4个字典库 ...
- 使用迭代器模式批量获得数据(C#实现)
先说一下项目的背景,以前曾经做过一个项目,根据Excel中的数据批量的到网页上抓取数据,将抓取到的数据批量的回填到Excel中.这个Excel中有很多行的记录(多的时候会有好几千行),每一行数据存储能 ...
- 【转载】张一鸣:为什么 BAT 挖不走我们的人才?
很多企业失败的时候,总说是政策的变化.市场的变化.消费者需求的变化.技术发展的变化等等,导致了失败,其实这都是瞎说,归根结底还是人的原因,都是因为你招的人不行.可见,人才对于一个企业的重要性. 互联网 ...
- PID各环节的意义和功能,自带PID的matlab编程实例
这是PID的标准形式包括比例/积分/微分三部分,e为偏差 下面我们分析三个环节的作用,设:当前系统状态A,目标状态B, e=B-A,初始状态e>0 (以下是个人的理解,欢迎读者评论) 1 比例环 ...