软件设计规格书模板(A Software Design Specification Template

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

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

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

资源描述

ASoftwareDesignSpecificationTemplateASoftwareDesignSpecificationTemplatebyBradAppletonbrad@bradapp.net©1994-1997byBradfordD.AppletonPermissionisherebygrantedtomakeanddistributeverbatimcopiesofthisdocumentprovidedthecopyrightnoticeandthispermissionnoticearepreservedonallcopies.TableofContents●Introduction●DocumentOutline●DocumentDescription❍Introduction❍SystemOverview❍DesignConsiderations■AssumptionsandDependencies■GeneralConstraints■GoalsandGuidelines■DevelopmentMethods❍ArchitecturalStrategies❍SystemArchitecture■SubsystemArchitecture❍PoliciesandTactics❍DetailedSystemDesign■DetailedSubsystemDesign❍Glossary❍BibliographyIntroductionThefollowingisanattempttoputtogetheracomplete,yetreasonablyflexibletemplatefor[2009/12/2608:37:28]ASoftwareDesignSpecificationTemplatethespecificationofsoftwaredesigns.Whereverpossible,Ihavetriedtoprovideguidelines(insteadofprescribingrequirements)forthecontentsofvarioussectionsandsubsectionsofthedocument.Somemayprefertorequiremoredetailedsubsectionsofaparticularsection,choosingoneormoreofthesubsectiontopicsfromthelistofguidelinesprovided.Inthissense,thisdocumentisreallyatemplateforatemplate.Indevisingthistemplate,Ihavegleanedinformationfrommanysources,includingvarioustextsonSoftwareEngineering(Pressman,Sommerville,andVanVliet),Object-OrientedDevelopment(Booch,Rumbaugh,Berard,andWirfs-Brock),variousSEIreports,DoD-StdandMil-Stddocumentationrequirements(2167/2167A),andIEEEdocumentationstandards(particularlyIEEE-1016forsoftwaredesigns,andIEEE-830forsoftwarerequirements).Ihavemadeeveryeffortnottoassumeorimposeaparticularsoftwaredevelopmentmethodologyorparadigm,andtoplacemoreemphasisoncontentthanonformat.Itismydesirethatacompletedsoftwaredesignspecificationmeetthefollowingcriteria:●Itshouldbeabletoadequatelyserveastrainingmaterialfornewprojectmembers,impartingtothemenoughinformationandunderstandingabouttheprojectimplementation,sothattheyareabletounderstandwhatisbeingsaidindesignmeetings,andwon'tfeelasiftheyaredrowningwhentheyarefirstaskedtocreateormodifysourcecode.●Itshouldserveasobjectiveevidencethatthedesignersand/orimplementorsarefollowingthroughontheircommitmenttoimplementthefunctionalitydescribedintherequirementsspecification.●Itneedstobeasdetailedaspossible,whileatthesametimenotimposingtoomuchofaburdenonthedesignersand/orimplementorsthatitbecomesoverlydifficulttocreateormaintain.Pleasenotethattherearenosectionsinthisdocumentfordescribingadministrativeorbusinessduties,orforproposingplansorschedulesfortestingordevelopment.Thesectionsinthisdocumentareconcernedsolelywiththedesignofthesoftware.Whilethereareplacesinthisdocumentwhereitisappropriatetodiscusstheeffectsofsuchplansonthesoftwaredesign,itisthisauthor'sopinionthatmostofthedetailsconcerningsuchplansbelonginoneormoreseparatedocuments.DocumentOutline[2009/12/2608:37:29]ASoftwareDesignSpecificationTemplateHereistheoutlineoftheproposedtemplateforsoftwaredesignspecifications.Pleasenotethatmanypartsofthedocumentmaybeextractedautomaticallyfromothersourcesand/ormaybecontainedinother,smallerdocuments.Whatfollowsisjustonesuggestedoutlineformattousewhenattemptingtopresentthearchitectureanddesignoftheentiresystemasonesingledocument.Thisbynomeansimpliesthatitliterallyisasingledocument(thatwouldnotbemypersonalpreference):●Introduction●SystemOverview●DesignConsiderations❍AssumptionsandDependencies❍GeneralConstraints❍GoalsandGuidelines❍DevelopmentMethods●ArchitecturalStrategies❍strategy-1nameordescription❍strategy-2nameordescription❍...●SystemArchitecture❍component-1nameordescription❍component-2nameordescription❍...●PoliciesandTactics❍policy/tactic-1nameordescription❍policy/tactic-2nameordescription❍...●DetailedSystemDesign❍module-1nameordescription❍module-2nameordescription❍...●Glossary●BibliographyTheaboveoutlineisbynomeansexclusive.Aparticularnumberingschemeisnotnecessarilyrequiredandyouaremorethanwelcometoaddyourownsectionsorsubsections[2009/12/2608:37:29]ASoftwareDesignSpecificationTemplatewhereyoufeeltheyareappropriate.Inparticularyoumaywishtomovethebibliographyandglossarytothebeginningofthedocumentinsteadofplacingthemattheend.Thesametemplateisintendedtobeusedforbothhigh-leveldesignandlow-leveldesign.Thedesigndocumentusedforhigh-leveldesignisalivingdocumentinthatitgraduallyevolvestoincludelow-leveldesigndetails(althoughperhapstheDetailedDesignsectionmaynotyetbeappropriateatthehigh-leveldesignphase).Theorderingofthesectionsinthisdocumentattemptstocorrespondtotheorderinwhichissuesareaddressedandinwhichdecisionsaremadeduringtheactualdesignprocess.Ofcourseitisunderstoodthatsoftwaredesignsfrequently(andoftenfortunately)don'talwaysproceedinthisorder(orinanylinear,orevenpredictableorder).However,itisusefulforthepurposeofcomprehendingthedesignofthesystemtopresentthemasiftheydid.Frequently,oneofthebestwaystodocumentaproject'sdesignisto

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

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

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

×
保存成功