InfoQ ホームページ アーティクル
-
コンテキストマッピングによる戦略的ドメイン駆動設計
オブジェクト指向モデリングに対する多くのアプローチは、アプリケーションの規模が拡大し、複雑さが増すにつれてスケールしなくなりがちである。「コンテキストマッピング」のテクニックは、巨大なソフトウェア開発プロジェクトにおいて複雑さを管理するのに用いられ得る。この記事では、著者のAlberto Brandolini氏が、「境界つきコンテキスト」が持つ多くの側面に関して議論し、ソフトウェアプロジェクトにおける重要な意思決定を支える上でどのように「コンテキストマップ」を構築するべきかを示す。
-
「かんばん」をソフトウェア開発に適用する: アジャイルからリーンへ
このInfoQの記事において、平鍋健児氏は、日本の製造業者と共に学んだことを適用する。多くのアジャイルチームはバリューストリームの一部だけを最適化するが、平鍋氏は、リーン生産のかんばんによる視覚的なトラッキングシステムから学んだことを適応させるシンプルな方法を提案する。このかんばんシステムは、多くの企業でプロセスを見える化し、よりよいコミュニケーションとプロセスの改善をもたらすものだ。
-
実践RESTful HTTP
Gregor Roth氏から、RESTful HTTPの基礎に関してオーバービューを提供し、RESTful HTTPアプリケーションを設計する上で開発者が直面する典型的な問題に関して取り上げる。その中で、RESTアーキテクチャスタイルをいかに実践していくかを示す。Gregor氏は、URIの命名の共通して利用されるアプローチや、統一インターフェースをつかったリソースへのインタラクション、PUTとPOSTの使い分け、CRUD以外の操作の��ポートなどについてとりあげている。
-
アジャイルにおけるプロジェクトマネジャーの役割
どの本もアジャイルのコーチやファシリィテーターの役割は語っているが、マネージャーの役割について語っていません。この記事では最初に一般的に産業界でのプロジェクトマネージャーの役割について説明し、それから、アジャイルにおけるコーチ/ファシリィテーターの役割にあてはめてみます。この議論の中でコーチ/ファシリィテーターの意味の範囲を広げていくつもりです。
-
アレグザンダー祭りにて、James.O.Coplienが語るアジャイルとスクラムの源流とは
「パターン」と呼ばれる設計手法をご存知ですか?この建築の分野ではじまった設計の形式知化手法、および、使う人と作る人の対話のプロセスは、私たちソフトウェアの世界に援用されて1995年に「デザインパターン」という書籍で注目を浴びました。さらに、アジャイルと呼ばれる開発手法には、ユーザーといっしょに対話をしながら設計を進める「パターン」の思想が脈々と引き継がれているのです。この「パターン」の源流は、一人の建築家のアイディアから始まっています - その建築家の名は、クリストファー・アレグザンダー。
-
仮想パネル:ソフトウェアアーキテクチャの文書化について
ソフトウェアアーキテクチャの文書化というのは企業のアプリケーション開発プロセスにおいて重要な部分だ。この仮想パネルでは、特に、アジャイルソフトウェア開発環境におけるソフトウェアアーキテクチャの文書化について、Len Bass氏、Grady Booch氏、Paulo Merson氏、Eoin Woods氏に話を聞いた。
-
HTTPSコネクションの最初の数ミリ秒
HTTPSコネクションを確立するとき、一体何が起こっているのだろう。この記事では安全なコネクションを準備するためにクライアントとサーバの間でどのようなデータの交換が行われているのか、バイトレベルまで詳細に分析する。
-
Modular Java:動的なモジュール化
モジュール化は、大きなJavaシステムの重要な側面である。ビルドの改善のために、ビルドスクリプトやプロジェクトは、しばしばモジュールに分けられる。しかし実行時に、このことが考慮されるのは、まれです。Modular Javaシリーズの第3弾は、動的なモジュール化、どのようにバンドルのクラスが解決され、どのように生成され、消滅するのか、どのようにお互いに通信するのかについて、議論する。
-
分散バージョン管理システムの詳細なガイド
2007年5月に、Linus Torvalds氏がgitについてGoogleでプレゼンテーションして以来、分散バージョン管理システムへの関心や採用が増え続けています。この記事では、git、Mercurial、Bazaarの3つのツールを題材にして、分散バージョン管理システムのコンセプト、使用するタイミング、現在使われているバージョン管理システムよりも優れている理由を紹介します。
-
Modular Java:それは何なのか?
ここ数年にわたって、Javaのモジュール化は活発に議論され続けている話題である。(今や廃れてしまった)JSR 277から、JSR 291の承認、進行中のJSR 294にいたるまで、モジュール化はJavaの進化における必要なステップであるとみられている。ScalaのようなJVMベースの将来の言語でさえモジュール化について検討している。では、モジュール化の意味するところは何で、なぜそれを気にかけるべきなのだろうか?
-
Modular Java:静的なモジュール化
モジュール化は、大きなJavaシステムにおいて重要な側面である。ビルドを改善するために、ビルドスクリプトやプロジェクトをしばしばモジュールに分割するが、このことが実行時に考慮されることは、まれである。 Modular Javaシリーズの第2弾は、静的なモジュール化、バンドルの作り方、OSGiのエンジンにそれらをインストールする方法、バンドル間の(バージョン付き)依存性の設定のしかたなどについて扱う。
-
3つの人気OSのカーネルを比較する
この記事では,最も広く利用されている3つの Unix 系オペレーティングシステムを,効率性,発展性,ユーザフレンドリ性の3つの比較軸で比較評価します。対象とするオペレーティングシステムは OpenSolaris,Windows Vista,Linux 2.6 です。