1. 2. 4+13. AViewIsaRepresentationofaStructure,ThatIs,aRepresentationofaSetofSystemElementsandtheRelationsAssociatedWithThem.4+141“4+1”1. LogicalView2. ProcessView3. PhysicalView4. DevelopmentView////////“4+1”SoftwareArchitectureDocumentationØ PrimarypresentationDocumentingaView(1)• Isusuallygraphical• Showselementsandrelationsamongthem• Shouldincludeakeythatexplainsthenotation• Givemeaningofeachsymbol;don’tforgetthelines!1. 2. 3. 4. 5. SoftwareArchitectureDocumentationØ ElementcatalogDocumentingaView(2)• Explainselementsdepictedinprimarypresentation• IsusuallyatablewithelementnameandtextualdescriptionSoftwareArchitectureDocumentationØ VariabilityguideDocumentingaView(3)Identifypointswheresystemcanbeconfigured• Numberofinstancesinapool• Optionalinclusionofcomponents(plug-ins,add-ons)• Selectionamongdifferentimplementationsofacomponentorconnector• Parameterizedvaluessetatbuild,deployorrun-timeSoftwareArchitectureDocumentationØ ArchitecturebackgroundDocumentingaView(4)• Rationalefordesigndecisions(includingrelevantrejectedalternatives)• Resultsofanalysis,prototypes,andexperiments• AssumptionsandconstraintsaffectingthisviewSoftwareArchitectureDocumentationØ RelatedviewsDocumentingaView(5)• PointertoparentvieworchildrenviewsSoftwareArchitectureDocumentationOutlineofaDocumentedViewSoftwareArchitectureDocumentØ Documentationroadmap• Showshowdocumentationisorganized• Hasreferencetotemplateused• Includesscenariosforusingthedocumentation• Descriptionofthesystemanditspurpose• Contextdiagramtoshowscope• MaypointtooverviewelsewhereintheoverallsystemdocumentationedViewØ SystemOverviewSoftwareArchitectureDocumentØ Requirements• Maypointtoseparaterequirementsdocument• Threekindsofrequirementsarerelevanttothearchitecture:• Functionalrequirements(usuallycapturedasusecases)• Qualityattributerequirements(performanceavailability,etc.)• Designconstraints;example:“thesystemshalluseHibernateforpersistence”SoftwareArchitectureDocumentØ Mappingbetweenviews• TablesshowinghowelementsinoneviewmaptoelementsinanotherviewSoftwareArchitectureDocumentØ Architectureanalysisandrationale• Rationaleforcross-viewdesigndecisions• ResultsofarchitectureevaluationØ Mappingrequirementstoarchitecture• Showshoweachrequirementissatisfiedbyoneormoreelementsofthearchitecture,oranarchitecturalapproachØ Glossaryandacronymlist• MaypointtoalargerglossaryelsewhereSoftwareArchitectureDocumentØ OutlineofSoftwareArchitectureDocumentSoftwareArchitectureDocumentstakeholderContact:xue.anzhen@gmail.com