増加し続けるソフトウェアの複雑性と戦うことがキモ米IBM、開発者向けカンファレンス「Innovate2011」開幕

» 2011年06月07日 00時00分 公開
[大津心,@IT]

 米IBMは6月6日(米国時間)、開発者向けカンファレンス「Innovate2011」を米国オーランドで開幕。「Software.Everyware.」を表題に基調講演を行った。

 Innovateは、2年ほど前まで「The Rational Software Conference」や「Rational Software Development Conference」などと称して実施されていたもの。ソフトウェア開発が複雑化し、より経営に近付いたことで、イベント自体もよりマネジメント層向けにシフトし、名前も「Innovate」に変更したという。今回のInnovateには約4000人が来場し、約半数が米国外からの参加者という国際色の強いイベントとなった。

 ホスト役を務めたIBM Rationalのマーケティング担当バイスプレジデント ジーナ・プール(Gina Poole)氏はIBMの100年の歴史を振り返りながら、「この100年間でソフトウェアはイベントの表題でもある『Software.Everyware.』になった。例えば、いま米国では1日に2万9000フライトが飛んでいるが、この飛行機のフライトレコーダーからカバンのRFID管理まで、ありとあらゆるものがソフトウェアで制御されている。企業においてもミッションクリティカルからPCまで、あらゆるレイヤでソフトウェアが活躍している。IBMでは、次の100年に向けて“Smarter Planet”を挙げているが、まさにその根幹となるのがソフトウェアだ」と語り、現在の企業活動におけるソフトウェアの重要性を説いた。

IBM自身が導入し、推進してきたアジャイル開発

 続いて登壇し、現在のRationalの状況を説明したのは、1月にRationalのGeneral Managerに就任したばかりのクリストフ・クレックナー(Kristof Kloeckner)氏。同氏は、それまでクラウドコンピューティング担当CTOを務めていた。

 同氏は1980年代からモデル駆動型開発によるIBMのソフトウェア開発を推進してきており、最近では再利用(Reuse)の観点からアジャイル開発に注力しているという。IBMの開発者は約2万6000人おり、全世界700カ所以上の事業所に散らばっている。このような体制で開発を行ううえで、開発体制をアジャイルに変更することは非常に重要だったという。

クレックナー氏写真 米IBM Rational General Manager クリストフ・クレックナー氏

 実際、IBM自身も2006年からアジャイル開発手法を積極的に取り入れた結果、ここ3年間のソフトウェア事業部の社員一人当たりの収益が15%上昇したほか、資産の再利用も8万件以上に上り、運用コストも5年間で3億ドル以上削減できているとした。

 特に影響が大きかったこととして、納期に間に合った案件が2006年の47%から2011年には95%へ2倍に上昇した点や、アジャイル開発手法を取り入れた開発案件における間に合った比率も、5%から85%にまで上昇した点などが挙げられるという。

 そして、アジャイル開発成功の秘訣は「いかにコラボレーションとインテグレーションを自動化し、最適化するか?」に掛かっており、「タスクの自動化」「ナレッジの再利用」「コラボレーション」に関する部分はRationalのツール群を大いに有効活用したという。

 このRationalのコラボレーション基盤となっているのが「Jazz」だ。JazzはEclipseのクライアント機能を統合した上で、ソフトウェア開発のライフサイクル管理を可能にしているものの、あくまでも機能の追求ではなく、チーム生産性の向上を第一に考えられるように設計されている点が特徴だ。また、外部組織とのコラボレーション開発を前提に作成されており、開発ガイドラインやマニュアルなどをJazzプラットフォームに統合し、開発者が意識しなくてもガイドラインに沿った開発ができるようにした。

 また、Jazzはソースコードこそ公開していないものの、ユーザーが中心となって作る「OSLC(Open Services for Life Cycle Collaboration)」を採用しており、現在このコミュニティには400名ほどのコアメンバーが参加しているという。今回の「Innovate2011」では、Jazzプラットフォーム上の新ツールとして「Collaborative Design Management」が発表された。

Volt写真 基調講演会場に展示されていた「Volt」の実車。アジャイル開発を採用したことで、従来の常識を覆し、複雑なハイブリッド車にもかかわらず29カ月でのリリースを実現したという

 Collaborative Design Managementは、チーム間のコラボレーション・コミュニケーションを強化し、ソフトウェア設計を容易にするもの。例えば、レビューを複数のチーム間で行ったり、現在自分が作成しているパーツが他のどのパーツに影響を与えるのかを可視化できるなど、ソフトウェア開発において必要な情報共有を同一プラットフォーム上で可能にしており、開発者間のコラボレーションを容易に実現できるようにしたという。

 その他、コミュニティとの連携を強化する取り組みとしては、ノースカロライナ州立大学など5つの大学に対して無償でJazzを提供する「Jazz Hub」や、Eclipse向けのSDKをリリース。クレックナー氏は、「ソフトウェア開発が複雑化し、人月が増えていく中、開発チーム数も増えているため、それらチーム間のコラボレーションの重要性はますます増している。この製品によって、ソフトウェアデリバリーの根底が変わるとも言えるのではないか。その他の取り組みは、Jazzに関わるコミュニティを育てるものの一環として考えている」とコメントし、講演を終えた。

ソフトウェアの再利用促進でオンタイム開発を実現

 ユーザー事例一人目として登壇したのは、GMでテクニカルフェローを務めるウィリアム・ボーランダー(William Bolander)氏。GMは現在世界16カ所でプログラムを作成しており、1000人以上のソフトウェア開発者が従事。動力制御からシャシー、電気自動車制御まであらゆるソフトウェアを自社で開発しているという。

ボーランダー氏写真 GM テクニカルフェロー ウィリアム・ボーランダー氏

 その規模は非常に巨大で、数百人のエンジニアが数百のアルゴリズムモデルを利用しながら百万行以上のコードを作成しており、それを6週間に1回のペースでリリースしているという。

 その結果、複雑性が増したことで生産性が落ち、それを改善するために「より少ないリソースでより多くの価値を提供しなくてはならない」という目標を挙げた。そして、この目標を達成するための基本戦略として「ソフトウェアの再利用」を推進することにしたという。

 その結果は、昨今リリースしたハイブリッド自動車「Volt」に現れた。Voltは電気モーターだけで75マイル走行可能で、1400CCのガソリンエンジンと組み合わせることで600キロ以上の走行距離を実現した。そのVoltでは積極的に再利用を活用。電気モーターとエンジンを組み合わせた部分は80%を再利用し、Voltの発電機の部分では再利用率が90%に達したとした。

 ボーランダー氏は、「とにかく再利用を増やしている。Voltの場合、ハイブリッド車ということもあり、GM史上最も複雑なソフトウェアだった。しかし、再利用やアジャイル開発を用いることで、品質を担保しながらオンタイムで作成することができた。これはより良いツールのお陰とも言えるだろう」とコメントして講演を終えた。

開発のあらゆる工程を数値化して見えてきたもの

 続いてユーザー事例二人目として登壇したのは、Danske Bankの開発部長を務めるピーター・ラスマッセン(Peter Rasmussen)氏。Danske Bankは北欧を中心に15カ国で展開する国際銀行。現在、5万人の顧客がおり、670カ所の事業所を所有。従業員数は2万1500人を超えるという。IBMのメインフレームを利用しており、いままでに3億7500万ドル以上を投資してきた。

ラスマッセン氏写真 Danske Bank 開発部長 ピーター・ラスマッセン氏

 同社では、ITのコスト削減に着手。「その際、経営陣に『ITのコストはちゃんと削減できているのか?』という問いに即座に『Yes!』と答えたものの、その後の『ちゃんと動いているソフトをリリースしているのか?』という問いにはすぐ答えられなかった。調べたところ、それぞれのチームが違う開発ソフトを利用しているなど、見直すべき点がいくつかあった」(ラスマッセン氏)。

 同氏はその後、開発ソフトを統一し、さらに開発拠点をインドに集約してアジャイル開発を取り入れ、ソフトウェア開発の効率化に着手。3年間で10%の効率化向上を目標に挙げた。そして、それを実現する方法として始めたのが、あらゆる開発項目の数値化だ。実際には、「複雑性」や「予想値の管理」などの数値化に着手した。

 そして、あらゆることを数値化していった結果、意外な点も見えてきたという。例えば、「ベテランPMは、新人PMと比較して50%以上も効率が良い」や「開発期間が短い場合と長い場合で2倍以上の効率性の差が出る」などだ。

 最後に、今回の数値化プロジェクトの感想については、「最も印象的だったのは、あらゆる事象を数値化したことだ。その結果、不確実性を少しでも下げることができた。また、ポイントとしては“データはありのままの数値を信じる”ということだ」と述べ、講演を終えた。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ