PR

手戻り作業の発生に備える

 最後に、手戻り作業が発生してしまった場合の対処法を紹介する。手戻り作業の影響範囲は、図6のようにプログラムだけではなく広い範囲に影響する。

図6●手戻りの影響範囲はプログラムだけではない
図6●手戻りの影響範囲はプログラムだけではない
[画像のクリックで拡大表示]

 まず、プログラムで見てみると、修正したことにより他に不具合が発生しないかを確認しなければならない。これには、リグレッションテストが必要になる。リグレッションテストは、修正箇所だけではなく広範囲をテストすることになる。そのため、リグレッションテストの効率を上げるため、テストの自動化は実施しておきたい。

 具体的には、ユニットテスト用のテストコードを作成したり、リグレッションテストツールの適用を計画しておいたりする。テストコードの作成は、工数がかかるので敬遠されがちだ。しかし、手戻り作業発生時のリグレッションテストの負担を考えれば、主要なロジック部分のテストコードだけでも作成しておいたほうがよい。

 手戻り作業は、設計書や操作マニュアルなどのドキュメントにも影響する。ウォーターフォール型の開発やハイブリッドアジャイルであれば、基本設計書までは作成するので、要件定義書や設計ドキュメントは修正の影響を受ける。操作マニュアルを準備しなければならない場合は、画面イメージを変更するのも手間がかかる。

 このようなドキュメントの修正は大変な作業になるので、手戻り作業に対してドキュメントの修正範囲も少なくなるようにしておく。

 例えば、重複する記述をできるだけ省くような設計書のフォーマットにしておく、ドキュメント量や画面点数を増やしすぎない、といった施策だ。操作マニュアルが必要な場合は、画面を使って細かく記述することに意味がないところは省いておく。

 誰でも手戻り作業は発生しないことを願っているはずだ。しかし、手戻り作業が一切存在しないという開発現場はない。少なからず手戻り作業は発生するものと考えておくべきだ。手戻り作業の発生に備えて修正効率を高めておくことも、手戻りリスクを低くすることにつながる。

 次回は、システムエンジニアの立場で効果的な開発体制づくりについて記載する。

英 繁雄(はなぶさ しげお)
日立ソリューションズ 業務革新統括本部 IT 技術推進センタ センタ長
英 繁雄(はなぶさ しげお) 自社の社内システムを新しい技術・技法(OSS、DevOps、アジャイルプロセス)を適用して開発している。著書に「ハイブリッドアジャイルの実践」(リックテレコム)がある。現在は社内システムを開発しており、これまでの経験を基にプロジェクトの特性に合わせた独自のアジャイル開発を実践している。