1、信息系统设计与应用,第5章 面向对象的系统开发方法,第5章 面向对象的系统开发方法,本章主要内容:面向对象的系统开发方法的特点统一建模语言UML统一系统开发过程UP,第5章 面向对象的系统开发方法5.1 面向对象系统开发方法的特点,1结构化方法的局限性2面向对象系统开发方法的特点更符合人们认识事物的思维方式;利于软件的部件化和标准化;一定程度上体现了可视化开发过程;实现软件可重用,提高系统开发效率;实现了数据和过程、数据与算法的融合;考虑的是“做什么”,而不是“怎么做”;容易的用户沟通,从而确定系统需求;采用自下而上的设计方法,先产生各种部件,然后由部件做成框架,进而产生整个应用程序;开发的系
2、统更易于使用、维护和扩充。,第5章 面向对象的系统开发方法5.2统一建模语言UML,5.2.1 UML的定义包括UML语义和UML表示法两个部分。5.2.2“统一”的含义贯穿整个的信息系统开发生命周期;整个应用领域(从嵌入式系统到决策支持); 独立于语言和平台; 支持很多软件工程过程;内部应用上保持一致和统一; 从历史上统一了多种OO语言。5.2.3 UML的发展阶段,第5章 面向对象的系统开发方法5.3 UML的基本元素,UML模型包括两类:静态模型(描述系统结构)动态模型(描述系统行为)5.3.1 UML的构造块1物件图5-1 UML中主要物件的图符,第5章 面向对象的系统开发方法5.3
3、UML的基本元素,5.3.1 UML的构造块2关系图5-2 主要的关联图符,第5章 面向对象的系统开发方法5.3 UML的基本元素,5.3.1 UML的构造块3图(1)用例图 (2)静态图(3)行为图 图5-3 销售管理信息系统的用例图(4)交互图(5)实现图,第5章 面向对象的系统开发方法5.3 UML的基本元素,5.3.2规则命名:为物件、关系和图起名;范围:给一个名称以特定含义的语境;可见性:如何让其他人看见或使用名称;完整性:事物如何正确、一致地相互联系;执行:运行或模拟动态模型的含义是什么。,第5章 面向对象的系统开发方法5.3 UML的基本元素,5.3.3公共机制(1)详述(2)修
4、饰(3)通用划分(4)扩展机制5.3.4 UML的架构(1)逻辑视图 (2)进程视图(3)实现视图 (4)部署视图 (5)用例视图,第5章 面向对象的系统开发方法5.4统一开发过程UP,5.4.1统一过程的概述5种核心工作流是:需求(R)分析(A)设计(D)实现(I)测试(T) 图5-5 UP的过程模型,第5章 面向对象的系统开发方法5.4统一开发过程UP,5.4.2 各阶段的主要任务1初始阶段主要工作建立可行性、创建业务用例、捕获基本需求、识别关键任务。2细化阶段主要工作精化风险评估,定义质量属性,捕获80%的功能需求用例,为构造阶段间详细计划,计划包括资源、时间、设备、人员和成本标价。,第
5、5章 面向对象的系统开发方法5.4统一开发过程UP,5.4.2 各阶段的主要任务3构造阶段目标:完成所有需求、分析和设计,把在细化阶段产生的架构基线变成最终系统。 4移交阶段主要工作修复缺陷;为用户场地准备新软件;为用户场地的操作剪裁软件;如果不可预见的问题出现,修改软件;创作用户手册和其他文档;提供用户咨询。,第5章 面向对象的系统开发方法5.4统一开发过程UP,5.4.3统一过程工作流模型图5-6统一过程的工作流及相应模型,第5章 面向对象的系统开发方法5.4统一开发过程UP,5.4.4统一开发过程的特点3个关键特征,也被称为3个基本公理,即:用例和风险驱动;以架构为中心的;迭代和增量的。
6、,第5章 面向对象的系统开发方法5.5基于UML的系统开发,5.5.1 基于UML的需求分析1需求的捕获(1)捕获功能性需求 (2)捕获非功能性需求 2构建系统的用例模型3定义系统边界4详述用例,第5章 面向对象的系统开发方法5.5基于UML的系统开发,5.5.2 基于UML的系统分析1分析类(1)边界类用于建立系统与其参与者(即用户和外部系统)之间交互的模型。 (2)实体类用于对持久的信息建模。(3)控制类代表协调、排序、事物处理以及对其他对象的控制,经常用于封装与某个具体用例有关的控制。,第5章 面向对象的系统开发方法5.5基于UML的系统开发,5.5.2 基于UML的系统分析2如何寻找分
7、析类(1)名词/动词分析是分析文本尝试找出类、属性和职责的非常简单的方法。 (2)CRC分别表示类、职责和协作,使用有力的分析工具便笺。3步骤(1)收集信息(2)分析信息,第5章 面向对象的系统开发方法5.5基于UML的系统开发,5.5.2 基于UML的系统分析4UML类符号5关系(1)关联(2)依赖(3)泛化6用例实现分析7分析包,第5章 面向对象的系统开发方法5.5基于UML的系统开发,5.5.3 基于UML的系统设计1设计模型2实施模型5.5.4基于UML的系统实现1实现模型2系统实施模型图5-10 一个实施图示例,第5章 面向对象的系统开发方法5.6基于UML的开发工具,5.6.1 VISIO 20031基本功能2支持逆向软件工程5.6.2 Rational ROSE1应用2Rational Rose的特点,5.7小结,UML和统一开发过程是本章研究的主要对象。本章首先简单地介绍了UML的发展历程和应用领域,然后介绍了基于UML的统一开发过程。1本章学习目标了解UML的发展历程和应用领域;掌握UML的基本概念;掌握基于UML的统一开发过程。2本章主要内容3重要术语,