2

.Net 3.5 で非常に大きな Web アプリケーションを開発しています。2 つの別々のベンダーが関与しており、異なる分野の専門知識を持っています。どちらのベンダーも離れた場所にあり、同じ Web アプリケーションの別の機能領域に取り組んでいます。UI の開発を処理する最善の方法は何だろうと考えていました。

UI には、左側と上部にナビゲーション リンクがあるマスター構造があります。リンクをクリックすると、メインエリアにページが開きます。個々のページは、各ベンダーによって開発されます。マスター全体を 1 つのベンダーが開発できます。マスター レイアウトでは、iframe を使用してメイン エリアに個々のページを表示します。

マスター アプリを IIS-Master のプールに展開し、ベンダー A アプリを IIS-A のプールに展開し、ベンダー B アプリを IIS-B のプールに展開します。ユーザー数が多いため、負荷分散を行うための IIS のプール。

また、この Web アプリケーションはアクセス ベースです。つまり、ユーザーはページにアクセスするためにログインする必要があります。さまざまなサイトが関係しているため、ここでもシングル サインオンを実装する必要があることを理解しています。

これは良い考えですか?代替手段はありますか?


返信後に編集

回答者様のおっしゃる通り、私も不安です。しかし、私が考えている解決策は、2 つのベンダーが関与しているという理由だけではありません。2 つの別個の機能領域があり、両方の領域に独自のユーザー負荷があるため、2 つのベンダーが関与しているため、適切な負荷分散にも役立ちます。シングル サインオンを実装した 2 つのサイトを完全に作成することを考えていました。しかし、問題はUIの共通部分のメンテナンスです。共通ライブラリは、あるベンダーが開発し、DLL を他のベンダーに配布できるため、簡単です。UIレイヤーでこれを行うにはどうすればよいですか?

4

3 に答える 3

4

あなたが書いたものに対する私の第一印象は、アーキテクチャを再検討する価値があるかもしれないということです。

iframe を使用すると、多くの問題が発生します。まず、ブラウザの [戻る] ボタンの動作です。

別の方法として、マスター アプリケーションと A および B の間でリモーティングまたは Web サービスを使用し、ユーザー インターフェイス全体を 1 か所で処理することもできます。2 つの異なるベンダーと一貫した UI の開発を調整することは、非常に困難な場合があります。

于 2009-07-31T05:28:31.193 に答える
1

ソース管理ブランチの同じインスタンスを共有している限り、両方の開発者が同じ UI プロジェクトで作業できないのはなぜですか。マスターページが開発されると、相手に迷惑をかけずに、両方ともマスターテンプレートに対してクライアントページを構築できますか?

于 2009-07-31T08:25:06.687 に答える
1

分散したチームとの共同作業は、特に大規模なアプリケーションでは難しい場合があります。実際、開発ライフ サイクルが容易になると考えているという理由だけで、不必要にアーキテクチャを変更することがあります。

個人的には、バージョン管理、継続的インテグレーション、コード レビュー、オープン コミュニケーションなどのソフトウェアの基礎は非常にうまく機能すると信じています。このプロジェクトは、たまたま複数の開発チームによってコード化された単一のアプリケーションと考えることをお勧めします。誰かにコード統合の責任を負わせ、すべてのチームが同じページにいることを確認し、チームのダイナミクスに合わせてアーキテクチャを変更しないでください。

あなたがしなければならない質問は、不必要に複数のサイトとシングル サインオン システムを維持する方が本当に良いのか、それとも単にベンダーを分離してアプリケーションのコア領域に集中させ続けることが重要であると考えているため、このアプローチを提案しているだけなのかということです。正しいアプローチ?

于 2009-07-31T05:29:42.050 に答える