已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,Chapter2.IntroducingtheUML,OverviewoftheUMLThreestepstounderstandingtheUMLSoftwarearchitectureThesoftwaredevelopmentprocess,.,Introduction,TheUnifiedModelingLanguage(UML)isastandardlanguageforwritingsoftwareblueprints.TheUMLisappropriateformodelingsystemsrangingfromenterpriseinformationsystemstodistributedWeb-basedapplicationsandeventohardrealtimeembeddedsystems.,.,Eventhoughitisexpressive,theUMLisnotdifficulttounderstandandtouse.LearningtoapplytheUMLeffectivelystartswithformingaconceptualmodelofthelanguage,whichrequireslearningthreemajorelements:theUMLsbasicbuildingblocks,therules,somecommonmechanisms.,.,TheUMLisprocessindependent,althoughoptimallyitshouldbeusedinaprocessthatisusecasedriven,architecture-centric,iterative,andincremental.,.,2.1AnOverviewoftheUML,TheUMLisalanguageforVisualizingSpecifyingConstructingDocumentingtheartifactsofasoftware-intensivesystem.,.,2.1.1TheUMLIsaLanguage,Alanguageprovidesavocabularyandtherulesforcombiningwordsinthatvocabularyforthepurposeofcommunication.Amodelinglanguageisalanguagewhosevocabularyandrulesfocusontheconceptualandphysicalrepresentationofasystem.AmodelinglanguagesuchastheUMListhusastandardlanguageforsoftwareblueprints.,.,Modelingyieldsanunderstandingofasystem.Noonemodeliseversufficient.ThevocabularyandrulesofalanguagesuchastheUMLtellyouhowtocreateandreadwell-formedmodels,buttheydonttellyouwhatmodelsyoushouldcreateandwhenyoushouldcreatethem.Thatstheroleofthesoftwaredevelopmentprocess.,.,2.1.2TheUMLIsaLanguageforVisualizing,Formanyprogrammers,thedistancebetweenthinkingofanimplementationandthenpoundingitoutincodeisclosetozero.However,thereareseveralproblemswiththis:First,communicatingthoseconceptualmodelstoothersiserror-proneunlesseveryoneinvolvedspeaksthesamelanguage.Second,therearesomethingsaboutasoftwaresystemyoucantunderstandunlessyoubuildmodelsthattranscendthetextualprogramminglanguage.Third,ifthedeveloperwhocutthecodeneverwrotedownthemodelsthatareinhisorherhead,thatinformationwouldbelostforeveror,atbest,onlypartiallyrecreatablefromtheimplementationoncethatdevelopermovedon.,.,WritingmodelsintheUMLaddressesthethirdissue:Anexplicitmodelfacilitatescommunication.Somethingsarebestmodeledtextually;othersarebestmodeledgraphically.TheUMLissuchagraphicallanguage.TheUMLismorethanjustabunchofgraphicalsymbols.Rather,behindeachsymbolintheUMLnotationisawell-definedsemantics.,.,2.1.3TheUMLIsaLanguageforSpecifying,Inthiscontext,specifyingmeansbuildingmodelsthatareprecise,unambiguous,andcomplete.Inparticular,theUMLaddressesthespecificationofalltheimportantanalysis,design,andimplementationdecisionsthatmustbemadeindevelopinganddeployingasoftware-intensivesystem.,.,2.1.4TheUMLIsaLanguageforConstructing,TheUMLisnotavisualprogramminglanguage,butitsmodelscanbedirectlyconnectedtoavarietyofprogramminglanguages.ThismappingpermitsforwardengineeringthegenerationofcodefromaUMLmodelintoaprogramminglanguage.Thereverseisalsopossible:YoucanreconstructamodelfromanimplementationbackintotheUML.,.,2.1.5TheUMLIsaLanguageforDocumenting,Ahealthysoftwareorganizationproducesallsortsofartifactsinadditiontorawexecutablecode.Theseartifactsinclude(butarenotlimitedto)RequirementsArchitectureDesignSourcecodeProjectplansTestsPrototypesReleasesTheUMLaddressesthedocumentationofasystemsarchitectureandallofitsdetails.,.,2.1.6WhereCantheUMLBeUsed?,TheUMLisintendedprimarilyforsoftware-intensivesystems.IthasbeenusedeffectivelyforsuchdomainsasEnterpriseinformationsystemsBankingandfinancialservicesTelecommunicationsTransportationDefense/aerospaceRetailMedicalelectronicsScientificDistributedWeb-basedservicesTheUMLisnotlimitedtomodelingsoftware.,.,2.2AConceptualModeloftheUML,TounderstandtheUML,youneedtoformaconceptualmodelofthelanguage,andthisrequireslearningthreemajorelements:theUMLsbasicbuildingblocks,therulesthatdictatehowthosebuildingblocksmaybeputtogether,andsomecommonmechanismsthatapplythroughouttheUML.,.,2.2.1BuildingBlocksoftheUML,ThevocabularyoftheUMLencompassesthreekindsofbuildingblocks:ThingsRelationshipsDiagramsThingsaretheabstractionsthatarefirst-classcitizensinamodel;relationshipstiethesethingstogether;diagramsgroupinterestingcollectionsofthings.,.,1)ThingsintheUML,Structuralthings:thenounsofUMLmodelsBehavioralthings:thedynamicpartsofUMLmodelsGroupingthings:theorganizationalpartsofUMLmodelsAnnotationalthings:theexplanatorypartsofUMLmodels,.,2)RelationshipsintheUML,DependencyAssociationGeneralizationRealization,.,3)DiagramsintheUML,Adiagramisthegraphicalpresentationofasetofelements,mostoftenrenderedasaconnectedgraphofvertices(things)andpaths(relationships).Youdrawdiagramstovisualizeasystemfromdifferentperspectives,soadiagramisaprojectionintoasystem.,.,ClassdiagramObjectdiagramComponentdiagramCompositestructurediagramUsecasediagramSequencediagramCommunicationdiagramStatediagramActivitydiagramDeploymentdiagramPackagediagramTimingdiagramInteractionoverviewdiagram,.,2.2.2RulesoftheUML,TheUMLsbuildingblockscantsimplybethrowntogetherinarandomfashion.Likeanylanguage,theUMLhasanumberofrulesthatspecifywhatawell-formedmodelshouldlooklike.Awell-formedmodelisonethatissemanticallyself-consistentandinharmonywithallitsrelatedmodels.,.,TheUMLhassyntacticandsemanticrulesforNames-Whatyoucancallthings,relationships,anddiagramsScope-ThecontextthatgivesspecificmeaningtoanameVisibility-HowthosenamescanbeseenandusedbyothersIntegrity-HowthingsproperlyandconsistentlyrelatetooneanotherExecution-WhatitmeanstorunorsimulateadynamicmodelTherulesoftheUMLencourageyoubutdonotforceyoutoaddressthemostimportantanalysis,design,andimplementationquestionsthatpushsuchmodelstobecomewell-formedovertime.,.,2.2.3CommonMechanismsintheUML,SpecificationsAdornmentsCerfaceandimplementation.typeandrole.ExtensibilitymechanismsStereotypesTaggedvaluesConstraints,.,Naturally,itsimportantthatyoudosoincontrolledwayssothatthroughtheseextensions,youremaintruetotheUMLspurposethecommunicationofinformation.,.,2.3Architecture,Visualizing,specifying,constructing,anddocumentingasoftware-intensivesystemdemandsthatthesystembeviewedfromanumberofperspectives.Asystemsarchitectureisperhapsthemostimportantartifactthatcanbeusedtomanagethesedifferentviewpointsandthuscontroltheiterativeandincrementaldevelopmentofasystemthroughoutitslifecycle,.,ArchitectureisthesetofsignificantdecisionsaboutTheorganizationofasoftwaresystemTheselectionofthestructuralelementsandtheirinterfacesbywhichthesystemiscomposedTheirbehavior,asspecifiedinthecollaborationsamongthoseelementsThecompositionofthesestructuralandbehavioralelementsintoprogressivelylargersubsystemsThearchitecturalstylethatguidesthisorganization:thestaticanddynamicelementsandtheirinterfaces,theircollaborations,andtheircomposition,.,Figure2-23.ModelingaSystemsArchitecture,.,2.4SoftwareDevelopmentLifeCycle,TheUMLislargelyprocess-independent,meaningthatitisnottiedtoanyparticularsoftwaredevelopmentlifecycle
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年机电设备检修试卷及答案
- 供应自来水协议书
- 购买小标牌合同范本
- 代管代建合同范本
- 供货返点合同范本
- 2025昆明市盘龙区东华街道办事处辅助性岗位劳务派遣工作人员招聘备考题库(1人)含答案详解(突破训练)
- 电焊班组合同范本
- 财产协议书模板范本
- 2025年广东各科中考真题及答案
- 土建工程师笔试题及答案
- 2025年及未来5年市场数据中国土壤调理剂行业市场运营现状及投资规划研究建议报告
- 焦虑症心理课件
- 青花瓷的美课件
- 第21课 人民解放战争的胜利(课件)-【课堂无忧】新课标同步核心素养课堂
- 2026四川农商银行校园招聘1065人考试历年真题汇编附答案解析
- 培训学校招生话术
- 人工智能大语言模型应用教程 课件 模块8 大模型Chat应用
- GB/T 46749-2025城市轨道交通站台屏蔽门系统
- (八年级上册)【历史核心要点复习提纲】
- 2026年水利部黄河水利委员会事业单位公开招聘高校毕业生(265人)历年真题汇编及答案解析(夺冠)
- 支付行业发展趋势
评论
0/150
提交评论