レベル: 初級 Per Kroll, Manager of Methods, IBM Rational, IBM
2005年 10月 11日 2007年 11月 10日 更新 IBMはEclipse Foundationに対して、企業がソフトウェア開発プロジェクトの計画、実行を一貫して行うための、オープンソースのプロセス・フレームワーク構築プロジェクトを提案しています。
はじめに
ソフトウェア開発プロジェクトに対して、時間や予算の予測を含めて、組織的に、そしてシステム的に取り組むことは成功への鍵ですが、多くの企業や組織は、そうした構造を持っていません。IBMは、自らが持つソフトウェア・アプリケーション開発の方法論を共有するよう提案することによって、ソフトウェア・アプリケーション開発およびオープンソース・コミュニティーにおける指導力を発揮しています。
IBMは、Rational Unified Processのサブセットの寄贈を含めたプロジェクトを、Eclipse Foundationに対して提案しています。このプロジェクトは、Eclipse Process Frameworkというオープンソースのプロセス・フレームワークを構築することを目標としています。
この、IBMからの寄贈によって、業界がソフトウェア開発におけるベスト・プラクティスを設計し、それについてコミュニケーションを行い、またその公開、再利用を図るための基本アーキテクチャーやWebベース・ツールが提供されることになります。そしてRational Unified Processコア・コンテンツが貢献されることによって、大企業も小企業も、またISVやシステム・インテグレーターも、統合ソフトウェア・ベース・システムのポートフォリオを構築するIT組織も、学術界や研究コミュニティーも、ソフトウェア・プロジェクトの計画に一貫性を持たせることができます。
Eclipse Process Frameworkプロジェクト
現在、Eclipseに対して、オープンソースのプロセス・フレームワークを構築するためのプロジェクト提案が提出されています。これはEclipse Process Framework Projectと呼ばれ、ニックネームは「Beacon」です。
Eclipse Process Framework Projectには3つの目標があります。第1は、標準のプロセス・ツールと言語を開発することによって、エンドユーザーや、このプロジェクトを採用する組織やベンダー、そしてプロセス・コミュニティーが、ベスト・プラクティスを進化させ、そのために協力し合い、またベスト・プラクティスを交換し合えるようにすることです。このエコシステムによって革新が加速され、より効果的なソフトウェア・プラクティスが開発されることが期待されています。
2番目の目標は、ソフトウェア開発コミュニティーにオープンソースのプロセス・コンテンツを提供することによって、反復性の高い俊敏な開発プラクティス(プロジェクトのライフサイクル全体に渡る継続的な統合およびテストなど)を促進する一方、オーバーヘッドや過剰な形式化を減少させることです。こうしたプラクティスは、コンテンツ例として使用することもでき、また様々なプロセスの基礎として使用することもできます。
3番目の目標は、Eclipse Process Frameworkを使いやすく、そして採用しやすいものにすることです。このフレームワークは、非常に幅広い開発プラットフォームやアプリケーションに適用可能なものでなければなりません。その中にはEclipseプラットフォームでの開発者も含まれますが、そうした人達のみに限定されるべきものではありません。
Eclipse Foundationは、提案されたプロジェクトの実現可能性について、2005年の終わりまでに結論を出すことになっています。
この提案は元々IBMから行われたものですが、現在は何社かが共同提案者となっています。(これらは、Ambysoft、 Armstrong Process Group、BearingPoint、Bedarra Research Labs、Capgemini、Covansys、Ivar Jacobson International、Number Six Softwareそしてthe University of British Columbiaです)。またプロジェクトをサポートしている会社の例としては、JaczoneやObject Management Group (OMG)、NTT Comware、Sogeti、Unisys、Wind Riverなどがあります。さらに多くの企業や組織が参加しつつあり、私達はソフトウェア開発の現状を改善することに興味を持つ企業や個人を歓迎しています。
Eclipse Process Frameworkは、どんな人に役立つのか
プロジェクト・マネージャーやプロジェクト・アナリスト、開発者やテスターは、Eclipse.orgに置かれた無料ダウンロードを利用することができます。Eclipse.org を見ると、どのようにIBMコードがソフトウェア開発プロジェクトに役立つかが分かるでしょう。
私達はEclipse Process Frameworkに対して、様々な使用モデルがあるものと予想しています。将来の使用シナリオの例を幾つか見てみましょう。
個々のプロジェクト
様々なソフトウェア開発組織における個々のプロジェクトは、Eclipse Process Frameworkの中に含まれている、そのままで使用可能なプロセスを、容易にダウンロードし、またデプロイすることができます。こうしたプロセスは、容易にカスタム化することができます。つまり様々なプロセスからのコンテンツを取り混ぜることによって、あるいはコンテンツを削除することによって、あるいはEclipse Process Frameworkを取り巻く大きなエコシステムが提供するコンテンツ・プラグインを適用してコンテンツを追加、カスタム化することによって、柔軟にカスタム化できるのです。また、当然のことながら、開発者はEclipse Process Frameworkに含まれているコンテンツ・オーサリング・ツールを使って、自分たち独自のプラクティスを取り込むこともできます。そうした結果できあがるプロセスは、プロジェクトの進行につれて習得される教訓を反映させた上で容易にデプロイでき、また次々と進化させて行くことができます。
企業やビジネス
一般的に組織は、次のようなことを望んでいます。
- 新たなプラクティスを構築するよりも、既存のベスト・プラクティスを活用したい
- 自分たちの領域から独自に学んだ教訓や、培った固有の内部知識を活用したい
- 一定レベルの一貫性と、共有できる言語を、組織全体に渡って提供したい
- 個々のプロジェクトでの特有な要求に対応したい
こうした要求に対して、Eclipse Process Frameworkをどのように活用できるかを見てみましょう。
開発組織はEclipse Process Frameworkを取り巻くエコシステムを通して、大量のコンテンツにアクセスすることができます。つまり、オープンソース・コンテンツや無料で提供されるコンテンツ、ベンダーから購入するコンテンツなどはすべて、Eclipse Process Frameworkのエコシステムを通して提供されます。それによって、これまで得られなかったようなソフトウェア開発に関する知識が、すべて同じフレームワークに統合された上で組織に提供されるのです。また企業は、Eclipse Process Frameworkのコンテンツ・オーサリングを使って、自分たち独自のベスト・プラクティスを反映させることができます。
こうしたコンテンツはすべて、プロジェクト・タイプによって異なるプロセス・コンテンツを反映させた上、一連の送付プロセスの中に容易にパッケージすることができます。また送付プロセスは、様々なタイプのプロジェクトの開始ポイントとして適切な、プロジェクト計画テンプレートを規定することもできます。また逆に、こうしたテンプレートを、テンプレートで規定されるマイルストーンや様々な目的の達成方法を記述するプロセス指針にリンクさせることもできます。
組織内のプロジェクトがソフトウェア開発手法をどのように改善すべきかを学ぶのに合わせ、こうしたプラクティを反映させ、効果的にデプロイすることができます。Eclipse Process Frameworkエコシステムによってコンテンツが進化するにつれ、こうしたコンテンツを組織に対して次々にロールアウトでき、切れ目のないプロセス改善を実現することができます。
一部の企業やビジネスは、Eclipse Process Frameworkで鍵となる構成ブロックの進化に価値を見いだすかも知れません。そして、このフレームワークを改善するために投資したいと望むかも知れません。
学術界
学術界は、2つの重要な役割を果たします。1つは利用者としての役割です。大学はEclipse Process Frameworkを利用して、現在のベスト・プラクティスを教えるコースをカリキュラムに採り入れることができます。今後、大学での授業に利用しやすい補助資料(テキストや事前構成したカリキュラムなど)が利用可能になる予定です。また、学生が業界の人達とソフトウェア開発のベスト・プラクティスについて意見交換するために、Eclipse Process Frameworkを取り巻くディスカッション・フォーラムも役立つでしょう。
2番目は、最先端のソフトウェア・ベスト・プラクティスをソフトウェア業界の中心にもたらすための役割です。例えば研究者は、Eclipse Process Frameworkの内、どのベスト・プラクティスが生産性や品質を向上させうるかに関する研究など、自分たちの経験や研究データを効果的にとらえ、共有することができます。また、そうした研究を、関連するディスカッション・フォーラムで議論することができます。
ベンダーや技術企業、特定領域に関心を持つ企業
ベンダーや技術企業、またそうした企業と協力する企業は、ある特定なソリューションや技術に関するユニークな知識を持っているものです。そうした企業は、こうした知識を得るためにEclipse Process Frameworkを活用することができます。それによって企業は、あるいはそうした企業の製品やサービスの利用者は、自分たち独自のソリューションや技術を、プロセス・コンテキストの中にラップすることができます。例えば、ソフトウェア要求ツールを製造するベンダーは、その技術を最大限に利用するための指針を作成することができます。そして、自分たち独自の要求コンテンツを含んだ変形版のEclipse Process Frameworkを出荷することができ、また、この要求ツールを使う企業は、ツールの要求コンテンツと、Eclipse Process Frameworkエコシステムを通して得られる一連のコンテンツとを組み合わせることができます。
特定な技術分野や対象領域に共通の関心を持つ企業同士はEclipse Process Frameworkを活用することによって、そうした領域のためのコンテンツ開発を協力して行うことができます。例えば、何社かが、特にFDA規制(注1)遵守ためのソフトウェア開発指針を共同開発することに合意すると考えてみましょう。参加会社は今や、FDA規制準拠を保証するための指針を、共同で開発できるのです。参加会社は、そうした共同開発をEclipse組織の中で行うことができ、従ってコンテンツをオープンソースとして公開することができます。あるいは、Eclipse組織の外で協力を行うことで無料提供することもでき、あるいは、参加する組織内でしか利用できないようにもできるのです。
システム・インテグレーター
通常、システム・インテグレーターは、上記の『企業やビジネス』の場合と同じようにEclipse Process Frameworkを活用することができます。しかし一部のシステム・インテグレーターは、さらに使用シナリオを追加するでしょう。そうした人達は、ある領域において、考え方あるいはプラクティスのリーダーかも知れません。そして、その領域におけるフレームワークを、Eclipse Process Frameworkを活用して改善し、自分たちの持つ知識の少なくとも一部をEclipse Process Frameworkを通して公開したいと望むかも知れません。それによって彼らは、より使いやすいフレームワークを使えるようになる一方、こうしたフレームワークを利用して、自分たち自身を、考え方あるいはプラクティスのリーダーとして売り込むことができ、さらなるビジネスにつなげることができます。
Eclipse Process Frameworkの開発に参加する
Project Beacon提案が受け入れれば、Eclipse Process Frameworkは、他のEclipseプロジェクトと同じ原則や規則を適用されながら開発されるはずです。これはつまり、このオープンソース製品が進化するにつれ、誰もがそれを見ることができ、そしてその改善に協力できることを意味します。そのように機能するためには、参加のための規則が幾つか必要です。
Eclipseは能力主義で運営されています。つまり、何か価値を提供することによって参加できるのです。改善のための助言は誰でも提出することができ、また将来のバージョンのEclipse Process Frameworkに含まれるべきコンテンツやコードは誰でも提出することができます。コンテンツやコードを提出する人は、コントリビューター(Contributor)と呼ばれます。
いわゆるコミッター(Committer)は、実際に製品を変更する権利を持っています。従って、提案されている変更のうち、次のリリースにはどれを含めるのかも決定します。コミッターは、通常、コントリビューターでもあります。一定の長期間コントリビューターであったことを証明できる人は、コミッターになることができます。
Eclipseがどのように機能しているかについての情報は、Eclipse.orgのWebサイトを見てください。
Eclipse Process Frameworkのプロジェクト提案が公開されています。皆さんからのコメントを歓迎します。また、プロジェクトへの参加も歓迎します。参加するためには、プロジェクト提案を読んだ上、皆さんのコメントやフィードバックを、Eclipse Technology Project Forum.にポストしてください。
注1 : FDAは、Food and Drug Administration of the United States of America(アメリカ合衆国 食品・医薬品局)を表します。
参考文献 学ぶために
製品や技術を入手するために
議論するために
著者について  | 
|  | Per Krollは、現在提案されているProject Beaconのプロジェクト・リーダーであり、またIBM Rational Unified Processの開発マネージャーでもあります。彼はIBM Rational CTOの一部として、様々な方法やツール間での統合やIBM内での方法統合を含めた、プロセス領域におけるIBM Rationalの戦略責任を持っています。彼は、サプライチェーン・マネジメントやテレコム領域、通信、ソフトウェア製品開発などの分野で20年以上のソフトウェア開発経験を持っています。またKruchtenとの共著である、The Rational Unified Process Made Easy ? A Practitioner's Guideの著者でもあります。 |
記事の評価
|