Syfte

Att förstå skillnader mellan två viktiga stilar för specificering av funktionella krav.

Fråga

Det finns många stilar man kan använda sig av för att specificera krav. Två vanligt förekommande är feature requirements och computer-centric use cases. Samtidigt som dessa stilar båda beskriver en produkts egenskaper, skiljer de sig på ett flertal sätt.

 

Beskriv skillnader mellan de ovan nämnda stilarna med avseende på följande egenskaper:

Förståelse hos kunden (3p)

Förståelse hos utvecklaren (3p)

 

Varför lämpar sig inte computer-centric use cases som kravspecificering vid utveckling av COTS? (2p)

Vilka är nackdelarna med feature requirements i ett COTS-projekt, var har man mest nytta av dem? (2p)

 

Resultatbedömning

Förståelse hos kunden

Feature requirements är enklare för kunden att utforma och själv förstå eftersom man kan använda ett vardagligt språk när de skrivs. Computer-centric use cases använder däremot ett språk som är centrerat kring datatermer och hur programmet arbetar. Innehållet i ett computer-centric use case lämnar användaren utanför och beskriver endast vad systemet utför. För kundens intresse ligger mer vilka uppgifter som användaren kommer att utföra.

 

Poängbdömning

2 poäng ges om man endast har skrivit ner för- och nackdelar för de båda stilarna i förhållande till användaren. (1 Poäng för Computer centric use case och 1 poäng för feature requirements.)

1 poäng ges om man även har jämfört egenskaperna mot varandra, totalt max 3 poäng på uppgiften.

 

Förståelse hos utvecklaren

Feature requirements kan lämpa sig bra för utvecklaren, men det kan lätt bli så att kunden specificerar för många krav, eller krav som strider mot varandra. Computer-centric use case blir enklare för utvecklaren att förstå vad han ska göra eftersom uppgiften lyfts fram och blir tydligare än i ett feature requirement. Möjligheten att enkelt ta fram ett UML-diagram direkt från kraven är större i ett computer-centric use case.

 

Computer-centric use cases kan vara för detaljerade, det vill säga att de kan vara nere på designnivå när de utformas. Detta begränsar utvecklaren på vilket sätt han kan designa lösningen av problemen, vilket gör att han inte kan hitta alternativa lösningar. Feature requirements ger utvecklaren mycket större frihet att såväl tolka som att designa lösningen.

 

Poängbdömning

2 poäng ges om man endast har skrivit ner för- och nackdelar för de båda stilarna i förhållande till användaren. (1 Poäng för Computer centric use case och 1 poäng för feature requirements.)

1 poäng ges om man även har jämfört egenskaperna mot varandra, totalt max 3 poäng på uppgiften.

 

Varför lämpar sig inte computer-centric use cases som kravspecificering vid utveckling av COTS, var har man mest nytta av dem?

Kraven från computer-centric use cases är för detaljerade för att fungera på domännivå, vilket gör att de inte riktigt är anpassade för COTS. Abstraktionen ligger på designnivå vilket gör att computer-centric use cases lämpar sig bättre för att skapa aktivitetsdiagram och hjälpa utvecklaren att implementera gränssnitt.

Poängbedömning

1 poäng om studenten tar med lämplig orsak till varför COTS inte är ett lämpligt alternativ.

1 poäng om studenten anger vad man bör använda computer-centric use cases till.

 

Vilka är nackdelarna med feature requirements i ett COTS-projekt?

Den som skriver kraven till en COTS-produkt har svårt att se till hela marknadens behov. Detta gör att han blir influerad av redan existerande verktyg, samarbete med andra organisationer samt affärsmässiga förtjänster. Produkten blir med andra ord inte utvecklad för att främja kundernas intressen utan de egna, eller konkurrenternas.

Poängbedömning

1 poäng om studenten tar upp lämpliga nackdelar med feature requirements i COTS-projekt.

2 poäng om studenten har en mer utförlig beskrivning om nackdelarna.