ほ とんどのアプリケーション・ライフ・サイクル・ツー ルは、ツール固有の情報を、すべてのチーム・メンバー が入手できる中央の場所に保管します。 Jazz は、この機能を拡張可能なリポジトリー内で提供します。リポジトリー・コンポーネント はカーネル内にあるため、すべてのクライアントおよ びサーバー構成で、このコンポーネントの機能 を他のコンポーネントが使用できます。
リポジトリー内の項 目ごとに固有の項目 ID が指定されており、こ の ID は項目を取り出すキーとして使用できます。 実際、項目 ID は UUID であるため、あるリポジトリーで作成された項目 を別のリポジトリーに複製してその ID をそのまま保 持することができます。 同様に 、項目の状態およびコンテンツの値には UUID が割り当てられているため、どのような状態の項 目でも他のリポジトリーに複製し、そのままその ID を保持することが可能です。
リポジトリーの読み取りと書き込みの操作はアト ミックです。 サーバー・サイドの API には、読み取りと書 き込みの操作の任意のシーケンスを、単一のアトミック なトランザクションに明示的に一括する操作も含まれ ます。 Jazz には、リポジトリー間でコンテンツ・オブジェクトをストリーミングするためのサーバー・サイド API があります。これは、ストリーミングがリポジトリー・トランザクションの外部で安全に行うことができるように設計されています。
チーム・プロセス・コンポーネントは、 Jazz テクノロジー・プラットフォーム内のプロセス・サポートの基盤になります。 この場合、プロセスとはチ ームが作業を整理するために使用する慣習、規則、ガ イドライン、および慣例の集まりのことです。 非常に小規模のチームの場 合、プロセスは通常は正式のものではなく、文書化さ れていません。 チームの規模が拡大するにつれ、チームの新規メンバーがプロセスを迅速 に理解できるように、チームの プロジェクトのホーム・ページでプロセスが部分的に文書化される場合があります。 大規模な組織では、プロジェクト・チームが従うことが期待される一般的な慣習や手順の説明が文書化されている場合があります。プロジェクト・チームは標準的なプロセス・テンプレートで作業を開始し、プロジェクトやチームに合わせてテンプレートをカスタマイズすることが期待されます。さらに一歩踏み込 んで、プロセスの重要な部分を網羅する正式なモデル を作成する組織やチームも存在します。