「ダブルチェックでミスはなくなる」——だがスプレッドシートの研究では、点検は誤りを減らすが、ゼロにはしない
ダブルチェックすればミスはなくなる、と教わる。だが締めの主役であるスプレッドシートの研究は、実運用の表が高い割合で誤りを含み、丁寧な点検でも一部しか見つけられず、複数人で見ても誤りが残ることを示す。ダブルチェックは誤りを減らすが、ゼロにはしない。かといって無意味でもない。過信と放棄のあいだに立ち、速く締まったことを正しく締まったことと取り違えないのが、この単位の答えである。
速く締めることと、正しく締めること
前の単位では、不正の芽と、それを摘むと言われる仕組みを扱った。ここでは、不正ではない——ただのミスを扱う。数字を写し間違える、式の参照がずれる、行を一つ飛ばす。悪意はどこにもないのに、締めた数字が合わない。
この棚の青の段の入口では、「月次決算を早くするには?」という速さの問いを立てた。緑の段の締めであるこの単位は、その速さに正確さを返す。速く締めることと、正しく締めることは、しばしば引っぱり合う。 よく聞くのは、「ダブルチェックすればミスはなくなる」という言い方だ。この単位は、その「なくなる」がどこまで本当かを、締め作業の主役である表計算——スプレッドシートの研究から見直す。
「ダブルチェックでミスはなくなる」——スプレッドシートの研究が言うこと
多くの人にとって、月次や決算の締めはスプレッドシートの上で進む。だから、締めのミスを考えるなら、スプレッドシートに誤りがどれだけ入るかを調べた研究が、まっすぐ効く。
この分野には蓄積がある。Panko が1998年にまとめた研究は、実際に運用されているスプレッドシートが高い割合で誤りを含むことを示した。Powell・Baker・Lawson が2008年にまとめた文献レビューは、この分野の研究を整理し、Powell らが2009年に行った実地の監査は、現に業務で使われているスプレッドシートに誤りが見つかることを確かめている。
ここで数字の扱いには気をつける。誤りの割合の具体的な数値は逐語で確認していないので、「高い割合」という定性の言い方に留める——ただし、向きははっきりしている。実運用のスプレッドシートは、思っているより誤りを含む。「一度作ってダブルチェックしたから大丈夫」の「大丈夫」は、研究の前では強すぎる。
誤りが入り込む場所には、傾向がある。多いのは、手で数字を打ち込むところと、式が指し示す範囲の境目だ。前の月の表をコピーして今月分に作り替えるとき、集計の式が拾う範囲が一行ずれる。別の資料から数字を転記するとき、桁を一つ写し間違える。どれも、注意深いかどうかという個人の資質の話ではなく、表計算という道具の構造上、そこに誤りが集まりやすいという話である。だから対策も、「もっと気をつける」ではなく、「誤りが集まる場所を知って、そこを見る」という向きになる。
点検には、検出の上限がある
では、チェックを重ねれば誤りは消えるのか。ここが核心だ。Panko が1999年に、ソフトウェアのコード・インスペクション(複数人で一行ずつ点検する手法)をスプレッドシートの点検に応用した研究は、丁寧な点検でも、含まれる誤りの一部しか見つけられないことを示した。Panko と Halverson が1994年に個人と集団のスプレッドシート作成を比べた研究も、複数人で作っても誤りは残ることを扱っている。Powell らが2009年に業務用スプレッドシートの誤りを分類した研究も、誤りが多様な形で残ることを示す。
だから値切りはこうなる——ダブルチェックで誤りはゼロにならない。点検には検出の上限があり、二人で見ても、見落とされる誤りは残る。ただし、ここで反対側へ振り切らないことも大事だ。「だからチェックは無意味だ」も、同じくらい間違っている。 点検は、残る誤りを減らす。ゼロにはできないが、しないよりは減る。過信も、放棄も、しない。 チェックは「保険」であって「保証」ではない、という程度に扱うのがちょうどよい。
速さと正確さは、引っぱり合う
ここで、青の段の入口に戻る。「速く締める」ことには価値がある。だが、速く締める圧力が強すぎると、点検は形だけになりやすい。時間が足りないまま「見たことにする」チェックは、検出の上限をさらに下げる。速さと正確さは、しばしばトレードオフ(あちらを立てればこちらが立たない関係)にある。
この単位は、どちらか一方を選べとは言わない。速さを求めるなら、点検が形骸化していないかも同時に見る。「早く締まった」と「正しく締まった」は、別々に確かめるべき二つのことだ。速く締まったことを、正しく締まったことの証拠にしない——ここが、青の段の速さに、緑の段の締めが返す答えである。
ひとつ、規模の話も添えておく。ここまでの研究の多くは、まとまった量のスプレッドシートや複数人での点検を想定している。一人で全部を締めている人には、そもそもダブルの相手がいない。 その場合、二人で見るという前提は成り立たないから、できるのは「時間をおいて自分でもう一度見る」「手入力と参照の集まる場所だけを重点的に見る」といった、一人でも回せる形の点検になる。相手がいないことを、点検をしない理由にしなくてよい——見る場所を絞れば、一人でも残る誤りは減らせる。
時間・変化:スプレッドシート研究が積み上げてきたこと
順に置く。1994年Panko と Halverson が個人と集団の誤りのパターンを、1998年Panko が実運用スプレッドシートの高い誤り率を、1999年Panko が点検でも一部しか捕えられないことを示した。2008年Powell らが文献レビューでこの分野を整理し、2009年Powell らが実地監査と誤りの分類で、業務用スプレッドシートの誤りを重ねて確かめた。
この間に確からしくなったのは、「ダブルチェックすればミスはなくなる」ではない。確からしくなったのは、実運用のスプレッドシートは高い割合で誤りを含み、点検には検出の上限があり、複数人で見ても誤りは残る、という向きのほうである。
妨げるもの、助けるもの、最初の一歩
妨げるものの筆頭は、「ダブルチェックしたから、もう合っている」という過信だ。点検には上限があり、二人で見ても誤りは残る。反対に、「どうせ残るならチェックは無駄」という放棄も妨げになる——点検は残る誤りを減らす。過信と放棄の、あいだに立つ。もうひとつの妨げは、速く締まったことを、正しく締まったことと取り違えることである。
助けになるのは、点検の回数を増やす前に、自分の締めのどこに手入力と参照が集まっているかを、目で辿って知ることだ。誤りが入りやすいのは、たいてい手で打ち込んだ数字と、式が指し示す範囲の境目である。
最初の一歩は10分。直近の自分の締めで使った表計算を開き、手で数字を入力したセルをいくつか選んで、その値がどこから来たか(どの資料の、どの数字か)を辿って書き写す。次に、合計や集計の式が、どの範囲を参照しているかを数件、目で追って書き出す。誤りがゼロだと保証する作業ではない——どこに手入力と参照が集まっているかを、自分で見えるようにするだけである。他人の作業を点検する必要はなく、自分の締めの表だけで完結させる。
次の単位は 425「内部統制を整えるには?」——ここまで見てきた日々の規律を、統制という仕組みへどう束ねるのかを、その公式の由緒とコストの論争から積み直す。
- この単位は緑の段の締めで、青の段の入口『月次決算を早くするには?』の速さに正確さを返す。速く締めることと正しく締めることはしばしば引っぱり合う。俗説『ダブルチェックすればミスはなくなる』を、締め作業の主役である表計算=スプレッドシートの研究から見直す。扱うのは不正ではなく、悪意のないただのミスである
- スプレッドシートのエラー研究には蓄積がある。Panko 1998は実際に運用されているスプレッドシートが高い割合で誤りを含むことを示し、Powell・Baker・Lawson 2008は文献レビューで分野を整理し、Powell ら 2009の実地監査は業務で使われている表に誤りが見つかることを確かめた。誤りの割合の具体的な数値は逐語未確認のため『高い割合』という定性に留めるが、向きははっきりしている
- 点検には検出の上限がある。Panko 1999はコード・インスペクション(複数人で一行ずつ点検する手法)をスプレッドシートに応用し、丁寧な点検でも含まれる誤りの一部しか見つけられないことを示した。Panko & Halverson 1994の個人・集団比較は複数人で作っても誤りが残ることを、Powell ら 2009の誤り分類は誤りが多様な形で残ることを示す
- 値切りは、ダブルチェックで誤りはゼロにならない、というもの。二人で見ても見落とされる誤りは残る。ただし反対側へ振り切らない——チェックは無意味ではなく、残る誤りを減らす。研究が否定するのは『ゼロになる』であって『減る』ではない。過信も放棄もせず、チェックは保険であって保証ではない、という程度に扱う
- 速さと正確さはトレードオフの関係にある。速く締める圧力が強すぎると点検は形だけになり、検出の上限をさらに下げる。『早く締まった』と『正しく締まった』は別々に確かめるべき二つのことで、速く締まったことを正しく締まったことの証拠にしない。これが青の段の速さに緑の段の締めが返す答えである
- 確からしくなったのは『ダブルチェックすればミスはなくなる』ではなく、実運用のスプレッドシートは高い割合で誤りを含み、点検には検出の上限があり、複数人で見ても誤りは残る、という向きである。妨げるものは、ダブルチェックしたからもう合っているという過信と、どうせ残るならチェックは無駄という放棄の、両方である
- 最初の一歩は10分。直近の締めで使った表計算を開き、手で数字を入力したセルをいくつか選んでその値がどこから来たかを辿って書き写し、合計や集計の式がどの範囲を参照しているかを数件、目で追って書き出す。誤りがゼロだと保証する作業ではなく、どこに手入力と参照が集まっているかを自分で見えるようにするだけ。他人の作業を点検せず、自分の締めの表だけで完結させる
| よくある誤解 | 実際のところ |
|---|---|
| 締めの数字はダブルチェックすれば、ミスはなくなる。二人で見れば誤りは消える | 締め作業の主役であるスプレッドシートの研究は、そうは言わない。Panko 1998やPowell ら 2008/2009は実運用の表が高い割合で誤りを含むことを示し、Panko 1999のコード・インスペクション応用やPanko & Halverson 1994の個人・集団比較は、丁寧な点検でも含まれる誤りの一部しか見つけられず、複数人で作っても誤りが残ることを示す。ダブルチェックは誤りをゼロにしない。点検には検出の上限がある |
| どうせ誤りが残るのなら、チェックしても無駄で、点検には意味がない | これも同じくらい間違っている。点検は残る誤りを減らす——ゼロにはできないが、しないよりは減る。研究が否定するのは『ゼロになる』であって『減る』ではない。だからチェックは保険であって保証だ、という程度に扱うのがちょうどよい。過信も放棄もせず、そのあいだに立つのがこの単位の姿勢である |
| 速く締められたのだから、その数字は正しく締まっているはずだ | 速さと正確さは、しばしば引っぱり合う。速く締める圧力が強すぎると点検は形だけになり、検出の上限をさらに下げる。『早く締まった』と『正しく締まった』は別々に確かめるべき二つのことで、速く締まったことを正しく締まったことの証拠にしない。青の段の入口の速さの問いに、この緑の段の締めが正確さを返す |
皮肉なのは、「ダブルチェックすれば安心」と最も強く信じているときほど、点検が形だけになりやすいことだ。二人で見た、という事実が、見落とした誤りをかえって見えなくする。スプレッドシートの研究は、はるか前から言っている——実運用の表は思うより誤りを含み、丁寧な点検でも一部しか捕まらず、複数人で見ても残る、と。締めの数字がダブルチェック済みで安心に見えるとき、たいていそれは、まだ運よく、見落とした誤りが結果を大きく動かしていないだけかもしれない。だから、なくす、ではなく、減らして、残りを見張る。
Q1. 『ダブルチェックすればミスはなくなる』を、スプレッドシートの研究はどう否定するか。『検出の上限』という言葉を使って述べよ。一問一答
Q2. 『どうせ誤りが残るならチェックは無駄だ』という考えに対する、この単位の立場はどれか。選択
Q3. この単位は、青の段の入口の ____ という問いに、緑の段の締めで ____ を返す。速く締める圧力が強すぎると点検は ____ になり、検出の上限がさらに下がる。だから『早く締まった』を『____ 締まった』の証拠にしない。穴埋め
Q4. 締めのミスを考えるうえで、この単位が『スプレッドシートのエラー研究』を持ち出した理由を述べよ。一問一答
Q5. この単位が扱ったスプレッドシート研究を、年の早い順に並べよ。(ア)Panko が実運用の高い誤り率を示す(イ)Panko & Halverson が個人と集団の誤りのパターンを示す(ウ)Powell らが文献レビューで分野を整理する(エ)Panko が点検でも一部しか捕えられないことを示す並べ替え
紙かメモアプリに今日の日付を書く。次に、直近の自分の締めで使った表計算を開き、手で数字を入力したセルをいくつか選んで、その値がどこから来たか(どの資料の、どの数字か)を辿って書き写す。続いて、合計や集計の式を数件選び、それぞれがどの範囲を参照しているかを目で追って書き出す。誤りがゼロだと保証する作業ではなく、どこに手入力と参照が集まっているかを見えるようにするのが目的。他人の作業を点検する必要はなく、自分の締めの表だけで完結させる。最後に、辿った手入力セルの数と、参照範囲を確かめた式の数を書き添える。
——とはいえ、その“正しい用法・用量”は、まだ誰も知らない。ここまでの研究に、あなたのデータは1件も入っていないからだ。平均は地図にすぎない。自分の“いい具合”は、試して探すしかない。
あなたの実験(N=1)を始める → プロジェクトに追加(記録機能は準備中)
- Panko R.R. (1998) ‘What We Know About Spreadsheet Errors’, Journal of Organizational and End User Computing 10(2):15-21 — doi.org
- Powell S.G., Baker K.R., Lawson B. (2008) ‘A critical review of the literature on spreadsheet errors’, Decision Support Systems 46(1):128-138 — doi.org
- Powell S.G., Baker K.R., Lawson B. (2009) ‘Impact of errors in operational spreadsheets’, Decision Support Systems 47(2):126-132 — doi.org
- Panko R.R. (1999) ‘Applying Code Inspection to Spreadsheet Testing’, Journal of Management Information Systems 16(2):159-176 — doi.org
- Panko R.R., Halverson R.P. (1994) ‘Individual and group spreadsheet design: patterns of errors’, Proceedings of the 27th Hawaii International Conference on System Sciences 4:4-10 — doi.org
- Powell S.G., Baker K.R., Lawson B. (2009) ‘Errors in Operational Spreadsheets’, Journal of Organizational and End User Computing 21(3):24-36 — doi.org