これだけは抑えておきたい!ソフトウェア開発に役立つプロセス改善の基本の考え方

コーディングする前には、事前準備として必要事項の決定が必須になります。しかし、そのフェーズの際の作業を具体的にイメージできない方も中にはいるのではないでしょうか。そこで今回は、アプリ開発におけるコーディング前の準備、設計フローについて考えていきましょう。以下では、代表的な開発モデルとしてのウォーターフォール型とアジャイル型の2種類を並べ、重要になるポイントを探っていきます。

プロセスの定義

20161026_2_1

「技術」「人」「プロセス」はソフトウェア開発における重要な3要素です。開発だけでなく、保守や運用を支えているのは言うまでもありません。では、プロセスの定義とは何でしょうか? いくつかの「規定・標準」で定められたものを例として以下に記載します。

– ISO/IEC 15504(SPICE)・ISO/IEC 12207
インプットをアウトプットに変換する、相互に関連する又は相互に作用する一連の活動(JIS Q9001)

– IEEE
ある目的のために実行される一連のステップ

– Quality Process Management by Pall, Gabriel A.
指定された最終結果を生み出すように設計された、作業活動に関わる「人、材料、エネルギー、機器、及び手順」の論理的編成

出典:プロセス改善ナビゲーションガイド~なぜなに編~(株式会社オーム社)

細かな表現こそ違うものの、こうして見ていくとプロセスはつまり「決まった目的達成のためのインプットからアウトプットまでの一連の行程」だと考えられます。ソフトウェア要求分析や、ソフトウェアテスト、プロジェクト管理プロセスなどが代表的な例です。

■プロセス改善の意義

プロセス改善の目的は“ビジネスを成功させる”ことに尽きます。どのような施策も、ゴールはここになくてはいけません。では、ビジネスを成功させるためには何を向上すれば良いか。それは、企業の規模にかかわらず、以下の3項目に集約にされます。

・コスト(費用)
・クオリティー(品質)
・デリバリー(納期)

QCD(Quality,Cost,Delivery)の向上は、顧客ニーズを満足させ、企業ブランドの維持と向上に繋がり、ビジネス成功へと結びつきます。プロセス改善はあくまでも手段。目的ではないということを忘れてはいけません。

■起こりうる問題とプロセス改善で得られる成果

たとえば顧客から納期の短縮を求められた際、リソースの増強や作業量の軽減を考えるのは至極まっとうなことです。しかし、コストや契約上それが難しいならば、作業時間を減らすために効率を上げるしか他に手はありません。

また、企業はブランドの維持と向上を図るために、常に高いクオリティーが必要です。テスト・レビューの実施でこれを得ることは可能ですが、慢性的なコストがかかっているとすると、別の問題を考えなくてはなりません。そもそもクオリティーの高いソフトウェアにはテスト・レビューにかかるコストは少なくて良いはずだからです。

上記の2例を解決する手段が“プロセス改善”です。前項でも挙げたQCDの向上の手段として、プロセス改善は大きな役割を果たします。

次のページ:
改善の具体的なプロセス

 

関連する記事

facebook

案件情報や最新記事をお届けします。
ぜひチェックしてみてください。