Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et...

6
1 Software Requirements and Design (SRD) Vi må ha en standard tittelside (Side 1) på alle dokumenter. I tillegg til tittel, kan vi ha med firmanavn, logo, m.m. Innholdsfortegnelse bør også være med på side 2. 1 Generelt om dokumenter Nedenfor ser vi typiske dokumenter i et software-utviklingsprosjekt (Figure 1-1). Figure 1-1: Typisk Softwaredokumentasjon Alle disse dokumentene skal vi lage utover i faget. 1.1 OneDrive Det kan være lurt å bruke f.eks. Microsoft OneDrive for deling og samhandling ifm utarbeidelse av dokumentene. Da har man muligheten for at flere personer samtidig kan endre på samme dokument på hver sin PC. OneDrive er også innebygd i Windows 10, så det kreves ikke noe ekstra for å ta det i bruk. Man kan lagre opptil 5Gb med data gratis, som jo burde være nok i vårt tilfelle. For best utbytte er det viktig at alle bruker Word 2016, evt. Word Online. 1.2 Dokumentkategorier Dokumenter kan deles inn i ulike kategorier (Figure 1-2).

Transcript of Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et...

Page 1: Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et løpende dokument som brukes til å gi en oversikt over hva som skal lages (Requirements)/utvikles

1

SoftwareRequirementsandDesign(SRD)Vimåhaenstandardtittelside(Side1)påalledokumenter.Itilleggtiltittel,kanvihamedfirmanavn,logo,m.m.Innholdsfortegnelsebørogsåværemedpåside2.

1 GenereltomdokumenterNedenforservitypiskedokumenterietsoftware-utviklingsprosjekt(Figure1-1).

Figure1-1:TypiskSoftwaredokumentasjon

Alledissedokumenteneskalvilageutoverifaget.

1.1 OneDriveDetkanværelurtåbrukef.eks.MicrosoftOneDrivefordelingogsamhandlingifmutarbeidelseavdokumentene.DaharmanmulighetenforatflerepersonersamtidigkanendrepåsammedokumentpåhversinPC.OneDriveerogsåinnebygdiWindows10,sådetkrevesikkenoeekstraforåtadetibruk.Mankanlagreopptil5Gbmeddatagratis,somjoburdeværenokivårttilfelle.ForbestutbytteerdetviktigatallebrukerWord2016,evt.WordOnline.

1.2 DokumentkategorierDokumenterkandelesinniulikekategorier(Figure1-2).

Page 2: Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et løpende dokument som brukes til å gi en oversikt over hva som skal lages (Requirements)/utvikles

2

Figure1-2:Dokumentkategorier

Figure1-3viserforskjellenmellomettradisjoneltskoleprosjektogetvirkeligsoftware-prosjekt.

Figure1-3:Skoleprosjektvs.virkeligprosjekt

Dvs.viskalikkelageetdokumentiformavenrapportidettefaget(somjoervanliginoenprosjektfagiskolesammenheng),menetsettmeddokumentersomtilsammenvilinngåsomendelavtotalleveransen.Detteforågjøredetmestmuligvirkelighetsnærtiforholdtilhvordanetvirkeligsoftware-prosjektblirdokumentert.Deteringenfasitmtputarbeidelseavdokumentasjon,determangevarianteruteåår.Deterendelgrunnleggendetingsomgårigjenialleformerfordokumenter.Altdereharlærtomrapportskrivingtidligeregjelderogsåher!–Denenesteforskjellenathererdetfleredokumenteristedenforenrapport.Produktwebsidenblirpåenmåteselverapporten,mensSDP,SRD,STP,osv.blirpåenmåtevedlegg.Dvs.grunnleggende“rapporttekniske”tingsomTabellogfigurnummerering,m.m.måselvfølgeligværemed!

Page 3: Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et løpende dokument som brukes til å gi en oversikt over hva som skal lages (Requirements)/utvikles

3

Typiskstruktur:Forside/Tittelside,innholdsfortegnelse,Innledning,enellerflerekapitlermedinnhold,+evtvedlegg.Brukenummereringiforbindelsemedkapitlerogunderkapitlerervanlig.Sidenummereringmåselvfølgeligværemed.Brukesamme“WordTemplate”påalledokumentene!–dvsbruksammefonter,fargebruk,m.m.ideulikedokumentene.Brukavreferanserderdeterbrukkilder,ressurserfraandre.

2 HvaerSRD?SRD–SoftwareRequirementsandDesignRequirements(WHAT):

• WHATthesystemshoulddo• DescribeswhatthesystemshoulddowithWordsandFigures,etc.• SRS–SoftwareRequirementsSpecificationDocument

SoftwareDesign(HOW):

• HOWitshoulddoit• Examples:GUIDesign,UML,ERdiagram,CAD,etc.• SDD–SoftwareDesignDocument

Note!Manydon'tseparateSRSandSDDdocuments,butincludeeverythinginaRequirements&DesignDocument(SRD).Inpractice,requirementsanddesignareinseparable.SRS–SoftwareRequirementsSpecificationsSDD–SoftwareDesignDocumentSRD–SoftwareRequirementsandDesignFigure2-1visertypiskinnholdietSRDdocument.

Page 4: Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et løpende dokument som brukes til å gi en oversikt over hva som skal lages (Requirements)/utvikles

4

Figure2-1:SRDContents

2.1 HensiktenmeddokumentetEtløpendedokumentsombrukestilågienoversiktoverhvasomskallages(Requirements)/utviklesoghvordandetskallages/utvikles(Design).Dokumentetbrukessomen"kontrakt"mellomutviklingsfirmaogkunde,samtbrukeskontinuerligavutviklere(nårdeskallage/utvikleløsningen),testere(nårdeskaltesteløsningen)ogkunde(sikeatløsningenblirslikdeønsker)underveis.Myeavinnholdetlagesioppstartenavprosjektet(elleriforkantavprosjektet),meninnholdetmåoppdatereskontinuerlignårendringeroppstår,særligmedmedsmidigutviklingvildetteværetilfellet.

3 Eksempler3.1 EksempelATypiskinnholdiSRSdokumentet:Følgendetemaerbørværemed[1]:

• SystemOverview(briefdescriptionofwhatthesoftwaresystemwilldo)• TechnicalRequirements(Functionalrequirement,Non-functionalrequirements,

User-interfacespecification,Usertaskflow,Input/outputandotherdataspecifications,Interfacespecificationstoothersystems)

Page 5: Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et løpende dokument som brukes til å gi en oversikt over hva som skal lages (Requirements)/utvikles

5

• AcceptanceCriteria/InteractionScenarios• Validation/Verification• RequirementsConsiderations(Assumptionmadeaboutthesoftware,Endusers,

Existingsystems,Environment,Limitations)• OtherInformation...

Merdetaljeromdissepunkteneduiboka-AppendixB.DennebokaertilgjengeligfraSafariBooksOnline.

3.2 EksempelBTypiskinnholdiSRSdokumentet:Følgendetemaerbørværemed[2]:

Figure3-1:SRSeksempel

Merk!DeretrengernødvendigvisikkefølgealternativAellerBslavisk,derekangjerneblande,tilføyeellerutelatetingsomikkeerrelevantforderesprosjekt.Deterviktigatmanharmedsoftware-arkitekturogoversiktoversoftwareplattformer,m.m.Dvs.skalsystemetsomutvikleskunvirkeforWindows?EllerskaldetvirkepåenMacogså.Hvilkenettlesereskalvistøtte?Godeskisser(Systemoversikt)iforbindelsemeddettemedulikdetaljeringsgradforulikelesereerrelevant.

3.3 EksempelCSoftwareRequirementsandDesign(SRD)document:

Page 6: Software Requirements and Design (SRD) · Figure 2-1: SRD Contents 2.1 Hensikten med dokumentet Et løpende dokument som brukes til å gi en oversikt over hva som skal lages (Requirements)/utvikles

6

• SystemOverview– Introduction,Descriptionofthesystem,ProblemDescription,Sketchesofthe

system• TechnicalRequirements

– Functionalrequirement,Non-functionalrequirements,User-interfacespecification,Usertaskflow,Input/outputandotherdataspecifications,Interfacespecificationstoothersystems

• Architecture– Thetechnicalarchitectureofthesystem,systemsketches,etc.

• Database– Databasemodellinganddetaileddescriptions

• UML– UseCaseDiagrams,SequenceDiagrams,ClassDiagrams

etc.SRDisamixoftheSRSandSDDdocuments.Manydon'tseparateSRSandSDDdocuments,butincludeeverythinginaRequirements&DesignDocument(SRDdocument).Inpractice,requirementsanddesignareinseparable.

4 Referanser[1]F.Tsui,O.Karam,andB.Bernal,EssentialsofSoftwareEngineering,3ed.:Jones&

BarlettLearning,2014.[2]I.Sommerville,SoftwareEngineering,10ed.:Pearson,2015.[3]E.J.BraudeandM.E.Bernstein,SoftwareEngineering:ModernApproaches,2ed.:

Wiley,2011.