Hur fungerar ett bra kravhanteringssystem?

Varför ska man använda ett kravhanteringssystem, vilka funktioner har ett bra kravhanteringsverktyg, och vad bidrar ett kravhanteringsverktyg med? Magnus, affärsområdeschef för Test & Quality Management, reder i detta blogginlägg ut allt du behöver veta i ämnet.

En av nycklarna till att lyckas med ett projekt är att hålla ordning på vad projektet ska åstadkomma. Detta kallas för kravhantering – det vill säga att reda ut vad kunden vill ha och hur man bryter ner detta i en övergripande teknisk beskrivning, så kallade systemkrav. Den övergripande tekniska beskrivningen behöver många gånger dessutom brytas ner i tekniska specifikationer, interaktionsdesign, integrationsspecifikationer med mera. Dessutom vill man gärna kunna knyta testfall mot kraven, för att visa att alla krav är testade och verifierade.

Kravstrukturen kommer få en trädliknande struktur som sträcker sig över flera nivåer och i stora projekt snabbt blir till en omfattande dokumentation. Att dokumentationen är omfattande är i mina ögon inte ett problem i sig, men det blir ett problem om man inte kan hålla ordning på den. Och det är här pudelns kärna är. Många organisationer idag vet vad deras produkter ska göra, men behöver bli bättre på att hålla ordning på och dokumentera detta. Det är här man bör ta hjälp av ett kravhanteringsverktyg.

Ett bra kravhanteringsverktyg ska i min mening ha några grundläggande funktioner:

Spårbarhet mellan olika typer av objekt, exempelvis krav, testfall, användningsfall och risker. Det är viktigt att man kan definiera egna flöden och relationer mellan olika objekttyper.
Versionshantering av krav, för att man ska kunna hålla koll på vad som skrevs i en version av ett krav. Dessutom vill man kunna jämföra olika versioner av ett krav för att ha en spårbarhet i hur systemet har utvecklats över tid. Detta är högst kritisk information om man arbetar med säkerhetskritiska system, exempelvis inom medicin-, flyg- eller automotiveindustrin.
Releasehantering, så att man under projektutvecklingen kan visa vilka krav som utvecklas till vilken version av mjukvaran
Egna arbetsflöden, som säkerställer att man kan anpassa produkten efter hur företaget arbetar och inte tvärt om.
Hårda baselines, så att man kan låsa hur kraven ser ut vid ett specifikt läge. Denna typ av funktionalitet är jättebra att ha om man exempelvis arbetar med fastprisprojekt eller andra typer av projekt där det är viktigt att uppnå vissa givna mål. Då kan man dokumentera precis hur systemet var designat när det specifika målet uppnåddes.
Återanvändbarhet av krav, vilket är väldigt viktigt när man har produkter som bygger på en plattform. Då ska man inte behöva skriva om alla krav bara för att man skapar en ny version som är baserad på samma plattform – man vill kunna bryta ut en kopia av ett krav som håller en relation till det första kravet och som håller reda på om de är desamma eller förändrade över tid.
Det ska kunna visa på vilka krav som täcks av testfall, så att man tydligt kan se om vi har verifierat alla krav som vi ställer på produkten.
Det finns dessutom några viktiga mjuka faktorer som ett bra kravverktyg bör uppnå enligt mig:

Intuitivt och lättförståeligt. Då minskar svårigheten att jobba med verktyget.
Möjligheten att komma åt verktyget på distans. Det är inte alltid man jobbar på sitt fysiska kontor.
Bra support. Alla system innehåller buggar och fel. Det viktiga är att leverantören är snabb på att rätta de fel som uppstår.
Det viktigaste av allt är att ett kravhanteringssystem, med tillhörande metod, faktiskt bidrar till en mer effektiv utveckling, lägre utvecklingskostnader och en högre kvalitet på slutprodukten.

Jag har några personliga favoriter när det gäller verktyg, beroende på vad man driver för typ av verksamhet. Hör av er så berättar jag gärna mer om hur man snabbt kommer igång och vilka verktyg jag kan rekommendera!

Vill du veta mer om Test & Quality Management? Tveka inte att kontakta oss!

Anpassa dina datapreferenser

Vi använder data för att analysera trafik på vår webbplats och dela information om användningen till våra analyspartners. Du kan läsa mer och ändra dina val på vår sida om datahantering och cookies. Läs mer på vår sida om datahantering och cookies.

Funktionella cookies känner igen dig på vår webbplats och kommer ihåg dina tidigare valda inställningar. Dessa kan inkludera det språk du föredrar, platsen du befinner dig på, lyssna på ljud eller titta på en video. En blandning av cookies från första och tredje part används.

Prestandacookies är cookies som används specifikt för att samla in data om hur vår webbplats används, vilka sidor som besöks oftast eller om du får felmeddelanden på vissa webbsidor. Dessa cookies övervakar endast webbplatsens prestanda när användaren interagerar med den. Ingen av denna information kan användas för att identifiera dig. Allt är aggregerat och därför anonymiserat.

Nödvändiga cookies är absolut nödvändiga för att webbplatsen ska fungera korrekt. Denna kategori innehåller endast cookies som garanterar grundläggande funktioner och säkerhetsfunktioner på webbplatsen. Dessa cookies lagrar ingen personlig information.

Marknadsföringscookies används för att samla in data om hur vår webbplats används, vilka sidor som besöks oftast eller om du får felmeddelanden på vissa webbsidor. Ibland behöver vi information om din ålder, kön och intresse. Vi delar ibland vissa begränsade aspekter av dessa data med tredje part i reklamsyfte, till exempel Google. Informationen kan omfatta användarens plats, sökhistorik, YouTube-historik och data från webbplatser som fungerar med Google, och den används för att tillhandahålla aggregerad och anonymiserade insikter om användarbeteende på flera enheter.