InfoQ ホームページ 設計/アーキテクチャ に関するすべてのコンテンツ
-
総保有コストを使った技術的負債の管理
総保有コスト(TCO)は、投資の意思決定やファイナンスの分析で使われる。これをソフトウエアに適用すると、初期の開発コストや、製品が提供停止になるまでのメンテナンスのコストをカバーできる。TCOは設計上の決定や技術的負債の管理をサポートする。
-
Googleでの長期にわたるエンジニアリング
Googleでディレクターを務めるAstrid Atkinson氏はこの10年の経験を引き合いにして、長期にわたるエンジニアリングに関するルールを示し、アドバイスをした。サンタクレアで開催されたVelocity Conference 2015の参加者が学んだのは、幅広く成功していることをイメージすること、複雑は排除するのではなく管理すること、チームをスケールするのではなく、システムをスケールすることに注力すること、だ。
-
超解像画像のための深層畳み込みニューラルネットワーク
Flipboardが低解像画像をアップスケールするというDeep Learningの応用について報告し、この学習アルゴリズムのパワーと柔軟性を示した。
-
形式的手法を用いた正当性立証可能なソフトウェアの開発
ソフトウェアプログラム内の中核的なコミュニケーションと状態管理が論理的に100%正しいことを証明する手段として,コンピュータチェックモデルを利用する方法がある。同じようなモデルは,100%正確なソースコードの作成にも応用できる。このような形式的手法を利用することにより,市場提供のためのコストと時間を削減し,より信頼性の高いソフトウェア製品の提供が可能になる。
-
-
Tabris.js: JavaScriptでネイティブモバイルアプリを作る
Tabris.jsはネイティブのiOSとAndoroidアプリを完全にJavaScriptで開発するためのオープンソースモバイルフレームワークだ。EclipseSourceによれば、高性能、高速な開発サイクルを実現し、Cordovaのようなサードパーティのプラグインをサポートする。InfoQはこのプロジェクトのリーダであるHolger Staudacher氏に話を聞いた。
-
IODAアーキテクチャについて
Ralf Westphal氏によると、レイヤードアーキテクチャ、ヘキサゴナルアーキテクチャ、クリーンアーキテクチャといったアーキテクチャパターンはよく似ていて、アプリケーションの構造について非常に大雑把なイメージを与えてくれるという。Westphal氏はアーキテクチャを記述する別の方法を求めて、IODAアーキテクチャというスタイルを定義した。これはオペレーション、データ、インテグレーションという3つのフォーマルな責務で構築される。
-
iOS/Android用ライブラリをCommon Lispで開発可能なLispWorks
LispWorks 7.0には,AndroidおよびiOSプラットフォーム用の新しいランタイムシステムが追加されている。ネイティブなモバイルアプリ用に,UIを持たないライブラリの開発が可能になる。
-
Xamarin.Studio 5.9がC# 6をサポート
先日リリースされたXamarin.Studio 5.9には,C#6サポートやSketchの改良,デバッガの新しいビジュアライザなど,数多くの機能が加えられている。
-
Googleにおけるマルチリポジトリ開発
複雑なソフトウェアプロジェクトは、外部依存のために複数のリポジトリにまたがっていることがよくある。これはそれ自体で課題だ。GoogleのWebRTCエンジニアであるPatrik Höglund氏は、Chromeのような何十ものサードパーティ製ライブラリを使用したソフトウェアを開発するとき、Googleがどのようにしているか説明した。
-
#NoEstimatesを使って価値を提供する
Vasco Duarte氏は#NoEstimatesを学び、予算内で価値を提供するのに役立てる方法を探すのが良い、という。氏は#NoEstimatesについての本を書き、見積もりがなぜうまくいかないのか、#NoEstimatesを使ってどのようにプロジェクトを管理するのかを説明している。
-
CoreOSアプリコンテナ仕様がGoogle,Apcera,Red aHatのサポートを獲得
先日サンフランシスコで開催された第1回のCoreOS Festで,CoreOSチームは,App Container Spec(appc)がGoogle,Apcera,Red Hat,VMware各社の支持を獲得したことを発表した。Googleは,CoreOSのappc実装である‘rkt’をKubernetesでサポートする。またApceraは,‘Kurma’という名のappcインプリメンテーションを新たに開発中だ。
-
Clingは高性能C++ REPLを提供する
ClingはLLVMとClang上に構築された対話型C++インタープリタだ。コーディング-コンパイル-実行-デバッグというC++の通常のワークフローを超えることで、生産性を飛躍的に高める可能性がある。
-
Azul は OpenJDK ペースの Zulu Embedded をリリースした
Azul Systems は、OpenJDK ベースでオープンソースの Embedded JDK であるZulu Embedded をリリースした。Zulu Embedded はモバイルや IoT デバイス向けに組み込み Java 製品を保有している企業をターゲットにしている。ルータ、スイッチ、ATM 機器、アビオニクス、カーエレクトロニクス(automotive electronics)、Point of Sale (POS) システムが例として挙げられる。
-
TerraformとConsulによる現代的データセンタの自動化
CraftConf 2015でMitchell Hashimoto氏は,現状のプロビジョニングおよびコンフィギュレーションツールについて,'現在のデータセンタ' を管理するには適していないものだと評した。現在のデータセンタはアジャイルかつエラスティックであり,‘サービス’はさまざまなベンダの提供する異種プラットフォームに渡って拡がる可能性を持つ。このような課題を抱えた環境でオートメーションを提供する方法として氏は,HashicorpのTerraformとConsulという2つのツールを紹介した。