天天看点

uml开发过程转载自网易博客

UML&开发过程  

UML学习

学习UML的三个阶段,就是要解决三个问题:

1.       如何使用UML画图?(How)

2.       为什么要使用UML?(Why)

3.       什么时候使用UML?(When)

三个问题对应三个阶段(Stage):

Stage1:学习UML的基本语法,包括各种UML的大图适用情形。目标是能够看懂UML图,理解模型所表达的意思,能够使用UML工具表达简单的建模思想。

Stage2:深入学习UML语法,理解UML建模的功能特征,体会UML建模给软件设计及开发过程带来的好处。目标是能够在实际应用中灵活地扩展和修改它。

Stage3:深入学习UML和开发过程,将UML与开发过程结合起来。目的是找到UML发挥威力的地方施展开来。

开发过程方法学(Methodology)就是开发过程中经历的步骤的结构和性质。

开发过程方法学:

1.       瀑布模型(waterfall)

四个阶段:分析Analysis,设计Design,编码Coding,部署Deployment

缺点:信息共享少,过程不能回溯到早期阶段,不利于问题的逐步理解

2.       现代开发过程

1)  强调阶段的无缝集成

2)  项目由多人协作完成,按角色分工

系统分析员:与客户交流,理解业务领域问题;

系统架构师:设计问题的解决方案;

程序设计人员:将解决方案编制成代码,交付可执行的目标系统;

系统工程师:将目标系统部署到硬件上运行;

项目经理:监控开发过程进度以及形成职责跟踪的工作产品,向客户报告项目的最新进展;

3)  GRAPPLE(Guidelines for Rapid APPLication Engineering)快速应用工程指导原则,一个自适应的、灵活的开发思想。

五个段(Segment)组成一个过程RADDD(或RAD3):

1.       需求收集(Requirements Gathering)

2.       分析(Analysis)

3.       设计(Design)

4.       开发(Development)

5.       部署(Deployment)

每个段有一些动作(Action)组成,每个动作产生一个工作产品,每个动都是其特定执行者(Player)的职责。

GRAPPLE--RADDD
动作 工作产品 执行者 参与者

需求收集

Requirements Gathering

发现领域过程

1.业务领域词汇

2.一组能够捕获业务过程步骤和判定点的活动图

系统分析员

领域专家

目标系统的使用者

业务知识人员

领域分析

1.深刻理解业务领域概念

2.构建高层类图

3.会谈记录

系统分析员

领域专家

对象建模人员

目标系统的使用者

业务知识人员

识别协助系统

1.发现依赖的老系统

2.新系统部署图

开发组成员

企业IT管理员

目标系统的使用者

发现系统需求

1.JAD session(Joint Application Development session)会议记录

2.包图(系统功能的高层领域)及其中的用例

开发组成员

客户组织决策者

可能的用户

会议协调者

提交结果给客户

1.整理并提交上述工作产品给客户

2.确认工作产品

3.成本估算

项目经理 客户

分析

Analysis

理解系统用法

1.一组用例图(高层用例分析)

2.JAD session会议记录

用例分析人员

开发组成员

客户
充实用例

1.JAD session会议记录

2.用例步骤序列的文本描述

用例分析人员

开发组成员

用户
细化类图 细化的类图 对象建模者 用户
分析对象状态变化 状态图 对象建模者 用户
定义对象之间的交互

1.序列图

2.协助图

3.状态图

对象建模者 开发组成员
分析与协作系统的集成

1.详细的系统部署图

2.数据模型

系统工程师

数据库分析员

开发组成员

设计

Design

开发和细化对象图

1.对象图

2.活动图

程序设计人员 开发组成员
开发构件图 构件图 程序设计人员 开发组成员
制定部署计划 部署图(明确节点中的构件) 系统工程师  
设计和开发用户界面原型

1.纸质GUI原型

2.屏幕GUI原型

程序设计人员

开发组成员

客户

测试设计 依据用例构建测试脚本 测试专家 开发组成员
编制文档

1.设计文档

2.测试文档

3.开发文档(规范,环境,说明)

3.使用文档

文档专员

开发人员

开发组成员

 开发

Development

编制代码 代码 程序员  
测试代码 测试结果

程序员

测试人员

 
构建GUI和GUI带代码的连接及测试 带GUI的功能系统

程序员

GUI专家

 
完成文档 开发和测试文档

程序员

文档专员

 

部署

Deployment

编制备份和恢复计划 备份和恢复计划 系统工程师 开发组成员
在硬件中安装系统 完全部署好的计算机系统 系统工程师 开发组成员
测试安装后的系统 测试结果 开发组成员  

继续阅读