ソフト開発監査チェックリスト(7)外注管理プロセス

2021年2月5日ソフト開発監査

開発プロセスチェックリストの6番目は外注管理です

この記事では、ソフト開発監査に使う監査チェックリストの個々の項目についての紹介をしていきます。監査チェックリストは①開発プロセス ②要件管理 ③テスト ④設計と実装 に分かれていて、この記事では①開発プロセスの中の外注管理の個々の項目について紹介します。(チェックリストそのものはソフト監査実務・チェックリストその1:開発プロセス(要件管理)の記事に載っていますので、そちらをご覧下さい)

外注管理活動のチェック項目

前の記事ま出で紹介した開発プロセスチェックリストのチェック項目は社内でのソフト開発についてでしたが、開発委託先も自社内で開発するだけではなく、社外のソフトハウスなどの他社に開発を再委託する場合もあります。その場合には、開発委託先がちゃんと再委託先のソフト開発業務を管理してくれないと困ります。 

開発委託先が、開発業務を再委託した再委託先の組織に対して外注管理活動を正しく実施しているかの確認をするのが外注管理活動のチェック項目で、項目番号の先頭がSM- となっている13項目です。

これまで見てきた委託先に対する確認項目と同様の事を、委託先が再委託先に対して実施しているかという視点での確認ですので、似たような内容が並んでいてちょっと混乱しそうですが、委託先が再委託先に対する活動の事だと意識してご覧ください。それでは、順番に見ていきましょう。

【項目番号:SM-01】

ソフト開発作業の内のどの作業を再委託するのか、委託する範囲や成果物や納期などの委託する業務を明確にし、その業務に適した再委託先を選定する手順がちゃんとあるか、納期や納品物等を明確にした委託作業についての計画が明確になっているか、など再委託先を選定し作業を委託する段階での手順やその実施状況について確認します。

【項目番号:SM-02】

再委託先を選定する時に一番大事な事は、良い再委託先を選ぶ事です。ここで再委託の成否が半分以上決まります。再委託先がソフト開発について十分な能力を持っているのか、ソフト技術や品質保証能力などいろいろな面で判定する必要があります。その判定はできるだけ客観的な方法で委託先の能力を調べて、その調査の結果に従って選定するようになっている必要があります。再委託先の選定が、つねに最適に行えるように、選定の手順がルール化されていて能力を基準に選定するようになっているかどうかを確認します。

【項目番号:SM-03】

ソフト開発業務の再委託ですので、委託先と再委託先との間で業務委託に関する契約書が交わされるはずです。再委託先で行われる業務とその品質保証は、全て契約書の内容で決まってきますので、契約書がちゃとあるか、契約書には責任分界点が明確に描かれているか、という点を確認します。

【項目番号:SM-04】

再委託先でのソフト開発業務は、当然再委託先で人や機材が割り当てられて実務が進む事になります。再委託した業務の進捗や品質を管理するには、まず再委託先で業務計画が作られていて、その計画と対比して実績が管理されている必要があります。ですので、まずは再委託先の業務についての計画書があるあどうか、その計画どおりに再委託先で業務が行われている事を確認するための外注管理の業務を開発委託先がちゃんと実施できているか、を確認します。

【項目番号:SM-05】

再委託先が作成した業務計画書に従って業務が計画どおりに進んでいるのかを、業務のレビュー状況やテスト状況などの実績を元に管理できているあどうか、委託先による再委託先のソフト開発業務管理の状況について、確認します。

【項目番号:SM-06】

委託先から再委託先へ委託している業務についても、開発の途中で要求仕様や納期に変更が発生する場合があり得ます。要求仕様書の改定や場合によっては委託契約書の改定が発生する事もあるかも知れません。そのような委託業務の変更の時に、どんな事をするのかを規定したルールがあって、そのルールに従って変更作業が進めらえれているのか、変更管理が手順通りに行われているのかを確認します。

【項目番号:SM-07】

業務委託先の管理者層と再委託先の管理者層とが、業務の進捗状況やリスク・懸案などの課題の状況について情報を交換する定期的な打ち合わせを設けているかを確認します。再委託した開発業務に大きな問題が起きそうな時に、早めにそれを検出したり効果的な対策を案出したりするためには、定期的な情報交換による相互理解が大切だという考えからです。

【項目番号:SM-08】

前項の管理者層による定期的な打ち合わせは業務管理の強化が目的ですが、それとは別にもっと具体的な開発業務や重要な技術項目については、委託先と再委託先とでエンジニアレベルでの緊密な情報交換が必要です。そのような活動を定期的に実施しているかを、確認します。

【項目番号:SM-09】

再委託先の業務の成果物は、設計書だったりソースコードだったりテスト報告書だったりと様々ですが、それらの納品の前には委託先と再委託先との合同のレビューが必要です。そのようなレビューが予め計画されるような作業手順になっているか、また実際の開発作業の中でちゃんと実施されているかを、確認します。

【項目番号:SM-10】

委託先のソフト品質保証部門が、再委託先のプロセス品質とプロダクト品質の状況を監視しているかどうかを確認します。もともとのCMMIでは、Software Quality というとプロセス品質だけを指すのですが、グータラ親父のチェックリストでは、プロダクト品質についての監視もここに織り込んでいます。製品版のソフトの品質を保証するには、プロセス品質とプロダクト品質の両方の品質の監視が必要なので、この項目でプロダクト品質の監視も追加しました。

【項目番号:SM-11】

ソフトの構成管理についても、委託先の品質保証部門が再委託先の構成管理活動を監視しているかを確認します。ソフト開発を行う組織なので、何等かの構成管理をしているのは間違いないのですが、何を構成管理の対象とするかどんな方法で構成管理を行うか、要するにどうやって正しいバージョンのドキュメントやソーススコードや開発環境を維持するかは開発組織によって取り組みのレベルが異なります。再委託先でも必要なレベルで構成管理が行われている事を確認する方法として、委託先が再委託先を構成管理という視点で監視しているかを確認します。

【項目番号:SM-12】

再委託先から委託先に成果物が納品される時に、委託先で検収がちゃんと行われていないと品質に不安がでます。検収といっても、必要な名前のドキュメントやソースコードが揃っているというだけではなく、テストを行って委託した業務の品質を確認したうえで検収をしているか、という点について確認します。

【項目番号:SM-13】

ソフトの委託に限らないのですが、委託した業務が終わったらその成果に対して評価をして、満足できる成果が得らえれたのか不十分な成果しか得られなかったのかを明確にします。その上で、その評価結果を再委託先にも伝える事で、次回からさらによい状態で成果物を納入してもらえる可能性が高まります。そのような活動が、委託先から再委託先に対して実施されているかどうかを確認します。

次は開発技術の要求仕様について紹介します

ここまでの記事では、開発プロセスのチェックリストについて、チェックする内容や注意点につて簡単に紹介してきましたが、いかがでしたでしょうか。チェックリストの記述と重なるところもあるのですが、少しでも皆さんがソフトウ開発監査の概要を知って頂く助けになればと思います。

ちなみに、ソフト開発監査という手法事態がグータラ親父が勝手に名前を付けてやってきた方法ですので、これが正解というのは在りません。ここで紹介している内容を参考に、皆さんが自由に活用されるのが一番良いと思います。

それでは、次からの記事でからはソフト開発監査チェックリスト ①開発プロセス ②要件管理 ③テスト ④設計と実装 のうち、開発の最上流工程になる②要件管理について、チェックリストの個々の項目について紹介していきます。

(次の記事)ソフト開発監査チェックリスト(8)要件管理技術(全般) に続く