Visa/dölj två Poissonfördelningar

Visa/dölj kvarvarande rapporter

Visa/dölj parametrar

Info, referenser, m.m...

Simulering av kvarvarande felrapporter

En enkel riskanalys: "Når vi målet före RTL (Ready To Launch)?"

Rapporter 'in'
(antal/dag)

Rapporter 'ut'
(antal/dag)

Tid i dagar

Antal kvarvarande
rapporter

Kvarvarande rapporter mot tid till RTL (Ready To Launch)

lambda 'in'

Konstant (ger lambda 'ut')

Antal rapporter vid start

Antal simulerade serier

'RTL' och 'ändpunkt X-axel'

Max antal rapporter vid RTL

De simulerade serierna illustrerar ett tänkt förlopp där ett slumpmässigt antal rapporter kommer in för rättning och ett slumpmässigt antal rapporter avverkas. De rapporter som kommer in läggs i kön, de som går ut plockas ur kön. (Ingen beräkning av kötid e.d.)

I varje utveckling av större mjukvaruprojekt finns det en felhanteringsprocedur som tar hand om del felrapporter som kommer in och de som rättas. Varje rapport som kommer in måste granskas och bedömas. Är det egentligen ett fel och i så fall, skall det rättas? Skall det rättas så snart som möjligt eller i senare utgåva av mjukvaran?


Visa/dölj två Poissonfördelningar: det bivariata diagrammet kan döljas eller visas. Det kan också stängas med dialogrutans vanliga kryss.

Visa/dölj kvarvarande rapporter: dialogrutan med de simlerade serierna kan döljas eller visas men kan också stängas med dialogrutans vanliga kryss.

Visa/dölj parametrar: dialogrutan med slider för parametervärden kan döljas eller visas men kan också stängas med dialogrutans vanliga kryss.

[Kommentarer och övningar]: visar ett antal kommentarer och övningar.

[Repetera simulering]: ett klick på knappen gör en ny simulering med de inställda parametervärdena.


••••

Sliderna anger parametervärdena för simuleringen. En ny simulering sker efter att en slid har förflyttats.

lambda 'in': Anger parametervärdet i en Poissonfördelning för dagligt antal inkommande felrapporter. (Detta värde är också fördelningens väntevärde.)

lambda 'ut': En konstant som multipliceras med lambda 'in' för att ge parametervärdet i en Poissonfördelning för dagligt antal avverkade (behandlade) felrapporter. (Detta värde är också fördelningens väntevärde.) Initialt visas '1.05' som alltså gör lambda 'ut' 5 % större än lambda 'in'.

Antal rapporter vid start: Anger det totala antal felrapporter som finns vid tidpunkt 0.

Antal simulerade serier: Varje serie startar vid tidpunkt 0 och avslutas vid slutet på tidsaxeln (X-axeln). Alla serier visas i huvuddiagrammet.

'RTL' och 'ändpunkt på tidsaxeln': RTL står för Ready To Launch som är den tidpunkt då produkten skall sättas på marknaden. RTL visas på tidsaxeln med en röd vertikal linje. 'ändpunkt...' gör det möjligt att visa simuleringen efter RTL.

Max antal rapporter vid RTL: Är det mål som satts som villkor för att mjukvaran har en acceptabel kvalitetsnivå vid RTL. Rättningsarbetet fortsätter naturligtvis efter RTL.


••••

Sannolikhetsfördelningar för antal felrapporter 'in' och 'ut'.

Fördelningarna visar två s.k. Possionfördelningar vars värden går från 0 och uppåt. Därför visas de enskilda sannolikheterna som vertikal streck.
Då parametervärdena från sliderna är större än cirka 16 blir fördelningarna väldigt symmetriska och ungefär som en normalfördelning.

Under respektive fördelning visas dess teoretiska medelvärde (väntevärde). Naturligtvis måste parametern för 'ut' vara större än parametern för 'in'. Annars sker ingen minskning av antal kvarvarande rapporter.

(Notera att fördelningarnas 'vänstra svans' inte visas, den motsvarar sannolikheter som är praktiskt taget 0.)


••••

Diagrammet visar ett antal simulerade serier som visar förändringen av kvarvarande antal felrapporter.


Y-axeln visar antal kvarvarande rapporter medan X-axeln visar en tidsaxel i dagar. På tidsaxeln visas RTL (Ready To Launch) som är den tidpunkt då produkten skall sättas på marknaden. RTL-värdet, och X-axelns högra ändpunkt, kan ändras i parameterfönstret. Vid varje förändring av någon slid i parameterfönstret sker det en ny simulering.
Medelvärdet av antal kvarvarande rapporter, dag för dag, visas som en blå linje. Genom att föra markören över tidsserierna anges varje punkt som t.ex. "Tid 64, Rapporter: 313".

Det flyttbara fältet innehåller ett antal numeriska uppgifter om aktuella parametervärden. Dessutom visas "Obs sannolikhet vid RTL" som är kvoten mellan antal serier som är under målet vid RTL och totalt antal serier. Resultatet visas i procent och är alltså en skattning av sannolikheten för att nå målet.


••••

Nedan finns ett antal kommentarer och övningar för att belysa viktiga och centrala delar av teorin och simuleringarna:


Kommentar
Det finns naturligtvis flera olika strategier och förhållningsätt när det gäller en felrättningsprocess som dessutom kräver mycket god kunskap. Inkommande rapporter skall ju bedömas på olika sätt. Är det verkligen ett fel? Har det rapporterats tidigare? Skall det verkligen rättas? Har rättningen blivit som avsågs (en rättning kan ibland skapa nya fel...).
Dessutom ses ibland denna verksamhet som icke-värdeskapande och kanske inte alltid en önskvärd arbetsuppgift. Att räkna med slumpen är också ovälkommet men denna simulering visar på några idéer när det gäller riskanalys med hjälp av en smula statistiskt tänkande.


Övning 1
Utgå ifrån det de initiala parametervärdena men ändra 'Antal simulerade serier' till cirka 500 serier. Skillnaden mellan 'antal ut' och 'antal in' är 84-80 = 4 rapporter (konstanten är 1.05). Notera att sannolikheten att nå målet är praktiskt taget 0. Öka konstanten stegvis med högerpiltangenten till 1.11 vilket ger 'antal ut' till 88.8. Nu är sannolikheten att nå målet ganska hög, cirka 83%. Klicka upprepade gånger på [Repetera simulering]-knappen och se hur procentsatsen varierar.

Övning 2
Utgå ifrån det de initiala parametervärdena men ändra 'Antal simulerade serier' till cirka 500 serier och 'Antal rapporter vid start' till 1000. Placera markörens hårkors i korsningen mellan den blå linjen (medelvärde) och den röda vertikala linjen (RTL). Markören visar "Tid: 150, Rapporter: 399". Antalet har altså minskat från 1000 till 399 under 150 dagar. En enkel beräkning ger cirka 4 rapporter per dag, dvs skillnaden mellan 'antal ut' och 'antal in'.



••••