Outperform The Future

27. 超高速開発で変わる開発環境とは

 

超高速開発を取り入れることによって、開発環境にも変化が生じます。今回は、超高速開発によって開発環境や開発工程がどのように変わっていくのかを考えていきましょう。

 

品質管理が容易になる

 

従来型の開発方法において、品質を管理するために行われてきたこととは、大量のドキュメントの作成とそれに対して行われる「レビュー→ドキュメント修正」の繰り返しでした。

ドキュメントを中心に進められる従来型の開発方法では、品質を維持するためには、多くのドキュメントを作成し、繰り返されるレビューとその指摘事項を反映することでドキュメントの精度を高めていく必要がありました。

 

大きな間接工数をかけてレビューを繰り返し、レビューの評価結果をまたドキュメントとしてまとめることで品質管理を行う、といういわゆる「管理のための管理」が必要となってしまっていたのです。

しかし超高速開発においては、リポジトリなどによって一定レベルの品質が担保されることになるため、繰り返し行われるレビューや大量のドキュメントは最小限におさえられます。

リポジトリに登録されている情報をチェックすることで簡単に品質管理することが可能になるのです。

 

テスト工程が一部自動化できる

 

従来型の開発におけるテスト工程では、開発したソフトウェアの実行や、ソースコードの検証を行い、システムが期待した通りに動作するかを確認します。

テストはバグの検出等、システムの品質を担保する上で非常に重要な工程です。高い品質を維持するためには、膨大なテストケースを想定し、単調で地道な繰り返し作業が必要となります。

そのため、テスト工程は開発全体の中でも非常に多くの作業工数を占める事になります。

特に品質を求めれば求めるほどテストケースは膨大になり、より多くのコストが必要となります。

 

さらには、開発の過程で仕様変更が生じた場合、テスト仕様の見直しや場合によってはテストのやり直しなどを余儀なくされることもあります。

しかしテスト自動化ツールを活用することで単体テストや、システム全体の動作を確認する統合テストでは、テストケースの設計やテストの実施まで自動で行うことが出来ます。

仕様の変更に対しても、テストケースの整合性やテストの再実行をツールが行ってくれるため、大きな手戻りやコストの増加を招くことはありません。

そして、テストの設計からテスト結果の統計までをリポジトリ上で管理できるため、テストの実施状況や結果などの情報を把握しやすくなります。

 

下流工程の作業負担が軽減できる

 

超高速開発では、扱うデータや機能の定義といった業務要件や、利用者に提供するインターフェースデザインのような実装要件など、基本設計情報をリポジトリに登録するだけで、業務用のアプリケーションやシステムを開発出来ることを最大の特徴としています。

それにより、「基本設計/詳細設計」・「プログラミングなどの実装」・「単体テスト/結合テスト」など、開発における下流工程の作業負担を大幅に軽減できる、という大きなメリットを持っています。

 

しかし、単に下流工程の作業負担を大幅に軽減できる、というだけでなく、それによって本来十分な時間を割くべきであった業務分析結果などの仕様情報をリポジトリに登録したり変更したりする作業が中心になってくるということです。

さらには、短期・低コストで開発を進められるため、最初の開発に要求事項の全てを盛り込む必要がなくなり、運用フェーズで改善していくことを前提に開発工程を組むことも可能になるのです。

 

連載目次へ