已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某电子元件厂安全生产规范
- 婴幼儿腹泻病临床诊疗与精细化护理全景指南:从病理机制到液体疗法
- 精神科病人防跌倒
- 危化品企业消防安全管理
- 供电服务职业发展规划
- 健康知识内容
- 企业停业安全标准讲解
- 2027夏季酒店用水合同范本三篇
- 2026中原区美术面试题及答案
- 2026大疆部门运营面试题及答案
- 建安工程成本测算表
- 养老护理员初级培训大纲
- 福田汽车公司介绍
- 2025年教师招聘考试结构化面试题库及答案(超强)
- 小飞象母婴店知识培训课件
- 2025年湖北省中小学教师高级职称专业水平能力测试模拟题含参考答案
- 甘肃学考历史试卷及答案
- GB/T 5563-2025橡胶和塑料软管及软管组合件静液压试验方法
- 知识产权企业高级管理人员聘用合同范本
- 装修银行施工方案
- 错混料培训课件
评论
0/150
提交评论