seo入门培训一( 网络赢销、SEM、SEO定义区别)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

UsingUML,Patterns,andJavaObject-OrientedSoftwareEngineeringChapter6SystemDesign:DecomposingtheSystem福州SEOhttp:UsingUML,Patterns,andJava2Design“Therearetwowaysofconstructingasoftwaredesign:Onewayistomakeitsosimplethatthereareobviouslynodeficiencies,andtheotherwayistomakeitsocomplicatedthattherearenoobviousdeficiencies.”-C.A.R.HoareWhichwouldbemoredifficult?BerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava3WhyisDesignsoDifficult?Analysis:FocusesontheapplicationdomainDesign:FocusesonthesolutiondomainDesignknowledgeisamovingtargetThereasonsfordesigndecisionsarechangingveryrapidlyHalftimeknowledgeinsoftwareengineering:About3-5yearsWhatIteachtodaywillbeoutofdatein3yearsCostofhardwarerapidlysinking“Designwindow”:TimeinwhichdesigndecisionshavetobemadeTechniqueTime-boxedprototypingThe“evolutionaryrapiddevelopment”processfocusesontheuseofsmallartisan-basedteamsintegratingsoftwareandsystemsengineeringdisciplinesworkingmultiple,oftenparallelshort-durationtimeboxeswithfrequentcustomerinteraction.…reuseofarchitecturalcomponents…BerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava4OverviewSystemDesignI(Today)0.OverviewofSystemDesign1.DesignGoals2.SubsystemDecompositionSystemDesignII:AddressingDesignGoals(nextlecture)3.Concurrency4.Hardware/SoftwareMapping5.PersistentDataManagement6.GlobalResourceHandlingandAccessControl7.SoftwareControl8.BoundaryConditionsMoreSelfreadingBerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava5SystemDesignSystemDesign2.SystemLayers/PartitionsCohesion/Coupling5.Data1.DesignGoalsDefinitionTrade-offs4.Hardware/SpecialpurposeSoftwareBuyorBuildTrade-offAllocationConnectivity3.ConcurrencyDatastructurePersistentObjectsFilesDatabasesManagementAccesscontrolSecurity6.GlobalResourceHandling8.BoundaryConditionsInitializationTerminationFailureDecompositionMapping7.SoftwareControlIdentificationofThreadsMonolithicEvent-DrivenThreadsConc.ProcessesBerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava6HowtousetheresultsfromtheRequirementsAnalysisforSystemDesignNonfunctionalrequirements=Activity1:DesignGoalsDefinitionFunctionalmodel=Activity2:Systemdecomposition(Selectionofsubsystemsbasedonfunctionalrequirements,cohesion,andcoupling)Objectmodel=Activity4:Hardware/softwaremappingActivity5:PersistentdatamanagementDynamicmodel=Activity3:ConcurrencyActivity6:GlobalresourcehandlingActivity7:SoftwarecontrolSubsystemDecompositionActivity8:BoundaryconditionsBerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava7ListofDesignGoalsReliabilityModifiabilityMaintainabilityUnderstandabilityAdaptabilityReusabilityEfficiencyPortabilityTraceabilityofrequirementsFaulttoleranceBackward-compatibilityCost-effectivenessRobustnessHigh-performanceGooddocumentationWell-definedinterfacesUser-friendlinessReuseofcomponentsRapiddevelopmentMinimum#oferrorsReadabilityEaseoflearningEaseofrememberingEaseofuseIncreasedproductivityLow-costFlexibilityAretheseexhaustive?Anythingelse?Whatdowedowithallthese?BerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava8HowdowegettheDesignGoals?Let’slookatasmallexampleCurrentSituation:ComputersmustbeusedintheofficeWhatwewant:Acomputerthatcanbeusedinmobilesituations.ProblemWhy?Whatarethetechnicaltermsdescribingthetwo?BerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava9SingleOutputDevicePreciseInputDirectionwheretheuserlooksisirrelevantFixedNetworkConnectionLocationofuserdoesnotmatterIdentifyCurrentTechnologyConstraintsBerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava10SingleOutputDevicePreciseInputDirectionwheretheuserlooksisirrelevantFixedNetworkConnectionLocationofuserdoesnotmatterMultipleOutputDevicesVagueInputDirectionwheretheuserlooksisrelevantDynamicNetworkConnectionLocation-basedGeneralizeConstraintsusingTechnologyEnablersAnyconcretescenarios?BerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava11EstablishNewDesignGoalsMobileNetworkConnectionMultipleOutputDevicesLocation-BasedMultimodalInput(UsersGaze,UsersLocation,…)VagueinputAretheseRequirementsorDesign?BerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava12SharpentheDesignGoalsLocation-basedinputInputdependsonuserlocationInputdependsonthedirectionwheretheuserlooks(“egocentricsystems”)Multi-modalinputTheinputcomesfrommorethanoneinputdeviceDynamicconnectionContractsareonlyvalidforalimitedtimeIsthereapossibilityoffurthergeneralizations?Example:locationcanbeseenasaspecialcaseofcontextUserpreferenceispartofthecontextInterpretationofcommandsdependsoncontextBerndBruegge&AllenH.DutoitObject-OrientedSoftwareEngineering:UsingUML,Patterns,andJava13RelationshipBetweenDesignGoalsReliab

1 / 53
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功