UP与瀑布模型
软件开发过程(Software development process)描述了构造、部署以及维护软件的方式。(就是先做什么后做什么)
统一过程(The Unified Software Development Process)UP是一种流行的构造面向对象系统的迭代软件开发过程。
Rational统一过程(Rational Unified Process,RUP)是对统一过程(RP)的详细精化,并且已经被广泛采纳。
UP中的三个概念:
- 以构架为中心(就是各种模型)
- 用例驱动(确定用户使用软件来干什么,怎么用)
- 迭代和增量式开发
瀑布生命周期
- 试图在编程之前定义所有或大部分需求;
- 而且通常于编程之前创建出完整的设计;
- 试图在开始前定义“可靠的”计划或时间表;

但在很多的开发公司还在使用,是由于现实情况的需要。(在签订合同时有都明确规定,什么时候提供需求分析文档及设计文档等)
迭代和增量式开发

四个阶段:初始,细化,构造,交付(逐步演进)
- 在初始阶段:最重要的20%的需求来进行分析,建立用例模型,做需求【20%需求】把用户重点需求详细列出来,并行其他的工作比如根据程序员用什么技术,平台,等等并构建这些环境把各个项目的大体过程整理好【大约2星期】
- 在细化阶段:做其他80%的需求用用例的方式分析需求设计,持续地与客户沟通(需求+分析+设计(有多次迭代))
- 在构造阶段:编码+测试
- 交付阶段:测试+交付。
UML中的重要元素-表示法,UML包括:
事物(某种东西)
- 结构:类(描述概念)、接口(功能性描述)、构件(软件的模块)、节点(描述事个系统的部署结构)等
- 行为:交互(消息)、状态等
- 分组:包(用来组织其他事物的一种概念)、子系统(如权限管理系统、)等
- 注释:注释(图里未尽示意用注释来表示)
关系
- 依赖(公文系统、权限系统)
- 关联(聚合、组合)(任何一个公司都有多个部门,每个部分有多个人,)、
- 泛化
- 实现
图(表示从不同角度观察系统)
- 用例图
- 交互图(顺序图、协作图)
- 类图
- 活动图
- 状态图
扩展机制
- Stereotype
- Tagged Value
- Constraint
类图示例:

用例图示例:

活动图示例:

状态图:

UP与瀑布模型的更多相关文章
- 10. Software, Software Engineering, water fall (瀑布模型),Code Complete等名词的来源
①.Software-软件”一词是20世纪60年代才出现的,软件Software——1958年由贝尔实验室的著名统计学家John Tukey 提出软件与硬件一起构成完整的计算机系统,它们是相互依存,缺 ...
- 瀑布模型,(增量开发)渐增式开发,原型化开发,统一过程模型(RUP)
瀑布模型:设计在开发阶段 瀑布模型有以下优点 1)为项目提供了按阶段划分的检查点. 2)当前一阶段完成后,您只需要去关注后续阶段. 3)可在迭代模型中应用瀑布模型. 增量迭代应用于瀑布模型.迭代1解决 ...
- 瀑布模型&螺旋模型
软件开发模型:1.瀑布模型1)软件概念阶段 用户需求2)需求分析 软件需求3)架构设计 架构文档4)详细设计 模型设计5)编码阶段 代码文档6)测试阶段瀑布模型的特点是在每个阶段的工作都清晰详尽,容易 ...
- 敏捷软件开发VS传统软件工程
敏捷软件开发:又称敏捷开发,是一种从1990年代开始逐渐引起广泛关注的一些新兴软件开发方法,是一种应对快速变化的需求的一种软件开发能力. 与传统软件工程相比,它们的具体名称.理念.过程.术语都不尽相同 ...
- Atitit 软件工程概览attilax总结
Atitit 软件工程概览attilax总结 1.1. .2 软件工程的发展 进一步地,结合人类发展史和计算机世界演化史来考察软件工程的发展史. 表2 软件工程过程模型 表2将软件工程的主要过程模型做 ...
- 软件工程的引入:Scrum开发框架总结
俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习!涉及的知识点如下: 软件工程概念 敏捷开发过程scrum 一.什么是软件工程?请用一句话描述. 软件工程是一门研究性的学科:它用工程化 ...
- [转]如何循序渐进向dotnet架构师发展
微软的DotNet开发绝对是属于那种入门容易提高难的技术.而要能够成为DotNet架构师没有三年或更长时间的编码积累基本上是不可能的.特别是在大 型软件项目中,架构师是项目核心成员,承上启下,因此RU ...
- 传统瀑布式&敏捷开发
---传统瀑布式 瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求.分析.设计.编码.测试的步骤顺序进行. 步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等. 瀑布式 ...
- Apworks框架实战(三):单元测试与持续集成
虽然这部分内容并没有过多地讨论Apworks框架的使用,但这部分内容非常重要,它与Apworks框架本身的设计紧密相关,也是进一步了解Apworks框架设计的必修课. 单元测试与持续集成概述 在敏捷开 ...
随机推荐
- 算法笔记_021:广度优先查找(Java)
目录 1 问题描述 2 解决方案 2.1 蛮力法 1 问题描述 广度优先查找(Breadth-first Search,BFS)按照一种同心圆的方式,首先访问所有和初始顶点邻接的顶点,然后是离它两条边 ...
- Jquery重新学习之九[Ajax运用总结C]
前两篇文章主要介绍Jquery如何利用Ajax进行操作数据,主要介绍调用的方法:其中Jquery.ajax()是Jquery中最底层的方法:Jquery还定义的一个方法跟几个事件为Jquery.aja ...
- Jquery重新学习之五[操作JSON数据]
Jquery操作Json格式的数据在我们平时的项目中也经常运用:最近看Jquery权威指南中就有一章节是对这方面的整理总结:最后通过一个Asp.net结合一般处理程序ashx的实例,基本上能满足项目中 ...
- tcp 代理的作用
http://www.h3c.com.cn/Service/Document_Center/IP_Security/FW_VPN/F1000-E/Configure/Operation_Manual/ ...
- 【jQuery获取下拉框select、单选框radio、input普通框的值和checkbox选中的个数】
radio单选框:name属性相同 <input type="radio" id="sp_type" name="p_type" va ...
- 如何使用Android MediaStore裁剪大图片
译者按:在外企工作的半年多中花了不少时间在国外的网站上搜寻资料,其中有一些相当有含金量的文章,我会陆陆续续翻译成中文,与大家共享之.初次翻译,“信达雅”三境界恐怕只到信的层次,望大家见谅! 这篇文章相 ...
- unity,List元素第一个成员最好是string类型
例如 List<CmyObj> m_list=new List<CmyObj>(); class CmyObj{ string m_name; int m_value; } c ...
- yii2中的资源....
1.模板文件中访问view和controller,view : $this,controller :$this->context 模板文件显示流程: 1.控制器会在render中,把控制器本身, ...
- shell学习笔记之命令(四)
命令的类型:1>.外部命令:在命令提示符中执行的普通命令.2>.内置命令:内置命令是在shell内部实现的. 1.break命令 #!/bin/sh rm -rf fred* echo & ...
- ubuntu 15.04
修改更新源: sudo vim /etc/apt/sources.list 删除里面所有内容 方法1: 按ggdG 方法2: :%d 替换源 搜狐源: deb http://mirrors.sohu. ...