/**
* 转载请注明作者longdick http://longdick.iteye.com
*
*/
相关帖子:
1、人人都是领域专家-用例图
2、人人都是领域专家-活动图
3、人人都是领域专家-类图
4、人人都是领域专家-顺序图
5、人人都是领域专家-类图关系化
6、人人都是领域专家-类图关系说明
经过了领域专家的辛勤劳作,我们终于得到了精准的需求文档、形象的用例图和每个用例的活动图。
接下来轮到架构师出场,开始轰轰烈烈的分析阶段。
分析阶段最主要的产出是类图和顺序图。
为了简化问题,我们使用最后一次迭代的产出用例图(没有将用例进一步精化)。
如果使用敏捷迭代开发,一开始分析阶段倾向于选择风险最大的用例优先开发,这个风险的评估在架构人员拿到用例文档以后就可以开始了。在这个例子里,我们倾向于选择“购买商品”为风险最大用例,“登录”用例次之。so,接下来的分析阶段,我们只关注“登录”和“购买商品”这两个用例。
接下来分析这个用例图所有的参与者和用例,将实体识别出来添加到类图中。这往往是画类图的第一步,也是较简单的部分。既然UML主要用于面向对象语言建模,领域中的实体就是对应着语言里的对象。
我们分析过程如下:
- 参与者是很明显的实体,因此会员,vip会员都是实体;
- 购买商品用例明显涉及到商品实体;
- 要购买商品肯定会生成一个订单实体;
- 支付时还要涉及到账户实体;
先想到这么多,深入分析的话会发现用例中其实还有其他实体,但是,按照敏捷的思想,我们在第一个迭代中不用求全责备。况且,这个教程是用来说明方法过程,力求简单,并没有强求模型的完整性。
UML类图的最佳实践里包含三种久经考验的类类型:
- 实体类(entity)
- 控制类(control)
- 边界类(boundary)
当然这只是模型意义上的类型,和语言的类没有关系。
实体类我们已经了解了,边界类是用户和控制类的媒介也就是用户接口,控制类是边界类和实体类的媒介。
OK,其实就是分层的概念了好吧。你可以理解成MVC差不多。
一个用例就可以抽取成为一个控制类,命名的方式可以是用例名+后缀。比如登录用例名是Login,我们可以用LoginWorkflow来描述登录控制类。后缀名可以任意取,比如Workflow,Controller,Service等等都可以,但至少在一个模型中要一致。
边界类也是如此,比如商品购买用例,我们采用用例名PurchaseStuffs+后缀的方式,后缀可以选择采用UI、View等等。
我们暂时只对登录和商品购买这两个用例进行建模。得到的类图如下。
类中的方法和属性可以在以后迭代中逐步补完。在这里先列出一些比较有可能用到的方法,属性可以慢慢来。
类图的改进和细化
到现在我们在类图上罗列了一堆游离的类,我们可以在已知的条件下改进这个类图比如说Member类和VIPMember类可以抽离出一个共有的接口或有默认实现的父类等等。这个类图的改进还包括描述清楚类之间的关系。先别急着加,我们可以等画顺序图的时候再来考虑类间的关系。
- 大小: 67.8 KB
- 大小: 17.9 KB
- 大小: 52.8 KB
- 大小: 59.8 KB
- 大小: 46.5 KB
- 大小: 47.8 KB
- 大小: 137.1 KB
分享到:
相关推荐
UML-3-类图解析.pptx
【wpm-类图1】相关知识点解析 在软件设计中,类图是UML(统一建模语言)中的一种图形表示,用于描述系统中的类、接口以及它们之间的关系。根据给定的描述和标签,我们可以看到这似乎是一个关于文档(doc文档)的...
java————23种设计模式-UML-类图及对应示例代码.doc
网上购物系统详细精炼版(UML-类图-时序图-数据流图).pdf
* 概念层类图:描述应用领域中的概念,这些概念与实现它们的类有联系,通常没有直接的映射关系。 * 说明层类图:考察的是类的接口部分,而不是实现部分,可能因为实现环境、运行特性等有多种不同的实现。 * 实现层...
QT5的类图,包含了QT的所有的类,以及类之间的关系,非常全面,非常清晰,值得收藏。
starUML 类图 类图 类图 类图 类图
"设计模式-UML类图" 设计模式是软件开发中的一种解决方案,它提供了一种通用的解决方案来解决软件设计中常见的问题。UML(Unified Modeling Language)是一种标准化的建模语言,用于描述软件系统的结构和行为。下面...
UML(统一建模语言)是面向对象设计和建模的一种标准化工具,其中类图是UML的核心部分,用于描述系统中的类、接口及其之间的关系。 在信息系统分析与设计中,类图扮演着至关重要的角色。它能够清晰地展示系统的静态...
面向对象方法是软件开发领域中应用广泛的编程范式,它的核心思想是将现实世界抽象为对象,通过对象的组合和交互来构建复杂的软件系统。该方法强调封装、继承和多态性,不仅提高了程序的模块化程度,也使软件更容易...
### UML基础:类图详解 #### 一、引言 在《UML基础》系列文章的第三部分中,我们将深入探讨类图(Class Diagram)。类图是UML(统一建模语言)中最常用且最重要的图形之一,它主要用于描述系统的静态结构。尽管很多...
在商品销售系统中,类图是一种重要的建模工具,它用于描绘系统中各类实体的结构、属性和行为,以及它们之间的关系。在这个系统中,我们主要关注以下几个关键类: 1. **Clients(客户)**: 客户类包含了关于用户的...
软件需求分析与建模-类图和对象图 软件需求分析与建模是软件开发过程中的一个重要阶段,它们之间存在着紧密的联系,都是...类图和对象图的应用非常广泛,例如,在信息系统、技术系统、软件系统等领域都有广泛的应用。
结构型模式 :适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式 行为型模式 :策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者...
类图是UML(Unified Modeling Language,统一建模语言)中的一个重要概念,它主要用于描绘软件系统中的类、接口以及它们之间的静态结构和关系。类图是系统分析和设计过程中的关键工具,它从易于商务伙伴理解的用例...
典型MVP架构
### UML学习总结—类图、序列图 #### UML简介 UML(Unified Modeling Language,统一建模语言)是一种标准化的图形表示方法,用于软件密集型系统的可视化、描述、构造以及文档化工作。UML提供了多种图表工具,能够...
UML(统一建模语言)是软件开发过程中用于可视化系统设计的一种标准化图形表示。它包含了九种不同的建模图,而类图是其中最基础且常用的一...因此,熟练掌握UML类图的绘制和解析对于任何IT专业人员来说都是至关重要的。
类图和对象图是UML(统一建模语言)中用于描绘系统静态结构的重要工具。类图主要关注系统的抽象层次,展示类、接口以及其他模型元素之间的关系,如依赖、泛化、关联和实现关系。而对象图则是类图的具体实例化,它...