5
ORACLE.COM/JAVAMAGAZINE ////////////////////// JANUARY/FEBRUARY 2015 JAVA TECH 21 COMMUNITY JAVA IN ACTION ABOUT US blog //enterprise java / 在、Infrastructure as a Service(IaaS)、 Platform as a Service(PaaS)、 Software as a Service(SaaS) というクラウドのパラダイムは 十分に定着し、ほとんどのク ラウド・ベンダーはこれらの サービスの枠を超えて、ソフ トウェア構築 / 運用における 他のさまざまな面に対応しよ うとしています。ソフトウェア 開発に必要となるツールやテ クノロジーの大半 が Development Environment as a Service(DEaaS)と してクラウドで利用 できるようになるの も時間の問題です。 開発者はすでに 何らかの形でクラ ウドを利用してい ますが、ほとんど の場合、実際の開 発環境はいまだに クラウド以外の場 所に構築されています。プロ ジェクト管理からバージョン 管理、テスト、バグ追跡、コー ド・レビュー、継続的インテ グレーションに至るまで、開 発プロセスは依然として自社 で運用されています。さらに、 複数のベンダーによる無数の 製品を組み合わせて、1 つの ソフトウェア開発環境を構成 することもあります。 これこそ、新たな DEaaS ソ リューションがター ゲットにしている 状況です。DEaaS は、それ自体は画 期的なアイデアで はなく、おそらく読 者の皆さんも何ら かの形ですでに目 にしており、さまざ まな呼称で言及し ています。しかし、 今までと異なる点 は、開発者やテク ノロジーがリモート のクラウドベース環境を十分 利用できる水準にあり、今の 新しいサービスが開発環境の 一部だけでなく全体のクラウ ド化を目指していることです。 今後も開発者の統合開発 環境(IDE)は各自のマシンで 実行されるでしょうが、それ 以外のすべてがクラウドに移 行される運命にあります。IDE もいつかはクラウドに移行さ れるかもしれませんが、現 時点では、クラウドベースの IDE は NetBeans、Eclipse、 Oracle JDeveloperといった 機能豊富なデスクトップ IDE と比較すると見劣りします。 クラウド・ソリューション によるコスト削減効果のほか に注目すべき点は、クラウド ベース開発環境によって、開 発環境の運用や管理に明示 的、暗黙的に関わるチーム内 のメンバーの負担がなくなる ことです。開発環境に問題が 発生した場合に、メンバーに 大声で伝える必要はもうあり ません。クラウド・ベンダー に電話すれば良いわけです。 チームのすべての開発者がソ リューションの構築に集中で きるようになり、周辺サービ スの運用やインフラストラク チャのプロビジョニングにエ ネルギーを費やす必要がなく なります。 ソリューションは開発のラ イフサイクル全体を支える べき そのようなクラウド開発環境 にとって最大の課題のひとつ は、開発者のコラボレーショ ンを後押ししながら、ソフト ウェア開発のライフサイクル 全体を支える必要があること です。また、クラウド開発環 境は、開発環境以外の手段 でプロジェクト関連のドキュメ ントを共有したいという開発 者のニーズにも対応する必要 があります。 Oracle Developer Cloud Service 入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の IDE は各自のマシ ンで実行されるで しょうが、それ以 外のすべてがクラ ウドに 移行され 運命にありま す。 Cloud Computing Harshad Oak IndicThreads の 設立者。Oracle JDeveloper や Jakarta Commons に関する著書 あり。『Java 2 Enterprise Edition 1.4 Bible』(Wiley、 2003 年)の共著 者でもある。現 在は『Java EE Applications on the Oracle Java Cloud』(Oracle Press)を執筆中。 Java Champion、 Oracle ACE Director であり、 インドのプネーを 拠点として活動し ている。

Oracle Developer Cloud Service入門 · Oracle Developer Cloud Service入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Oracle Developer Cloud Service入門 · Oracle Developer Cloud Service入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の

ORACLE.COM/JAVAMAGAZINE ////////////////////// JANUARY/FEBRUARY 2015

JAVA TECH

21

COMMUNITY

JAVA IN ACTION

ABOUT US

blog

//enterprise java /

現在、Infrastructure as a Service(IaaS)、

Platform as a Service(PaaS)、Software as a Service(SaaS)というクラウドのパラダイムは十分に定着し、ほとんどのクラウド・ベンダーはこれらのサービスの枠を超えて、ソフトウェア構築 /運用における他のさまざまな面に対応しようとしています。ソフトウェア開発に必要となるツールやテクノロジーの大半がDevelopment Environment as a Service(DEaaS)としてクラウドで利用できるようになるのも時間の問題です。開発者はすでに何らかの形でクラウドを利用していますが、ほとんどの場合、実際の開発環境はいまだにクラウド以外の場

所に構築されています。プロジェクト管理からバージョン管理、テスト、バグ追跡、コード・レビュー、継続的インテグレーションに至るまで、開発プロセスは依然として自社で運用されています。さらに、複数のベンダーによる無数の製品を組み合わせて、1つのソフトウェア開発環境を構成することもあります。 これこそ、新たなDEaaSソ

リューションがターゲットにしている状況です。DEaaSは、それ自体は画期的なアイデアではなく、おそらく読者の皆さんも何らかの形ですでに目にしており、さまざまな呼称で言及しています。しかし、今までと異なる点は、開発者やテクノロジーがリモート

のクラウドベース環境を十分利用できる水準にあり、今の新しいサービスが開発環境の一部だけでなく全体のクラウド化を目指していることです。 今後も開発者の統合開発環境(IDE)は各自のマシンで実行されるでしょうが、それ以外のすべてがクラウドに移行される運命にあります。IDEもいつかはクラウドに移行されるかもしれませんが、現時点では、クラウドベースのIDEはNetBeans、Eclipse、Oracle JDeveloperといった機能豊富なデスクトップ IDEと比較すると見劣りします。クラウド・ソリューションによるコスト削減効果のほかに注目すべき点は、クラウドベース開発環境によって、開発環境の運用や管理に明示的、暗黙的に関わるチーム内のメンバーの負担がなくなることです。開発環境に問題が発生した場合に、メンバーに

大声で伝える必要はもうありません。クラウド・ベンダーに電話すれば良いわけです。チームのすべての開発者がソリューションの構築に集中できるようになり、周辺サービスの運用やインフラストラクチャのプロビジョニングにエネルギーを費やす必要がなくなります。

ソリューションは開発のライフサイクル全体を支えるべき そのようなクラウド開発環境にとって最大の課題のひとつは、開発者のコラボレーションを後押ししながら、ソフトウェア開発のライフサイクル全体を支える必要があることです。また、クラウド開発環境は、開発環境以外の手段でプロジェクト関連のドキュメントを共有したいという開発者のニーズにも対応する必要があります。

Oracle Developer Cloud Service 入門開発環境全体をクラウドで運用する

HARSHAD OAK

クラウドでの開発今後も開発者の

IDEは各自のマシンで実行されるでしょうが、それ以外のすべてがクラウドに 移行される 運命にあります。

CloudComputing

Harshad Oak:IndicThreads の設立者。Oracle JDeveloper やJakarta Commonsに関する著書あり。『Java 2 Enterprise Edition 1.4 Bible』(Wiley、2003年)の共著者でもある。現在は『Java EE Applications on the Oracle Java Cloud』(Oracle Press)を執筆中。Java Champion、Oracle ACE Directorであり、インドのプネーを拠点として活動している。

Page 2: Oracle Developer Cloud Service入門 · Oracle Developer Cloud Service入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の

ORACLE.COM/JAVAMAGAZINE ////////////////////// JANUARY/FEBRUARY 2015

JAVA TECH

22

COMMUNITY

JAVA IN ACTION

ABOUT US

blog

//enterprise java /

しかし、そうは言うものの、開発のライフサイクル全体の構成要素に関する定義自体が数年ごとに変わり続けています。そのため、肝心なのは、クラウドベースの開発環境が次々に登場する新しい開発技術に適応できることです。過去5年から10年の間に、ビルド、継続的インテグレーション、ソース管理の分野で幅広く普及したツールを思い浮かべてみてください。今も人気のツールもあれば、別のツールに置き換わったツールもあるのではないでしょうか。 それではここから、オラクルのクラウドベースの開発環境であるOracle Developer Cloud Service の特徴について詳しく見ていきます。

Oracle Developer Cloud Serviceオラクルは近年、クラウドに多大な力を注いできました。多数あるSaaS関連製品からOracle Database、Oracle WebLogic Server に至るまで、現在のオラクル製品のほとんどはクラウドに対応しており、しかも多くの場合カスタマイズ可能な形で提供されています。しかし、Oracle Developer Cloud Service は、既存の製品がクラウドに移行されたものではなく、最新の開発環境のニーズに対応して構築された新製品であるという意味で、他製品とは一線を画しています。 新しいサービスには、下位互換性の問題がなく、また、ごく一部の

開発者のみが要求するような古いテクノロジーをサポートする必要もないという大きな利点があります。そのため、既存の製品から発展したクラウド・サービスとは異なり、Oracle Developer Cloud Serviceには、クリーンで、最小限主義のような感覚があります。雑多な機能は最小限に抑え、2015年の開発環境に期待される機能のみをサポートしています。 Oracle Developer Cloud Serviceのおもな機能は以下のとおりです。

■■ GIT を使用したソース管理、GitHubリポジトリとの統合

■■ Mavenリポジトリのサポート

■■ タスク/問題管理(バグやタスクとコードのリンク機能付き)

■■ Hudsonを使用した継続的ビルド・インテグレーション

■■ Oracle Java Cloud Serviceへの直接デプロイ、またはオンプレミスでのデプロイ

■■ Eclipse、NetBeans、Oracle JDeveloperとのIDE 統合

■■ ユーザー/チーム管理機能

■■ Wikiベースのコラボレーション機能

■■ コラボレーション機能とフィルタ機能を搭載したコード・レビュー現在、Oracle

Developer Cloud Serviceでは、一般的なタスクやフローに対応した数種類のテンプレートが提供されています。しかし、クラウド開発環境では何百ものプロジェクトにわたって利用状況が分析されるため、今後のOracle Developer Cloud Serviceでは、ソフトウェア開発のライフサイクルにおける多数の定型的作業に対応したテンプレートやベスト・プラクティスが提供されることを期待したいと思います。Oracle Developer Cloud Service自体に画期的なところは何もありませんが、開発環境全体をクラウ

ドで運用できるようになったというところが画期的です。また、新しいプロジェクトを作成する際に、Oracle Developer Cloud Serviceスタック全体がプロビジョニングされます。開発環境を自分で構築する時間と比較すると、ほんのわずかな時間しかかかりません。

試用版の利用Oracle Developer Cloud Serviceは現在、Oracle Java Cloud Service - SaaS Extensionの試用版と有償版、およびOracle Messaging Cloud Service の有償版に無償で

図1

Page 3: Oracle Developer Cloud Service入門 · Oracle Developer Cloud Service入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の

ORACLE.COM/JAVAMAGAZINE ////////////////////// JANUARY/FEBRUARY 2015

JAVA TECH

23

COMMUNITY

JAVA IN ACTION

ABOUT US

blog

//enterprise java /

付属しています。Oracle Developer Cloud Serviceの試用版には、開発者向けサービス・プロジェクト3つと、Hudson同時ビルド1つが含まれています。ストレージ容量として、Git およびMaven用に1GB、Hudson用に1GB、タスク用およびWiki によるドキュメント・コラボレーション用に1GBを利用できます。有償版のOracle Java Cloud Service - SaaS ExtensionおよびOracle Messaging Cloud Serviceに付属するOracle Developer Cloud Serviceには、開発者向けサービス・プロジェクト12個と、Hudson同時ビルド3つが含まれています。ストレージ容量として、GitおよびMaven用に6GB、Hudson用に10GB、タスク用およびWiki用に4GBを利用できます。Oracle Developer Cloud Serviceの試用版にアクセスするためには、Oracle Java Cloud Service - SaaS Extensionの試用版をリクエストしてください。Oracle Java Cloud Service - SaaS Extensionの試用版へのリクエストが受諾されれば、Oracle Java Cloud Service - SaaS Extensionのインスタンスに加えて、Oracle Database Cloud Service、そしてOracle Developer Cloud Service の試用版にアクセスできるようになります。

Oracle Developer Cloud Service を試す 試用版にアクセスできるようになっ

たら、Oracle Cloud(http://cloud.oracle.com)にログインします。My Servicesログイン・フォームを使用してログインすると、最初に図1の画面が表示されます。この画面は、登録中のサービス、現在のステータス、使用状況の情報を示すダッシュボードです。 サービスの一覧からOracle Developer Cloud Service のリンクをクリックすると、使用状況やメトリックに関する詳細情報が表示されます(図2)。「Open Service Console」をクリックし、コンソール・ページで「Create Project」をクリックします。ポップアップされる単純なフォームを使用して、Java Magazineという新しいプロジェクトを作成します。 プロジェクトの作成後に表示されるメニュー(図3)から、プロジェクトで利用可能な各種サービスにアクセスできます。ダッシュボードでは、プロジェクト・レベルのステータスがすぐに確認できます。Tasksセクションでは、プロジェクトのタスクを管理します。Browseセクションでは、Gitリポジトリにアクセスできま

す。Buildセクションでは、Hudsonビルドの作成や実行が可能です。Reviewsセクションは、コード・レビューで使用します。Deployセクションでは、Oracle Java Cloudへのデプロイやオンプレミスでのデプロイを含め、デプロイ構成を追加できます。Wikiセクションはコラボ

レーションに使用します。また、チーム管理用のセクションもいくつかあります。

NetBeansの統合Oracle Developer Cloud ServiceのWebインタフェースは使いやすいのですが、多くの開発者は、Webイ

図2

図3

Page 4: Oracle Developer Cloud Service入門 · Oracle Developer Cloud Service入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の

ORACLE.COM/JAVAMAGAZINE ////////////////////// JANUARY/FEBRUARY 2015

JAVA TECH

24

COMMUNITY

JAVA IN ACTION

ABOUT US

blog

//enterprise java /

ンタフェースよりも、使い慣れた IDEを起点とした開発作業を好む傾向にあります。したがって、あらゆるクラウド開発環境が人気の IDEと統合できることが重要です。Oracle Developer Cloud Serviceは、NetBeans、Eclipse、およびOracle JDeveloperと統合できます。開発者は自分の IDEでタスクの作成、コードのコミット、チーム向けのアクティビティを実行できます。IDEから直接Oracle Developer Cloud Serviceプロジェクトを作成できます。また、先にOracle Developer Cloud Service のWebコンソールを使用してプロジェクトを作成し、後で IDEと統合することも可能です。 ここからは、Oracle Developer Cloud ServiceとNetBeans IDEを統合して、Oracle Developer Cloud Service のタスクの大部分をNetBeansから簡単に実行する方法について見ていきます。 まず、Oracle Developer Cloud Serviceプラグインをインストールする必要があります。NetBeansメニューの「Tools」→「Plugins」を選択します。「Available Plugins」タブをクリックし、検索文字列として「developer cloud」と入力すると、図 4のような画面になります。Oracle Developer Cloud Serviceプラグインをインストールします。この際に、Oracle Developer Cloud Serviceプラグインが依存する他の

プラグインもダウンロードされ、インストールされます。注:Oracle Java Cloud ServiceとNetBeans IDEの統合についても、以前のJava Magazine の記事で説明していますので、ぜひお読みください。プラグインのインストール後、メニューから「Team」→「Team Server」→「Add Team Server」を選択し、Oracle Developer Cloud ServiceをNetBeans内のチーム・サーバーとして追加します。次に、サービス・インスタンスのURL(図2のもの)を図5のURLフィールドに入力します。実際のURLはこれらの図のURLとは異なるものになります。また、Nameフィールドに「Java Mag」と入力します。サーバーが追加された後、そのサーバーにログインする必要があります。メニューから「Team」→「Team

Server」→「Login」を選択すると、図 6のダイアログ・ボックスが開きます。 これで、IDEからOracle Developer Cloud Serviceおよび作成済みのJava Magazineプロジェクトを利用するための設定ができました。「Team」→「Team Server」→「Java Mag」→「Open Project」を選択します。「Search」ボタンをクリックすると、図7の画面が表示されます。 「Open from ODCS Server」をクリックすると、Teamウィンドウにプロジェクトのビルド、タスク、ソースが表示されます(図 8)。NetBeans IDEで Oracle Developer Cloud Serviceをチーム・サーバーとして利用するための設定と準備はこれで完了です。 Oracle Developer Cloud Service

チーム・サーバーからソース・コードを取得できます。図8の「Sources」リンクをダブルクリックして、図9の画面で「Get From Team Server」ボタンをクリックします。 Oracle Developer Cloud Serviceの Java Magazineプロジェクトには

図6

図5

図4

図7

Page 5: Oracle Developer Cloud Service入門 · Oracle Developer Cloud Service入門 開発環境全体をクラウドで運用する HARSHAD OAK クラウドでの開発 今後も開発者の

ORACLE.COM/JAVAMAGAZINE ////////////////////// JANUARY/FEBRUARY 2015

JAVA TECH

25

COMMUNITY

JAVA IN ACTION

ABOUT US

blog

//enterprise java /

現在ソース・ファイルがないため、既存のNetBeansプロジェクトをこのOracle Developer Cloud Serviceリポジトリにプッシュすることにします。メニューから「Team」→「Remote」→「Push」を選択すると、図10の画面が表示されます。 NetBeansプロジェクト向けのGitのローカル・リポジトリがない場合は、先にそのプロジェクトで「Team」→「Git」→「Initialize Repository」を使用して、ローカル・リポジトリを初期化しておく必要があります。IDEとOracle Developer Cloud Service の統合設定が完了すれば、すぐにクラウドベースのOracle Developer Cloud Service 環境を、ローカルの開発環境とほぼ同様に簡単に使用できます。

その他の検討事項開発環境クラウドは確かに、現在主流になっているアイデアやGit、Maven、Hudsonなどのオープンソース・プロジェクトを利用しているのですが、介在する開発環境はベンダー固有のものであるため、サービスへのベンダー・ロックインの可能性は否定できません。また、他のクラウドベース・ソリューションと同様に、クラウドベースの開発環境でも、標準化はまだ十分に行われていません。そのほかにも、クラウドベースの開発環境を検討する際に、以下の疑問点について考慮する必要があります。

■■ その開発環境は拡張可能か■■ その開発環境は要件の変化に十分に対応できるか

■■ その開発環境は、利用する他製品と統合するために必要となるAPIを提供しているか

■■ 自分たちはオンプレミス・デプロイのオプションを必要としているか

■■ 自分たちはデプロイ先のクラウ

ド・ベンダーを選択したいか ■■ さらに重要なこととして、開発者が心から好きになれるほど洗練され効率化されたUIであるか

まとめ企業がこれまで独自の開発環境を管理してきたのには、それなりの理由があります。しかし、最新のクラウドベース開発環境が持つ多大なメリットを考慮すれば、検討に値するのは間違いありません。 ますます多くのベンダーが"Development Environment as a Service"市場への参入を模索している中で、Oracle Developer Cloud Service は重要な位置付けにあり、未来の姿を象徴するものです。Oracle Developer Cloud Serviceは、最新の開発環境のニーズに対

応するように構築されています。NetBeans、Eclipse IDE、Oracle JDeveloperと統合して利用するほかにも、Oracle Developer Cloud Serviceによって、開発環境を即座にプロビジョニングして、開発環境全体をクラウドで運用できるようになります。</article>

図9

LEARN MORE• Oracle Developer Cloud Service Webサイト• Oracle Developer Cloud Serviceのリソース

図10

CloudComputing

MORE ON TOPIC:

図8