UML建模技术第2章_第1页
UML建模技术第2章_第2页
UML建模技术第2章_第3页
UML建模技术第2章_第4页
UML建模技术第2章_第5页
已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论