« 書籍「Grails徹底入門」 | トップページ | ソフトウエア開発改革のアプローチ~そのニ:自動化とMDA、ATG、SATソルバ) »

2008年12月22日 (月)

ソフトウエア開発改革のアプローチ~その一(自動化とMDA)

製造業のソフトウエア開発は、開発する製品の数と1つ1つの製品のソフトウエア規模、複雑度が年々深刻な状態になっていく。

生産性や品質に問題を抱えながらも、抜本的な解決方法見出せず、深夜までの残業、派遣社員に依存した人海戦術、安易なアウトソーシングという「一時しのぎの方法」になっている。

大手メーカーからすれば、正社員を減らし派遣社員に依存した人海戦術、下請け会社への委託がコスト削減になるだろうが、中国、ベトナム、イスラエル、インドなどのソフトウエア開発新興国の人件費に比べれば圧倒的に高い人件費になる。

また、そもそも戦略なき人海戦術では、生産性や品質に問題への有効な解決方法になっていない。

さらに、現在および今後のソフトウエア開発の生産性や品質に問題は、何か1つの方法で解決が期待できるようなものでは無い。多角的なアプローチによる問題解決が重要である。それだけに、企業の真剣な抜本的な開発への研究と取り組みが重要となる。

それでも、「あれもこれも」と散発的な取り組みになってはならないので、各企業の向かうべきゴールと課題を発見し、解決アプローチを絞り込み、戦力を集中させることが大切となる。

さて、ソフトウエア開発の問題解決に向けて色々な取り組みが存在する中で、今日はソフトウエア開発の「自動化」のアプローチについて一部考えてみる。

ソフトウエア開発プロセスの中で自動化が期待されている作業はいろいろ存在する。
この自動化は単に開発環境(ツール)による自動化の効率化だけでなく、多くは作業ノウハウと成果物の「再利用」という考え方とリンクさせている。

MDAによる技術は、UMLで設計したモデルを100%コード生成し、コンパイル、リング、実行およびシミュレーションが可能になどが可能になる。

特に品質と価格競争力が厳しく問われる組み込み系のソフトウエア開発では、確実な開発コストの圧縮と品質を期待できるアプローチの1つだ。それだけに、自動化は大きな成果を得るための重要戦略である。特にEU企業は粛々と取り組んでいる。

そして、MDAでは要件定義から設計までの作業ノウハウと成果物を再利用することがもう1つの大きな狙いである。と言うよりもこちらが本来プライマリーな目的である。

特に新規開発では上流作業は重要かつ専門性が問われる負荷の高い作業である。
この上流工程の部分の作業ノウハウと成果物は継続性の高い製品開発が特徴である組み込み系のソフトウエア開発では再利用しない手はない。

つまり、MDAとは「作業ノウハウと成果物の再利用」と「モデルから100%のコード生成と100%のテスト自動化」をセットで利用するもである。

平たく言えば、PIM(Platform Independent Model)の再利用であるが、OMGなどが定義しているPIM以外にも現場作業で再利用しなければならないものは多数存在する。
OMGのMDA定義はアーキテクチャ上の定義に焦点が置かれているために、開発作業で必要となる色々な作業ノウハウや作業成果物については事実上言及されていない。
それだけに、各企業が自らのMDAアプローチを確立することが成功の一歩である。

(ソフトウエア開発改革のアプローチ~そのニ)へ続く。

=HSCI Takanari Hashimoto(URL:http://hsc-i.com/)=

|

« 書籍「Grails徹底入門」 | トップページ | ソフトウエア開発改革のアプローチ~そのニ:自動化とMDA、ATG、SATソルバ) »

「パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/112989/43494096

この記事へのトラックバック一覧です: ソフトウエア開発改革のアプローチ~その一(自動化とMDA):

« 書籍「Grails徹底入門」 | トップページ | ソフトウエア開発改革のアプローチ~そのニ:自動化とMDA、ATG、SATソルバ) »