Kravsanalyse

Kravsanalyse

Indholdsfortegnelse

Hvad er kravanalyse og forhandling?

Kravanalyse er typisk en procedure til at analysere, validere og tilpasse de krav, der er dokumenteret i fasen af ​​kravfremkaldelse. Kravanalyse er med andre ord en proces med at studere og forstå de krav, som interessenterne stiller. Kravanalyse kræver hyppig kommunikation med interessenterne og slutbrugerne for at definere forventningerne, løse konflikterne og endelig dokumentere de vigtigste krav. Løsningerne kan omfatte spørgsmål som:

  • Forskellige former for set-ups for arbejdsgangen i virksomheden
  • Opsætning af nyt system, der skal bruges fra nu af mv. 

En ting, du skal huske på, er, at kravfremkaldelse og behovsanalyse arbejder sammen. De to fodrer hinanden. Når vi begynder at samle kravene, fremkalder vi dem og analyserer dem på samme tid.

Formål med kravanalyse

  1. Det første og fremmeste formål med kravanalyse er at forstå brugernes krav og behov 
  2. Når vi bruger forskellige kilder til at samle kravene, kan der være nogle konflikter mellem dem. Kravanalyse handler om at finde disse konflikter blandt de krav, som brugerne stiller, og løse dem. 
  3. Forhandle kravene med brugerne og interessenterne. Der er ingen måde, vores system kan opfylde alle kravene på den nøjagtige måde, de er forklaret af interessenter og brugere. 
  4. Vi bliver nødt til at forhandle og prioritere kravene. Nogle krav er måske ikke store for os, men de kan være ret vigtige for slutbrugerne. For at forstå dem er vi nødt til at analysere og prioritere interessenternes krav. 
  5. Vi skal uddybe de krav, som brugerne og systemet stiller. Dette hjælper samtidig med at kravene i kravspecifikationerne dokumenteres. Dette hjælper også udviklerne med at udvikle, designe og teste bedre, da de forstår kravene på en uddybet og bedre måde. 
  6. Vi skal klassificere kravene i forskellige kategorier og underkategorier og yderligere allokere disse krav til forskellige undersystemer. 
  7. Vi skal også evaluere kravene til den kvalitet, som organisationen ønsker. 

Endelig skal vi sørge for ikke at gå glip af noget vigtigt.

Kravsanalyse

Kravanalyse fokuserer på alle de opgaver, der bruges til at fastlægge kravene eller betingelserne for at opfylde det nye projekt i overensstemmelse med de krav, som forskellige interessenter har stillet. I løbet af denne aktivitet analyserer, forfiner og undersøger vi alle de krav, der er indsamlet under kravfremkaldelsen, for at etablere korrekt sammenhæng.

Normalt kombineres kravanalyseaktiviteterne med kravfremkaldelsesaktiviteterne i vandfaldsprocessen. Nogle gange er det også blandet med kravspecifikationen. Under elicitation samler og fanger vi kravene. Under analysen analyserer vi behovene og gennemførligheden af ​​de indsamlede krav. Vi forhandler yderligere kravene med interessenterne og slutbrugerne for at kunne skabe et bestemt resultat til sidst.

Udfordringer i forbindelse med behovsanalyse

Der er visse udfordringer, som en organisation står over for, når de analyserer kravene indsamlet fra forskellige kilder. 

  1. Nogle gange er det svært at forstå, hvad interessenterne præcist forventer, da de ikke selv er klare på den del. De har normalt en vag idé om, hvad de vil have, og det kan skabe forvirring. 
  2. Krav er normalt dynamiske, da de bliver ved med at ændre sig og udvikle sig i overensstemmelse med de skiftende behov. Nogle gange kan de krav, der er angivet i starten af ​​projektet, ændre sig, når projektet skrider frem. Det skal du altid have backup-planer for. 
  3. Dårlig kommunikation mellem teammedlemmerne er en anden udfordring, der står over for under behovsanalyse. Derfor er det vigtigt for projektledere at sikre, at kommunikationen er flydende inde i organisationen og teams. Det ville være nyttigt, hvis projektledere bruger et kodificeret sprog såsom UML som et middel til at standardisere kommunikation og også undgå misforståelser.

Kravanalyseproces

Generelt er der syv trin i kravanalyseprocessen.

  1. Identificer interessenter: Til at begynde med er det vigtigt at afgøre, hvem de vigtigste interessenter er for dette projekt. Disse personer og grupper involverer interne kunder, eksterne brugere, regulatoriske agenturer samt alle andre interessenter, der har en rolle i opbygningen af ​​produktet. Uden dem kunne disse behov og krav ikke opfyldes - de er katalysatoren for fremskridt!
  2. Fremkald interessenternes behov og krav: I dette afsnit af kravanalyseprocessen, kendt som behovs- og kravindsamling, samarbejder teams med interessenter for at erkende deres behov og forventninger.
  3. Modelbehov og -krav: Efter at have indsamlet interessenternes oprindelige behov og forventninger, kan teams anvende visuelle repræsentationer eller diagrammer til at illustrere disse krav som en del af deres vurdering. Dette gør det muligt for teamet at sikre, at der modtages feedback fra alle involverede parter, mens eventuelle potentielle problemer, uoverensstemmelser eller uoverensstemmelser er løst, før der etableres en produktoversigt af høj kvalitet, herunder use cases og brugerhistorier.
  4. Tilbagevirkende kraft: Efter at have indsamlet detaljerede data og informationer under fremkaldelses-, diagram- og modelleringsprocesser, analyserer projektteamet det. De er særligt interesserede i at forstå eventuelle begrænsninger eller drivere, der kan påvirke gennemførligheden af ​​at skabe produktet. Dette hjælper dem med at identificere potentielle risici, samtidig med at de etablerer et budget og en tidsplan for færdiggørelse.
  5. Definer et integreret sæt behov: Projektteamet udvikler en omfattende samling af interessenters behov og krav, der inkarnerer interessenternes forventninger, mål, målsætninger, motivationer og grænser for produktet.
  6. Definer produktkrav: Efter at have gennemgået det samlede sæt af behov og interessentkrav, kan teams derefter udvikle et endeligt sæt forventninger til produktfunktioner. Dette er et væsentligt skridt, så det er afgørende, at hvert krav opfylder kvalitetskriterier for at skabe velformede resultater. Det ville være klogt for alle interessenter at udstyre sig selv med den nødvendige viden til at udforme fremragende krav.
  7. Afmelding og baseline: Ved afslutningen af ​​kravanalysefasen skal alle væsentlige interessenter (eller deres repræsentanter), som blev identificeret i trin et, formelt ratificere det omfattende sæt af behov og tilhørende produktspecifikationer. Denne kontrakt vil give alle klarhed om, hvordan man verificerer og validerer i forhold til det, der blev skitseret for produktet, omkostningsbegrænsninger og forventninger til tidslinjen; dermed sikre sig mod eventuelle overraskelser eller omfangsændringer senere under udviklingen.

Denne proces bør bruges som grundlag for ethvert behovsanalyseprojekt, da det er med til at sikre, at interessenternes forventninger opfyldes, og at alle nødvendige funktioner i produktet er inkluderet. En veludført kravanalyseproces er afgørende for en vellykket udvikling af et softwareprodukt af høj kvalitet. Den resulterende indsigt i interessenternes behov vil hjælpe teamet med at bygge en effektiv løsning til at opfylde deres mål, samtidig med at de holder sig inden for budgettet og til tiden.

Krav Modellering

Den mest almindelige teknik under behovsanalyse er modellering. Hovedformålet med modellering er at forstå de samlede krav. En model er typisk en kopi af noget, der normalt er en mindre version af den ægte vare, der bruges til informationsformål. Med andre ord er det en abstraktion af nogle aspekter af det eksisterende eller påtænkte system. En model er designet til at præsentere information, der kan analyseres mekanisk. Modeller er den bedste måde at analysere en enhed på ved at reducere dens kompleksitet. 

Da modellering er en væsentlig del af analyseprocessen, skal den udføres ordentligt og omhyggeligt. Vi bruger modellering til at kortlægge de elementer, der opnås under elicitation og præsentere dem i en mere præcis og formel form. Dette hjælper ved at gøre tingene lettere at forstå kravene og problemerne. Når du får et så præcist blik på noget, bliver det også nemmere at finde ud af, hvad der mangler, eller hvad der trænger til yderligere diskussion eller ændring. 

Der er forskellige sprog, der bruges til at lave kravmodeller. Først og fremmest er det naturlige sprog, som brugeren beskriver sine behov og krav på. Også nogle funktionelle sprog som UML, SysML, logik og tidsmæssig logik, Use Case Maps eller aktivitets- eller domænediagrammer.

Nogle almindelige krav til modelleringssprog

  • UML: UML står for Unified Modeling Language, og det er standard modelleringssprog, der bruges af softwareudviklere. Det giver teams mulighed for at konstruere visuelle diagrammer, der illustrerer, hvordan hver komponent i et system interagerer med hinanden.
  • SysML: SysML står for Systems Modeling Language og er baseret på UML, men det gælder mere bredt for systemudvikling, hvilket giver brugerne mulighed for at modellere komplekse strukturer såsom netværk eller mekaniske systemer.
  • BPEL: BPEL står for Business Process Execution Language og fokuserer specifikt på forretningsprocesser - det vil sige rækkefølgen af ​​opgaver, der skal udføres, for at en hel forretningsproces er blevet gennemført. Dette er især nyttigt, når interessenter leder efter et bestemt resultat af deres produkt.
  • Flowcharts: Flowcharts er en ligetil måde at visuelt kortlægge de trin, der skal tages for at opnå et resultat. Dette kan spænde fra små opgaver som at udvikle et brugerlogin-system til større og mere komplekse processer som at designe en hel applikations arbejdsgang.
  • Dataflowdiagrammer: Dataflowdiagrammer illustrerer informationsstrømmen gennem et system og bruges til at identificere potentielle datakilder, dræn og processer. Dette hjælper teams med at forstå, hvordan produktet vil indsamle data, føre det ind i en algoritme eller proces og derefter udlæse det ønskede resultat.
  • Tilstandsovergangsdiagrammer: Tilstandsovergangsdiagrammer kortlægger alle mulige tilstande, som et system kan nå, samt eventuelle overgange mellem dem. Dette bruges typisk til at designe brugergrænseflader såsom websider eller mobilapps. Det giver udviklere mulighed for at forudse hver eneste overgang inden for brugerens rejse med produktet for at sikre optimal brugervenlighed.
  • Gap-analyse: Gap-analyse er processen med at sammenligne to sæt krav og identificere eventuelle uoverensstemmelser eller huller mellem dem. Dette kan bruges til at sammenligne interessenternes forventninger med, hvad teamet har udviklet indtil videre, for at sikre, at alle nødvendige funktioner er inkluderet i produktet inden lancering.

Ved at bruge disse forskellige modelleringssprog og analysemetoder kan teams få indsigt i deres interessenters behov og sikre, at et kvalitetsprodukt bliver leveret til tiden og inden for budgettet. Det er vigtigt for udviklere at have en grundig forståelse af kravanalyseprocessen for at skabe effektive softwareløsninger, der tilfredsstiller kundernes krav.

Disse modelleringssprog giver teams mulighed for at skabe detaljerede diagrammer, use cases og flows, der fungerer som en guide under kravanalyseprocessen. Dette sikrer, at alle involverede interessenter har en klar forståelse af, hvad der forventes af produktet, så de nemt kan måle fremskridt i forhold til deres forventninger.

Den vellykkede implementering af denne proces vil ikke kun hjælpe med at sikre et slutprodukt af høj kvalitet, men også spare tid, penge og kræfter gennem hele dets udviklingslivscyklus, hvilket giver teams mulighed for at reagere hurtigt og effektivt på ethvert omfang eller håndtere ændringer senere under udviklingen.

Bedste praksis for kravanalyse

Interessenter kan udtrykke deres forventninger på forskellige måder, såsom gennem behov og krav. Behov er, hvad interessenterne kræver af produktet for at løse et problem eller udnytte en chance; mens Krav er instruktioner på højt niveau leveret af interessenter, der beskriver, hvordan de forventer, at produktet skal fungere for at opfylde disse behov. Mens interessenternes krav formidles uden brug af obligatoriske udtryk som "skal", skal deres behov opfyldes med stringens. For at sikre, at de er bindende specifikationer, som senere vil blive valideret til at opfylde produktets standarder, bør disse forespørgsler altid anvende "skal".

Forud for design og udvikling af et produkt, er det afgørende for projektteamet at få indsigt i forskellige interessenters behov og krav. Med flere interessenter kommer der forskellige forventninger, så det er afgørende at fange disse krav nøjagtigt for at forhindre konflikter eller problemer i at opstå. Projektgruppen skal fremkalde disse ønsker og fornødenheder med rettidig omhu og samtidig løse uoverensstemmelser og modstridende krav. Ved at syntetisere behovene fra disse data kan vi transformere disse individuelle krav til et omfattende sæt produktkrav. Dette vil sikre, at det udviklede produkt lever op til alle angivne forventninger og i tilstrækkelig grad tilfredsstiller kundernes ønsker og behov.

Kravsporbarhed er et kritisk element i kravanalyseprocessen, da det giver os mulighed for at garantere, at hvert krav klart afspejler dets ophavsmands hensigt. Uden korrekt sporbarhed kan vi ikke være sikre på, om vores softwareprodukt opfylder alle interessenters behov, mål og begrænsninger. Selv med perfekt udførelse af kravanalyse, ville der ikke være nogen måde at bevise, at du har det passende sæt krav uden at have sporet dem tilbage til deres kilde!

Som sådan er en nøgletilgang til kravanalyse at sikre, at hvert krav kan spores tilbage til alle relaterede artefakter. Disse elementer skal ikke kun omfatte deres kilde, men også downstream-materialer som design, produktverifikationsplanlægning og produktvalideringsplaner. Derudover involverer en integreret bedste praksis for kravanalyse at udføre en på forhånd etableret proces nøjagtigt - dette trin kan gøre eller ødelægge succesen med at opfylde interessenternes forventninger til produktet.

Visure Requirements ALM Platform til kravanalyse

Visures intuitive grænseflade gør det nemt hurtigt og effektivt at analysere enorme mængder data uden at skulle bruge for meget tid på opgaven. Derudover tilbyder Visure en række kraftfulde værktøjer, der giver brugerne mulighed for præcist at spore krav tilbage og spore frem fra dem gennem konsekvensanalyse, prioritere ændringer i forhold til omkostninger eller risiko og endda holde styr på ændringsanmodninger. Desuden er Visures robuste evne til at importere og eksportere til og fra modelleringsværktøjer som Sparx Systems Enterprise Architect noget ganske nyttigt for sikkerhedskritiske industrier.

Med Visure kvalitetsanalysator, kan du hurtigt og bekvemt få adgang til AI-teknologi for at vurdere og identificere uklare krav. Dette vil strømline sporbarhed, forbedre kravkvaliteten, fremme teamsamhørighed og hjælpe med at garantere projektets succes. Ydermere kan din virksomhed med ITEM Template Guidelines nemt skabe en robust processkabelon, som alle er enige om.

Ved at bruge Visure kan du konstruere datamodeller og knytte krav til bestemte varer for en effektiv analyse af behov på ethvert niveau. Det betyder, at teams ikke længere mister tid på at diskutere og analysere krav, men i stedet koncentrerer sig om at fremskynde udviklingsprocessen. Ved at implementere dette system med Visure vil dit team være i stand til effektivt at overvåge fremskridt uden at ofre værdifuld tid eller ressourcer.

Konklusion

Kravanalyse er nøglen til succes for ethvert softwareudviklingsprojekt. Uden et veldefineret sæt krav er det næsten umuligt at skabe præcise planer, opnåelige mål og realistiske tidsplaner. Kravanalyse kommer naturligvis med sine egne udfordringer; risici skal identificeres tidligt, og interessenter skal holdes engageret gennem hele processen. Ved at følge en omhyggelig og systematisk proces kan disse udfordringer dog overvindes. Visure Requirements ALM-platformen er et fremragende værktøj til at håndtere krav fra start til slut; afprøve Gratis 30-dages prøve dag!

Glem ikke at dele dette opslag!

Top