概要
10年間で数億投資して開発し、安定稼働していた販売管理パッケージで、発生頻度も再現性も乏しい処理エラーが検出され、原因の解明と発生の防止を実施した。数度のバージョンアップを経て、その間全く問題にならなかった箇所でのエラーのため、その箇所の保守経験者がおらず、ゼロからのソース解析と障害調査が必要となった。そのためプログラミングスキルが高い技術者数名を短期集中で投入して解決を図ろうとした。国内のグループ会社の技術者の投入での作業見積もりをとったところ、コスト的に見合わなかったので、オフショア先でC++、UMLの技術者を集めて対応した。
UML適用時の工夫点と効果は以下の通りである。
工夫点
●エクセル、パワーポイントでUMLを作成し、日本側、中国側が図面に自由にメモを書き込み議論した。
●シーケンス図で、障害個所の仮説を立てて説明することで、障害調査の効率が向上した。
効果
●共通言語であるUMLを使って設計していたため、オフショア先にアーキテクチャの伝えたい個所が正確に伝わった。
●オフショア先(中国)がソースを読んで、シーケンス図を作成した。日本側は、そのシーケンス図をレビューすることでオフショア側の理解度を確認できた。
成功へのポイント
●製品全体のアーキテクチャ、アプリケーションの構造と振る舞いの説明をUMLで行うことで、オフショア先に仕様が正確に伝わり、後戻り作業が発生しない。
●製品開発時に、アーキテクチャ(UML)、パターン、自動生成等の規則を決め、規則にしたがって開発すれば、保守作業をオフショアに発注する際に改めてUMLを使って仕様書を作成する必要がない。オフショアであれば、オンデマンドに優秀な人材を確保できる。