【B5】Javaテクニカルセッション「JBuilderプロダクトアドレス」
CodeGear Developer Camp – Tokyo, JapanDavid Intersimone
Vice President of Developer Relations and Chief Evangelist
davidi@codegear.com

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

現行バージョン
現在、JBuilder 2007 R2が最新バージョンです。
(2007年5月リリース)• TeamInsightプラットフォーム• Optimizeitパフォーマンスチューニング
• グラフィカルEJB / Webサービス開発• 2 Way Java UMLモデリング

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

21

TeamInsight + ProjectAssist
TeamInsightは、チームソフトウェアツール（「ALM」）への、ツール独立型の独自のアプローチです
開発チームは、ソースコントロール、バグトラッキング、要件管理、プロジェクト管理のためのツールをプロジェクトごとに選択して利用可能
TeamInsightが、 さまざまなツール向けの単一のIDE統合機
能とWebポータル環境を提供
ProjectAssistが、シングルポイントインストール／設定管理ツールを提供

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

3

TeamInsightのインストール／設定

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

4

2

TeamInsight プロジェクトポータル

バグの対応状況をすばやく確認

重要なソースコードの品質測定

さらに、プロジェクトの進捗状況、現状分析などさまざまな機能を提供

機能要件ごと作業進捗状況
プロジェクトドキュメントの管理
機能要件ごとの開発状況

最新のビルドとその結果
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

5

TeamInsight タスクビュー

開発者は、IDE内でチームタスク、個人のタスク、機能要件、バグ、コードへのメモなどへの統合されたビューを利用できます。すべての項目に対して、アクションを起こすことができます（例えば、バグのクローズ、機能実装の完了などのステータス変更をIDEから行えます）。また、これらの機能は、オフラインでも利用可能です。

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

63

パフォーマンス分析
JBuilderは、 パフォーマンスボトルネックを特定するための、静的／動的の双方の分析機能を提供します• JBuilder の検査・測定機能
静的コード分析により、設計と実装の双方におけるエラーを特定します。競合条件のような発見が困難なエラーをアプリケーションを実行する前に検出します。
• Optimizeitのパワーによるランタイム分析
コードカバレッジ、スレッド分析、ヒープ分析、リクエスト分析などをローカルおよびリモート環境で実行可能（主要なアプリケーションサーバーに対応）

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

7

ソースコードの検査・測定

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

84

グラフィカルEJB/Webサービス開発
すぐに複雑かつ脆弱化しがちなEJB / SOAP開発を「シンプルに」JBuilderのグラフィカルツールを用いれば、新規開発をスピードアップし、既存のアプリケーションコードもビジュアル化とオートメーションによって効率的にメンテナンス可能

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

9

新しいビジュアルEJBデザイナ

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

105

Java UML
Java向けのUML 1.4 / 2.0 フル対応
完全な2Way (LiveSource™) クラス図／シーケンス図
すべてのUML図
デザインパターンドキュメント生成

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

11

UMLによる可視化

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

126

アワード
• Best Java IDE• Reader’s Choice, Best Java
Project Build Tool Finalist(TeamInsight)

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

13

JBuilder ロードマップ“Bonanza”“Bonanza” R2

Powerful new
application-driven
development capabilities

Support for Eclipse
3.4

2007

2008

“Grasshopper”“Optimus”

Expanded, user-definable
Application Factories

Distributed Application
Factories composition

2009“Brisco”
JGear“Bumblebee”
JGear

Powerful extension
packs for any Eclipse 3.2
based IDE

Powerful extension
packs for any Eclipse 3.4
based IDE

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

147

Bonanza
Eclipse 3.3 (Europa) コア
TeamInsightで利用可能なツールの選択肢を拡張（StarTeamを含む）
JDK6サポート
JEEアプリケーションサーバーのサポートアップデート
Optimizeitテクノロジーによるコードカバレッジ、プロファイル／ヒープ分析、スレッド分析、リクエスト分析••••

Eclipse 3.3 / TPTPへの統合
JDK6 / JEE5のサポート
Macサポート
ProbeKitのサポート

InterBaseのアップデート（Macサポートを含む）
Application Factories• Tomcat, MySQL, Spring, Hibernate, iBATIS, JUnit, jMock, StrutsTestCase, Canoo‘s WebTest,Struts Menu, Display Tag Library, OSCache, JSTL, Struts2, Spring MVC, JSFなどのクロスフレームワークサポート• ハイレベルなアプリケーション機能開発• 共用可能なフルスタックフレームワークをサポート

新しいSwing UIデザイナCopyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

15Application Factories
ア プ リ ケ ー シ ョ ン フ ァ ク ト リ ーCopyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

8問題と影響 – メディアの声から『従業員の「知」を集約せよ！』「個々の従業員のナレッジを確保する方法を模索している企業、巨大なデータ・プールをつくったり、従業員の退職にあたり個々の保有するデータの存在箇所を明確化させている企業が増えている」
Dave Greenfield, eWeek*「大手企業における、従業員の教育・学習は、常にくりかえしである。」
Keely Flint（Bupa Health 社 全社情報アーキテクチャプログラムマネージャー）
Dave Greenfield, eWeek**eWeek Magazine（2007/10/8） ftp://ftp.eweek.com/pub/eweek/pdf/printpub/24/31.pdf

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

17

なぜこのような問題に直面しているのか?
乱立するフレームワーク／ツールキット• オープンソースや独自のツールキットを合わせると天文学的数字の新ツール• ツールが強制する枠組みや鋳型によりアプリケーションコードが使い捨てにコードの再利用は容易ではない！
• コピペ型再利用は機能するが、再利用の価値は低い• アプリケーションの再利用は困難、だが、できればその価値は高い…

IDEは開発生産性を高めてくれるけれど…
• 開発者のナレッジは捕捉してくれない• アプリケーションの変化については捕捉してくれない• チームのナレッジの「再利用」については支援してくれない
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

18

9

ソリューション?
さらにもうひとつフレームワーク／抽象レイヤーを追加• 一時的な解決策：「焼け石に水」にすぎない• 特定のフレームワークを念頭に置いた拡張性や柔軟性に留まる• 現在の開発資産や開発標準には追加できない

チームサイズが拡大してコストも増大• 高コスト体質へ• 根本の問題は解決されずに残る

もっとよい解決策があるはず…

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

19

ソリューション「Application Factories」
アプリケーションに即したアプリケーションメタデータ
有機化とナビゲーション：アプリケーション固有のダイアグラム／タグ
インタラクティブスクリプトの作成・利用：アプリケーション固有のツール
学習：ビジュアルかつカスタマイズ可能なスクリプト
アプリケーションの変化をキャプチャー
モジュールの生成と利用

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

20

10

動作概念
Application
Assistアーキテクトまたはドメインエキスパート

アーキテクチャ

データアウェア
Springアプリケーション

StrutsMenu

HTML

ショッピングカート

Hibernate

販売管理
OFBIZ

App Fuse

ProjectAssist
ダッシュボード

JPA(or) JPA

JSF
CSS

Tapestry

マーケット
プレース
モジュール

アプリケーション
ナビゲーション

Spring MVC

Blue Print

ERPアプリケーションプロジェクト

再利用可能なパターン

アプリケーションロジック

アプリケーションモジュールの公開

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

21

アプリケーションは複雑！
アプリケーション

アプリケーション構造を完全に理解
アーキテクトアプリケーション
ロジック
アーキテクトは、アプリケーションを完全に実装し、概念的にアプリケーションを理解している
アーキテクトは、アプリケーションの意図やその変化についても理解している
しかし、アプリケーションの各パーツを説明したり、それを再利用することは不可能に近い

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

22

11

機能の抽出アプリケーション

アプリケーション構造を完全に理解
アーキテクトアプリケーションロジック

アプリケーションの主要機能やコンポーネントを分離

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

アプリケーションモジュール

23

アプリケーションメタデータ

Architecture
アーキテクトApp. Navigation
App. Logic
Custom Scripts
Custom Tags

大規模なEコマースアプリケーション内にあるショッピングカート機能というアプリケーションモジュールについて考えて見ましょう「エキスパート」のコンテキストとその意図についての理解を追加します
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

24

12

再利用ストレージ

アプリケーションメタデータ

ArchitectureApp. Navigation
App. Logic
バージョンコントロール

Custom Scripts

アプリケーションモジュール
リポジトリ

Custom Tags

アプリケーションモジュールは独立して利用可能になります
アプリケーションモジュールはその意図を理解した上で拡張・改造できます
アプリケーションモジュールは再利用可能になりました
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

25

新規アプリケーション開発に対応
App.
App. Module
Module 11
ショッピングカート
ショッピングカート

ProjectAssist™
ダッシュボード

バージョンコントロール

App.
App. Module
Module 22
請求書処理
請求書処理

アプリケーションモジュール
リポジトリ
すべてのモジュールは、その意図を理解したうえでアセンブリ化されています
アプリケーションモジュールには関連するメタデータが含まれています
アプリケーションモジュールは再利用可能になりました
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2613

デモンストレーション

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

Thank You

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2814