F3 - Dokumentering av krav Flashcards
Vilken relation finns mellan dokumentation och insamling?
- Insamling genererar information som ska dokumenteras enligt dokumentationsregler som fastställs för projektet.
- När krav dokumenteras (specificeras) kan saknad information och problem med kraven identifieras. För att lösa detta återanvänds insamlingen.
Vilka är de viktigaste fördelarna med att kravdokumentet (kravspecifikationen)?
- Persistens: bestående. Under ett projekt insamlas en stor mängd krav vilket intressenter knappast kan memorera eller reflektera.
- Gemensam referensram och kontrakt: gemensam information finns tillgänglig och delas bland alla projektdeltagare.
- Främjar kommunikation: gemensamma dokument främjar diskussioner, därmed förbättras kommunikationen i projektet.
- Hjälper till att hitta fel: eftersom informationen dokumenteras systematiskt hjälper det att identifiera inkonsekvenser.
- Grund för systemutveckling, test, användning och förvaltning: kravspecifikationen används i alla faser som informationskällan till systemet.
- Grund för kravstyrning: vid förändring av krav framkallar kravdokumentet påverkan till de andra specificerade kraven.
Vad möjliggör dokumentering med användning av verktyg? Typ MS access
- Unik identifiering av krav och i olika format (text, modeller, bilder)
- En effektiv strukturering, hantering och uppdatering av ett stort antal krav
- Sökning av olika krav, olika vyer och rapporter
Varför är det viktigt att dokumentera krav?
Kravdokumentation (kravspecifikationen) är en systematiskt representerad samling av krav. Se fördelarna med kravspecifikationen ovan.
Vilka är språken för att skriva krav?
Ett krav specificeras i ett språk. Vanligtvis innehåller kravdokumenten en kombination av naturliga språk och (konceptuella) modeller.
Baserat på graden av formalism finns tre stora språktyper:
1. Informell: när kraven uttrycks i ett naturligt språk utan innehållsbegränsningar
2. Semi-formell: när kravet uttrycks a) i en strukturerad och/eller begränsad form av ett naturligt språk, eller b) när text och modeller kombineras (ex UML)
3. Formell: när kravet uttrycks i ett fastställt språk med tydliga termer och semantik. Formella språk uttrycks med symboler och formler som exakt definierar syntaxen (vad som skrivs) samt semantiken (meningen med det som skrevs).
Vilka är metoderna för att minska tvetydigheten av naturliga språk? (semi-formella språk)
a) Modellerade krav: Modellbaserade krav (konceptuella modeller) ger mer abstrakta beskrivningar än naturligt språk, då de är mindre tvetydiga men de kräver kunskap om modellering. När kravet uttrycks med hjälp av modeller uttrycker det vanligtvis ett enda perspektiv (data eller funktionalitet, osv).
b) Kontrollerat språk: för en specifik domän definieras en begränsad-naturligt-språk grammatik (syntax) och en uppsättning av termer (inklusive deras semantik) som ska användas med den begränsade grammatiken.
Viktiga fördelar:
- Krav är lätta att förstå, eftersom de liknar uttrycken i de naturliga språket
- Uttryck är mindre tvetydiga än i naturliga språk eftersom de har en strukturerad syntax och en förenklad grammatik
- Gör det lättare att läsa krav, och (semi)-automatisera deras ytterligare bearbetning (för utveckling)
Hur skrivs ett krav utifrån ett semi-formellt kravspråk?
- System (substantiv): systemet är subjektet för systemkrav
- Process (verbfras): registrera, söka, skicka, ta emot
- Objekt (substantiv): patient, kund, student, order, faktura
- Objekts detaljer (substantiv): patients ID, namn, adress
- När?: logiska-/tidsförutsättningar under vilka processen ska tillhandahållas (typiskt börjar med “om” eller “när”)
Exempel:
“Systemet/Daisy ska kunna lägga till på en kurs student med students ID, namn och adress (gata, postnummer, stad) om studenten är registrerad på programmet var kursen går”
Vilka fördelar har semi-formella språk?
- Mindre tvetydiga än naturligt språk
- Är ett begränsat naturligt språk som fortfarande är lättförståeligt
- Given struktur med endast ett krav i varje mening
- Gör det lättare att läsa krav- Mindre tvetydiga än naturligt språk
- Är ett begränsat naturligt språk som fortfarande är lättförståeligt
- Given struktur med endast ett krav i varje mening
- Gör det lättare att läsa krav
Vilka nackdelar har semi-formellt språk?
- Det kräver kunskap om modellering
- Risk för att det är tvetydigt
Vilka fördelar har naturligt språk?
- Universal: kan användas i alla problemområden och domäner
- Flexibel: godtyckliga abstraktioner och förfiningar
- Begriplig: ingen utbildning eller specialverktyg behövs
Vilka nackdelar har naturligt språk?
- Under-specifikation: detaljer kan missas
- Fel av naturligt språk: tvetydigheter - olika tolkningar
- Vaga termer: suddiga definitioner
Vad är ett kravs attribut?
Man tilldelar ett krav attribut för att knyta information relaterade till krav snarare än att belasta själva kraven.
Ett attribut definieras med: namn, typ, intervall av giltiga värden.
Några vanliga attribut av ett krav är:
- Unik identifiering (ett unikt nummer, för hantering av kravet)
- Intressent (den som är ansvarig eller ska utföra kravet)
- Status (i skrivning, utkast, överens osv)
- Prioritet (när ska kravet utvecklas)
Vilka är kvalitetskriterierna för individuella krav?
1) Komplett: kravet måste helt beskriva funktionaliteten (eller kvaliteten) som kravet specificerar
2) Spårbar: kravets källa, genomförande och relation till andra krav ska kunna spåras
3) Nödvändigt: kravet är bekräftat (överens) som korrekt av intressenterna
4) Entydigt: kravet kan tolkas på ett enda sätt
5) Begripligt: kravet är begripligt för alla berörda parter
6) Konsekvent: kravet får inte stå i konflikt till andra krav, eller till sig själv
7) Kontrollerbart: kravet kan testas eller mätas i det implementerade systemet
8) Genomförbart: det måste vara möjligt att genomföra kravet med tanke på de organisatoriska, juridiska, ekonomiska eller tekniska begränsningarna
9) Ett resultat: kravet beskriver en enda process !!