GAE開発の落とし穴
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Sadek Drobi , 翻訳者 編集部 投稿日 2009年4月3日
年の始めには往々にして、今後1年間に予想される重要なトレンドについて予測を練り上げたくなるものである。Lambda the Ultimate上で起こったプログラム言語の予測(参考記事)に関する議論以外にも、その他多数の投稿メッセージが飛び出し、IT産業やWeb、企業ソフトウェア開 発におけるトレンドの概説を試みていた。
Samuel Greengard氏は2008年11月、2009年という難しい重大局面にあって、効率と有効性を改善中の企業を援助するであろうとGreengard 氏が期待する技術(リンク)を概説しようとした。こうしたトレンドの多くはWebの拡大、とりわけWeb 2.0の拡大に深く関連している:
- たとえば、クラウドコンピューティングなどのおかげで、従来的なビジネスアプリケーションを越えたSaaSの拡大
- ワイヤレス技術のおかげで拡大を続けるモビリティ
- モビリティを支援するだけでなく、ストレージ費用の削減も目指したデータの仮想化と携帯性
- Web 2.0ツールを土台にしたソーシャルネットワーキング。ソーシャルネットワーキングは「企業の知識、顧客ベースのビジネスインテリジェンス、等々を活用する方法[中略]となった」
- 2010年末までには大多数の企業が採用すると予想される、Webとビデオのコラボレーション
Greengard氏は、Webと直接の関係が少ないトレンド -- すなわちセキュリティ、リスクと遵守問題、書類管理、電子証拠開示やプロジェクト管理の懸案事項にも触れているが、Web 2.0が「データ、仕事、ビジネスプロセスの管理を簡単にし」、「さらなるモビリティや関連情報へのシームレスなアクセスを可能にする」ツールを提供する ので、私たちは「ますますWebを中心とした[そしてWebへの接続に依存する]コンピューティングモデル」に向かっている、と強調している。
企業でWeb 2.0を中心にした思考を発展させることに深く関わっているビジネス・ストラテジストのDion Hinchcliffe氏もGreengard氏と同じ路線で、「特に不吉な経済情勢」にある今年、エンタープライズWeb 2.0に関する8つの予想(リンク)を提案した。Hinchcliffe氏は、SaaS、クラウドコンピューティング、ソーシャルネットワーキング、モバイルプラッ トフォームおよびモバイルデバイス、仮想化、ポータビリティ…について話しているが、SOA分野における発展も予測し、「Web 2.0/SOAへの一点集中が衰えることなく続くにつれて、密接に関連したWeb指向アーキテクチャ(WOA)のみならず、マッシュアップ技術もこの転換 に伴って表舞台の中心に躍り出る」と期待している。あまり専門的でない見方をすれば、「ITをビジネスと遅まきながらも連携させる上で、今回の経済情勢は 強力な牽引車的役割を果たし」、「ビジネスランドスケープにおける大規模な変化は[恐らく]2.0の新しいビジネスチャンスを生み出すことになり」、その 理由は、金融や不動産など、いまだWeb 2.0の洗礼を本当の意味では受けていない分野に「革新的な新しい参加者」が出現するからである、とHinchcliffe氏は考えている。
.
さらに最近になってからDion Hinchcliffe氏はWebという範囲を越えて、「10 Must-Know Topics for Software Architects in 2009」(訳:2009年にソフトウェアアーキテクトが知っていなければならない10のトピック)(リンク)という概説を提案し、その概説の大半を費やして、より 詳細な例や見解へのリンクを提供している。2009年に勢いを得て、価値を提供するであろうとHinchcliffe氏が考えているトレンドは以下のとお りである:
1. クラウドコンピューティング。「次世代の有名OSプラットフォーム間の戦争では出発点」となり、一般論を言えば、「近い将来、ソフトウェアビジネスの大半を確実に変えてしまうであろうアーキテクチャの進歩」である。
2. 非リレーショナルデータベース。たとえば、CouchDBやSimple DB、Scalarisのこと。リレーショナルデータベースには「スケーラビリティへの低いシーリング」や「プログラミング時に間接費の大幅増加をもたら すだけでなく、ランタイムのパフォーマンスにも損害を与える抽出インピーダンス」といった短所があるが、そのリレーショナルデータベースに取って代わる期 待の代替手段。
3. 次世代の分散型コンピューティング。「最新のソフトウェアシステムでは現在、膨大な量のデータが一般的になっているが、その処理」が可能。
4. Web指向型アーキテクチャ(WOA)。「ネットワーク自体が機能する方法とより上手に連携」し、「ほとんど全ての要件にかなったサービス指向アーキテク チャを作成するという点では、より優れた方法であり、その結果、融通性や柔軟性に優れたソフトウェアがもたらされ、その構築や維持の難度、費用も低くな る」
5. マッシュアップ。「消費者分野では非常に普及して」おり、そしてついに「ビジネス分野でもプライムタイム」の準備が整うであろう。
6. APIを介したオープンサプライチェーン。「セキュリティやガバナンス、スケーラビリティ、消費の容易性」といった問題への対処を必要とする「組織をまた がったSOA向けの非常に強力なモデル」である。Hinchcliffe氏によれば、「スケーラブルかつ費用効果の高いやり方で、〔個人の〕ビジネスをプ ラットフォームとして公開し、パートナーがそのプラットフォームを土台にできるようにすることは、21世紀における非常に強力なビジネスモデルである」た め、APIを介したオープンサプライチェーンはますます重要になる。
7. 動的言語。「ランタイムパフォーマンスにおけるトレードオフ」のおかげで「生産性の大幅上昇」を可能にする。さらに、新しい動的言語は「非常にWebフレ ンドリー」であり、そうした言語の上に構築された多数のフレームワークは「最新のベストプラクティスと設計パターンをもたらすが、これが古いプラット フォームとなると、そう頻繁にはもたらしてくれるわけではない」
8. ソーシャルコンピューティング。「一般に社会システムの方が非社会システムよりもその価値がずっと高い」ので、企業アーキテクチャにおいて居場所を見つけるようになるであろう。
9. クラウドソーシングおよびピアプロダクション・アーキテクチャ。Web上ではオープンビジネスモデルの展開がますます進んでいるが、「集団的知性の活用 や、その調停、統合、集団的知性自体の保護とそれを提供するユーザを保護するためのアーキテクチャ・モデルを含め、オープンビジネスモデルを支援可能なソ フトウェアアーキテクチャ」を目指して、そうしたモデルのニーズに対応できるクラウドソーシングおよびピアプロダクション・アーキテクチャ。
10. 新しいアプリケーションモデル。「Facebookアプリケーションや次世代のモバイルアプリケーション[中略]、ウィジェットやガジェットの普及の加 速、ソフトウェアが原子化する傾向」という形で出現し始める新しいアプリケーションモデルのこと。この傾向は、「他のアプリケーションへの埋め込みという 形態ながらも、一方ではスケーラビリティ、他方では有用性とセキュリティというこの2方面に対処しなければならないマイクロアプリケーション」が「ますま す目立つ」時代がやってくる、という前触れである。
Dion Hinchcliffe氏の考えでは、上に挙げた技術とアプローチは、現在構築されているシステムの「スケーラビリティ、パフォーマンス、機能群が原因で 発生した類をみない難題」に対するソリューションの提供に役立つことになる、主流に割って入るような技術・アプローチである。「ソフトウェアアーキテク チャは、再びかなりワクワクするビジネスになった」が、「こうしたアイデアを自分たちの組織に取り入れ、自らの思考プロセスやアーキテクチャ・フレーム ワークに統合し、問題を解決し、価値を生み出すようにするまでには長い時間がかかり、この長いプロセスを開始するか否かは、私たち」の決定に今では委ねら れている、とHinchcliffe氏は考えている。
原文はこちらです:http://www.infoq.com/news/2009/03/technologies-4-challenging-2009
世界の先進エンジニアが集結 - QCon TOKYO 2012 早期割引実施中!
【ネクストスケープ】.NET、C#のアプリケーション開発者募集
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続き開 催されていく予定である。本記事では、開催の様子をレポートする。
Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。
GoogleはVMをともなう新しい言語であり、JSコンパイラでもあるDartをプレビューした。 InfoQはDartのアプリの構築に貢献する文法の裏側を探った:スナップショット、Isolate、モジュール方式
本記事ではCSPベースの「マルチドメイン・モデル検査ツール」である、PAT(Process Analysis Toolkit)について紹介する。モデル検査は、形式手法(Formal Method)という方法論を基礎とする技術であり、複雑さが増大しながらも安全性を求められる、現在のソフトウェア開発の状況に対する処方箋の1つとして注目されている手法である。
前回まで、Jenkinsの幾つかの側面に注目して解説をしてきました。シリーズ最後の今回は、Jenkinsをサービスとして使う方法を紹介します。
Alloyは、MITにて開発された仕様記述言語であり、ツールによる自動解析を使い、インクリメンタルに形式仕様が書けることが特長である。筆者らはAlloy開発者による、Alloyを使った形式手法入門書を翻訳、今夏にオーム社より刊行した。本記事では、Alloyの簡単な概要と、翻訳書『抽象によるソフトウェア設計』(「Alloy本」)を紹介する。
スマートフォンを中心としたマルチデバイスにおけるタッチユーザーインターフェイスへの対応は、既に必須の項目となりつつある。本記事では、Windows デバイスにおける UX のベースとなっている「メトロ」というデザイン言語を掘り下げながら、既存環境を意識しつつもどのようにタッチユーザーインターフェイス開発に取り組んでいくべきであるかについて解説していく。
No comments
スレッド表示 返信