Open Source Collaboration Joint Network

OSCJ.orgメンテナンスのおしらせ

2007年6月10日(日)日本時間の午前1:00より約3時間、CollabNet社セントラルストレージクラスターのアップグレードメインテナンスのため、サイトへ接続できなくなります。ご了承下さい。

OSCJ Times[第4回]:OSS推進フォーラム サーバ部会技術評価TF

こちらのBlogでは、OSCJに参加する各プロジェクトが技術評論社 Software Design誌(http://www.gihyo.co.jp/magazines/SD)に連載中の「OSCJ Times ~ OSSプロジェクトを取り巻くインサイドストーリー」に掲載された記事を順次公開しています。

 

OSCJ Times[第4回]
OSS推進フォーラム サーバ部会技術評価TF

文:㈱日立製作所 鈴木友峰 SUZUKI Tomom
文:NTTデータ先端技術㈱ 西沢里恵 NISHIZAWA Satoe 
企画協力:OSCJ.net http://www.oscj.net/

 

技術評価TFの活動

*技術評価TFの成り立ち

 技術評価TF(Taskforce,旧:開発基盤WG)は,OSSに関係する企業の集まりです.個人的なコミュニティ活動が出発点でないという点は,ちょっと変わっているかもしれません.また,日ごろは市場で競争している企業が,ここでは協調して開発や評価に取り組んでいます.おそらく,ソースが公開されているOSSだからこそ成り立つ異色のプロジェクトだろうと思います.
 そもそもは,サーバ分野におけるOSS普及促進に向けた技術的な課題解決を担当するOSS推進フォーラムのワーキンググループとして2004年4月に発足しました.与えられた課題の範囲が漠然としていたので,何をやろうか…と議論すること3ヵ月,ベンチマーク評価と障害解析ツール開発をやろうということになりました.
 当時は,データベースサーバやアプリケーションサーバといったOSSミドルウェアが企業システムで導入され始めた時期で,各社が同じような検証評価をしていました.これを分担して実施して,結果を共有することで,少なくともコスト削減にはなるだろうというのが一緒に始めたきっかけでした.
 その後,2006年2月の組織再編により,サーバ部会技術評価TFと名を変え,現在,約20社が参加して活動しています.

* プロジェクトのスコープ

OSSミドルウェアがどこまで使えるのかをあきらかにすることで,OSSの適用可能領域をユーザに提示していこうというのが活動の目的です.具体的には,PostgreSQLやMySQLなどのデータベースサーバと,JBossやTomcatなどのアプリケーションサーバの性能/信頼性を評価して結果を公開しています注1,2.
 当初は既存のベンチマークツールを利用していたのですが,最近はベンチマークツールを自分たちで開発し,その結果や利用手順と併せて公開しています.また,評価対象のOSSミドルウェアについて,性能や信頼性を向上させるパッチを開発するところまでスコープを広げて活動しています.

 

* プロジェクトの雰囲気

 企業でOSSのサポートや評価を実際に担当しているメンバが集まっているので,とにかく中身の濃い議論が交わされています.なぜ性能が出ないのかといったことについて,原因をトコトン追究します.OSSミドルウェアのチューニングが足りないのか,Linuxが悪いのか,そもそも限界なのかなど,はっきりさせないと気が済まない雰囲気です.
 毎週金曜の夕方16時からのレビューは,議論が白熱して4時間以上に及ぶこともあります.また,1,500ページに及ぶ報告書のレビューのために2泊3日の合宿をしたり,数々の飲み会でOSSビジネスの将来を語り合ったり,企業の枠を超えた付き合いが広がっています.

 

JBento開発プロジェクト

 JBentoは,技術評価TFでゼロから開発したベンチマークツールです.JBossやTomcatといったアプリケーションサーバを対象にしていて,JBossのコミュニティなどでも評価のために使われ始めています.今回は,技術評価TFの数あるプロジェクトの中からJBentoプロジェクトについて紹介しましょう.

* JBentoとは

JBentoはJava Benchmark Toolkitの略です.「アプリケーションサーバのベンチマークテストを楽にしたい!」という思いから生まれました.
 それまで使っていた商用のベンチマークツールSPECjAppServer2004は複雑で使いづらいうえに結果を簡単に公開できないという問題があり,せっかく測定した性能データも値を隠しての公開となってしまいました.
 そこでJBentoの開発が始まりました.JBentoの特徴は3つあります.

 

①ミクロまたはマクロな測定が可能
 JBentoでは,アプリケーションサーバにデプロイするアプリケーションを2種類用意しています.
 1つ目はjbento-servletです.これは,アプリケーションサーバの持つ機能の性能を細かく測定するためのもので,現在はHttpSessionレプリケーションを測定するServletを提供しています.
 もう1つはJBentoStoreです.こちらはJPetStoreを改造したもので,実システムに近い性能検証が行えます.

 

②測定,測定結果の集計,グラフ化作業が簡単
 ログを表計算ソフトで集計して,グラフを作って……という作業は結構手間がかかりますよね.設定を変えて何度も測定する場合はなおさらです.JBentoでは測定→結果の集計→グラフ化まで自動化しています.スループット,レスポンスタイム,マシンリソースを集計し,JFreeChartを利用してグラフを作成,HTML形式のレポートに埋め込んで出力します.

 

③JBentoはオープンソース
 JBentoは商用ソフトウェアとは違い利用に制限はありません.改造も,JBentoを利用した性能検証結果の公開もOKです.皆さん,自由に利用してください.

 

* JBossの開発者との共同検証

 JBentoを利用し,JBossクラスタの性能検証を実施しました.その結果,JBossクラスタの性能が非常に悪いこと,原因はHttpSessionレプリケーション機能にあることが明らかになりました.クラスタを組んで信頼性を高めたいのに……このままじゃ遅すぎて使えません.
 ということで,この結果をJBoss Forumに投稿しました.そうしたら…なんと,JBoss Inc.の開発者が来日し,共同検証をすることになったのです.そして5日間の共同検証の結果,大幅にJBossクラスタの性能が向上しました.詳しくは脚注1のWebサイトから「Javaアプリケーション層JBossクラスタ再ベンチマーク」報告書を参照してください.
 この共同検証後,JBossクラスタの性能についてJavaOne@Sun FranciscoでJBoss Inc.との共同セッションを行いました.オープンソースならでは! という感じですよね.また,JBossの開発者が来日した際,JBossのユーザグループJJBug注3との交流会も行われました.

 

 

最後に
 

 技術評価TFには,今回紹介したJBentoの他にも数々のプロジェクトがあり,OSSの普及,促進を進めています.興味のある方はぜひ参加してください. 

——————————————————————————-
注1)日本OSS推進フォーラム開発基盤WG:http://www.ipa.go.jp/software/open/forum/development/
注2)OSS iPedia:http://ossipedia.ipa.go.jp/
注3)日本JBossユーザ・グループ「JJBug」:http://www.jbug.jp/(随時会員募集中です)
——————————————————————————-

OSCJ Times:[第3回] Alicia

こちらのBlogでは、OSCJに参加する各プロジェクトが技術評論社 Software Design誌(http://www.gihyo.co.jp/magazines/SD)に連載中の「OSCJ Times ~ OSSプロジェクトを取り巻くインサイドストーリー」に掲載された記事を順次公開しています。

 

2006年9月号掲載 :[第3回] Alicia

文 :ユニアデックス(株)高橋秀樹 TAKAHASHI Hideki
企画協力:OSCJ.net http://www.oscj.net/

 

Aliciaプロジェクトの生い立ち

* プロジェクト誕生の経緯

「Aliciaプロジェクト」は,Linuxダンプ解析ツールAlicia(アリシア)(注)を開発/メンテナンスしているプロジェクトで,2004年度の日本OSS推進フォーラム開発基盤WGの中で産声を上げました.

 

——————————————————————————-
注)Aliciaは,「独立行政法人 情報処理推進機構オープンソースソフトウェア活用基盤整備事業」に関わる委託業務の一環として開発されたものです.
——————————————————————————-

 

*Aliciaとは

 Aliciaとは「Advanced LInux Crash-dump Interactive Analyzer」の略で,Perl言語を使用したカーネルのクラッシュダンプ解析ツールです.ここだけの話ですが,Aliciaという名前の由来は,ツール名にセクシーな名前を付けたいという1人の開発レビューメンバの声が開発メンバ全員に受け入れられた結果で,Advanced Linux…という長たらしい正式名称は,後から付け足したものです.
 開発のコアメンバは,外資系企業にて長い間メインフレームOSの開発/保守に携わってきた人間です.Linuxの世界にメインフレーム並みのダンプ解析環境を構築したいという熱い想いからAliciaの開発を提案するに至りました.Aliciaは,

 

http://sourceforge.net/projects/alicia/

 

からダウンロードできます.なお,OSCJ.netではAliciaの日本語情報を掲載しています.
 Aliciaは,既存ダンプ解析ツールcrash/lcrashをラッピングして共通のAPIを提供するツールです.利点として,ダンプ解析時間の短縮,ダンプ解析ノウハウの共有,カーネルソース構造解析の逆引き辞典,といった点が挙げられます。機能の詳細については,プロジェクトのWebページを参照いただくことにして,本稿では,Aliciaプロジェクトの概要を紹介したいと思います.

 

Aliciaプロジェクトについて

 

* 活動状況

 2005年3月23日に初期バージョン1.0.1のリリースを行った後,7つのリリースを行い,数々の機能アップを重ねてきました.最新バージョンは,2006年3月13日にリリースしたバージョン1.1.4です.SourceForgeからのダウンロード件数は,2006年7月5日時点で981件となっています(Linux雑誌にてAliciaのCD配布を行ったこともあります).
 その他,Linux WorldやOpen Source Conferenceなどでの講演,雑誌への記事寄稿といった活動を展開しています.

 

* プロジェクトの構成メンバ

 Aliciaは,ミラクル・リナックス㈱および㈱NTTデータの技術協力を得ながら,ユニアデックス㈱が中心となって設計/開発したツールです.クラッシュダンプの解析ツールであり,一般ユーザ向けのツールとは言い難いこともあって,現在のAliciaプロジェクトの開発メンバは残念ながらユニアデックス社員だけで構成されています.これって,プロジェクト運営としては怠慢の極みですね.

 

 

Aliciaプロジェクトの運営と課題

 

* 健全なコミュニティ活動の条件

 コミュニティ活動が健全であるためには,謙虚であること(Be humble),透明性を保つこと(Be transparent),ユーザを意識すること(Think of the user community)の3つが大事だそうです.
 これは,2005年11月24日にOSCJ.netが開催した「第1回 OSSプロジェクト公開会議」でのBrian Behlendorf氏(Apache Software Foundationの創設者の1人)の言葉です.実際にプロジェクトを成功に導いた人の言葉なので,心の中にズシンと響く講演でした.

 

* Aliciaプロジェクトの現状

 さて,問題のAliciaプロジェクトですが,ここには多くの課題があり,理想的な活動からは縁遠い状況にあります.Aliciaプロジェクトの課題を以下に整理してみました.

 

①開発コミュニティが実質的に社内でクローズしている
②開発コミュニティを維持/拡大していくための資金/人材を確保できていない
③コミュニティ活動を活性化させるためのインセンティブがない

 

①は利用者が限定的で広がりにくいこともあり,バグ報告,改造要求は社内だけに留まっているのが現状です.
 ②はAliciaの開発がビジネスに直結していないことが最大の要因と考えています.Aliciaは,ビジネスとは無縁なツールであるため,会社からの開発費援助はありません.つまり,あくまでもボランティアベースでAliciaプロジェクトを運営しなければならないという厳しさがあります.
 ③はAliciaを社内でのダンプ解析に利用できれば十分であり,社外に広めるための活動を煩わしく感じてしまう,といったことが挙げられます.

 

* OSSの普及にはOSSのビジネス化推進が重要

 Aliciaプロジェクトを任されて気付いたことは,開発コミュニティ,ユーザ,OSSサポート企業による,いわゆる「OSSエコサイクル」を形成することが重要であり,まずは,OSSサポート企業がOSSのビジネス化に真剣に取り組み,ビジネスの一部としてOSSコミュニティを後押しする体制を作り上げるべき,ということです.たとえば,Aliciaをビジネスの中で活用できれば,それに関連する企業からAliciaの開発支援を期待することができます.

 

*Aliciaダンプ解析サービス

 現在,Aliciaプロジェクトでは,AliciaによるLinuxダンプ解析サービスのビジネス化を検討しています.Aliciaがビジネスに結び付くことで,Aliciaの利用が促進され,機能拡張のニーズが生まれ,OSSエコサイクルの牽引役としての企業が育ち,それがひいてはLinuxの信頼性向上に貢献することになります.Aliciaプロジェクトの健全な運営は,OSSとしてのAliciaをOSSのビジネスとしてビジネス化できるかが大きな鍵です.

 

* Aliciaプロジェクトの今後

 Aliciaプロジェクトは,OSCJ.netにおける劣等生プロジェクトなのですが,まずは細々ながらもAliciaの存在をアピールする活動を継続し,ダンプ解析に興味を持つ人たちがAliciaの改善に興味を抱き,ビジネス利用を意識しながらも気軽に開発に参加できるようなプロジェクト運営を目指したいと思っています.ぜひ,AliciaのMLにご意見などをお寄せください.お待ちしていまーす.

OSCJ.netメンテナンスのおしらせ

サーバーメンテナンスのため、下記の日程にてOSCJ.netが最大4時間停止いたします。  

  • 日本時間 9月23日13:00~17:00
    (Friday September 22, 2006 at 9:00 PM PDT)

 

OSCJのプロジェクト紹介が連載形式で「Software Design」に掲載されています。

これからOSSを始められようとする方々、或いは始めたがどうやってデベロッパーを増やせばいいのか、ユーザを増やせばいいのか悩まれている方々に、間違いなく貴重なナレッジを提供できることになると思います。

* 第3回の「Alicia」につきましては高橋さんに執筆をしていただきました。

今後の予定:
* 第4回は「diwg」の予定です。

—————————————————
Software Design 2006年9月号(技術評論社刊)
連載

* OSCJ Times【3】……高橋秀樹

B5判 / 224ページ / 2006年8月18日発売
定価970円(本体924円)

9/12にNinja-VA無料体験セミナーを開催

下記の要綱でNinja-VA無料体験セミナーを開催いたします。
■ 日時: 2006年9月12日(火) 15:00 - 17:00
■ 開催場所: テンアートニ
■ お申し込み先URL: http://www.10art-ni.co.jp/product/Ninja-VA/seminar.html

■ プログラム内容:
- Ninja-VA 概要
* 生産性を劇的に向上させる「Ninja-VA」の概要と製品構成をご紹介します。

- ハンズオン
* 開発環境である「Ninja-VA Studio」は新バージョンからEclipseのプラグインとして利用することも可能になりました。開発を容易にしつつも高スキルなエンジニアの能力を十分活用できる実践的な機能を体感してください。

OSCJのプロジェクト紹介が連載形式で「Software Design」に掲載されています。

これからOSSを始められようとする方々、或いは始めたがどうやってデベロッパーを増やせばいいのか、ユーザを増やせばいいのか悩まれている方々に、間違いなく貴重なナレッジを提供できることになると思います。

* 第2回は「Seasar」の方にご執筆いただきました。

今後の予定:
* 第3回は「Alicia」の予定です。

—————————————————
Software Design 2006年8月号(技術評論社刊)
連載

* OSCJ Times【2】

B5判 / 224ページ / 2006年7月18日発売
定価970円(本体924円)

OSCJ Times: [第2回] S2Container.NET

Software Design連載記事

OSCJ Times ~ OSSプロジェクトを取り巻くインサイドストーリー

S2Container.NET

S2Container.NETとは

 最近よく耳にするDI(Dependency Injection)とAOP(Aspect Oriented Programming)というキーワード,.NET Framework(以降.NET)では無関係と思っていませんか? Seasarファウンデーションで公開されているS2Container.NET(以降,S2.NET)は,このDIとAOPを.NET環境でサポートする軽量コンテナです(注1).DIとAOPについては後ほど簡単に説明しますが,まずはS2.NETの生い立ちを紹介します.

注1
http://s2container.net.seasar.org/

S2Container.NETの生い立ち

 少し時をさかのぼりますが2004年7月,DIとAOPをサポートする軽量コンテナとして,Seasar2というJavaのオープンソースソフトウェアが注目を浴びていました.筆者はこのSeasar2を先輩から勧められ,そのときにDIとAOPという技術に初めて触れることになったのです.
 ソフトウェアを設計する際に,インターフェースを用意してもどこかで実装クラスに依存してしまう問題を感じていた筆者は,DIという技術に感動し,ぜひSeasar2を業務で利用したいと思うようになりました.
 しかし,そのころを境にして筆者が携わるプロジェクトは,Javaではなく.NETを利用することが多くなりました.当時,DosankoというSeasar2を.NET環境に移植するプロジェクトがありましたので,そのDosankoのリリースを期待していました.
 しかし半年たってもリリースされる気配はありません.そこで,進行状況を確認するためにCVSリポジトリを覗いてみたのですが,そのときに自身でDIとAOPをサポートする軽量コンテナを開発しようと決心しました.
 その後,Seasarファウンデーションのメンバーに誘っていただいたこともあり,2005年4月にSeasar2を.NET環境に移植するプロジェクトとしてS2.NETがSeasarファウンデーションのSandboxプロジェクトに申請,承認され,産声を上げることになったのです.

図 S2.NETのExampleExplorer
コンソール出力,定義ファイル,ソースコードをタブで切り替えてS2.NETの機能を確認することができます.

現在の状況

 2005年12月,バージョン1.0をリリースするとともにSandboxプロジェクトを卒業し,現在ではSeasar.NETプロジェクトのプロダクトとして提供されています.本稿執筆時点での最新のリリースは1.2.0となっており,活発な活動を継続しています.
 当初は1人だったコミッタも開発開始直後からさまざまな技術者が参加し,現在では10名近いコミッタが開発に携わっています.
 また,Javaで人気を博しているO/RマッピングフレームワークのS2Daoを.NET環境に移植したS2Dao.NETや,分散コンポーネントを実現するライブラリであるS2Remoting.NETなどの姉妹プロダクトも開発されています.

プロジェクトの雰囲気

 S2.NETは他のSeasarプロダクトに比べ地方に在住するコミッタの割合が高いような気がします.そのため,コミッタが集合する機会が少なく,MLなどを中心に開発を進めています.今後はコミッタ同士が集まる機会を定期的に開いていきたいと思っています.

これからの課題

最近の開発状況

 筆者らは,次の3点を今後の課題としています.

  1. ドキュメントを拡充する
  2. 新機能を追加する
  3. 知名度を向上させる
1. ドキュメントの拡充

 ドキュメントの作成は後回しになりがちです.現在ではドキュメント作成をタスク化し,トラッキング(注2)を用いることでタスクの見える化を行い,活発にドキュメントの作成を行うようにしています.同時に,私たちと一緒にドキュメントを作成してくれるメンバーも広く募集しています.

注2
https://www.seasar.org/issues/browse/CONTAINERNET
2. 新機能の追加

 S2.NETの開発開始後,移植元のSeasar2に追加された新機能をS2.NETでも実装するという作業があります.
 S2.NETやSeasar2は,diconファイルと呼ばれるXMLファイルにコンポーネント(クラスやインターフェース)を登録します.Seasar2に追加されている新機能には,diconファイルの記述を省力化するための便利な機能があります.
 筆者は業務でS2.NETの講習や有償サポートを行うこともあり,初めてS2.NETにチャレンジするユーザに触れる機会があるのですが,diconファイルでのスペルミスや記述漏れでエラーとなることが多いようです.そのため,diconファイルの記述を省力化するための新機能は欠かせません.

3. 知名度の向上

 より多くのユーザにS2.NETを利用してもらうために,知名度を向上させる必要があると考えています.実際にはイベントでの発表やWebマガジンへの寄稿を行っていきます.

DIとAOP

 さて,まだまだ.NETユーザには馴染みが薄いと思いますが,S2.NETを紹介するうえで欠かせないDIとAOPというキーワードについて簡単に紹介したいと思います.

DIとは

 DIというのはDependency Injectionの略語です.依存を注入するという意味です.ソースコードが実装クラスに依存せず,DIをサポートするS2.NETが実装クラスの依存を解決します.ソースコード上はインターフェースのみでやり取りを行おうという考え方です.

AOPとは

 次にAOPですがAspect Oriented Programmingの略です.アスペクト指向プログラミングという意味です.ログ出力のような本来の目的とは異なる処理を,ソースコードに記述せず定義ファイル(diconファイル)に記述することで外から織り込んでしまおうという考え方です.
 このDIとAOPを効果的に利用して,テストが行いやすく,そして保守性に優れたソフトウェアの開発を手助けしようというのがS2.NETの目的です.詳しくはS2.NETのWebページをご覧ください.

最後に

 S2.NETもスタートして1年余りが過ぎました.「起」の部分を卒業し,今後1年間はしっかりとした「承」となる活動を行っていきます.
 S2.NETは国産のOSSです.コミッタと日本語でやり取りできますので,質問や要望はお気軽にMLに投稿してください.また,一緒にS2.NETの歴史を築き上げようという方の参加を心からお待ちしております.

第3回「OSS総論の勉強会」開催のおしらせ

OSSコミュニティ運営者を中心に、OSS総論について新たに勉強会を開催し議論することによってコミュニティ運営者の意識を高め、より有効な運営施策を模索する事を目的として、勉強会を開催いたします。毎回、テーマとする著名なOSSに関するトピック、論文、書籍を取り上げレゼンテーション+フリーディスカッションの形式の予定です。

事前の参加登録は必要ございません。

第3回「OSS総論の勉強会」

  • 日時: 2006年8月2日(水) 18:30開始
  • 会場: 恵比寿 SGIホール(入場無料です)
  • 地図:http://www.sgi.co.jp/company_info/map1.html
  • 内容:E.レイモンドOSS論文三部作の第三弾、「魔法のおなべ」の解説から、Seasarファウンデーション事例を検討します。
  • 演者: Seasar栗原傑享氏
  • プログラム:18:30-19:15 「魔法のおなべ」の内容についてのプレゼンテーション(45分)

    19:15-19:30 休憩(15分)

    19:30-20:15 フリーディスカッション(45分)

ご飲食について

プレゼンテーション中、フリーディスカッション中に食事を摂ることができます。ご自由にお持込ください。

主催: OSCJ
後援: 日本SGI株式会社
協賛: 特定非営利活動法人Seasarファウンデーション

「Michael TiemannとOSS勉強会」開催のおしらせ

ゲストにMichael Timann氏をお招きし、彼を囲んでOSSにかかわる様々な話題を議論します。本勉強会は、セミナー形式ではなく、参加者全員が自由に発言できる会ですので、Tiemann氏と議論してみたい、という方は是非ともご参加ください。
事前の参加登録は必要ございません。

「Michael TiemannとOSS勉強会」

  • 日時:2006年6月29日(木) 19:00開始
  • 会場:恵比寿 SGIホール(入場無料)
  • 人数:80名
  • 地図:http://www.sgi.co.jp/company_info/map1.html
  • 内容:
    1. FedoraをはじめとするOSSプロジェクトのガバナンス、マーケティング手法についてのディスカッション
    2. OSIの最近の状況とOSSライセンスについて
  • ゲスト:Michael Tiemann氏
  • 通訳:逐次通訳有り
  • プログラム:
    19:00-20:00 FedoraをはじめとするOSSプロジェクトのガバナンス、マーケティング手法についてのディスカッション
    OSIの最近の状況とOSSライセンスについて

    ご飲食について

    休憩およびフリーディスカッション中に食事を摂ることができます。 ご自由にお持ち込ください。
    主催: OSCJ

    後援:日本SGI株式会社株式会社 テンアートニ

次ページへ »