オルタナティブ・ブログ > Chris Dingの思惑ブログ >

Think Smart/ do what computers do not

基幹システムの開発にTDD手法導入

»

基幹システムの共通系の設計が遅れていたので、工期の挽回のため開発メンバーは予定通りに投入。TDD手法の導入の絶妙なタイミングだ。

開発人員は、設計メンバーが3人、開発メンバーが10人という構成。設計メンバーも開発メンバーも本格的なアジャイル手法の経験がなし。

組み込み系の開発経験者を中心とした開発メンバーに開発環境を馴染ませながら、執筆途中の詳細設計書を説明。詳細設計書といっても、内容が関数仕様と実装概要の程度と決まっている。その上、関連する技術も、共有メモリ、ソケット通信、メッセージング(Tuxedo)、DBアクセス(Oracle)と多岐に渡っている。

開発言語はLinux上のC言語。C言語用のテストフレームワークはほかの主流言語とは違い、定番というのがなかったので、インターネットでリサーチした結果checkに決定。

仕様未確定のままで開発させると開発メンバーに反発されるのが必至なので、「仕様が確定したら、仕事がオフショアに持っていかれるよ」と開発メンバーにまず念押し。

TDD手法のお陰で、仕様がなかなか決まらなくても、開発メンバーが何とか設計メンバーに貼り付けている。それに、共通系の工期の遅れの挽回も見えてきている。後は、業務系(開発メンバー30人程度)のバッチとオンラインにどう適用するかな。プログラムの性質からみると、オンライン系がアジャイル手法に向いている。共通系での成功の勢いで、是非業務系の開発にもTDD手法を導入したい。もちろん、いずれ基幹系のオフショアプロジェクトにもアジャイル手法を導入することを目標にしている。

Comment(0)