Kravhantering Flashcards

1
Q

Vad är ett användarkrav?

A

beskrivna på hög nivå, abstrakt beskrivna, beskrivs med kundens språk, kan göras med t ex use case-diagram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Vad är ett systemkrav?

A

mer strikta definitioner och mer detaljerade, utvecklaren språk.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Hur förhåller sig systemkrav -och användarkrav till varandra?

A

För att täcka fullständigt funktionalitet från flera vinklar, ska man skapa en inloggning kan t ex användarkravet vara att man ska kunna logga in och systemkravet specificerar krav på säkerhet, eg. vad lösenordet har för minimikrav.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Vad innebär funktionella krav?

A

Krav som beskriver VAD systemet ska göra

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Vilka två begrepp ska man tänka vid kravspecifikation?

A

Complete - alla funktionalitet och information som behövs ska finnas med
Consistent - krav får inte motsäga varandra eller andra krav

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Vad innebär icke-funktionella/kvalitativ krav?

A
  • Krav som beskriver hur ett systemet ska fungera
  • Talar om systemet i stort och inte specifika funktioner
  • Avser kvalité (abilities) och egenskaper
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

I vilka tre kategorier kan vi dela in icke-funktionella krav i?

A
  1. Produkt; minne, pålitlighet, användbarhet
  2. Organisation; programspråk, policys runt processer
  3. Extern omgivning; lagkrav, standarder, integrering av tredjepartskomponenter
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Vad innebär domänkrav?

A

Krav som uppstår för att produkten befinner sig i en viss domän

t ex:
en webbapp, där vi måste förhålla sig en webbläsare

ett inbyggt system, som måste förhålla sig begränsningar i hårdvara

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Hur förhåller sig domänkrav till funktionella och icke-funktionella krav?

A

Domänkrav överlappar andra typer av krav och kan vara funktionella eller icke-funktionella krav samtidigt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Varför kan kravupptäckt vara svårt?

A

Kravuppstäcka = upptäcka kraven

  • Intressenter vet inte alltid vad de vill ha
  • Intresseneter talar språk (menar vi samma sak)
  • Domänkunskap varierar
  • Samma krav kan uttryckas på olika sätt (risk för dubletter)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Vad ingår i kravvalidering?

A
  1. Validitet
  2. Consistency
  3. Completness
  4. Realism
  5. Verifierbar
  6. Spårbarhet
  7. Förståelighet
  8. Anpassningbarhet
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Vad vill vi validera vid “validitet” i förhållande till kravvalidering?

A

Är det här verkligen kravet som behövs? illustrerar det ett verkligen behov?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Vad vill vi validera vid consistency i förhållande till kravvalidering?

A

Consistency:

Går kraven att uppfulla som helhet, dvs inga konflikterr eller motsägande krav?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Vad vill vi validera vid completness i förhållande till kravvalidering?

A

Completness:

Är allt med? Har alla intressenters synvinklar kommit med?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Vad vill vi validera vid realism i förhållande till kravvalidering?

A

Realism:

är de faktiskt genomförbara (tidsfråga, resursfråga etc)?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Förklara kravprocessen och dess ingående delar.

A

(1) Första fasen handlar om att upptäcka krav och analysera dessa
(2) Bryt ner och specificera kraven
(3) Validera kraven - är det här rätt behov? Vad det rätt typ av krav?
(4) Dokumentera!

17
Q

Vad vill vi validera vid verifierbarhet i förhållande till kravvalidering?

A

Verifierbara:

Är kraven testbart formulerade?

18
Q

Vad vill vi validera vid spårbarhet i förhållande till kravvalidering?

A

Spårbarhet:

varifrån kommer kraven och vad ger de upphov till?

19
Q

Vad vill vi validera vid förståeliget i förhållande till kravvalidering?

A

Förståelighet:

varför finns kraver? vad innebär det? vad avser kravet? är det läsbart?

20
Q

Vad vill vi validera vid anpassningsbarhet i förhållande till kravvalidering?

A

Anpassningsbarhet:

finns möjligheten att justera kraven när behov uppstår?

21
Q

Hur kan man arbeta med krav när dessa förändras?

A
  1. Identifiera problemet (vad är problemet, vad ska förändras)
  2. Analysera och beskriva (vilka krav, hur ska de ändras)
  3. Analysera påverkan och kostnad (hur stort är problemet? hur många påverkas?)
  4. Beslut om ev förändring
22
Q

Vad menas med volatile requirements?

A

Flyktiga krav

23
Q

Vad kan flyktiga krav bero på?

A

(1) Omgivningen förändras
(2) Emergent requirement - krav som uppstår med ökad förståelse och olika möjligheter med nya system
(3) Krav som uppstår för att man ändrar ett system/inför nytt system
(4) Kompabilitet med andra system och processer

24
Q

Vad betyder emergent requirements?

A

Krav som uppstår med ökad förståelse

25
Q

Vad ingår i processen för kravupptäckt och kravanalys?

A

(1) Upptäcka och förstå krav
(2) Klassificera och organisera krav
(3) Prioritera och förhandla
(4) Specificera och förhandla

26
Q

Förklara varför kravupptäckt kan vara så svårt.

A

(1) Intressenter vet inte vad de vill ha eller kan inte formulera behovet
(2) Vi talar olika språk, hur vi talar om ett system varierar (eg. om man är teknisk lagt eller inte, eller inte har viss domänkunskap)
(3) Samma krav kan uttryckas på olika sätt
(4) Krav påverkas av andra faktorer än behov, eg företagspolicy
(5) Dynamisk omgivning, affärsnytta kan ändras

27
Q

Hur görs kravvalidering?

A

(1) Reviews/granskning
(2) Prototyper
(3) Genererande av testfall (verifierbarheten i ett krav)
(4) Scenarion
(5) Modellering av flöden och data

28
Q

Beskriv hur man kan behöva arbeta med krav när dessa förändras.

A

(1) Identifiera problem
(2) Analysera och beskriva
(3) Analysera påverkan och kostnad
(4) Beslut och eventuell genomförande av förändring

Man behöver veta vem som beslutar om ändringar (eg agila processer flyttar ner denna makten).

29
Q

Förklara problematiken med att dokumentera krav i naturligt språk.

A

Naturligt språk är ofta tvetydigt och tolkningsbart.

30
Q

Vad bör man tänka på för att minska riskerna med att dokumentera krav med naturligt språk?

A

(1) Konsekven format
(2) Använda språket konsekvent (eg. ska vi säga slutanvändare, användare, kunden, spelaren - är detta samma sak?)
(3) Använd formatering för att öka läsbarhet
(4) Undvika förkortningar eller jargong etc, och isåfall komma överens om en ordlista
(5) Motivera kraven för att förtydliga betydelse och innebörd
(6) Formulera kraven testbart - en utmaning med naturligt språk eftersom det ofta blir en tolkningsfråga

31
Q

Förklara varför det är viktigt att identifiera krav med unika IDn.

A

För att man ofta behöver referera till krav på olika sätt och det är viktigt att de inte blandas ihop

32
Q

Ge några exempel på hur man kan prioritera krav.

A

(1) Lista 1-2-3
(2) Prioritera i förhållande till varandra. eg. Vilket är viktigast av krav A och B? B kanske, då jämför vi B mot C - vilket är viktigast? och får på sätt ut en prioritetslista baserat på viktigast krav.
(3) Klassificera grupper av krav, eg. MosCoW (Must, Should, Could, Won’t)
(4) Prioritera i olika dimensioner (kundkrav, teknisk komplexitet etc.

33
Q

På vad kan prioritering av krav baseras?

A

(1) Kunden prioriterings
(2) I förhållande till konkurrerande produkter
(3) Förståelse för krav

34
Q

Förklara varför det är viktigt att upprätthålla spårbarhet för krav.

A

För att kunna spåra hur detta påverkar systemet

35
Q

Ge exempel på spårbarhet i olika riktningar från ett krav.

A

Framåt - spårbarhet till testfall och implementation
Bakåt - spårbarhet till kravets källa, varför ser kravet ut som det gör
Mellan krav - mellan användarkrav och systemkrav, mellan icke-funktionella och funktionella krav, mellan krav som direkt påverkar varandra

36
Q

Förklara begreppen include i användningsfallsdiagram. Försök hitta fall av dessa för det system du ritat ett diagram för.

A

Include - används när ett användningsfall som alltid inkluderar funktionalitet från ett annat användningsfall, till skillnad från exclude där funktionaliteten är villkorad.

37
Q

Förklara begreppen extend i användningsfallsdiagram. Försök hitta fall av dessa för det system du ritat ett diagram för.

A

Extend - vi vill utöka ett användningsfall med ett annat ett användningsfall. Ofta när det extended användningsfallet kanske kan ske (tänk som en if-sats), det är villkorat.

38
Q

Förklara begreppen generalisering i användningsfallsdiagram. Försök hitta fall av dessa för det system du ritat ett diagram för.

A

Generalisering - visar att ett användningsfall tillhandahåller den funktionalitet som är mer generell, och att det sedan finns specialiserad form av funktionalitet för detsamma