Kravhåndtering

For at et krav skal gi verdi er det viktig at mottager av kravet forstår hva det innebærer.

Krav skal være:

  • En beskrivelse av hva et IT-system skal gjøre og ikke en beskrivelse av hvordan IT-systemet skal gjøre det.
  • Skrevet ut fra brukers ståsted. Et IT-system kan ha mange ulike brukere slik at det er viktig å få med alle brukeres ståsteder.
  • Klart; dvs at mottager enkelt skal forstå hva som står der.
  • Testbart; dvs at man sjekke at kravet er dekket ved å bruke løsningen.
  • Mulig å lage; dvs at kravet er mulig å løse med dagens teknologi
  • Konsistent; dvs at ikke ulike krav motsier hverandre

Krav kan enten være funksjonelle krav; dvs krav til hva IT-løsningen forretningsmessig skal løse, eller ikke-funksjonelle krav; som er tekniske krav til løsningen. Ikke-funksjonelle krav kan for eksempel være krav til oppetid, responstid eller sikkerhet.

Kravprosessen består av følgende steg:

  • Innsamling av krav
  • Analyse av krav
  • Spesifisering av krav
  • Validering av krav
  • Styring av krav

Requirements Engineering Qualification Board (REQB) har laget et forslag til prosesser som kan etableres for å sikre at kravprosessen blir gjennomført på en hensiktsmessig måte.

Kravhåndtering - prosess

I kravprosessen kan man bruke følgende teknikker for å avdekke og dokumentere krav:

  • Intervjuer
  • Bruke eksisterende dokumentasjon
  • Gjøre observasjoner av bruk av dagens løsninger
  • Arbeidsmøter
  • Prosessmodellering. For eksempel ved hjelp av Business Process Model Notation (BPMN).
  • Use case. Detaljert beskrivelse av et hendelsesforløp. For eksempel ved hjelp av Unified Modeling Language (UML), Systems Modeling Language (SysML)
  • User stories. Er enklere enn use case med mindre formelle krav til hva som skal dokumenteres.
  • Ulike varianter av prototyper
    • Wireframes
    • Storyboards
    • Prototyper

For å ha oversikt over krav er det en rekke verktøy som kan benyttes. Disse varierer fra verktøy som kun er laget for dokumentasjon og oversikt over krav, til andre som er laget for å følge hele livssyklusen til en IT-løsning fra krav, til implementering, til testing, til produksjonssetting og til vedlikehold i produksjon.