トップスポーツチームの監督に教わる秘訣
この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。
作者 Ryan Slobojan, 翻訳者 編集部 投稿日 2007年12月13日 午前12時7分
最近Alex Blewitt氏(ブログ・英語)はJava Community Process(JCP)を”頭がないのにそれに気づかず走り回っている鶏”に例え、それが既に死んでいる状態にあると記載した。これはJCPの実用性とそれがJavaの未来において、どのような役割を果たすのかという事に関して論議を巻き起こした。
彼のブログ掲載(source)で、Alex Blewitt氏はJavaとJCPに関する懸念を表した。
Blewitt氏はまた下記のように述べている。
JCPはコミュニティは重要ではない。コントロールが重要なのである。JSRをどれでも良いから読み通すと”なぜ既存のシステムのよって提示されていないのだろう?”という事に関するセクションがある。それを読むとマーケティングのエクササイズになる。そこには常に本当の理由はないのだが、’私達はそれをより良く・異なる方法で・より小規模で・より速く 行うことができるのである。’。この状況において本当に起こるのはスペックリード達が既存のものの上に構築することに関してまったく興味が示さないということだ。彼らは彼ら自身のコードベースバージョンを作りたいのである(それが本物もしくは提案されたものであるかに関わらず)。そしてその彼らの根拠は本質的に’なぜなら私達はそれを書いていないから’というものなのである。通称’エキスパートグループ’はデベロッパたち(通常JSRのサブミッタ)の単なるレビュープロセスをする人以外の何者でもなく、実際開発されるコードにはなんの影響も及ぼさないのである(通常JSRのサブミッタはエキスパートグ ループのヘルプを得るよりもむしろコードのデベロッパを提供することによって、プロセスのIPを全て所有することができる。)。言い換えると、それはあなたがやりたいことをなんでもできるという認可された恵みなのであるが。
他の人々はグーグルがJava開発をリードするべきで(source)、そうでなければJavaは真のパラレル言語によって置き換えられるだろう(source)とコメントしている。しかしながらモジュール性がプラットフォームの崩壊を招く(source)と心配している人々もいる。
上記の掲載がされた同日に、JSR 275(メジャーとユニット)(参考記事)のリーダーの一人であるJean-Marie Dautelle氏は、JCPのコミュニティからフィードバックと質問(source)を引用した。
またDautelle氏の疑問によってJSR 310(日付のAPI)(source)のリーダーの一人であるStephen Colebourne氏(ブログ・英語)からとても長い返答が得られた(source)。 Colebourneは下記のように問うている。
この疑問はJavaにおけるより広範囲なガバナンスへの問題へと発展する。Javaは今やオープンソースだが、それがどのように動作するかもしくはJCPに影響をもたらすかという明確な説明がないのである。
特にJavaの開発とその将来的な方向を見ているのは一体誰なのだろうか?それはSunの誰かなのだろうか?隠された魔法のプロセス?それとも当たって砕けろなのか?
Colebourne氏はJavaが7に移行するのを誰が決めるのか、どのようにコアライブラリの変化が起こるのか、そしてなぜJSR 277モジュールマネジメントシステムが今されているように扱われているのか、彼はいくつかの問題を提示した。
- SunはJCPの法的契約を無視している(例:wrt Apache Harmony)(source)。これは信頼性を全て破壊する。
- JCPはまだ大会社のメンバからの提案書に調印するために存在している。基本的に会社は既存のコードを提出し、エキスパートグループはそれを評価するために存在している。
- JCPもSunもどちらもJavaの方向性を示していない。Javaがどこに向かっているのかそしてそれが何を成し遂げようとしているのか、それも5年10年単位で、明確なビジョンが必要なのである。
- JCPが重複しているJSRを排除する予定はない。更に悪いことに、それは成功への道を憚るオプションを許容しているのである。
- 個人が意見を述べる権利がなさすぎる。彼らは大きな会社を忠実に保つイノベーションと妨害を提供しがちである。
Colebourne氏はまたJavaのこの先5年、10年のビジョンを打ち出すようなアーキテクチャグループ、より大規模でより自主的なJCP Executive Committee、JSRメンバへの支払い、Apache Harmonyへの適切なTCKのようないくつかのソリューションを提案した。提示されたもう一つのオプションはJCPの排除でkernel上で構築され たOSGiベースのモジュールVMとしてのJavaの再定義であった。そうすればベンダーは好きなようにミックスしてマッチすることができ、また市場はその勝者を決定する。Patrick Wright氏はApache-Sun HarmonyのディベートにおいてApacheのみが自身の説を語っている事を指摘していくつかの点において反対している(source)。またWright氏は5 年、10年単位のビジョンがこの移り変わりの速い言語開発の世界においてどれくらいの価値が得られるのかという事を問うている。
Peter Kriens氏(ブログ・英語)もまたディベートにおいてColebourne氏の分析に賛同し、またソリューションには反対し(source)優位に立っていた(source)。Kriens氏はまた新しい疑問を提示した。実装と仕様どちらがより重要なのか?Kriens氏は仕様は異なる条件を狙う複数の実装を許容し、また複数の組織のニーズを均等にすることによって中立性を保ち、遅い標準化のプロセスはソリューションを熟考する時間を与え、知的財産権利に関する問題を処理するのがより簡単である事を指摘した。Dalibor Topic氏(ブログ・英語)はJCPとOSGi両方(source)が大きな会社に支配されすぎているため、その仕様が独占特許のコンポーネントによって邪魔されているが、しかしながらそれは両方とも所有するに値するものであると返答している。Kriens氏はまた大規模な会社のサポートは仕様が成功するのに重要な要素で、Sunが JCPにおいて不均等な統制を行っている一方OSGiのメンバは平等に扱われると返答している。
あなたはどう思うだろうか?
原文はこちらです:http://www.infoq.com/news/2007/12/jcp-debate
12/16 ~野村総合研究所が提案~ 「不況を乗り切る!効果的なIT投資を考えるセミナー」
InfoQ Japanはコンポーネントスクエアが運営しています
ITマネージャ必聴!IT活用セミナー 勝ち残りの法則~管理・統合化スペシャル~
この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。
Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。
マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。
Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。サブミッションが選択された人、そうでない人も含めて、個々の目的意識の確認、膨大なプログラムから聞きたいセッションの選択、旅行の準備、プレゼンテーションの準備の期間を終えて、無事当日を迎えました。
筆者はアジャイルソフトウェア開発についての年に一度の国際会議であるAgile2008に初めて参加してきました。今年の日本からの参加者の数は14名にも及び、発表者は5名、受け持ったセッションは8つに及び、例年にない活躍を見せました。なぜ今年のAgile2008では、これほど多くの日本人が参加し発表に至ったのか? そのレポートをお届けします。
エスエムジーでは、Java全般を対象にしたトラブルシューティングサービス「JaTS」を提供しています。この記事では、前回に引き続き、JaTSにて蓄積したトラブル事例とその解決ノウハウの一部をお送りしている「Javaトラブルシューティングメールマガジン」(JTSMM)の総集編として、過去2ヶ月のトラブル事例と追加情報をダイジェストとして提供いたします。
この記事では、モデル駆動アプローチがうまく機能しない、または機能しなくなることによって期待した結果が実現できなくなる 8 つの理由について書きたいと思います。
No comments
返信