4

私は、エンタープライズ アーキテクト (sparx システムから) が生成したアーティファクトを 6 ~ 8 人のチームが使用できるように格納する集中リポジトリのセットアップに取り組んでいます。当初、アーティファクトを一元的に保存するために PostgreSQL データベースをホストすることを考えていました。EA のドキュメントを見ると、検討中のオプションの長所と短所が明確にわかりません。SVN を使用する場合と比較して、DBMS を使用する場合、次のようなオーバーヘッドがあります。

  1. DBMS のホスティングと管理
  2. DBMS のユーザー プロビジョニングと管理
  3. アーティファクトのバージョニングは個別に行う必要があります
  4. DBMSのバックアップ等

SVN の場合、EA ドキュメントから、展開モデルは最大サイズ 10 のチームのみに適しており、ファイルが破損する可能性があることが言及されています。これら以外に、SVN を使用してリポジトリをホストする際のボトルネックはありますか? マルチユーザー環境でエンタープライズ アーキテクトを使用した経験のある方からの提案をお待ちしております。

4

4 に答える 4

9

「最大 10 人」という警告は、1 つの .EAP ファイルを共有するチームがある状況を指します。すべてのユーザーが独自の .EAP ファイルを持っている場合、または DBMS リポジトリを設定している場合には適用されません。

DBMS セットアップでは、外部のバージョン管理リポジトリではなく、EA のベースラインをバージョン管理に使用することをお勧めします。概念は似ています: 個々のパッケージはベースライン化されますが、バージョンを外部の SVN/CVS/etc に保存するのではなく、内部のデータベースに保存します。

これにより、管理するリポジトリが 1 つ少なくなりますが、EA には、DBMS を外部のバージョン管理と組み合わせるときに問題が発生し、煩わしく (最悪の場合) 情報が失われる可能性があることにも注意してください。外部バージョン管理は、.EAP ファイルで使用するためのものです。

ベースラインには、外部のバージョン管理よりも大きな利点が 1 つあります。EA 内でさまざまなバージョンを視覚的に比較し、個々の図で追加、削除、変更、および移動されたものを確認できます。大きな欠点: ベースライン化されたパッケージは、バージョン管理されたパッケージのように、プロジェクト ブラウザーで特別なアイコンで示されません。

個々の .EAP ファイルと外部バージョン管理を使用した展開モデルにより、さまざまなパッケージ、およびそれらのパッケージのさまざまなバージョンを EA プロジェクトにインポートするオプションが提供されます。DBMS モデルでは、EA プロジェクトは 1 つしかないため、誰もが同じパッケージの同じバージョンを常に見ることができます。

はい、DBMS では、ユーザーを設定し、バックアップ計画を実装する必要があります。ただし、SVN リポジトリのバックアップと、チーム メンバーの個々の .EAP ファイルのバックアップも必要です。

EA on DBMS でのユーザー管理は、2 段階のプロセスです。各ユーザーにはデータベースへの読み取り/書き込みアクセスが必要であり、各ユーザーは EA プロジェクトで個別のアカウントも必要です。これらは、Windows ドメインからインポートすることで簡単に作成できます。

これは、同時編集の問題を防ぐために、プロジェクトでユーザー セキュリティをオンにすることを前提としています。

チームのセットアップに関する私の推奨事項は、常に DBMS + ユーザー セキュリティ + ベースラインです。EA アーティファクトの単一の場所が提供され、誰もが常に同じものを見ています。

于 2012-09-01T08:05:54.743 に答える
1

私は同意します、私は同じセットアップと環境を持っています。

ドキュメントにi-netのコードスニペットがあります。申し訳ありませんが、ソースがありません。ただし、ルートモデルまたはプロジェクトですべてのベースラインを見つけるのは素晴らしいことです。

DBMS STRG + Fですべてのベースラインを検索すると、モデル検索が開きます。[オプション]->[検索の管理]->[新しい検索の作成]->[すべてのベースラインの検索]に名前を付けます->エディタータイプSQL-エディター。これを貼り付けます:

SELECT t_package.ea_guid AS CLASSGUID, t_document.ElementType AS CLASSTYPE, t_package.Package_ID as ID, t_package.Name, t_package.Notes as PackageNotes, t_document.Notes as BaselineComments 
FROM t_document INNER JOIN t_package ON t_document.ElementID = t_package.ea_guid

これで、(すべてのベースラインを検索)という名前の新しい検索ができました。これは非常に快適です。

于 2012-09-06T12:36:12.857 に答える
0

DBMS のセットアップに関する考慮事項がもう 1 つあります。それは、リモートの場所からリポジトリを操作する場合の EA のパフォーマンスです。EA は、プロジェクト DB (EAP または DBMS) へのリモート接続用に最適化されておらず、接続が遅いため、編集中に時間がかかる場合があります。

于 2016-06-24T11:46:52.493 に答える