如何进行软件工程面向对象与设计_第1页
如何进行软件工程面向对象与设计_第2页
如何进行软件工程面向对象与设计_第3页
如何进行软件工程面向对象与设计_第4页
如何进行软件工程面向对象与设计_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程—面向对象分析与设计回顾一下面向对象的精华面向对象的历史:面向对象诞生与上世纪90年代初期,最初是专指在程序设计中采用封装、继承、抽象等设计方法,后来没有想到这种思想对问题的抽象和解决提供了很好的方案,甚至最后应用到了分布式系统、网络管理结构、CAD技术、人工智能等领域,仿佛在一夜之间所有和计算机相关的专业都朝着面向对象迈进.内容介绍UML基础UML关系UML案例什么是UMLUML(统一建模语言):是一种可视化的建模语言,它能让系统构造者用标准的,易于理解的方式建立起能够表达出他们想象的系统蓝图,并且提供一种机制,以便于不同的人之间有效地共享和交流设计结果.Uml是干什么的我们用面向对象的思想总结出了一些重要的东西,那么这些重要的东西怎么样存放呢,放在脑子里面吗,记在本子上吗,都不是,uml是一个标准,是用来统一大家总结出来的一套重要信息,大家可以运用这个标准去描绘搜集的信息,让其他人很容易的明白你的思想.UML的组成(常用视图)类图用例图状态图时序图协作图活动图构件图部署图UML工具经常用的有MicrosoftOfficeVisio2007优点:资源多,画出的图比较漂亮,操作简单,功能强大.IBMRationalRose2003优点:更接近标准,用的人多,但是安装具有一定的挑战性。我们以IBMRationalRose2003为主.UML的组成(常用视图)类图:把现实事物抽象出来,用图来表示.

视频类名属性事件UML的组成(常用视图)用例图:从用户的观点对系统行为的一个描述.

视频UML的组成(常用视图)状态图(StatechartDiagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的时间做出反应的。状态图用于显示状态机(它指定对象所在的状态序列)、使对象达到这些状态的事件和条件、以及达到这些状态时所发生的操作。UML的组成(常用视图)状态图:

视频开始状态结束UML的组成(常用视图)时序图(SequenceDiagram)用来显示对象之间的关系,并强调对象之间消息的时间顺序,同时显示了对象之间的交互。

时序图中包括如下元素:类角色,生命线,激活期和消息

1,类角色(ClassRole)

类角色代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表类角色。类角色一般代表实际的对象

2,生命线(Lifeline)

生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间的消息存在于两条虚线间。

3,激活期(Activation)

激活期代表时序图中的对象执行一项操作的时期,在时序图中每条生命线上的窄的矩形代表活动期。它可以被理解成C语言语义中一对花括号“{}”中的内容

4,消息(Message)

消息是定义交互和协作中交换信息的类,用于对实体间的通信内容建模,信息用于在实体间传递信息。允许实体请求其他的服务,类角色通过发送和接受信息进行通信UML的组成(常用视图)

视频UML的组成(常用视图)协作图:用来描述系统的工作目标是由哪些组元素相互协作完成的。强调的是发送和接收消息的对象之间的组织结构。一个协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息。对象通常是命名或匿名的类的实例,也可以代表其他事物的实例,例如协作、组件和节点。使用协作图来说明系统的动态情况。活动图:和流程图很类似,它可以显示出工作步骤(活动),判定点和分支.活动图和时序图都表示时间的先后性,具体在哪种情况下使用哪一种图??时序图主要用来表示对象之间的时间关系,要求比较精确.活动图没有很严格的要求,里面可以有名词也可以有动词,像流程图一样只用表示出先后次序即可,所以活动图经常用于和用户交谈的时候,因为它没有严格的要求所以可以一边交谈一边画.

视频UML的组成(常用视图)构件图:软件组成中的一个单元。视频包构件UML的组成(常用视图)部署图:一个UML部署图描述了一个运行时的硬件结点,以及在这些结点上运行的软件组件的静态视图。部署图显示了系统的硬件,安装在硬件上的软件,以及用于连接异构的机器之间的中间件,显示了基于计算机系统的物理系统结构。第二部分UML细节1如何认识士面向对象晚中的元素2UML中的关个系。如何认识缘瑞面向对象彻中的元素如果我们革有一个项树目需要做绒需求分析洗,这时客周户和你交刷谈的时候抵因该注意塔什么呢?禁?动词偏名词名词通常罗是我们面快向对象中盘类的表示瓜。动词通常券是我们面卡向对象中子事件,方撕法,行为摆的表示。把握好陶名词动哥词,并粪且把它泪们合理次的抽象赏出来,绸在软件校开发的粉前期有鸟着重要立作用。如何认识槽面向对象刻中的元素例如:尾比赛的祝目标是她要把篮井球投入壶篮框并违且要尽松量比对价手得更园多的分巾数。每非个篮球奸队由5名队员:岛两个前锋抽,两名后混卫和一名廊中锋。上面一小菊段文字里江面,能够岁抽象出什膏么呢??坟?如何认识毕面向对象顽中的元素例如:比约赛的目标垒是要把篮球投入篮框并且要尽盘量比对手得更多的分数。每个篮球队由5名队员:两个前锋,两名后侨卫和一名中锋。红色为扎名词,蓝色为挖动词如何认识贡面向对象奸中的元素例如:料比赛的冬目标是位要把篮球投入篮框并且要尽药量比对手得更多的分数。每个篮球队由5名队员:两个前殖锋,两名后卫和一名中樱锋。对应的UML类图UML插类与遗类之间随的关系(1)泛化(Ge情ner给ali寒zat械ion晶)(2)关联(As廊soc眯iat饿ion拜)(3)依赖(De颤pen座den酸cy)(4)聚合(Agg系rega特tion偿)UML中的关联关联:展对于两橡个相对塑独立的凑对象,塞当一个吐对象的速实例与票另一个态对象的博一些特私定实例斑存在固庙定的对外应关系姥时,这惕两个对返象之间问为关联敬关系。UML斑中的泛厦化在UML中泛化其槽实就是我周们面向对应象中的继杀承.根叶子UML中卡的聚合当对象遥A被加蝇入到对阳象B中斥,成为嫩对象B超的组成观部分时足,对象剩B和对税象A之称间为聚晚合关系时。聚合爬是关联疲关系的旁一种,冤是较强候的关联屡关系,猾强调的努是整体然与部分览之间的诸关系。UML观中的依钥赖对于两轮个相对堵独立的室对象,研当一个术对象负补责构造肉另一个佣对象的脾实例,细或者依什赖另一谨个对象坟的服务拌时,这房诚两个对饲象之间迁主要体聪现为依足赖关系衫。第三部斥分案邪例分析我们以餐筐馆的例子撇来展开分候析。我们会影学到1开发初步扰类图2收集系随统需求3开发用策例4交互请看下面差的描述。符(请注意浮其中的名王词和动词作)餐馆案搂例"感谢您乘花费宝器贵的时哀间与我负交谈",分析员说."不客气,您想知宿道些什后么呢?",餐馆的闭工作人防员说."让我们先谨从一次具谊体的业务洞过程开始眉吧.当一名蚂顾客走饮进餐馆泄时,你们要读做些什课么呢?""经过是省这样的,如果客户痰穿着外套,我们会帮延助他脱下印外套,将外套存纤放在存衣垄间里面,并给客打户一张戒取衣票,对戴帽志子的客矛户也是胳如此的“"假设顾客商比较多,需要排队养等候,怎么办泄呢?"餐馆案籍例"如果确骆实要排伪队的话,我们会炎询问客卫户是否朵要预定禁席位,并尽可能限处理好客构户的预定,让客户尽某快入席.如果没有总空缺的席摸位可供预猴定,顾客可覆以登记叔下他的肠名字,并且可诱以选择品先到我要们安排嚼的休息顾室喝点血饮料,休息一会.当然顾客猜也可以不赖去休息室,也可以到洒一个指定旋的候餐区宝等候.“通过上一浩段的描述,我们可跪以绘制齿出活动登图餐馆案例餐馆案例“在顾客入网座之前,餐桌必须毛要提前准刮备好,清洁师要防事先清理模桌面,除去旧的佩桌布,换上新激的桌布,还要调铃整好桌屑子和座犯位.当一切穿准备就密绪后,领餐员将猪顾客领到叉餐桌前就春座,并且叫厚一名服简务员来谷招待顾处客."“然后服犬务员就征接管了已这一桌究的顾客.他给每一锋位就餐者亭一份菜单,并且询莲问顾客柴是否要秧预定酒锦水,然后服它务员会民叫一名糟助手,助手会瓣负责酒柱水,面包,黄油,等等.不需要碎则等待禽顾客点挡菜.通过上默一段的恰描述,我们可抗以绘制寇出活动垄图餐馆案例泳道活扛动图,每个泳道内只有这个坡对象的活躬动,这样图竭会很好限扩展(视频)餐馆案例"顾客点险了菜,服务员记奸录下顾客踩所点的菜,接着呢?""接着通厌知厨师,服务员除将顾客接的选择烛填写在谷一张表观格中然委后交给姑厨师"“就餐完涛毕后,服务员腹会上前墙咨询顾或客是否锋要些甜绪食,如果顾身客要吃,服务员刻要给顾撒客上一俯份甜食察菜单,并记录,如果客吐户不吃驱则服务侄员拿来境帐单让荷顾客来赏确认,过几分钟谷后服务员宜回来收钱,给顾客收腊据,顾客离从开座位,取回衣在帽,离开餐集馆.顾客走临后,服务员现还要找泽来清洁臂师清理捏餐桌,并重新布侦置餐桌和帽座椅准备辩下一批客个户使用.通过上追一段的万描述,我们可以市绘制出活赌动图餐馆案例开发初步懒类图经过上壁述的描嫁述我们墓已经作赏出了活把动图,下面我们朝要根据活价动图和描张述中的名夸词构造出杜一些类.名词:我们很容滤易的发现肉在一些名办词中有很怨多的相近板的.比如说侍者(wai旁ter)和服务员(se很rve柿r)是同义词,所以我们端保留一个水好听的吧服务员(se肉rve幅r).再有顾客(cus殊tome或r)和就餐者(di题ner西)也是同义配词,所以我赠们也保碑留一个,就叫顾客(cu炭sto虾mer蓬),还有很钓多大家司请细看.开发初怠步类图经过上述冬的描述我颂们已经作跟出了活动爪图,下面我侵们要根水据活动辰图和描键述中的谢名词构宫造出一祖些类.整理后语的名词:顾客(cu非sto章mer铅),外套(coa孩t),储衣室(cl研oak语roo渡m),取衣票(co拉at-亿che愚cktic渗ket块),帽子(hat体),队列(wa禾iti际nglist脑),休息室(co筹ckt稀aillou汤nge右),饮料(dr约ink紧),正餐(din蛇ner)笛,餐桌(ta弃ble坐),清洁师(bu步sse涨r),桌布(ta斯ble俗clo稿th)薄,领餐员(mai销tred’),菜单(men己u),助手(ass曾ista程nt),服务员(se弄rve泰r),厨师(ch倾ef)将,订单(ord矛er)…匹.等等其实这课些就是牺我们所戚需要的裕类开发初步球类图需要用到忍的类(后面的步械骤将对这停些类逐步桐细化):形成关联有一些搁类是有卵关系的额,我们畜要合理蛾的组织帆这些关煮系,后左期的代组码编写绣量会少剃一些.例如:这几个寻类可以渗预见有佛很多属仅性是相火同的,所以我鼓们就创叼建一个鞠它们都赏有的父冲类形成关联还要找义出这些爹类会和烦那些类篮有交互用,以便势为后面计的用例绍图打基腾础.填充类的桐信息关系都找雷完后,下天面要做的肾就是,要躺对类的信任息进行详妙细的填充蕉.填充类眨的时候,返通常还需违要和客户祸进行沟通蹈,必要时育也可以自医己添加.填充类的详信息和客户交使互后发现Cust哗omer类属性:nam朴e,ar收riva开ltim俱e,or钉der,拨serv罪eTim乓e事件:eat尾(),d多rink丛(),o卸rder凉(),p希ay()Empl珍oyee类属性:nam画e,ad述dres幻玉s,so锁cial貌Secu英rity则Numb拿er,y肥ears邻Expe悠rien诞ce,h颈ireD算ate,卷sala罚ry事件:car彻ry()垂,pou御r(),缘瑞coll猎ect(温),ca矿ll()旁,che印ckOr奔derS袍tatu讽s()填充后的役类图收集系统灭需求看下面冻一段话贝。协调员:"这个系统迹做好后准毅备叫什么其名字呢?"厨师:"叫MAST拒ERC样HEF怎么样?"协调员:"不好听,在想一微个吧"系统工辣程师:"来个简明蒸快捷的吧,就叫Wir秋ele许ss权Int蜡era舅cti茅ve后Net猜wor锐k--嫁-WI称N."分析员:"恩,比较有爽创意,刚好这投个名字闭也是胜肤利的缩羡写,要不就采残用这个吧"大家:"好“这段话银比较简罪单,我茅们能够享确定系塞统的名命字收集系统抢需求系统工择程师:"WI挂N这个系统,它的大幸致工作物情况是淹这样的,服务员反使用PDA与厨师款和清洁盏师进行康通信.清洁师逃也适用PDA接受信息.厨房中安勿装一台PC或者多辩个终端,用来接翁受信息,经理办阵公室也误安装一汪台桌面船电脑.这段话膜能够确骄认系统睬的部署钞。收集系统图需求部署图遭:收集系崭统需求系统按照句模块工作,每个成撑员在自点己的模平块中工轰作,模块有Serv逆er,C缝hef,柔Buss过er,A预ssis盯tant埋,Man跳ager区“这段话驼我们能歼够确认惜角色收集系凶统需求角色模静块:收集系吓统需求收集信息伍的最后我奶们要确定端用例了,窑也就是说叫那些角色尽和模块应倍该做什么辽。收集系统折需求Serv窑er包中的油用例Tak络ea置no缘瑞rde旷r(输入定晌单)Tran载smit缺the碌ord源ert第oth冈eki贫tche省n(将定安单发送挥到厨房谈)Chan便gea斧nor膜der(修改川定单)Rece纽奉ive呜noti团fica尼tion魔fro写mki掘tche卖n(接收来尾自厨房的神通知)Trac列kor评der笨stat赤us(跟踪煎定单状藏态)Not溪ify览ch波ef简abo皮ut骗par享ty棋sta乏tus(通知厨迫师客人的伙用餐状态亿)Tot男al租up识ac泄hec生k(结算弱帐单)Pri肢nt商ac鼓hec隐k(打印帐开单)收集系稳统需求Che吹f包中的安用例Stor担ea前reci职pe(记录一州个菜谱)Retr筛ieve医ar家ecip引e(取得一龄个菜谱)Not戴ify找th渴es主erv耗er(通知服登务员)Rece男ive胸are监ques举tfrom点the扮ser舟ver(接收来巷自服务员糠的请求)Ackn丝式owle善dge盒serv偷err箩eque潜st(确认碰服务员每的请求讨)Ente炕rth悉epr德epar域atio希nti糖me(输入雷准备的列时间估行计值)Assi概gna仅nor胡der(指派注一个定锄单)收集系宾统需求玩(系统猪功能包膝图)开发用花例用例分析奖:通常以旺下七个园步骤可抚以完整吉地描述粥出一个羡用例场景的索简单陈棒述关于场俩景的假烂设条件用例的劳发起参庸与者场景的前跌置条件场景中竹与系统婆相关的理步骤序璃列场景完棋成后的覆后置条蜘件用例的糠收益参牛与者开发用例我们以Serv串er包中的月一个用鸡例为例院子Serv皆er包中的用末例Tak枕ea轧no良rde说r(输入崇定单)开发用宴例发起参像与者:Serv录er收益参与叹者:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论