ソフト開発監査チェックリスト(17)設計/実装技術(概要)

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

ソフト開発監査のチェックリストのチェック項目を順に紹介していきます

ソフト開発監査は、ソフトの開発委託先の能力を判定するためにグータラ親父が勝手に命名した監査の方法です。ソフト開発監査の概要監査時の事前の準備監査当日の作業内容については、他の記事で紹介しています。また、ソフト開発監査で使う監査チェクリストの使用時のポイントについても、別の記事で紹介していますので、そちらをご覧ください。 

この前後の記事では、以下の4つの種類のソフト監査チェックリストの個々の項目について、順番に紹介しています。

  1. 開発プロセスのチェックリスト
  2. 開発技術の1つ目の要件管理のチェックリスト
  3. 開発技術の2つ目のテストのチェックリスト
  4. 開発技術の3つ目の設計と実装のチェクリスト

この記事では、開発技術の3つ目の設計と実装のチェックリストについて各々のチェック項目を紹介します。なお、設計と実装のチェックリストを使う時のポイントについては ソフト監査実務・監査当日その10:設計と実装技術のチェックのポイント の記事で紹介していますので、そちらも一緒に読んで頂くと判り易いと思います。

開発委託先のソフト開発能力で一番見たいのは設計と実装

ソフト開発技術のチェックリストの項目紹介も、開発の入り口の要件管理、開発の出口のテストと紹介をしてきて、残りはいよいよ入り口と出口を結ぶ設計と実装です。ソフトの開発全体を見通して大切な順番に並べると、要件管理、テスト、設計と実装となるのですが、ソフト開発を委託する場合の根幹はやはり設計と実装です。

ソフトの開発作業を委託するという視点から見ると、要件管理はどんなソフトを作るのかという事なので、ある程度の部分を自社で行う事もあります。またテストは要求した要件が実現されているかどうかを確認する作業なので、これもまた自社で行う部分もあります。しかし、設計と実装はその殆ど全てを開発委託先に業務として依頼する場合が多いので、設計と実装の技術は開発の委託先がしっかりとした技術を持っていないと困ります。

一般的な技術項目に対する応答の仕方から組織や開発リーダの技術力を見極めます

そのために、ソフト開発監査では設計と実装のチェックリストを使って、ソフト開発委託先の設計と実装の技術力を確認していきます。とはいえ、ソフトの設計と実装という技術領域はとても範囲が広いので、個別の技術のレベルを確認するようなチェックリストを作る事はできません。そこで、昔からよく知られているような一般的な技術項目を設計と実装のチェックリストとして取り上げました。一般的な技術項目について、開発委託先がどのように認識していて自社の開発プロセスの中で注目しているのか、開発リーダはどの程度重要性を認識しているのか、という点を確認する事で開発委託先の設計と実装の技術力のレベルを推測します。

ですので、チェックリスト自体は具体的な設計と実装についての技術内容を確認する項目が並んでいますが、そのような技術内容が今回の開発に必要かどうかではなく、そのような技術内容を認識していてそれを開発プロセスの中で忘れずに検討するような仕組みがあるか、という視点で内容を確認していきます。

昔からよくある一般的な技術項目ですがビギナーの設計者だと知らない事もよくあります。その様なエンジニアが開発メンバーに入っている場合でも大切な技術項目が抜けないように、開発プロセスの中で設計や実装のガイドラインとかレビューの確認項目として、開発プロセスの中に埋め込まれているかどうか、開発リーダはその事を意識できているか、とう視点で確認をしていきます。

この設計と実装のチェックリストも、他のチェックリストと同じように何かの規約とか標準があるわけではありません。単にグータラ親父はこんなのを勝手に作って使っていたというだけです。 それでもまあ、開発委託先の設計と実装に関する開発技量の判断の参考には使えると思います。ここに載せておきますので、このリストも参考に見ながら記事をご覧ください。

設計と実装チェックリスト
(クリックするとpdf が開きます)

設計と実装のチェックリストも1行が1つのチェック項目となっていて、横方向には6つの欄があります、6つの欄の使い方は開発プロセスのチェックリストと同じですので、各々の欄の使い方については ソフト監査実務・チェックリストその1:開発プロセス(要件管理) をご覧ください。

設計と実装のチェックリストは以下の4つの大項目に分類してあり、それぞれの分類の頭文字を持ったID番号が付けてあります。

  • 購入ソフト品質(PS-):製品に組み込む購入ソフトの品質についての確認
  • OSS品質(OS-)    :製品に組み込むオープンソースソフトの品質についての確認
  • Free Soft品質(FS-)  :製品に組み込むフリーソフトの品質についての確認
  • 内作ソフト品質(IS-) :社内で設計・実装するソフトウエアの品質についての確認

まずはじめは購入ソフトの品質確保についての確認項目です

それでは、次の記事から個々のチェック項目について紹介していきます。設計と実装のチェックリストも見ながら記事を読んでいただくと判り易くなると思います。