FindBugsを使うと、Javaの危険なバグを特定し、修正することができます。そのユニークな機能は、Javaの世界に数ある静的分析ツールのなかでも異彩を放っています。FindBugsのどこがどう特別なのか、この記事で解き明かすことにします。
JBoss, the Drools teamは6日、JBoss Rulesの最新版であるJBoss Rules 3.0 Finalを公開した。JBoss RulesはもともとThe Codehaus, the Drools projectによって開発されていたビジネスルールエンジン「Drools」をベースにして開発されたプロダクト。従来のDroolsからの派生物であるほか、すでにJBoss JEMSプロダクトの一環と位置付けられている。 JBoss Rules(Drools)はJavaで開発されたビジネスルールエンジン。組織におけるビジネスルールを処理するためのルールエンジンであり、カーネギーメロン大学のCharles L. Forgy教授によって開発されたReteアルゴリズムをベースとしている。 Reteアルゴリズムは、エキスパートシステムなどの規則にもとづいたシステムを遂行するための効
Java Community Process, JSR 299 Expert Groupは、JBossによって提案され、5月23日から6月5日(米国時間)までを期間としてJSR Review Ballotのステージに入っていた「JSR 299: Web Beans」について、その投票結果を発表した。 投票権を持っているJ2SE/J2EE実行委員会のメンバーはApache Software Foundation、BEA Systems、Borland、Fujitsu Limited、Google、HP、IBM、Intel、JBoss、Doug Lea、Nortel Networks、Oracle、SAP、SAS Institute、Hani Suleiman、Sun Microsystemsの12団体。 投票の結果、「JSR 299: Web Beans」は実行委員会の全団体からの賛成票を獲
システム開発の重要なキーワードとなっているSOA。そこで本連載では、今回から5回にわたって、SOAの導入を成功に導くためのポイントを探ってみたい。第1回の今回は、SOAを支えるアプリケーション統合のためのIT基盤として「ESB(エンタープライズ・サービス・バス)」に焦点を当てる。SOAについては、BPM(ビジネス・プロセス・マネージメント)の側面から論じられる場合が多い。しかし、最も考慮すべき前提として、サービスの標準化とともに柔軟性、可用性に優れた確固とした基盤があってこそ、ビジネスプロセスの改善も可能になるのである。ESBがアプリケーション統合の“経済性と俊敏さ”を変えると期待される理由を追った。 システム開発の重要なキーワードとなっているSOA。そこで本連載では、今回から5回にわたって、SOAの導入を成功に導くためのポイントを探ってみたい。第1回の今回は、SOAを支えるアプリケーショ
Hydrate 2.0 リリース The Hydrate Projectは4日(米国時間)、Hydrateの最新版であるHydrate 2.0を公開した。HydrateはJavaで作成されたデータ変換用ツール。RDBMS、XML、オブジェクト指向言語という3つの異なるデータを相互にシームレスに変換する操作を実現する。 RDBMS、XML、オブジェクト指向言語という3つの異なるデータは、UMLというデータ形式でニュートラルに表現することができる。HydrateはそれぞれのデータをUMLでモデリングするためのツールのようにもみえる。 図1 オブジェクトモデルおよびXML Schema定義の可視化ビュー 図2 可視化ビューで使われているクエリの編集画面 Hydrate 2.0はGNU LESSER GENERAL PUBLIC LICENSE Version 2.1のもとで公開されているオープン
前編「変更に耐えるシステム構造とモデルの関係(上)」では、システムの分析を行ううえで知っておくべき知識の整理をしました。分析(あるいは設計)作業には、システムのモデルを構築する作業が伴います。今回は、システムの概念モデリングを行う際に注意すべき点を明らかにしながら、洗練されたモデルが変更に強いシステム構造を得る最短距離であることを解説していきます。 (1)概念モデル(概要レベル) 目的やビジネスの要求や業務フローが明らかになった後で、概念モデルを作成します。概念モデルはシステムの全体のエンティティの構造を主に洗い出します。E-R図に似ている部分がありますが、データを分析するのではなく概念の構造を分析します。属性や振る舞い、概念間の関係などを複数の視点で分析し構造を洗い出していきます。 概念モデルは、業務シナリオから導き出されます。業務シナリオを書いてみるか、もしくはビジネス要求や業務フロー
コーチングやファシリテーションは、IT業界でも積極的に取り上げられ、活用している企業や個人も多い。そこで本連載では、コーチングやファシリテーションなどのヒューマンスキルを活用している人と、その事例を紹介していく。 今回はWebシステムの構築プロジェクトで、アジャイルプロセス(コミュニケーションを重視する開発プロセス)、コーチングなどを盛り込んだプロジェクトファシリテーション(参加者の協業の場作りに重点を置いた、プロジェクトの中でのファシリテーション)を実践した松本潤二氏の事例を紹介します。 本事例は、アッズーリが受託した案件で、Javaによる企業間取引のWebシステムです。要件定義からリリースまでの新規開発案件で、2005年4月から7月末までの4カ月間で行いました(その後も契約は継続中)。 納品までの1回のサイクル(以下、イテレーション)は2週間で、計画・開発・リリースを8回ほど繰り返しま
Javaのメモリーはガーベジ・コレクタが管理するため,アプリケーション側ではそれほど気にするありません。しかし,全く気にしないわけにはいかないのも実情です。 小さいアプリケーションでは無頓着であっても構いませんが,大規模になればそうもいってはいられません。使用メモリー量,ガーベジ・コレクション(GC)の頻度,リークの有無などは,できればチェックしておきたい項目です。 Javaではメモリーを複数の領域に分割して管理しています。クラス定義やメソッドなどのデータが格納されるPermanent領域や,インスタンスが割り当てられるヒープなどがあります。このような領域がどのように使用されているかを知ることは,パフォーマンスを考えるうえでもとても重要になります。 ここでは,特にヒープに着目していきたいと思います。 ヒープの使用量を知る まずはヒープの使用量がどのくらいになっているかを調べてみましょう。
2006/6/6 サン・マイクロシステムズとリクルートは6月5日、サンの開発ツールとリクルートのWebサービスで開発したマッシュアップ・コンテンツを審査対象にする開発者向けのコンテスト「Sun×RECRUIT Mash up Award」の応募受付を開始すると発表した。複数のWebサービスを組み合わせるマッシュアップ・コンテンツを募集し、「Web 2.0に対応した新たな情報サービスの可能性を追求する」としている。 リクルートが提供するAPIと、ほかのWebサービス、APIを組み合わせて開発したサービスが審査の対象。リクルートが提供するAPIは、「カーセンサーラボ.net API」「Smatch API」「じゃらんnet」「フロムエー・ナビ API」の4種。例えばSmatch APIの場合は、リクエストに対してSmatchで公開している不動産物件情報や不動産関係のブログ、コンテンツなどをRS
前回はServerSocketとスレッドをつかって、複数のコネクションを受付同時の処理をおこなう実装方法を説明した。今回はNewIO APIを使って同様の処理をスレッドを使わないで実現する方法を紹介する。 NewIO API(java.nio) スレッドを使わないで複数コネクションの処理を行うことは、要するにC言語でいえばselect(2)/poll(2)にあたるものをJavaで実践しようということだ。select(2)/poll(2)を実現するためのAPIはNewIO APIが導入されるまでJavaには用意されていなかった。NewIO API (java.nio)が導入されたことで、Javaでもこうした同期の入出力マルチプレクサを使ったプログラミングが可能になったのだ。 Javaはオブジェクト指向のプログラミング言語であるし、スレッドも簡単に扱える。だからselect(2)/poll(2
Generative AI will drive a foundational shift for companies — IDC
Java Community Process, JSR 300 Expert Groupは、LG Electronicsによって「JSR 300: DRM API for Java ME」が提案され、5月30日から6月12日(米国時間)までの2週間を期間としてJSR Review Ballotのステージに入ったことを発表した。現在のところJSR 300 Expert Groupは実質的にLG Electronics。 Java MEは組み込みデバイスなどをターゲットにしたJavaプラットフォーム。Java SEやJava EEと違いランタイムデバイス自身に制約が多いことから、多くの機能をオプショナルパッケージとして提供することで、それぞれのデバイスに適したプラットフォームとして振る舞うという特徴がある。 「JSR 300: DRM API for Java ME」はこのJava MEにおけ
The PMD Projectは5月31日(米国時間)、PMDの最新版となるPMD 3.7を公開した。PMDはJavaで作成されたJavaソースコードアナライザ。Javaソースコードを精査し、不要なソースコード、実行されないソースコード、複雑すぎる個所、最適化可能個所、デュプリケートコードなどを発見し報告する。 PMD 3.7はThe BSD Licenseのもとで提供されているオープンソースソフトウェア。動作するにはJava 1.3かまたはそれ以降のバージョンが必要。 PMD 3.7における主な変更点は次のとおり。 UseProperClassLoaderなどJ2EE向けのルールセット、Basic-JSPルールセット、Designルールセットなどを含むいくつかの新しいルールセットの追加 suppressed warningの表記を切り替えるためにshowSuppressed属性をAntタ
テストといってもいろいろある サッカーからの教訓で,テストは開発メンバー全員の仕事と書きましたが,それぞれのメンバーが行わなければならないテストは一言ではくくることができないくらい,いろいろな種類があります。 では実際にテストはどのようなことをどんな順序で行っていくのでしょうか。その疑問に答えてくれるものの一つが,開発工程とテストとの関係を表す「Vモデル」です(図2[拡大表示])。Vモデルでは,開発工程に対応した形でテストの種類を決めています。 テストに工程を設けるのは,テスト対象への視点を整理することでテストが混乱しないようにするためです。例えば,メソッドのパラメータの組み合わせパターンのテストと,システムとしての使い勝手を評価するためのテストでは,テスト担当も違えば,テスト環境やテスト実施方法も違います。また,工程を分けてより早くテストを始めることで,問題の切り分けを楽にするという意味
Generative AI will drive a foundational shift for companies — IDC
The Crispy projectは30日(米国時間)、Crispyの最新版となるCrispy 1.0を公開した。Crispyは簡単な操作で多種類のサービスをコールするためのシンプルなAPI実装。Crispy 1.0はCrispyシリーズ初の安定版バージョン。公開がはじまってから1年で最初の安定版が公開されたことになる。なお、Crispyという名称はClient for Remote Invocation for different kinds of Services via ProxYsに由来する。 Crispy 1.0はGNU LESSER GENERAL PUBLIC LICENSE Version 2.1のもとで公開されているオープンソースソフトウェア。Crispy 1.0において実現された主な機能や変更点は次のとおり。 非同期通信機能のサポート commons-logging
第6回 SWTレイアウトを活用しよう 米持幸寿 2006/6/1 米持先進技術工房 @IT分室では、テクノロジー・エバンジェリスト 米持幸寿氏が、J2EEの最新技術情報を提供します。最新技術の中身をいち早くキャッチアップしたい読者のためのコーナーです。 SWTでコンポーネントを作っていくには、前回解説したようにCompositeのサブクラスにCompositeのサブクラスを載せていくということの繰り返しとなります。この場合、Compositeをどのように配置するかを自動調整してくれるのがレイアウトです。オブジェクト指向のGUIツールキットは、多くの場合レイアウトを持っています。AWT、Swingなどにも、同様にレイアウトがあります。 レイアウトを利用しない(null を設定)で画面を作る作業は、視覚的にわかりやすいため使うのが簡単ですが、筆者はあまりお勧めしません。ウィンドウシステムやID
The Apache Lucene Project, the Apache Lucene (Java)は27日(米国時間)、Apache Luceneの最新版であるApache Lucene 2.0を公開した。Apache LuceneはJavaで作成された高性能高機能なテキスト検索エンジンライブラリ。同プロジェクトは、Apache Luceneはテキスト検索を必要とするアプリケーション、とくにクロスプラットフォームで動作する必要がある場合には適切なテキスト検索エンジンライブラリだとしている。 Apache Lucene 2.0はApache License Version 2.0のもとで公開されているオープンソースソフトウェア。1.9.1からのバグフィックスが主な変更点である。ただし、1.x系において非推奨となっていた機能については2.0からは削除されているため注意されたい。 Apach
Java Community Process, JSR 299 Expert Groupは、JBossによって「JSR 299: Web Beans」が提案され、23日から6月5日(米国時間)までを期間としてJSR Review Ballotのステージに入ったことを発表した。現在のところJSR 299 Expert Groupは実質的にJBossである。 「JSR 299: Web Beans」の目的は、EJB 3.0コンポーネントをJSFマネージドビーンとして使えるようにすることにある。Javaを使ったWebアプリケーションのプログラミングモデルを単純化する目的が背後にはある。 とりわけ注目するべきは、「JSR 299: Web Beans」の策定を通じて、Java EE 5プラットフォームのパワーをそこねることなく、単純なデータドリブンアプリケーションの高速開発を可能にする適切なプログ
「私はSOA(サービス指向アーキテクチャ)に対してはシニカルに考えている」。「Refactoring」や「Patterns of Enterprise Application Architecture」といった書籍の著者として有名な米ThoughtWorks チーフサイエンティストのMartin Fowler氏は2006年5月30日,東京都内で講演し,SOAの現状に疑問を投げかけた。SOAは意味のあいまいないわば“バズワード”であり,ベンダーがツールを売り込むための宣伝文句になっているというのだ。ただし,SOAの中には優れたコンセプトもあり,そうしたコンセプトはSOAという言葉とは切り離して考えるべきだという。 「最初は意味があってもすぐに意味がなくなってしまういつものパターンの言葉」というのが,Fowler氏のSOAに対する第一印象だったという。「(同じSOAといっても)人によって言うこ
今年のJavaOneの記事でよく取りあげられているのはSOA,Ajax,そしてスクリプト言語ですね。しかし,JavaOneはそれだけではありません。 毎年,James Gosling氏の基調講演ではJavaのリアルタイム拡張に関するデモがなにかしら行われます。去年は棒を立ててバランスをとるものでした(倒立振子と呼ばれるものです)。ここで使用されているのが,JSR-001のRealtime Specification for Java(RTSJ)です。もともと,James Gosling氏もJSR-001のメンバーだったことからわかるように,彼のお気に入りの技術のようです。 現在,RTSJはGregg Bollella氏が中心になって活動が続けられています。 そして,JavaOneで毎年恒例なものの一つにプログラミング・コンテストがあります。 今年はこの二つが合体してしまいました。つまり,R
Wicket 1.2 正式公開 The Wicket projectは24日(米国時間)、Wicketの最新版となるWicket 1.2を公開した。WicketはJavaコンポーネントベースのWebアプリケーションフレームワーク。Wicket 1.2で3度目のメジャーリリースにあたる。同プロジェクトはWicket 1.2は7ヶ月間にわたるデベロッパとユーザの作業の結果であり、重要なマイルストーンだとしている。 Wicket 1.2はApache License Version 2.0のもとで公開されているオープンソースソフトウェア。多くの改善と機能追加がおこなわており、1.1から1.2というバージョン変更であるが、実質的にはメジャーバージョンアップ。 Wicket 1.2において実現された主な機能や改善点は次のとおり。従来要望されてきた機能の実現と、AJAXへの対応が目玉といえる。 Jav
「業務システムの構築作業は詰まるところ“お絵描き”になる」。SOA(サービス指向アーキテクチャ)のシステムがネットワークにもたらすインパクトを探った日経コミュニケーション5月15日号特集記事「“サービスをつなぐ”という新発想,企業ネットに迫り来る『SOA』の波」の取材の過程で,ベンダーやインテグレータから幾度となく聞いた話だ。 ここで言う“お絵描き”とは,「発注入力」「発注承認」といった業務プロセスの流れを,作図ツールよろしく線でつないでいく作業のこと。SOAのシステムでは「受注」や「出庫」といった企業活動の実態に近い粒度にまとめたプログラムを「サービス」として定義。サービスを組み合わせることでシステムを構築する。 企業活動はヒト・モノ・カネの連携が中心。それらの連携を迅速にシステムに落とし込むための技術がSOAというわけだ。 見えなくなるボトルネック SOAは企業を取り巻く環境の激変への
BEA Systemsは5月18日、Javaアプリケーションフレームワーク「Spring Framework」の専門サービスを提供するInterface21と共同で、仕様が承認されたばかりのJava EE 5(Java Enterprise Edition 5)に対するサポートを提供すると発表した。 今回の発表は、BEAの「ブレンド」アプローチの一例。BEAでは、開発者がアプリケーションやWebサービスの開発、実装および運用のためのシームレスなプラットフォームを維持管理しながら、オープンソースソリューションと商用ソリューションを組み合わせることを可能にする。 両社は、主要なJava EE 5コンポーネントであるリソースインジェクションやEJB 3(JSR-220)のインターセプションを含む、JavaEE 5 Common Annotations(JSR-250)の基盤として、Spring
The xulfaces projectは23日(米国時間)、xulfacesの最新版となるxulfaces 0.6を公開した。xulfaces 0.6は、JSFを通じてJavaの処理能力を活用しつつ、XULによるリッチなUIツールキットを提供するWebアプリケーションツールキット。XULを使うためXULに対応しているWebブラウザではプラグインやエクステンションを追加する必要がなく、デスクトップアプリケーション並のUIを実現できるという特徴がある。 xulfaces 0.6は、GNU LESSER GENERAL PUBLIC LICENSE Version 2.1のもとで公開されているオープンソースソフトウェア。動作環境にはJ2SE 1.5を必要とし、開発および展開にはTomcat 5.X.Xを使用する。xulfaces 0.6における新機能および改良点は次のとおり。 セカンドドラフト
シアトル発--このところ、いくつかのつまづきを経験していたMicrosoftが、すでに立ち直っていることを示そうとしている。 同社は米国時間23日、「Windows Vista」と「Office 2007」の新しいベータ版をより多くのテスターに提供する準備が整ったことを発表した。同社はまた、次期サーバOS「Longhorn Server」のベータ版もアップデートした。 VistaとOfficeはいずれも2006年の年末商戦期に小売店頭に並ぶとみられていた。しかし、Microsoftは3月に、今年末までに両製品の開発を完了する予定であることに変わりはないものの、一般への販売は来年1月になると述べていた。 Microsoft会長のBill Gates氏は23日、Vista、Office 2007、Longhorn Serverの各ベータ版のリリースは1つの節目であると述べた。同氏によると、この
印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます システムの総所有コスト(TCO)削減などの要請に伴い、今後のエンタープライズ向けシステム開発の重要な手法として期待されるサービス指向アーキテクチャ(SOA)。5月16日より米国サンフランシスコにて開催された「2006 JavaOne Conference」でも、このキーワードを中心としたテクノロジセッションや展示が行われていた。JavaOneのセッションや展示会場を通じて、各ベンダーのSOA対応製品およびJava関連技術の利用状況について探った。 Javaは当初、Sun MicrosystemsのフェローであるJames Gosling氏らが、コンピュータネットワーク社会で使うことを考慮して、組み込み機器向けに開発していた言語が進化して
印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます BPM(ビジネスプロセス管理)ベンダーであるIDS Scheerは5月18日から2日間、オランダの首都アムステルダムで年次カンファレンス「ProcessWorld Europe 2006」を開催した。13回目となる今年は、SOA(サービス指向アーキテクチャ)や内部統制などのトピックスとともに、BPMに大きな関心が寄せられていることから、約1400人が参加。過去最大の規模となった。 企業に柔軟性とアジリティをもたらすBPM カンファレンス初日の基調講演を行った創業者兼会長であるAugust-Wilhelm Scheer氏は、サックスを持ってステージに登場し、得意のジャズ演奏を披露した。もちろん、このパフォーマンスには、重要なメッセージが込
Generative AI will drive a foundational shift for companies — IDC
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く