リリース判定基準・残存バグから電話申告の件数を推定する

2020年11月25日リリース判定

残存バグで1か月に何件コールセンターに電話が入るか推定します

前の記事では、ソフトのリリース判定の時に残存バグがあっても、ソフトの目的に沿ったサービス提供への影響が少なけれソフトのリリースを承認する、というグータラ親父の考え方を紹介しました。この記事では、サービス提供への影響の度合いを測る指標とした、サポートセンターへの電話申告の件数を推定計算する方法について、順を追って紹介していきましょう。 

まずは、計算式全体を紹介して、その後に計算式の中身を順番に説明していきます。 

なおこの計算式では、ある1つの残存バグに関して1ヶ月あたりのサポートセンターへの申告電話の累計件数を計算します。実際のソフトのリリースでは、残存しているバグが複数ある場合には、その各々についてこの式を使って申告電話の件数を推定計算して、その合計値を使ってソフトのリリース可否を判定していました。そのあたりの判定の仕方については、計算式の説明の後にまた説明しましょう。

それではまず、残存するバグ1件についての1ヶ月あたりのサポートセンターへの申告電話の件数の推定の計算式です。

1ヶ月あたりの推定のサポートセンターへの申告電話の件数 (回/月) =

  (A) 1ヶ月あたりの問題事象の推定発生件数 (回/月) X 

  (B) 影響度毎の申告率   X

  (C) 国別の調整係数

A,B,C の3つの値を掛け算しているだけですね、では次にこの3つの値の計算方法を順に見て行きましょう。 

(A) 1ヶ月あたりの問題事象の推定発生件数 (回/月) =

  (A1) 1台・1日の運用での発生件数 (回/台・日) X

  (A2) 1ヶ月あたりの延べ稼動台数 (台・日 / 月)

     (A1) 1台・1日の稼動で問題事象が発生する件数 (回/台日) =

          (A1-1) 1台・1日の稼動で発生条件が揃う確率  (回/台日)  X

           (A1-2) 上記の発生条件が揃った時に問題事象が発生する確率

     (A2) 1ヶ月あたりの市場での製品の「のべ稼動台数」(台日) =

              (A2-1) 月間の平均稼動台数  X  30(日)

まずは条件が揃う確率 A1-1  を推定計算しましょう

なんか、ややこしそうに見えますね。でも、一つずつ見て行けばそんなに難しい事は言っていませんので、暫くガマンして下さい。まずは、(A) 項の内容を説明していきます。 (B) 項や (C) 項は後で説明しますので、今は忘れておいてください。

まずは、(A) 1ヶ月あたりの問題事象の推定発生件数 (回/月) を計算します。 ここは簡単で、(A1) で1台の製品が1日稼働した場合に問題事象が発生する件数を推定計算して、これに (A2) で1ヶ月あたりののべ稼働台数を掛け算するだけです。 

(A1) 1台・1日の稼動で問題事象が発生する件数の計算 は、内容をさらに分解して  (A1-1) 1台・1日の稼動で発生条件が揃う確率  (回/台日) と (A1-2) 上記の発生条件が揃った時に問題事象が発生する確率 とに分けて、その掛け算で算出しています。

まずは (A1-1)1台・1日の稼動で発生条件が揃う確率 です。何等かの問題事象が発生する時は、普通は複数の条件が重なった時です。例えば、ある機能Aを使っている時に、別の機能Bを開始するボタンを押した時に問題事象が発生する事を例にして考えてみましょう。そして、一般のユーザはこの装置を1日に平均1時間使うと仮定しましょう。 

そうすると、(A1-1)1台・1日の稼動で発生条件が揃う確率は、以下の3つの確立の掛け算で計算できます。

a) 1日(24時間)でこのサービスが使われる確率 。例えば一般的なユーザはこの機能を1日に1時間使うと仮定すると、サービスが使われる確率は 1(時間) / 24(時間) です。

次に b) 1時間のサービスの利用中に一般的なユーザは機能Aを10分間使うと仮定すると、サービス提供中に機能Aを使っている確率は 10(分) / 60(分)です。

最後に、 c) 機能Aを使っている時に機能Bを開始するボタンを押す確率が、機能A3回に1回だとすると 1(回) / 3(回) です。

この場合、(A1-1)1台・1日の稼動で発生条件が揃う確率= 1(時間) / 24(時間)  X  10(分) / 60(分) X  1(回) / 3(回) = 1/432 = 0.0023 です。

この (A1-1) は、論理的に求められた、不具合の発生条件が揃う確率です。 そして、ソフトの問題事象には、このような論理的に計算できる発生確率とは別に、論理的な説明は難しいけど何十回とか何百回とか繰り返すとごく稀に発生する問題事象があります。 これは、ソフトの内部の動きが何等かのタイミングに影響されて、問題事象が発生したり発生しなかったりする場合に相当します。 

発生条件が揃った時に問題事象が発生する確率 A1-2 を推定計算します

この、タイミング事象の発生頻度を計算式に取り込むための項目が (A1-2) 上記の発生条件が揃った時に問題事象が発生する確率 です。常に発生するなら 1.0 ですし、1000回に1回発生するなら 1/1000 です。この値は、関連するタイミングが単純な場合には机上計算で算出できる場合もありますが、多くの場合は何千回、何万回と実施した再現試験から算出する事が多いです。

(A2)の1ヶ月あたりの延べ稼働台数は、ちょっとカッコいい言い方をすれば市場での稼働台数によってリリース可否の判定に求められる品質を調整する計算項目ともいえます。平たく言うと、市場で100台しか稼働していな時と、市場で100万台が稼働している時とでは、同じ問題事象が発生した場合には、後者の場合には前者の1万倍の件数のサービスコールが発生するので大事になるね、という事です。

これで A1 の項目が計算できました、続の記事では残りの A2, B, C の計算について紹介します。

(次の記事)リリース判定基準・残存バグから電話申告の件数を推定する(その2) に続く