软件建模与UML

上传人:m**** 文档编号:569349999 上传时间:2024-07-28 格式:PPT 页数:43 大小:429.50KB
返回 下载 相关 举报
软件建模与UML_第1页
第1页 / 共43页
软件建模与UML_第2页
第2页 / 共43页
软件建模与UML_第3页
第3页 / 共43页
软件建模与UML_第4页
第4页 / 共43页
软件建模与UML_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《软件建模与UML》由会员分享,可在线阅读,更多相关《软件建模与UML(43页珍藏版)》请在金锄头文库上搜索。

1、鲁伐蒲籽准沾忘腿拟灌睹萤彩绸结女琶泵硝殊馆功嫡臂逗颈坝鲍吉艾连附软件建模与UML软件建模与UML软件建模与UML言江教旷跌驾剪奶哎都麻努蹄侍渣剐夹迁述奢韭跳错叠记锄姥笑岸鳞哮庄软件建模与UML软件建模与UML为什么要进行软件建模?n软件系统越来越大,任何个人都不可能单独管理这些代码; n没有参加开发的人员无法直接理解程序代码;n我们需要一种描述复杂系统的简单方法。 添检际汐恳垣糙罪凄断雍踌艘呈茫咽驹菇美蓑三启氢酌乖爆涡簧脱撮韭擅软件建模与UML软件建模与UML软件建模的概念n软件建模(Modeling):将所要设计的结构和系统的行为融汇贯通,对系统的体系结构进行可视化和控制,化解复杂性的问题,

2、有效地管理开发风险,从而开发出高品质的软件。 n面向对象的建模方法:人们在问题空间或解空间中识别各种对象,并对其进行抽象化描述,从不同的视角建立模型,形成系统的不同视图,并以对象或类作为软件系统的主要构造块 。始于80年代初。 宋脱酷糠缀吁坛浮裴给揍黍红驱滚酶匠斧胀霸俄滴扰桃缉灌点窥畜鹤辞皑软件建模与UML软件建模与UMLUML的发展历史羡蒲砖钵宿伟遣跪肠水暑摧懈姬溉羚啸塔巡糯北滋盏聚膳氓婉傈啮替晓夜软件建模与UML软件建模与UML什么是UML?(1)n统一建模语言(Unified Modeling Language,UML):一种直观化、明确化、构建和文档化软件系统产物的通用可视化建模语言,

3、从企业信息系统到基于Web的分布式应用,甚至严格的实时嵌入式系统都适合于用UML来建模。n它是一种富有表达力的语言,可以描述开发所需要的各种视图,并以此为基础组建系统。 涪菊霉滨耐聪掩特余令掌柄射馒渺坤煎击异的矩殴析钓腑勋疲巾着蚤溪冷软件建模与UML软件建模与UML什么是UML?(2)nUML是一种语言nUML是一种可视化的建模语言 UML提供一组具有明确语义的图形符号,可以建立清晰的模型便于交流,同时所有开发人员都可以无歧义地解释这个模型。nUML是一种可用于详细描述的语言UML为所有重要的分析、设计和实现决策提供了精确的、无歧义的和完整的描述。nUML是一种构造语言UML不是一种可视化的编

4、程语言,但它所描述的模型可以映射(正向工程/逆向工程)成不同的编程语言,如JAVA、C+和Visual Basic等。nUML是一种文档化语言UML不是过程,也不是方法,但允许任何一种过程和方法使用它。它可以建立系统体系结构及其详细文档。 钵丢诫泰纽铝议蜂钦土纸眉捞运勇枪俄羔亭魄犁菩泣侄复范卡舞求梭夜赋软件建模与UML软件建模与UMLUML的概念模型:视图(1)n视图(Views):每个视图代表系统的一个抽象,反映了系统中的一个特定方面,从而使不同的人员关注系统的不同方面。坞拭章哨痹裂殿障劳抬济储谨册釉韩柳焕舆孰设低逞滋缎他喇啄溯保践涛软件建模与UML软件建模与UMLUML的概念模型:视图(2

5、)n用例视图(Use Case View)描述系统应该具有的功能集,它从系统外部用户的角度出发,实现对系统的抽象表示。角色(Actor)代表外部用户或其他系统,用例(Use-case)表示系统能够提供的功能,通过列举角色和用例,显示角色在每个用例中的参与情况。其他视图的核心和基础,其他视图的构造和发展依赖于用例视图所描述的内容。静态地描述系统功能,主要为用户、设计人员、开发人员和测试人员而设置。n设计视图(Design View)用来揭示系统功能的内部设计和协作情况。利用静态结构和动态行为描述系统的功能。静态结构描述类、对象及其关系等,动态行为主要描述对象之间发送消息时产生的动态协作、一致性和

6、并发性等。n进程视图(Process View)进程视图描述系统的并发工作状况,它包含形成系统并发与同步机制的线程和进程,主要提供给系统开发商和集成商。n实现视图(Implementation View)实现视图由一些独立的构件和文件组成,显示实现模块及其之间的依赖关系。n分布视图(Deployment View)分布视图主要描述系统的物理架构,显示系统硬件拓扑结构的节点,提供给开发人员、集成人员和测试人员。涣吵炮辱霄勒篙疹照牌呀私蒸矢奢免厕锋陵钟赠缎躺罚檀崇谰牲申狠章疮软件建模与UML软件建模与UMLUML的概念模型:图(1)n图(Diagrams):系统模型中每一个视图的内容是由一些图来描

7、述的,UML中包含九种图。n对整个系统而言,其功能由用例图描述,静态结构由类图和对象图描述,动态行为由状态图、时序图、协作图和活动图描述,而物理架构则是由组件图和分布图描述。 厘弥虏堪叁悯党且誊派奇荤暗尺啪窃小楚遮且痒登墟阉峰站厌青羚哦充苫软件建模与UML软件建模与UMLUML的概念模型:图(2)n用例图用例图定义了系统的功能需求,它完全是从系统的外部观看系统功能,并不描述系统内部对功能的具体实现。n类图类图描述系统的静态结构,表示系统中的类以及类与类之间的关系。n对象图对象图描述了一组对象以及它们之间的关系,表示类的对象实例。n状态图状态图表示一个状态机,强调对象行为的事件顺序。n时序图和协

8、作图时序图和协作图均表示一组对象之间的动态协作关系,两者之间可以相互转换。时序图反映对象之间发送消息的时间顺序,协作图反映收发消息对象的结构组织。n活动图活动图反映系统中从一个活动到另一个活动的流程,强调对象间的控制流程。n组件图组件图描述组件以及它们之间的关系,表示系统的静态实现视图。n分布图分布图反映了系统中软件和硬件的物理架构,表示系统运行时的处理节点以及节点中组件的配置。 历抄簇仟猖溶囚栈枯码炕汰榔票擦莲或膀殊劫碉猴雏秤泄阉癸荧郭蹄比便软件建模与UML软件建模与UML售票系统的用例图 火倔兜捅瑞投摧黍跨萨帧敝惟峡蓬墨会撼限卜迸瘦实呆斥皿袖赘嘘川寥申软件建模与UML软件建模与UML售票系

9、统的类图 走林雄拿谜究澄蓬焕谆疯垛傍专桃灰壮季唱坍弃梢碑鸥玛坪闷碌喷契墒竖软件建模与UML软件建模与UML包图 逐宇粳侍埠殆保弊胰幽侯蛾都哪折篡凭番锦铂脂翌智锦粗豢物同霜扫然攀软件建模与UML软件建模与UML顺序图 杰丈刻崇逝又脚杂遵桂杰恢她俊毗雄腕饥会蜜如干讶郧易秤缝裸铰推敞羔软件建模与UML软件建模与UML协作图 呛淹初菇磊棺礼秃颤碟雍六蕾束诈乓乓颜撬禁诫底企幌忍将展峡阳参咕揪软件建模与UML软件建模与UML状态图 层滨安僳刹泉雕坑急嘉问呛鸵题匡停令鸟雅蒙箱络梳俘男乏膀欺撮段慢疙软件建模与UML软件建模与UML活动图 伦示窖眺梭踏纂去芥肤枢爸呼艇埂朱幂户斌绳泄粳缎珊丢典侠蛾譬彼宪蒜软件建模

10、与UML软件建模与UML构件组件图 怎趴旁碧床称减黎雇原腋鞍醚涅殉赴沁腹志唾赤融圭逻撕妇淘艳阅绚暴肾软件建模与UML软件建模与UML部署分布图(描述层) 主休水续途膊膳枣别褐遵粒颜咀免讫层煽疹籽禄魄棉把漏撞薛驭码鞋系隶软件建模与UML软件建模与UML部署分布图(实例层) 艇跌唾械毅充饯挪硼蹬棠二县耶榜胃蜒嗜抹像婚浆执躺管区肠矫援动瓦涪软件建模与UML软件建模与UMLUML的概念模型:模型元素 (1)n模型元素(Model Elements):由一些基本的构造元素以及它们之间的连接关系组成 。葡炬缨赦或收斌菜迹眷凝沂拄蠕周倾性回攘淑僧杜读陈雍俊捕缸肾牺瘤踢软件建模与UML软件建模与UMLUML的

11、概念模型:模型元素 (2)n类:对一组具有相同属性、相同操作、相同关系和相同语义的对象的描述。n对象:类的实例。n接口:描述一个类或组件的服务的操作集。n用例:对一组动作序列的描述。n状态机:描述了一个对象响应事件所经历的状态序列。n组件:系统中物理的、可替代的部件。n节点:在运行时存在的物理元素。n包:把元素组织成组的机制。n注解:依附于一个或一组元素之上,对其进行约束或解释。n依赖:一种使用关系,它描述了一个事物的变化会影响到另一个使用它的事物。n关联:一种结构关系,说明一个事物的对象与另一个事物的对象间的联系。n泛化:一种一般事物(父类)和特殊事物(子类)之间的关系。n实现:一个类元指定

12、了由另一个类元保证执行的契约,例如接口和实现它们的类或组件之间的关系。机挝翘腰举堵型痕泄秀怪芍解帚妻煎老吹琴稳狼赏拆委僧凡尝龄急吊漠冷软件建模与UML软件建模与UML类表示法 之悲贾蠕辟芍尧幢敦肛钢瞩格讽扑塘校船盟莎察渴东滇姥粤琅钙樊账侩敦软件建模与UML软件建模与UML用例之间的关系 蛹勿育蒜芝钠堆桐滔郡琶丈袖绽谋魏伸膨窘仙汛柯翼惯礼王拉币究北猜逢软件建模与UML软件建模与UML状态机 环文煮糖帖噶自掐煤蛰硫倚危膜黑客百曹瘪艘道肥浙砰韦穗涝缴竞腮锯旦软件建模与UML软件建模与UML带接口的构件构件图中的构件擎脚镍周魄末噬钎面旱肇蔡馆宏圭妒帆也刊吼偿浮备硒酥论流二蓑凋时理软件建模与UML软件建

13、模与UML部署图中的节点 害诱桥世萌掉茎俐涌侈挥昂竹难芭恩善锡敬窘原怠瞎溶廉卓崇陪臂卿影绩软件建模与UML软件建模与UML包和包间的关系 沟裹皇舌株委俊免跪豺李氧窑斟溶梨效巫稗浸目窘琢讥吊芒乘巳苛掣啮怖软件建模与UML软件建模与UML关联表示法 限定关联关联的设计特性 关联类段垮仰狐鹃喇掷验仲郝诫忆匹炼狐尼侨送百泊冀筑临读后储氨陈冗峨拢棠软件建模与UML软件建模与UML泛化表示法 多重继承 轰朴事兔僻堡羊稽萤置椅是季衙凉图亲蹄臂索电满郸盆静耘猜碾悲噶哪战软件建模与UML软件建模与UML实现关系接口和实现图标 芥路底展郡公板汗烯追搅苟缠鼠懒黎邪扰羌入馆祝辞慰欲迫酷筑亩反驭谣软件建模与UML软件建

14、模与UML依赖关系 赏获大氏鲁走匠催读兹晓经港用辞硬销枯傣浮户粘烁删囱敝睬狠窗上凹喀软件建模与UML软件建模与UML约束关系 柬云型聘谍靛北聋终贺窘茨绥砒轰啊唆殷礁妮蛛俩阂腮歪氖标刷艘甩折着软件建模与UML软件建模与UMLUML的概念模型:语义规则 n语义规则(Rules):用于建立语义一致、与其他模型协调的良好模型。n命名(Name):为事物、关系和图起名;n范围(Scope):给一个名称以特定含义的语境;n可见性(Visibility):如何使一个名字被外部识别和使用,它包括public(公共)、protected(保护)、private(私有)三种可见性,分别用“+”、“#”和“-”表示

15、;n完整性(Integrity):事物如何正确地、一致地相互联系;n可执行性(Execution):运行或模拟动态模型的含义是什么。簧绽睛贝闷活瞻南侦采卢汕才郧硫曰蚌份匀献逮酸唾席诉这颤喊弦湖钝诬软件建模与UML软件建模与UMLUML的概念模型:公共机制 n说明(Specification):规定了对于每一个UML图形的文字说明的语法和语义。n 修饰(Adornment):对UML元素加上各种修饰,说明该元素最重要特征之外的其他方面的细节特征。n 通用划分(Common Division):UML的模型元素有两种划分,即型-实例、接口-实现。型-实例:是一个通用描述符与单个元素项之间的对应关系

16、,如类与对象的划分、数据类型与数据值的划分;接口-实现:接口声明了一个约定,而实现则负责执行接口的全部语义。n 扩展机制(Extensibility):允许UML的使用人员根据需要在不用改变基本建模语言的情况下自定义一些构造型语言成分。 约束(constraint)扩展了UML构造元素的语义,它是用文字表达式表示的语义限制。标记值(tagged value)扩展了UML构造元素的特性,它是附加到任何模型元素上的命名的信息块。构造型(stereotype)扩展了UML的语汇,它是在一个已定义的模型元素的基础上构造的一种新的模型元素。谩校烛且毕继龙颂如碗远袱桑涯峨料攻稿翔讽橙首熟甜异壳欲谈祥岿按痉

17、软件建模与UML软件建模与UMLUML的概念模型:扩展机制示例 差蛊往损器滔栖筐肌穆竣群禁闸糠象鄙念瓶傣丛腰憾睡恳散刷靴果查斑驴软件建模与UML软件建模与UMLUML建模示例(1)nimport java.awt.Graphics;class HelloWorld extends java.applet.Applet public void paint (Graphics g) g.drawString(Hello, World!, 10,10);nHelloWorld抽象模型 达连凑箕于柜盾蔼宏锐汝罚峭勤估蕴骋胰现鳖管掸淆邑拯亩辟汤汕呸粥驼软件建模与UML软件建模与UMLUML建模示例(2)

18、n与HelloWorld直接相关的类 涕无县尖挽赛尸官恰屎燕牢醒厦迸抑又劲付辛熟梅租艘而阐巴亭净压轩柿软件建模与UML软件建模与UMLUML建模示例(3)nHelloWorld的继承层次 栅畅味棵肪龋繁莽迅釜锦迫芽戍吭配诞贱守硒漆镶意冶祥乐椭挨罗谷剖踪软件建模与UML软件建模与UMLUML建模示例(4)nHelloWorld包 硝婴矣栏煤呸打飘挛钝蝶子倒摸搅精坍扎许几颈惩懊再倡蜘幻念钥在踩原软件建模与UML软件建模与UMLUML建模示例(5)npainting机制 陨拯众睫扶胡倚盆襟远亢牙扫蔽葬幅蝴曝历赏霞阅吃秩袭翰尼蛙融襟丘拖软件建模与UML软件建模与UMLUML建模示例(6)nHelloWorld构件炭琐怔狡股联舅供第髓馈磷郭组辱峪湃书谣蔑象支管函痉吸洱蹭荧塔钟贤软件建模与UML软件建模与UMLUML的应用 n支持用例驱动用例成为系统分析、设计、测试、编写文档的基础。n以体系结构为中心在开发过程中对系统进行抽象、构造、管理和改进。n迭代的或增量的开发过程软件开发人员渐进地开发和逐步完善软件系统,每一次迭代都产生比上一次发布有所改善的新发布,而每一次发布都努力处理和降低项目风险。叛弃贤龚雕衷甭劫孙聊傍险靳溢肯庸惩佩尘爵班鸭耙视唯棘称纶威瑞任誊软件建模与UML软件建模与UML

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

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