ソフト開発監査の監査当日(1)ソフト監査も3現主義が大切

2021年1月21日ソフト開発監査

ソフト開発監査の監査当日の確認ポイントを紹介していきます

ソフト開発監査は、①当日までの事前準備 ②監査当日の現地での監査作業 ③フォローアップ(監査結果の活用)の3段階に分かれます。これ以降の記事では、現地での監査作業の進め方とポイントについて紹介します。 

ソフト開発監査の進め方は ソフト監査概要・方法その1:ソフト監査はプロセス監査+技術力監査 の記事でも紹介しましたように、ISO9001 の監査の方法を手本にしているので、事前準備、現地での監査、フォローアップ の順に作業をします。この記事では、監査で一番重要な現地での監査作業の具体的な進め方と注意するポイントについて、グータラ親父がこれまでに行ってきたソフト開発監査での注意点を元に紹介していきます。 

なお、監査を行う時に使う監査チェックリストの個々の具体的な内容は、実務・プロセスの監査 以降の記事で順次紹介していますのでそちらをご覧ください、この記事では全体的な作業の流れと注意点について紹介していきます。

監査当日はオープニングで始まり予定の時間を守って進める

監査当日の作業の流れは、ソフト監査計画書として事前に監査を受ける相手にも渡してあるので、基本的には監査計画書の日程表に従って作業を進めていくだけです。ただし、ソフト開発監査がグータラ親父がエイヤッと作ったもので一般的な物では無いので、監査を受ける側にしてみれば初めての作業になります。ですので、監査の目的や進め方を相手に説明しながら進めるという点を常に意識して作業を進めます。

またソフト開発監査に限りませんが、監査は監査当日の作業ももちろん大切ですが、その後のフォローアップの方が重要性がより高いです。監査当日の作業で見つかった問題点を、フォーアップの作業で着実に改善して初めて、監査の目的が達成できます。 

フォローアップでの作業に向けての相手先の担当者のモチベーションを維持するためにも、現地での監査は計画した時間を守って進めるのが良いです。言い換えれば、時間が来れば確認項目が残っていても時間を延長せずにそこで切り上げます。 確認項目が残った状態では問題点を見逃すデメリットも残りますが、時間を超過して長々と監査につき合わされた事で相手の担当者のモチベーションが下がる事によるデメリットの方が大きい事が多いので、時間厳守で進める事が良いと思います。

ソフト開発監査は、ソフト監査実務・事前準備その1:監査計画の説明の記事で紹介した監査計画書の日程表に従って、オープニング会議、相手先による組織やソフト開発プロセスの紹介、監査チェックリストを使った確認、監査報告書の作成、クロージング会議 の順に進めていきます。この後の記事ではで各々の作業について具体的に紹介していきますが、その前に1つ監査作業を進める上で大切な事について説明しておきます。

ソフト開発監査も3現主義が大切

ソフト開発監査に限らず、問題点を見つけてその解決方法を考えるという作業をする時には、3現主義 がとても大切です。ソフトはそれ自体は見る事も触る事もできなくて、設計や実装やテストも全て人の頭の中の仮想世界で作業が進みます。それでも人が行う作業に変りはなく、人が行う作業の問題点を見つけて解決するにはやはり3現主義は大切なのです。

ところで3現主義って何でしょうか? 品質保証に関連する仕事をした経験のある方なら耳タコで覚えている人も多いでしょうが、そのような機会が少ない人には耳慣れない言葉かもしれませんね。ネットで調べると以下のような説明がありました。

3現主義

現場・現物・現実の三つの現を重視すること。問題が発生したときに、机上で判断するのではなく、現場で不具合の起きた現物を観て、どのような状態であるのか(現実)を確認することで解決を図る。

出典 「ビジネス用語辞典」byWisdom(NEC)Wisdomビジネス用語辞典について 情報

簡単に言うと、①問題が起きたその現場に行ってどんな環境で問題が起きているのかを自分の肌で感じて、②問題を起こした現物を自分の目で見て・触って・匂いを嗅いで、③何が起きたのかの事実を一つずつ確認して、問題を解決しましょう。というのが3現主義です。刑事もののドラマなんかで、刑事役の人が犯罪現場に行って周囲の聞き込みをして、現場の状況を見て、残留物を集めて調査を進める、というのも3現主義ですね。

ソフト開発での現場・現物・現実とは

では、ソフト開発での3現主義ってどうすれば良いのでしょう? 開発の現場は設計者や実装者の頭の中の仮想空間です、そこに入り込むにはどうしましょうか? 一番簡単なのが、設計者や実装者が作業している作業場所に行き、彼らが見ているのと同じ画面を見て、彼らに作業の内容を説明してもらう事です。 

要求仕様書や設計書やソースコードという現物を、彼らが見ているのと同じ画面(現場)を通して見せてもらえば、現場・現物が見えてきます。 作業進捗の管理や品質の管理を行っているシステムがあれば、その画面を見せて貰えば、それが開発管理の現場・現物です。

これらの情報は通常は社外秘で持ち出し禁止なので、見せてもらうためには設計者や実装者が仕事をしている開発拠点に出向き、彼らの事務所の一室に情報を参照する環境を準備してもらい、そこで見せてもらう事になります。

もちろん、大量の設計書やソースコードを漠然と見ても短時間では何も判りません。ソフトの設計内容やテストの内容について、具体的に一番良く把握している設計リーダやテストリーダの人に内容を説明して貰いながらそれらの現物を見て、ソフトエンジニアがどんな作業をしているのか(現実)を見ていく事で、内容を理解して問題点の有無を確認してきいます。

このような進め方が、3現主義に沿ったソフト開発監査なのです。まあ、簡単に言えば実務を取り纏めている設計リーダやテストリーダの人に説明して貰いながら、実際の設計書やテスト計画書やバグ管理システムを見せて貰う、という事です。

ソフト開発監査では、工場の製造監査と違い現地・現物が見えにくいのですが、以上のような事に注意すれば、3現主義に沿って効果的な監査を進める事ができます。

それでは次の記事からは、現地での監査の日程表に従って、監査作業の具体的な内容と注意するポイントについて紹介していきましょう。