- 浏览: 2109225 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1878)
- [网站分类]ASP.NET (141)
- [网站分类]C# (80)
- [随笔分类]NET知识库 (80)
- [随笔分类]摘抄文字[非技术] (3)
- [随笔分类]养生保健 (4)
- [网站分类]读书区 (16)
- [随笔分类]赚钱 (7)
- [网站分类].NET新手区 (233)
- [随笔分类]网站 (75)
- [网站分类]企业信息化其他 (4)
- [网站分类]首页候选区 (34)
- [网站分类]转载区 (12)
- [网站分类]SQL Server (16)
- [网站分类]程序人生 (7)
- [网站分类]WinForm (2)
- [随笔分类]错误集 (12)
- [网站分类]JavaScript (3)
- [随笔分类]小说九鼎记 (69)
- [随笔分类]技术文章 (15)
- [网站分类]求职面试 (3)
- [网站分类]其他技术区 (6)
- [网站分类]非技术区 (10)
- [发布至博客园首页] (5)
- [网站分类]jQuery (6)
- [网站分类].NET精华区 (6)
- [网站分类]Html/Css (10)
- [随笔分类]加速及SEO (10)
- [网站分类]Google开发 (4)
- [随笔分类]旅游备注 (2)
- [网站分类]架构设计 (3)
- [网站分类]Linux (23)
- [随笔分类]重要注册 (3)
- [随笔分类]Linux+PHP (10)
- [网站分类]PHP (11)
- [网站分类]VS2010 (2)
- [网站分类]CLR (1)
- [网站分类]C++ (1)
- [网站分类]ASP.NET MVC (2)
- [网站分类]项目与团队管理 (1)
- [随笔分类]个人总结 (1)
- [随笔分类]问题集 (3)
- [网站分类]代码与软件发布 (1)
- [网站分类]Android开发 (1)
- [网站分类]MySQL (1)
- [网站分类]开源研究 (6)
- ddd (0)
- 好久没写blog了 (0)
- sqlserver (2)
最新评论
-
JamesLiuX:
博主,能组个队么,我是Freelancer新手。
Freelancer.com(原GAF – GetAFreelancer)帐户里的钱如何取出? -
yw10260609:
我认为在混淆前,最好把相关代码备份一下比较好,不然项目完成后, ...
DotFuscator 小记 -
日月葬花魂:
大哥 能 加我个QQ 交流一下嘛 ?51264722 我Q ...
web应用程序和Web网站区别 -
iaimg:
我想问下嵌入delphi写的程序总是出现窗体后面感觉有个主窗体 ...
C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部 -
iaimg:
代码地址下不了啊!
C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部
一、为什么要学习UML
二、UML的历史
三、UML的特点
四、UML中的视图
五、UML建模工具
六、UML的应用领域
七、UML的构成
1、需求阶段如何书写Use Case
2、设计阶段如何画用例图(Use-Case Diagram)
3、类与类之间的关系图(Class Diagram,UML图)
4、UML建模之活动图介绍(Activity Diagram)
5、UML建模之状态图(Statechart Diagram)
6、UML建模之时序图(Sequence Diagram)
7、UML建模之业务处理模型(Business Process Model,BPM)
8、UML建模之数据建模(Data Model Diagram)
八、总结
一、为什么要学习UML
UML是Unified Modeling Language(统一建模语言)的简称。UML是对软件密集型系统中的制品进行可视化、详述、构造和文档化的语言。制品{Artifact}是指软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等。
Ø UML建模可以达到以下目的:
Ø 使用模型可以更好地理解问题
Ø 使用模型可以加强人员之间的沟通
Ø 使用模型可以更早地发现错误或疏漏的地方
Ø 使用模型可以获得设计结果
Ø 模型为最后的代码提供依据
二、UML的历史
1997年,OMG组织(Object Management Group对象管理组织)发布了统一建模语言(Unified Modeling Language,UML)。UML的目标之一就是为开发团队提供标准通用的设计语言来开发和构建计算机应用。UML提出了一套IT专业人员期待多年的统一的标准建模符号。通过使用UML,这些人员能够阅读和交流系统架构和设计规划--就像建筑工人多年来所使用的建筑设计图一样。
2003年,UML已经获得了业界的认同。在所见过的专业人员的简历中,75%都声称具备UML的知识。然而,在同绝大多数求职人员面谈之后,可以明显地看出他们并不真正了解UML。通常地,他们将UML用作一个术语,或对UML一知半解。大家对UML缺乏理解的这种状况,促进我撰写这篇关于UML 1.4的快速入门文章。当阅读完本文时,您还不具备足够的知识可以在简历上声称自己掌握了UML,但是您已具有了进一步钻研该语言的良好起点。
三、UML的特点
Ø UML的主要特点包括:
Ø 统一的标准
Ø 面向对象。UML是支持面向对象软件开发的建模语言。
Ø 可视化、表现能力强
Ø 独立于过程,UML不依赖于特定的软件开发过程。
Ø 概念明确,建模表示法简洁,图形结构清晰,容易掌握和使用。
四、UML中的视图
UML中的视图包括用例视图(Use Case View)、逻辑视图(Logical View)、实现视图(Implementation View)、进程视图(Process View)、部署视图(Deployment View)等,这5个视图被称作”4+1”视图.如下图所示:
逻辑视图。逻辑视图关注功能,不仅包括用户可见的功能,还包括为实现用户功能而必须提供的"辅助功能模块";它们可能是逻辑层、功能模块等。
开发视图。开发视图关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件。开发视图和逻辑视图之间可能存在一定的映射关系:比如逻辑层一般会映射到多个程序包等。
处理视图。处理视图关注进程、线程、对象等运行时概念,以及相关的并发、同步、通信等问题。处理视图和开发视图的关系:开发视图一般偏重程序包在编译时期的静态依赖关系,而这些程序运行起来之后会表现为对象、线程、进程,处理视图比较关注的正是这些运行时单元的交互问题。
物理视图。物理视图关注"目标程序及其依赖的运行库和系统软件"最终如何安装或部署到物理机器,以及如何部署机器和网络来配合软件系统的可靠性、可伸缩性等要求。物理视图和处理视图的关系:处理视图特别关注目标程序的动态执行情况,而物理视图重视目标程序的静态位置问题;物理视图是综合考虑软件系统和整个IT系统相互影响的架构视图。
五、UML建模工具
市面上UML建模工具很多,比较流行的有Rational Rose ,Microsoft Visio、Enterprise Architect 、Visual UML等。《UML建模-面向对象设计》系列文章使用的UML建模工具是Enterprise Architect 7.0,此工具还是比较好用的。
六、UML的应用领域
UML具有很广泛的应用领域,其中最常用的是为软件系统建模,主要领域有:企业信息系统、银行金融系统、电信、交通、国防、航空、零售领域、科学计算、分布式的基于Web的服务。UML还可以用来描述其他非软件系统,比如一个机构的组成和机构的工作流程等等。
七、UML的构成
《UML建模-面向对象设计》系列文章描述了常见的一些UML图,主要包括了用例图(Use Case Diagram)、类图(Class Diagram)、活动图(Activity Diagram)、时序图(Sequence Diagram)、状态图(Statechart Machine Diagram)、部署图(Deployment Diagram)、业务处理模型(Business Process Model)、数据建模(Data Modeling Diagram)等等。
1、需求阶段如何书写Use Case
用例描述文档的书写是系统分析人员对用户需求的深刻理解的体现。是后期时序图和实际开发的重要依据。也可以对作为项目估算的依据,以及根据UC复杂度和开发周期来衡量开发人员的工作效率。因此UC的书写规范及其重要,就工作用的一些经验,比如书写格式、书写内容及其注意事项与大家分享。
2、设计阶段如何画用例图(Use-Case Diagram)
例试图描概括了用例中角色和系统之间的关系,描述了系统功能需求,角色和系统的交互以及系统的反应。是客户和开发人员全貌理解项目需求功能比较好的一个方式,也是后续功能迭代的依据和方向。
3、类与类之间的关系图(Class Diagram,UML图)
本文针对类之间常用的关系进行了简单的描述,主要有:关联关系、泛化、依赖、聚合和组合。
4、UML建模之活动图介绍(Activity Diagram)
活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。活动图能够表示并发活动的情形,活动图是面向对象的。
5、UML建模之状态图(Statechart Diagram)
状态图重点在于描述对象的状态及其状态之间的转移,状态图的基本元素主要有:状态、转移、动作、自身转移、组合状态、进入节点、退出节点、历史状态、并发区域等,状态中的事件分为调用事件(Call)、变化事件(Change)、时间事件(Time)和信号事件(Singal)。最后以实例对状态对进行了分析。
6、UML建模之时序图(Sequence Diagram)
时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。时序图中包括的建模元素主要有:对象(Actor)、生命线(Lifeline)、控制焦点(Focus of control)、消息(Message)等等。最后,以课程创建功能演示一时序图实例。
7、UML建模之业务处理模型(Business Process Model,BPM)
业务处理模型是一组活动的集合,描述了活动从开始到结束在时间或者空间上的顺序,以及输入和输出。业务处理模型最终输出要能够满足业务需要。包括输入、输出、资源、消息和目标等元素。最后以实例进一步说明了业务逻辑模型。
8、UML建模之数据建模(Data Model Diagram)
主要介绍了数据库建模所涉及建模元素,主要包括模式 Schema、主键 Primary、外键 Foreign key、关系 Relationship、约束 constraint、索引 Index、触发器 Trigger、存储过程 Stored Procedure、视图 View等等,并配以实例加以说明。
八、总结
至此,《UML建模-面向对象设计》系列文章已经写完,UML建模也就告一段落,在整理这些文中的过程中,参考了许多国内外有价值的文章,在此对这些文章的作者表示感谢。在写这些文章的过程中也得到园子里朋友的鼓励和支持,是你们的支持和鼓励使的我写文章更加有士气和信心,在此表示感谢。希望《UML建模-面向对象设计》系列文章对园子里的朋友有帮助,并希望园子里的朋友批评指正。后续还会发布一些《Net设计模式》系列的文章,主要是以设计原理,实例,源码的方式说明各个设计模式,请大家关注,再此感谢。
最后以一本UML书中的一个例子结束:
如果以建造房子比喻,那么学习UML的过程,就是学习如何从建筑工人成长为建筑师的过程。一个软件工程师不能简单地只是掌握堆砌砖瓦的技术,还应该有设计高楼大厦的能力。
发表评论
-
where T:new() 是什么意思
2014-04-18 09:26 1396where T:new() 是什么意思 经常看到方法后面 ... -
好久没写blog了
2012-05-21 18:43 2好久没写blog了 -
test
2011-03-19 09:48 786testddddddddddd -
QQ自动发日志分析
2011-03-10 18:15 1228首先列举比较重要的问 ... -
test
2011-02-23 18:03 776test -
test
2011-02-23 17:53 848test -
为啥cnblogs的数据不能导了
2011-02-23 11:03 881为啥cnblogs的数据不能导了内容 -
如何保护.net中的dll文件(防破解、反编译)
2010-07-30 00:28 1451.net是一种建立在虚拟机上执行的语言,它直接生成 MSIL ... -
提搞网站访问速度可做哪些优化
2010-08-08 15:30 1088一、 服务器优化 ... -
ASP.NET(c#)如何判断浏览器是否支持cookies
2010-07-29 09:33 1681实例代码: 下面是写cookie ... -
N点虚拟主机管理系统(For Windows2003/2008)功能及介绍
2010-04-09 11:23 2202N点虚拟主机管理系统是 ... -
使用c#+(datagrid控件)编辑xml文件
2010-04-06 09:13 1122对xml文件的记录进行删除,修改,或增加新记录。 利用了d ... -
HTTP代理模块(HTTP Proxy)
2010-04-04 10:19 3011HTTP代理模块(HTTP Proxy ... -
Error 80040154 retreiving COM Class factory
2010-03-29 09:23 22181.ask: Greetings, I have ... -
petshop4.0 详解之二(数据访问层之数据库访问设计)
2010-03-27 11:08 1041在系列一中,我从整体上分析了PetShop的架构设计,并提及了 ... -
分享十五个最佳jQuery幻灯插件和教程
2010-03-25 09:17 1984<p>在网站前端中使用jQuery库已经变得越来越 ... -
20个软件开发常用设计文档大全下载
2009-08-27 10:22 931搜集了一些软件开发的常用文档,分享给大家 总下载地址: h ... -
asp.net 在线 mp3,wma, avi
2009-09-04 13:58 9041.前台js<script type="tex ... -
sql db link string
2009-09-06 21:52 938SQL Server ODBC Standar ... -
ASP.Net2.0小技巧 保持滚动条的位置 焦点移动到某个控件 $符号轻松的使用FindControl
2009-09-11 11:05 1261您可能不知道的ASP.Net2.0 ...
相关推荐
1、需求阶段如何书写Use Case 2.设计阶段如何画用例图(Use-Case Diagram) 3、类与类之间的关系图(Class Diagram,UML图) .......... 8、UML建模之数据建模(Data Model Diagram)
Uml建模讲义 Uml建模讲义 Uml建模讲义 Uml建模讲义
UML建模技术.pdf
UML建模实例大全主要介绍了UML建模的使用场景,值得一看
UML建模UML建模UML建模UML建模
《UML建模-面向对象设计》系列文章描述了常见的一些UML图,主要包括了用例图(Use Case Diagram)、类图(Class Diagram)、活动图(Activity Diagram)、时序图(Sequence Diagram)、状态图(Statechart Machine ...
包括全套的UML建模图,用例图(3级),类图,顺序图,协作图,状态图,活动图,协作图,部署图。 附有完整的实验报告,报告包括实验内容,需求分析设计方法,思路和主要技术,软件系统建模(包括完整建模图),和三...
UML建模案例分析二网络教学系统UML建模
startUML建模工具 startUML建模工具startUML建模工具startUML建模工具startUML建模工具
UML建模实验设计实验 图书管理系统UML建模实验 网络教学系统UML建模
办公自动化系统UML建模.pdf办公自动化系统UML建模.pdf办公自动化系统UML建模.pdf办公自动化系统UML建模.pdf办公自动化系统UML建模.pdf办公自动化系统UML建模.pdf
UML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML建模ppt.rarUML...
考试成绩管理系统,UML建模 用 Rational Rose 工具为考试成绩管理系统统进行建模
UML建模的误区UML建模的误区UML建模的误区UML建模的误区
超市UML建模.rar 超市UML建模.rar
汽车租赁系统系统,UML建模 用 Rational Rose 工具为汽车租赁系统系统统进行建
vs 2008 c# uml 建模工具,和vs2008结合的很好的uml建模工具
UML建模案例UML建模案例UML建模案例UML建模案例UML建模案例
UML 建模 面向对象 报告,关于东方商城和校友录案例的UML详细建模报告
3.1.2理解UML建模 3.2UML的特点 3.3UML的结构 3.3.1UML的事物 3.3.2UML的关系 3.4UML的视图 3.4.1用例视图 3.4.2逻辑视图 3.4.3并发视图 3.4.4组件视图 3.4.5部署视图 3.5UML图形符号 3.5.1用例图 ...