Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SystemDesignDocumentTemplate
Thistemplateforthissystemdesigndocument(SDD)isadoptedfromtheIEEESoftware EngineeringStandardsCollection,IEEEPressandotherSDDtemplates. TitlePage Nameofdocument(refertoproduct,e.g.,SystemDesignDocumentforthe) Date Name RegistrationNumber TableofContents Givepagenumbersforeachsection IntroductionProvideanoverviewoftheSDDandadescriptionofthescopeofthesoftware. 1.1 PurposedefinethepurposeofthisSDDandspecifyintendedreadership. 1.2 Scope identify the software products to be produced by name; explain what is the proposed software will do (and not do, if necessary); describe the relevant benefits, objectivesandgoalsaspreciselyaspossible;andbeconsistentwithrelatedhigherlevel specifications. 1.3 Referencesprovideacompletelistofalltheapplicableandreferenceddocuments. Minimally, a reference to the SRS goes here. If you used any other types of documents to arrive at this design (the Somerville text, documents provided by the client),listthemhere. 1.4 Overview describe what the rest of the SDD contains and explain how the SDD is organized. 1.5 ConstraintsBrieflydescribeanyrestrictions,limitationsorconstraintsthatimpactthe designorimplementation SystemOverviewBrieflyintroducethesystemcontextanddesign,anddiscussthebackground totheproject. PutUseCasediagramfromSRSheretosupplementthetext.
1|Page
SDDTemplateECX4267SoftwareEngineeringConcepts 2010
SystemArchitecture 3.1 ArchitecturalDescriptionAblockdiagramshowingmajorsubsystemsandthe interconnectionsamongthem.(UMLDeploymentDiagram) 3.2 ComponentDecompositionDescriptionAdecompositionofthesubsystemsthat summarizesthesoftwarecomponents.(UMLPackageDiagram) OODPutobjectdiagrams,sequencediagrams,hierarchydiagramandaggregationchart here(UMLClassDiagram).EachusergoalusecaseintheSRSshouldhavea correspondingsequencediagramormore.Includeobjectstatediagrams(UMLState Diagram)asappropriate. 3.3 ArchitecturalAlternativesDiscussotherarchitecturesthatwereconsidered. 3.4 DesignRationaleDiscusstherationaleforselectingthearchitecturedescribedin3.1,including thecriticalissuesandtrade/offsthatwereconsidered. 4 HumanInterfaceDesign(Screens) 4.1 OverviewoftheUserInterfaceDescribethegeneralfunctionalityofthesystemfrom theusersperspective. 4.2 ScreenImagesScreenshotsshowingtheinterfacefromtheusersperspective. Thesecanbehanddrawnoryoucanuseanautomateddrawingtool.Justmakethemas accurateaspossible.(Graphpaperworkswell.) 4.3 ScreenObjectsandActionsAdiscussionofscreenobjectsandactionsassociatedwith thoseobjects. 4.4 ReportFormatsadescriptionofmajorreportsprovidedbythesystem. Thesecanbehanddrawnoryoucanuseanautomateddrawingtool.Justmakethemas accurateaspossible.(Graphpaperworkswell.) 5 ResourceEstimatesAsummaryofcomputerresourceestimatesrequiredforoperatingthe software. 6 Definitions,Acronyms,andAbbreviationsprovidedefinitionsofallterms,acronymsand abbreviationsneededfortheSDD. 3
2|Page
SDDTemplateECX4267SoftwareEngineeringConcepts 2010
NotesandExplanationsontheSDD
Architecture
Istheoverallprogramorganizationclear,includingagoodarchitecturaloverviewand justification? Aremoduleswelldefinedincludingtheirfunctionalityandinterfacestoothermodules? Areallthefunctionsthatarelistedintherequirementscoveredsensibly,neitherbytoomany nortoofewmodules? Areallmajordatastructuresdescribedandjustified? Aremajordatastructureshiddenwithaccessfunctions? Isthedatabaseorganizationandcontentspecified? Areallkeyalgorithmsdescribedandjustified? Areallmajorobjectsdescribedandjustified? Istheuserinterfacemodularizedsothatchangesinitwon'taffecttherestoftheprogram? Isastrategyforhandlinguserinputdescribed? Arekeyaspectsoftheuserinterfacedefined? Arememoryuseestimatesandastrategyformemorymanagementdescribedandjustified? IsastrategyforhandlingI/Odescribedandjustified? Isacoherenterrorhandlingstrategyincluded? Areerrormessagesmanagedasasettopresentacleanuserinterface? Isalevelofrobustnessspecified? Arenecessarybuyvs.builddecisionsincluded? Isthearchitecturedesignedtoaccommodatelikelychanges? Isanypartoverorunderarchitected? Arethemajorsystemgoalsclearlystated? Doesthecompletearchitecturehangtogetherconceptually? Isthetopleveldesignindependentofthemachineandlanguagethatwillbeusedtoimplement it? Aremotivationsgivenforallmajordecisions? Areyou,asaprogrammerwhowillimplementthesystem,comfortablewiththearchitecture?
3|Page
SDDTemplateECX4267SoftwareEngineeringConcepts 2010
HighLevelDesign
Haveyouusedroundtripdesign,selectingthebestofseveralattemptsratherthanthefirst attempt? Isthedesignofthecurrentsubprogramconsistentwiththedesignofrelatedsubprograms? Doesthedesignadequatelyaddressissuesthatwereidentifiedanddeferredatthearchitectural level? Areyousatisfiedwiththewaytheprogramhasbeendecomposedintomodulesorobjects? Areyousatisfiedwiththewaythatmoduleshavebeendecomposedintoroutines? Aresubprogramboundarieswelldefined? Aresubprogramsdesignedforminimalinteractionwitheachother? Doesthedesignmakesensebothfromthetopdownandthebottomup? Doesthedesigndifferentiatebetweentheproblemdomaincomponent,theuserinterface component,thetaskmanagementcomponentandthedatamanagementcomponent? Isthedesignintellectuallymanageable? Doesthedesignhavelowcomplexity? Doesthedesignkeepthedegreeofcomponentcouplingaslowaspossible? Doesthedesignkeepthedegreeofcomponentcohesionashighaspossible? Willtheprogrambeeasytomaintain? Doesthedesignholdconnectionsamongsubprogramstoaminimum? Doesthedesignaccountforfutureextensionstotheprogram? Aresubprogramsdesignedsothatyoucanusetheminothersystems? Willthedesignbeeasytoporttoanotherenvironment? Isthedesignlean?Areallofitspartsstrictlynecessary? Isthedesignstratifiedintolayers? Doesthedesignusestandardtechniquesandavoidexotic,hardtounderstandelements?
4|Page