Modeling技术与程式实作_第1页
Modeling技术与程式实作_第2页
Modeling技术与程式实作_第3页
Modeling技术与程式实作_第4页
Modeling技术与程式实作_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

UMLModeling技術與程式實作Microsoft.NET技術代言人林耀珍Michael第三波資訊技術總監2023/1/111林耀珍經歷第三波資訊技術總監育碁數位科技總經理專業認證與專長微軟.NET技術軟體開發流程,資訊系統規劃MicrosoftMCSD/MCSE/MCDBA物件導向技術,RationalOOAD認證講師LotusNotesprincipleCLP/CLIJ2EE2目標與對象對象技術平台的決策人員軟體建構師系統分析師專案經理想要了解UMLModeling的軟體開發人員

目標了解UMLModeling的流程與技術3Agenda時間主題主講人1:30–2:50UML與ModelingTechnology林耀珍2:50–3:10中場休息3:10–4:30運用BorlandTogetherFor.NET進行Modeling與程式實作Borland資深顧問4UML與ModelingTechnology大綱

BestPracticesUML介紹UMLDiagramsandExtensionsDesignpattern5BestPracticesFromIBMRational-RUPDevelopIterativelyManageRequirementsUseComponentArchitecturesModelVisually(UML)ContinuouslyVerifyQualityManageChange

ComponentarchitecturesisevolvedintoServiceOrientedarchitecture.6為什麼需要ModelingSimplevs.ComplexOnemanvs.TeamworkNon-Criticalvs.CriticalVS.7Model&Blueprint模型與藍圖是所有參與者的溝通根據BusinessModelRequirementModelAnalysisModel–PlatformIndependentModelDesignModel–Blueprintforimplementation8ALongTimeAgo…®™&©LucasfilmLtd.9Ifyouonlyknew

thepowerofthedarkside.®™&©LucasfilmLtd.10PreparationandRecommendationMindsetNotreligion,butrigorousIncrementaladoptionTrainingLearning&TrainingApprenticeshipMentorsToolsarerequiredAgileProcessStartSmall®™&©LucasfilmLtd.11TheProcessBusinessModelRequirementModelUserExperienceModellook-Feel&InteractionAnalysisModelDesignModelArchitecturedesignDataModelImplementationModelTestModelDeploymentModelFromIBMRational-RUPRequirementanalysisSystemanalysisSystemDesignImplementationTestingDeployment12UML:UnifiedModelingLanguageTheUMListhestandardlanguageforvisualizingspecifying,constructing,anddocumentingtheartifactsofasoftware-intensivesystemFromIBMRational-RUP13UML發展過程14TheValueoftheUMLIsastandardSupportstheentiresoftwaredevelopmentlifecycleSupportsdiverseapplicationsareasIsbasedonexperienceandneedsoftheusercommunitySupportedbymanytools15Model,View,DiagramModelcontainsviewsfordifferentpurposes.Viewcontainsmultiplediagrams.ProcessViewDeploymentViewLogical

ViewImplementationViewProgrammers

Softwaremanagement

PerformanceScalabilityThroughput

SystemIntegratorsSystemtopology

Delivery,installationcommunicationSystemEngineeringUse-CaseViewStructure

Analysts/

DesignersEnd-userFunctionality16UML12DiagramsBehavior:UseCaseActivitySequenceCollaborationStateChartStructural:ClassComponentDeploymentObjectModelManagement:Packages(classdiagramcontainspackages)Subsystems(classdiagramcontainssubsystems)Models(classdiagramcontainsmodels)17ModelDiagram使用ModelDiagram描述所要執行的Modeling工作18Use-CaseDiagramActors需求模型:Use-CaseModelUsecasemodel描述系統功能,是與客戶溝通的工具UseCases:系統行為或功能Actors:系統的各種使用者UseCasesDiagramsUse-CaseReportsorUse-CaseSpecificationsActors19網路購物系統的需求模型Usecases:BrowsecatalogSearchproductsMaintainshoppingcartLogonMaintainaccountCheckoutorderActorsUserCustomer201.Name:BrowseProductCatalog2.FlowofEvents2.1Basicflow:顯示所有的次類別及促銷產品使用者開啓首頁系統顯示所有的次類別,與當時的促銷產品使用者選取次類別系統顯示該類別的全部產品簡介使用者選擇產品系統顯示該產品的資訊UsecasereportThisisrequirementmodelversion.21Activitydiagram描述Businessprocess或usecase的操作流程22BusinessModelingFindClientsFindEmployees

Deliver

ServiceCollectReceivablesDisbursePayablesEstablishMarketsReportFinancialsPayDividends23UserExperienceModelUIPrototypeNavigateflow:useUIclasswithscreenstereotype241.Name:BrowseProductCatalog2.FlowofEvents2.1Basicflow:顯示所有的次類別及促銷產品使用者開啓首頁系統在畫面的右側顯示所有的次類別系統在畫面的上方顯示pickoftoday的促銷產品簡介使用者選取次類別系統在畫面的內容區顯示該類別的全部產品簡介使用者選擇產品系統在畫面的內容區顯示該產品的資訊,並顯示AddToCart按鈕MoreDetailedUseCaseThisisUserExperienceModelversion,Optional.25AnalysismodelPlatformIndependentModel找出完成usecases所需要的類別Analysisclasses規劃Classes的relationship指派use-casebehaviors給適當的類別找出Operations找出每個class的attributes26AnalysisClassesClassname,operations,attributes27ClassdiagramFindRelationships,becareofbeingtoocomplex28ArchitecturedesignArchitecturedesign處理較高層次的設計元件,包括package,Subsystem,Interface。使用Package組織設計元件。Subsystem包含多個classes,透過Interfaces展現功能。29PackagediagramPackagediagramisaclassdiagramwhichcontainspackages.CommonglobalIntegration<<layer>>Presentation<<layer>>BusinessServices<<layer>>30SubsystemdiagramSubsystem可以realize兩個以上的介面一個介面可以被二個以上的子系統realizeInterfaceZX()Y()<<Interface>>SubsystemA<<subsystem>>SubsystemB<<subsystem>>ClassA1A()B()ClassA2X()Y()ClassB1W()Y()ClassB2X()ClassB3Z()InterfaceAA()B()<<Interface>>31UseCaseDesignWalkthruflowofeventsinusecasebysequencediagram32SequenceDiagrams1:PerformResponsibility

ClientObjectSupplierObjectMessage:Client:SupplierFocusofControlThisisasamplescript.ReflexiveMessageLifeline1.1:PerformAnother

Responsibility HierarchicalMessageNumberingXDestroyobjectAsequencediagramdisplaysobjectinteractionsarrangedinatimesequence33CollaborationDiagramAcollaborationdiagramdisplaysobjectinteractionsorganizedaroundobjectsandtheirlinkstooneanother34CollaborationDiagrams與SequenceDiagrams的比較CollaborationDiagramsSequenceDiagramsShowrelationshipsinadditiontointeractionsShowtheexplicitsequenceofmessagesBetterforvisualizingpatternsofcollaborationBetterforvisualizingoverallflowBetterforvisualizingalloftheeffectsonagivenobjectBetterforreal-timespecificationsandforcomplexscenariosEasiertouseforbrainstormingsessions35ImplementationModelandComponentDiagramForsmallsystem,weuseBusinessfaçadecomponent,Businessrulecomponent,andDataaccesscomponent.36元件設計與VS.NET專案規劃37DeploymentDiagramApplicationserverSQLServerClientBrowserClientMailServerServerSMTPServerLANLANLANWANWAN38WhatwelearnaboutUMLDiagrams?Behavior:UseCaseActivitySequenceCollaborationStateChartStructural:ClassComponentDeploymentObjectModelManagement:Packages(classdiagramcontainspackages)Subsystems(classdiagramcontainssubsystems)Models(classdiagramcontainsmodels)39擴充UML的描述能力StereotypeNoteTagStereotypecanbeusedonlinksandclasses,intext/iconformats.40DesignPatternApatternisasolutiontoaprobleminacontext,itdocumentsinanabstractandcompactformtheproblemthecontextinwhichitoccursagoodsolutionanditembodieswisdomabouthowthesolutionaddressestheproblem.Differentlevelsbasicbuildingblocksdesignpatternsarchitecturepatterns41FaçadeDesignPatternFaçade:definesaclean,high-levelinterfacetoasubsystem.Context:buildingeasy-to-useandmaintainsubsystemsProblem:Eachclassinthesubsystemprovidespartofthesubsystem’sfunctionality,clientshastoknowtheinside,changestothesubsystemmayrequirechangestotheclients.Solution:Addaninterfaceclass(thefaçadeclass)thatknowsthestructureofthesubsystemandforwardsrequests…Consequences:noorlessdependencyofclientfromstructureofsubsystem,idealforlayeredsubsystemsFacade42總結LearnUMLFollowaprocessTryamodelingtoolsFindsupportsTime,Budget,MentoringMayForceWithYou!!43Agenda時間主題主講人1:30–2:50UML與ModelingTechnology林耀珍2:50–3:10中場休息3:10–4:30運用BorlandTogetherFor.NET進行Modeling與程式實作Borland資深顧問44WhatisModelDrivenArchitecture?ANewWaytoSpecifyandBuildSystems2001年由OMG制定的新開發架構以UML塑模為基礎支援完整開發週期:analysis,design,implementation,deployment,maintenance,evolution&integrationwithlatersystems內建協同運作性及跨平台性降低開發初期成本及提高ROI可套用至你所使用的任何環境:Programminglanguage NetworkOperatingsystem Middleware45ModelDrivenArchitecturePlatform-

IndependentModel(PIM)Platform-SpecificModel(PSM)MDAtoolappliesanstandardmappingtogeneratePlatform-SpecificModel(PSM)fromthePIM.Codeispartiallyautomatic,partiallyhand-written.46開發流程AnalysisModelDesignModelArchitecturedesignDataModelUserExperienceModellook-Feel&InteractionImplementationModelPlatform-

IndependentModel(PIM)Platform-SpecificModel(PSM)47UseCaseModel48架構設計49系統設計50BusinessLogicnamespaceBusinessLogic{publicclassTriangle:Shape{ publicoverridedoubleCalculateArea(){ this.Area=this.m_Base*this.m_Height/2; return(this.Area);}privatedoublem_Height;privatedoublem_Base; publicdoubleHeight{get{return(m_Height);}set{m_Height=value;}51PresentationLayertheRectangle.Base=RectB;theRectangle.Height=RectH; theTriangle.Base=TriB;theTr

温馨提示

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

评论

0/150

提交评论