UML9787030444677邹盛荣03统一建模语言201 5. 09

上传人:w****i 文档编号:90926750 上传时间:2019-06-20 格式:PPT 页数:51 大小:864.50KB
返回 下载 相关 举报
UML9787030444677邹盛荣03统一建模语言201 5. 09_第1页
第1页 / 共51页
UML9787030444677邹盛荣03统一建模语言201 5. 09_第2页
第2页 / 共51页
UML9787030444677邹盛荣03统一建模语言201 5. 09_第3页
第3页 / 共51页
UML9787030444677邹盛荣03统一建模语言201 5. 09_第4页
第4页 / 共51页
UML9787030444677邹盛荣03统一建模语言201 5. 09_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《UML9787030444677邹盛荣03统一建模语言201 5. 09》由会员分享,可在线阅读,更多相关《UML9787030444677邹盛荣03统一建模语言201 5. 09(51页珍藏版)》请在金锄头文库上搜索。

1、UML面向对象需求分析与建模教程,第3章 UML统一建模语言 邹盛荣,当当网: http:/ 建模语言三个类别,1,3.2 UML特点,3.3 网络教学系统案例UML简单图示,3,2,3.3.1 系统功能 3.3.2 系统的UML建模程,4,3.1 建模语言三个类别,系统建模提供了我们用计算机思考现实系统的一种方法,如何表示成我们计算机软件开发人员能够看懂并使用的模型,建立的模型需要用正确的语言来表达,在语言的表达形式上,分成三类: 非形式化的 半形式化的 形式化的 UML是一种半形式化的建模语言,是系统建模的标准。,模型与建模,软件系统是对现实需求的计算机程序模拟,建模是为软件开发建立蓝图描

2、绘各阶段的计划、以及收集整理各阶段的制品(输出)。 软件模型是对计算机软件系统的所有表达,它是对软件系统的一切描述,包括软件过程中各阶段的各种描述文档、规约、图形表示体系、编码阶段的所有代码、交付给用户的最终产品以及技术手册等。 在解决问题之前必须首先理解所要解决的问题。对问题理解得越透彻,就越容易解决它。为了更好地理解问题,人们常常采用建立问题模型的方法。 所谓模型,就是为了理解事物而对事物作出的一种抽象,为什么要建模,建立大厦和建立茅草屋的区别在于前者有计划性和目的性 模型可以帮助人们对已有遗产系统的理解 模型的建立加深对新系统在开发过程中不断深入的理解 模型可以重用(文档重用、经验重用)

3、,误区一:建模就等于是写文档,建模很象是作计划:作计划的价值在于计划编制的过程中而非计划本身,而计划体现为一种文档。 “模型”与“文档”这二者在概念上是有关系的,可以认为,模型体现为文档,但模型的价值体现在建立模型的过程之中而非模型本身。 模型始终处于修改增加删除的动态变化过程中,最后得到的模型不能体现其中的迭代修改过程。因此,建模的过程才是最有价值的。 总之、价值体现在建模的活动中,而非模型本身。,误区二:从开始阶段解决一切问题,在一开始不可能考虑和预见到所有的细枝末节。,不论在实现阶段之前的各子阶段的规约多完备,但实现阶段 的代码会很快地与之失去同步。 可运行的计算机系统最终是由代码实现的

4、,实现的技术细节 决定了最初的规约说明需要妥协技术可行性的调整。,讨论,存在需求规约和代码的背离吗? 为什么最终交付的产品往往需要返工,这说明什么? 如何解决误区二提出的问题?,解决误区二提出的问题,迭代/增量的软件过程模型,some、more、even more 持续频繁的交付集成可以降低失败风险,增大用户反馈。,需求规约描述系统是什么,没有涉及实现的任何技术细节。从这个定义上来说它和代码毫无关系,不存在是否与代码背离的问题。 最终交付的产品不能达到需求规约的要求,确实又是代码这个软件系统最终的实体和需求规约产生了背离。,需求规约未能为系统实现准确达标; 用户需求未能精确表达为需求规约。虽然

5、需求规约是具有法律效应的,但依法办事何其难哉!用户是上帝与需求规约的合同相比,前者似乎更占上风。,误区三:建模是在浪费时间,很多初级程序员接受的教育局限于如何编写代码,对于完整的开发流程鲜有接触。在项目开发时总是简单重复类似的编码工作,而极少有机会从事每个阶段的建模工作。因而对建模没有任何概念上的认识。 事实上,建模非常重要: 提供了提高效率和学习技能的机会,这些技能能够使他们很容易地适应不同的项目或组织。 模型是一种很好的在项目组成员与项目负责人间,项目组成员与用户间的沟通途径。同时,在建立模型的过程中探讨问题,从而对“做什么”系统的需求得到更好的理解,对“怎么做”达到充分的交流。,误区四:

6、所有的开发人员都知道如何建模,面临一个严重的问题 许多不是开发人员的人,包括高级经理和用户,不知道软件企业的从业人员应该如何分工 不能够区分开高级程序员和一般程序员,认为所有的开发人员都应具备从头到尾开发整个系统的技能。,建模的技能,是只有当一个开发者通过学习它,并经过长期的实践才能够掌握。 软件开发非常复杂,一个人是很难具备所 有的技能去成功地进行开发,甚至也不可能去配置有一定复杂程度的系统。 开发者应该有自知之明,学无止境。通过互相取长补短, 建模者可从程序员身上学到一项技术的具体细节,程序员也可从建模者那里学到有价值的设计和体系结构的技术。,(1) 准确的原则 模型必须准确地反映软件系统

7、的真实情况。模型必须准确,意味着在软件开发的整个周期内模型必须和产品始终保持一致。 (2)标准规范的原则 模型必须在某种程度上是通用的。建模的基本目的是交流,一个开发队伍内部的交流,同一软件的不同时期的版本的开发队伍的交流,不同软件的开发队伍之间的交流,以实现最大程度的软件复用。交流需要语言,语言是通用的、标准的。,软件建模的原则,(3)子系统划分的原则(横向划分) 不可能单独用一个模型来反映整个系统的任何侧面。软件系统是复杂的,对于软件模型的任意一个侧面不可能用一个模型来反映所有内容,需要把问题分解为不同的子模型,分别处理这些模型,相对独立但又互相联系,综合起来构成了此侧面的一个完整的模型。

8、,(4)分层的原则(纵向划分) 在建模的过程中,必须有不同的模型,以不同的抽象程度,反映系统的不同侧面。在软件构筑的不同阶段,不同的开发人员如:投资者、管理者、设计者、程序员、测试者和使用者看待软件的侧重面有所不同。因此,软件系统的建模需要不同的模型以反映系统的不同侧面。如,一类模型描绘系统的外部边界和行为,另一类模型描绘系统的内部逻辑关系。 (3)和(4)也合称为抽象,是人们观测和思考世界的基本原则和方法。,建模建议,仅有数据模型对于现代软件是不够的,需要不同侧面方便理解系统,方便指导当前推进开发的多种模型。 拥抱变化,并且允许你的模型能够随着时间进行改进。 模型体现为文档,但文档不就是模型

9、。 只有代码才能与代码保持真正的同步。 设计直到代码发布以后才算完成。,3.2 UML特点,UML语言的主要特点有以下3点: (1) 统一了Booch、OMT和OOSE等基本概念。 (2) UML还吸取了面向对象技术的优点,当然也有非面向对象的影响。 (3) UML还提出了许多新说法。增加了模板、职责、扩展机制、线程、过程、分布式、并发、模式、合作、活动等概念,并清晰地区分类型、类和实例、细化、接口和组件等概念。,-23-,UML发展历程,UML Partners Expertise,UML 1.0 (Jan. 97),UML 1.1 (Sept. 97),UML 1.5 (March, 03

10、),UML 2.0 (2005),Other Methods,Booch 91,OMT - 1,OOSE,Booch 93,OMT - 2,Public Feedback,Unified Method 0.8 (OOPSLA 95),工业化 标准化 统一化 分散的 各部分,UML 2.4.1 (2011),UML,事物,关系,图,结构 事物,行为 事物,分组 事物,辅助 事物,静态 图,实现 关系,泛化 关系,依赖 关系,关联 关系,动态 图,交 互,状 态 机,包,注 释,顺 序 图,活 动 图,用 例 图,部 署 图,类 图,构 件 图,对 象 图,状 态 图,协 作 图,节 点,组 件,

11、活 动 类,协 作,接 口,类,用 例,UML的组成,3.3 网络教学系统案例UML简单图示,案例主要展示UML九种图的表示方式,小型案例不一定需要九种图,有时有用例图和类图就足以能说明软件的主要功能和软件结构了。该案例主要展示UML的九种图样式,更多的UML细节在第6章中说明,更具体软件开发过程中如何使用UML图在第二部分详细解释说明。,3.3.1 系统功能,1、系统功能需求 (1)学生可以登陆网站浏览和查找各种信息以及下载文件。 (2)教师可以登陆网站给出课程见解、发布、修改和更新消息以及上传课件。 (3)系统管理员可以对页面进行维护和批准用户的注册申请。,3.3.2 系统的UML建模,1

12、、系统的用例图 创建用例图之前首先需要确定参与者。 在网络教学系统中,需要学生和教师的参与。学生可以浏览课程简介,教学计划,学习方法等教师发布的文章,并可以根据关键字查询文章。此外,学生可以从网站上下载课件。教师作为教学的主导者,使用此网站可以发布学习方法,课程重点等和教学相关的文章,以及和课程相关的通知等,还可以将某一门课程的课件上传。 网站需要一个专门的管理者进行日常维护与管理,所以需要有系统管理员的参与。,6、系统中的类 (1)参与者相关的类 系统中和参与者相关的类的类图如下,对象图,对象图(Object Diagrams)描述了某一瞬间对象集及对象间的关系。为处在时域空间某一点的系统建

13、模,描绘了系统的对象、对象的状态及对象间的关系。 对象图主要用来为对象结构建模。对象图中通常含有:对象、连接。像其他的图一样,对象图中还可以有注解、约束、包或子系统。,4、系统的状态图:,5、系统的活动图: (1)用户登录系统的活动图,6、系统的时序图 网络教学系统中的用例很多,所能画出的时序图也很多,在此不一一介绍。 (1)系统管理人员管理网站的时序图,7、系统的协作图: 1 、用户登录系统的协作图,8、系统的组件图 网络教学系统的组件图如下图,组成Web应用程序的页面包括:维护页面(Maintenance Page)、文件下载页面(File Download Page)、文件上传页面(FileUpload Page)、信息发布页面(Message Issue Page)和登录页面(Login Page),9、系统的配置图 配置图主要是用来说明如何配置系统的软件和硬件。网络教学系统的应用服务器负责保存整个Web应用程序,数据库是负责数据库管理。此外还有很多终端可以作为系统的客户端。由于客户端很多,在此只画出3个客户端,系统配置图如下图,Thank you !,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号