关闭

关闭

关闭

封号提示

内容

首页 Applying UML and Patterns 英文第2版.pdf

Applying UML and Patterns 英文第2版.pdf

Applying UML and Patterns 英文第2版…

上传者: znhbjbond 2011-10-10 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《Applying UML and Patterns 英文第2版pdf》,可适用于IT/计算机领域,主题内容包含SampleUnifiedProcessArtifactsandTiming(sstartrrefine)SampleUnifiedProcessA符等。

SampleUnifiedProcessArtifactsandTiming(sstartrrefine)SampleUnifiedProcessArtifactRelationshipsDisciplineArtifactIteration^IncepElabELEnConstCLCnTransTTBusinessModelingDomainModelsRequirementsUseCaseModelsrVisionarSupplementarySpecificationsrGlossarysrDesignDesignModelSWArchitectureDocumentDataModelsssrrImplementationImplementationModelsrrProjectManagementSWDevelopmentPlansrrrTestingTestModelsrEnvironmentDevelopmentCasesr:SystementerItem(id,quantity)ProcessSaleCustomerarrivesCashiermakesnewsaleUseCasesSystemSequenceDiagramsmakeNewSale()SaletimeStampRegisterProductCatalogdomainconceptssystemeventsDomainModelUseCaseModelDesignModel:RegisterenterItem(id,quantity):ProductCatalogspec:=getSpecification(id)addLineItem(spec,quantity):SaleusecaserealizationwithinteractiondiagramsconceptualclassesinthedomaininspirethenamesofsomesoftwareclassesinthedesignmakeNewSale()create()RegistermakeNewSale()enterItem()ProductCataloggetSpecification():ProductSpecificationthedesignclassesdiscoveredwhiledesigningUCRscanbesummarizedinclassdiagramsCashierProcessSaleUseCaseDiagrams:CashierCapturedonGeneralResponsibilityAssignmentSoftwarePatterns(GRASIPatternDescriptionInformationExpertAgeneralprincipleofobjectdesignandresponsibilityassignmentAssignaresponsibilitytotheinformationexperttheclassthathastheinformationnecessarytofulfilltheresponsibilityCreatorWhocreates(NotethatFactoryisacommonalternatesolution)AssignclassBtheresponsibilitytocreateaninstanceofclassAifoneoftheseistrue:BcontainsABrecordsABaggregatesABcloselyusesABhastheinitializingdataforAControllerWhohandlesasystemeventAssigntheresponsibilityforhandlingasystemeventmessagetoaclassrepresentingoneofthesechoices:Representstheoverallsystem,device,orasubsystem(facadecontroller)Representsausecasescenariowithinwhichthesystemeventoccurs(usecaseorsessioncontroller)LowCoupling(evaluative)HowtosupportlowdependencyandincreasedreuseAssignresponsibilitiessothat(unnecessary)couplingremainslowHighCohesion(evaluative)HowtokeepcomplexitymanageableAssignresponsibilitiessothatcohesionremainshighPolymorphismWhoisresponsiblewhenbehaviorvariesbytypeWhenrelatedalternativesorbehaviorsvarybytype(class),assignresponsibilityforthebehaviorusingpolymorphicoperationstothetypesforwhichthebehaviorvariesPureFabricationWhoisresponsiblewhenyouaredesperate,anddonotwanttoviolatehighcohesionandlowcouplingAssignahighlycohesivesetofresponsibilitiestoanartificialorconvenience"behavior"classthatdoesnotrepresentaproblemdomainconceptsomethingmadeup,inordertosupporthighcohesion,lowcoupling,andreuseIndirectionHowtoassignresponsibilitiestoavoiddirectcouplingAssigntheresponsibilitytoanintermediateobjecttomediatebetweenothercomponentsorservices,sothattheyarenotdirectlycoupledProtectedVariationsHowtoassignresponsibilitiestoobjects,subsystems,andsystemssothatthevariationsorinstabilityintheseelementsdonothaveanundesirableimpactonotherelementsIdentifypointsofpredictedvariationorinstabilityassignresponsibilitiestocreateastable"interface"aroundthemTABLEOFCONTENTSForewordxvPrefacexviiPARTIINTRODUCTIONObjectOrientedAnalysisandDesignApplyingUMLandPatternsinOOADAssigningResponsibilitiesWhatIsAnalysisandDesignWhatIsObjectOrientedAnalysisandDesignAnExampleTheUMLFurtherReadingsIterativeDevelopmentandtheUnifiedProcessTheMostImportantUPIdea:IterativeDevelopmentAdditionalUPBestPracticesandConceptsTheUPPhasesandScheduleOrientedTermsTheUPDisciplines(wasWorkflows)ProcessCustomizationandtheDevelopmentCaseTheAgileUPTheSequential"Waterfall"LifecycleYouKnowYouDidn'tUnderstandtheUPWhenFurtherReadingsCaseStudy:TheNextGenPOSSystemTheNextGenPOSSystemArchitecturalLayersandCaseStudyEmphasisTheBook'sStrategy:IterativeLearningandDevelopmentPARTIIINCEPTIONInceptionInception:AnAnalogyInceptionMayBeVeryBriefWhatArtifactsMayStartinInceptionYouKnowYouDidn'tUnderstandInceptionWhenUnderstandingRequirementsTypesofRequirementsFurtherReadingsUseCaseModel:WritingRequirementsinContextGoalsandStoriesBackgroundUseCasesandAddingValueUseCasesandFunctionalRequirementsUseCaseTypesandFormatsFullyDressedExample:ProcessSaleExplainingtheSectionsCoalsandScopeofaUseCaseFindingPrimaryActors,Goals,andUseCasesCongratulations:UseCasesHaveBeenWritten,andAreImperfectWriteUseCasesinanEssentialUlFreeStyleActorsUseCaseDiagramsRequirementsinContextandLowLevelFeatureListsUseCasesAreNotObjectOrientedviiTABLEOFCONTENTSUseCasesWithintheUPCaseStudy:UseCasesintheNextGenInceptionPhaseFurtherReadingsUPArtifactsandProcessContextIdentifyingOtherRequirementsNextGenPOSExamplesNextGenExample:(Partial)SupplementarySpecificationCommentary:SupplementarySpecificationNextGenExample:(Partial)VisionCommentary:VisionNextGenExample:A(Partial)GlossaryCommentary:Glossary(DataDictionary)ReliableSpecifications:AnOxymoronOnlineArtifactsattheProjectWebsiteNotMuchUMLDuringInceptionOtherRequirementArtifactsWithintheUPFurtherReadingsUPArtifactsandProcessContextFromInceptiontoElaborationCheckpoint:WhatHappenedinInceptionOntoElaborationPlanningtheNextIterationIterationRequirementsandEmphasis:FundamentalOOADSkillsWhatArtifactsMayStartinElaborationYouKnowYouDidn'tUnderstandElaborationWhenPARTIIIELABORATIONITERATIONUseCaseModel:DrawingSystemSequenceDiagramsSystemBehaviorSystemSequenceDiagramsExampleofanSSDInterSystemSSDsSSDsandUseCasesSystemEventsandtheSystemBoundaryNamingSystemEventsandOperationsShowingUseCaseTextSSDsandtheGlossarySSDsWithintheUPFurtherReadingsUPArtifactsDomainModel:VisualizingConceptsDomainModelsConceptualClassIdentificationCandidateConceptualClassesfortheSalesDomainDomainModelingGuidelinesResolvingSimilarConceptualClassesRegistervs"POST"ModelingtheUnrealWorldSpecificationorDescriptionConceptualClassesUMLNotation,Models,andMethods:MultiplePerspectivesLoweringtheRepresentationalGapExample:TheNextGenPOSDomainModelDomainModelsWithintheUPFurtherReadingsviiiTABLEOFCONTENTSUPArtifactsDomainModel:AddingAssociationsAssociationsTheUMLAssociationNotationFindingAssociationsCommonAssociationsListAssociationGuidelinesRolesHowDetailedShouldAssociationsBeNamingAssociationsMultipleAssociationsBetweenTwoTypesAssociationsandImplementationNextGenPOSDomainModelAssociationsNextGenPOSDomainModelDomainModel:AddingAttributesAttributesUMLAttributeNotationValidAttributeTypesNonprimitiveDataTypeClassesDesignCreep:NoAttributesasForeignKeysModelingAttributeQuantitiesandUnitsAttributesintheNextGenDomainModelMultiplicityFromSalesLineltemtoItemDomainModelConclusionUseCaseModel:AddingDetailwithOperationContractsContractsExampleContract:enterltemContractSectionsPostconditionsDiscussionenterltemPostconditionsWritingContractsLeadstoDomainModelUpdatesWhenAreContractsUsefulContractsvsUseCasesGuidelines:ContractsNextGenPOSExample:ContractsChangestotheDomainModelContracts,Operations,andtheUMLOperationContractsWithintheUPFurtherReadingsFromRequirementstoDesigninthisIterationIterativelyDotheRightThing,DotheThingRightDidn'tThatTakeWeeksToDoNo,NotExactlyOntoObjectDesignInteractionDiagramNotationSequenceandCollaborationDiagramsExampleCollaborationDiagram:makePaymentExampleSequenceDiagram:makePaymentInteractionDiagramsAreValuableCommonInteractionDiagramNotationBasicCollaborationDiagramNotationBasicSequenceDiagramNotationGRASP:DesigningObjectswithResponsibilitiesResponsibilitiesandMethodsResponsibilitiesandInteractionDiagramsPatternsiXTABLEOFCONTENTsGRASP:PatternsofGeneralPrinciplesinAssigningResponsibilitiesTheUMLClassDiagramNotationInformationExpert(orExpert)CreatorLowCoupling'HighCohesionControllerObjectDesignandCRCCardsFurtherReadingsDesignModel:UseCaseRealizationswithGRASPPatternsUseCaseRealizationsArtifactCommentsUseCaseRealizationsfortheNextGenIterationObjectDesign:makeNewSaleObjectDesign:enterItemObjectDesign:endSaleObjectDesign:makePaymentObjectDesign:startUpConnectingtheUILayertotheDomainLayerUseCaseRealizationsWithintheUPSummaryDesignModel:DeterminingVisibilityVisibilityBetweenObjectsVisibilityIllustratingVisibilityintheUMLDesignModel:CreatingDesignClassDiagramsWhentoCreateDCDsExampleDCDDCDandUPTerminologyDomainModelvsDesignModelClassesCreatingaNextGenPOSBCDNotationforMemberDetailsDCDs,Drawing,andCASEToolsDCDsWithintheUPUPArtifactsImplementationModel:MappingDesignstoCodeProgrammingandtheDevelopmentProcessMappingDesignstoCodeCreatingClassDefinitionsfromDCDsCreatingMethodsfromInteractionDiagramsContainerCollectionClassesinCodeExceptionsandErrorHandlingDefiningtheSalemakeLineItemMethodOrderofImplementationTestFirstProgrammingSummaryofMappingDesignstoCodeIntroductiontotheProgramSolutionPARTIVELABORATIONITERATIONIterationanditsRequirementsIterationEmphasis:ObjectDesignandPatternsFromIterationtoIterationRequirementsXTABLEOFCONTENTSRefinementofAnalysisorientedArtifactsinthisIterationGRASP:MorePatternsforAssigningResponsibilitiesPolymorphismPureFabricationIndirectionProtectedVariationsDesigningUseCaseRealizationswithGoFDesignPatternsAdapter(GoF)"Analysis"DiscoveriesDuringDesign:DomainModelFactory(GoF)Singleton(GoF)ConclusionoftheExternalServiceswithVaryingInterfacesProblemStrategy(GoF)Composite(GoF)andOtherDesignPrinciplesFacade(GoF)ObserverPublishSubscribeDelegationEventModel(GoF)ConclusionFurtherReadingsPARTVELABORATIONITERATIONIterationandItsRequirementsIterationRequirementsIterationEmphasisRelatingUseCasesTheincludeRelationshipTerminology:Concrete,Abstract,Base,andAdditionUseCasesTheextendRelationshipThegeneralizeRelationshipUseCaseDiagramsModelingGeneralizationNewConceptsfortheDomainModelGeneralizationDefiningConceptualSuperclassesandSubclassesWhentoDefineaConceptualSubclassWhentoDefineaConceptualSuperclassNextGenPOSConceptualClassHierarchiesAbstractConceptualClassesModelingChangingStatesClassHierarchiesandInheritanceinSoftwareRefiningtheDomainModelAssociationClassesAggregationandCompositionTimeIntervalsandProductPricesFixinganIteration"Error"AssociationRoleNamesRolesasConceptsvsRolesinAssociationsDerivedElementsQualifiedAssociationsReflexiveAssociationsOrderedElementsUsingPackagestoOrganizetheDomainModelAddingNewSSDsandContractsNewSystemSequenceDiagramsNewSystemOperationsNewSystemOperationContractsxiTABLEOFCONTENTSModelingBehaviorinStatechartDiagramsEvents,States,andTransitionsStatechartDiagramsStatechartDiagramsintheUPUseCaseStatechartDiagramsUseCaseStatechartDiagramsforthePOSApplicationClassesthatBenefitfromStatechartDiagramsIllustratingExternalandIntervalEventsAdditionalStatechartDiagramNotationFurtherReadingsDesigningtheLogicalArchitecturewithPatternsSoftwareArchitectureArchitecturalPattern:LayersTheModelViewSeparationPrincipleFurtherReadingsOrganizingtheDesignandImplementationModelPackagesPackageOrganizationGuidelinesMoreUMLPackageNotationFurtherReadingsIntroductiontoArchitecturalAnalysisandtheSADArchitecturalAnalysisTypesandViewsofArchitectureTheScience:IdentificationandAnalysisofArchitecturalFactorsExample:PartialNextGenPOSArchitecturalFactorTableTheArt:ResolutionofArchitecturalFactorsSummaryofThemesinArchitecturalAnalysisArchitecturalAnalysiswithintheUPFurtherReadingsDesigningMoreUseCaseRealizationswithObjectsandPatternsFailovertoLocalServicesPerformancewithLocalCachingHandlingFailureFailovertoLocalServiceswithaProxy(GoF)DesigningforNonFunctionalorQualityRequirementsAccessingExternalPhysicalDeviceswithAdaptersBuyvsBuildAbstractFactory(GoF)forFamiliesofRelatedObjectsHandlingPaymentswithPolymorphismandDoItMyselfConclusionDesigningaPersistenceFrameworkwithPatternsTheProblem:PersistentObjectsTheSolution:APersistenceServicefromaPersistenceFrameworkFrameworksRequirementsforthePersistenceServiceandFrameworkKeyIdeasPattern:RepresentingObjectsasTablesUMLDataModelingProfilePattern:ObjectIdentifierAccessingaPersistenceServicewithaFacadeMappingObjects:DatabaseMapperorDatabaseBrokerPatternFrameworkDesignwiththeTemplateMethodPatternMaterializationwiththeTemplateMethodPatternConfiguringMapperswithaMapperFactoryPattern:CacheManagementConsolidatingandHidingSQLStatementsinOneClassxiiTABLEOFCONTENTSModelingBehaviorinStatechartDiagramsEvents,States,andTransitionsStatechartDiagramsStatechartDiagramsintheUPUseCaseStatechartDiagramsUseCaseStatechartDiagramsforthePOSApplicationClassesthatBenefitfromStatechartDiagramsIllustratingExternalandIntervalEventsAdditionalStatechartDiagramNotationFurtherReadingsDesigningtheLogicalArchitecturewithPatternsSoftwareArchitectureArchitecturalPattern:LayersTheModelViewSeparationPrincipleFurtherReadingsOrganizingtheDesignandImplementationModelPackagesPackageOrganizationGuidelinesMoreUMLPackageNotationFurtherReadingsIntroductiontoArchitecturalAnalysisandtheSADArchitecturalAnalysisTypesandViewsofArchitectureTheScience:IdentificationandAnalysisofArchitecturalFactorsExample:PartialNextGenPOSArchitecturalFactorTableTheArt:ResolutionofArchitecturalFactorsSummaryofThemesinArchitecturalAnalysisArchitecturalAnalysiswithintheUPFurtherReadingsDesigningMoreUseCaseRealizationswithObjectsandPatternsFailovertoLocalServicesPerformancewithLocalCachingHandlingFailureFailovertoLocalServiceswithaProxy(GoF)DesigningforNonFunctionalorQualityRequirementsAccessingExternalPhysicalDeviceswithAdaptersBuyvsBuildAbstractFactory(GoF)forFamiliesofRelatedObjectsHandlingPaymentswithPolymorphismandDoItMyselfConclusionDesigningaPersistenceFrameworkwithPatternsTheProblem:PersistentObjectsTheSolution:APersistenceServicefromaPersistenceFrameworkFrameworksRequirementsforthePersistenceServiceandFrameworkKeyIdeasPattern:RepresentingObjectsasTablesUMLDataModelingProfilePattern:ObjectIdentifierAccessingaPersistenceServicewithaFacadeMappingObjects:DatabaseMapperorDatabaseBrokerPatternFrameworkDesignwiththeTemplateMethodPatternMaterializationwiththeTemplateMethodPatternConfiguringMapperswithaMapperFactoryPattern:CacheManagementConsolidatingandHidingSQLStatementsinOneClassxiiTABLEOFCONTENTSTransactionalStatesandtheStatePatternDesigningaTransactionwiththeCommandPatternLazyMaterializationwithaVirtualProxyHowtoRepresentRelationshipsinTablesPersistentObjectSuperclassandSeparationofConcernsUnresolvedIssuesPARTVISPECIALTOPICSOnDrawingandToolsOnSpeculativeDesignandVisualThinkingSuggestionsforUMLDrawingWithintheDevelopmentProcessToolsandSampleFeaturesExampleTwoIntroductiontoIterativePlanningandProjectIssuesRankingRequirementsRankingProjectRisksAdaptivevsPredictivePlanningPhaseandIterationPlansIterationPlan:WhattoDointheNextIterationRe

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +2积分

资料评价:

/49
仅支持在线阅读

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部