Sparx Enterprise Architectでプロゞェクトを準備しおいたす。 私たちのレシピ

Habr様、Sparx Enterprise Architectでプロゞェクトを準備するためのメモず基本的なレシピを共有するこずにしたした。 さらに、プロゞェクトずは、䜕らかの情報システムの䜜成を意味したす。 あなたの前には、図の䟋、Enterprise Architectのプロゞェクト構造、芁件、蚭蚈、開発蚈画に぀いおの少しの説明がありたす。







出所



1.序文の代わりに



1.1。 始たりに぀いお



むかしむかし、遠い、遠い銀河で...いいえ、そうではありたせん。 むかしむかし、先週の金曜日に、おそらく十分な単語、論文、個々のjiraタスクなどがあるず刀断したようです。 -より適切なものを䜿甚する時が来たした。 すべおがクロスリンクで混乱しおいたため、歎史性ずいく぀かのアプロヌチを維持するためのさたざたな方法で䞍䟿になりたした。 ゚ンタヌプラむズアヌキテクトEAの䜿甚ぞの旅が始たりたした。 なぜそれで十分ですか 倚くの理由がありたす。 プロセスの各参加者には、独自のものがありたす。 䞻な理由は絶察的な力です。







ダヌスシディアスは圱響分析を実斜したす。 䟝存関係は青で衚瀺されおいたす映画「スタヌりォヌズ゚ピ゜ヌド3-シスの埩ven」のフレヌム



心に圱響を䞎え、䜜成された情報システムの芁玠間の関係を理解するように党員を支配したいずいう意味での絶察的な力広矩の芁玠は、開発されお埌で機胜するだけでなく、䜿甚される芁件や仕様などでもありたすシステムを䜜成する際に理解するだけでなく、これらの぀ながりをすばやく芋぀け、分析し、「1日で倉曎を実装でき、2週間必芁な理由がわからない」顧客を衚瀺したす。



完党に公正な質問-「なぜ他のツヌルではなく゚ンタヌプラむズアヌキテクトを遞択したのですか」プロセスの開始時点で、資産にはjira、confluence、MS office、SP、Sybase Power Designer珟圚はSAP Power DesinerずSparx゚ンタヌプラむズアヌキテクト。 実際、質問は圓時のEAの個人的な奜みずスキル2011〜2012幎、および゚ンタヌプラむズアヌキテクトに心ず思いを䞎えた先駆者である人々によっお決定されたした。 おそらくこれは間違いだった。



1.2。 ちょっずしたキャプテン



情報システムを䜜成するプロゞェクトおよび、䞀般に、おそらく各ステヌゞの定矩たでのほがすべおのプロゞェクトのラむフステヌゞの䞻な段階は、GOSTによるず、単に垞識に基づいお、非垞に明癜です。 これは





  1. コンセプト
  2. スケッチ
  3. 参照条件芁件の収集ず識別、
  4. 技術蚭蚈アヌキテクチャ開発、
  5. 詳现蚭蚈開発ず蚭蚈、
  6. 実装
  7. 操䜜ずメンテナンス。


泚数字は説明のためのものです-ステヌゞを組み合わせたり、明確な境界を蚭けたり、反埩したりするこずができたす。



通垞、すべおを迅速に、緊急に、非垞に矎しく行う必芁があるため、抂念に぀いおは、ただEnterprise Architectを䜿甚しおいたせん。 したがっお、これは、さたざたな拡匵機胜たたは他の描画マシンを備えたvisioずいう蚀葉です䞀般的には、矎しさです。 残念ながら、このスケッチは顧客の関心を匕くものではありたせんが、EAで䜜成するこずができれば幞いです。 最埌の2぀のポむントは、ミス他の手段ずツヌルによっおいずれにせよ解決されるたたは改善に関するものであり、その埌はすべおポむント3〜5で終わりたす。



したがっお、参照条件芁件の収集ず識別、技術蚭蚈アヌキテクチャの開発、詳现蚭蚈開発ず蚭蚈などの段階に぀いお説明したす。



1.3。 結果を詊すのが埅ちきれない人のためにネタバレ







コンポヌネントこの堎合、各コンポヌネントは1぀のデプロむメントモゞュヌル、それらの関係、基本プロトコルの図。







䞻な関係を瀺す、ノヌド別の䞀般的な゜フトりェアの展開図



2.レシピに぀いお



2.1。 成分



必芁な基本的なものは次のずおりです。





痛くありたせん





そうそう、私はほずんど忘れおいたした-私はただ友奜的で熱心なチヌムが必芁です。 それなしではどこにもありたせん。 それだけです。



2.1.1。 䞍快感に぀いお



私たちにずっお、これらは





2.1.2。 メタモデルに぀いお



私たちの意芋では、意識的たたは無意識的に、䜕かを䜜成するプロセスに関䞎するほずんどすべおの人々のチヌムは、それを䜜成するもの、それが䜕で構成されるか、それがどのように機胜するかなどを䌝えるこずができたす。 プレれンテヌションの「穎」に関係しおいるずは限りたせん。 しかし、それでも、できたす。 情報システムの䜜成も同様です。 最䞊䜍レベルでは、おそらく機胜的な芁件や他の芁件、重芁であたり明確で曖昧な芁件、システム内のブロック、䜿甚される基本的なテクノロゞヌなど、芁件があるこずを想像するでしょう。システムが取り囲んでいるこず、これがどのように盞互接続されおいるか。 芁件ず実装の原則の詳现、デヌタ構造の説明などがありたす。 これらすべおの基本的な郚分ずそれらの間の通信の芏則は、「メタモデル」ず呌ばれたす。







メタモデル。 矎人



私たちのレシピでは、メタモデルはスケヌタヌに十分です-その茪郭の茪郭を描き、各郚分をもう少し詳しく芋おみたしょう





2.1.3。 蚀語に぀いお



すぐにUMLを最も䞀般的なオプションずしお遞択したため、長い遞択の苊しみを自慢するこずはできたせん。 たあ、「急いで」。 確かに、異なる蚀語ず衚蚘法のさたざたな組み合わせを䜿甚するこずができ、おそらく、各郚分に独自のメタモデルを遞択するこずでこれに到達したすが、今のずころ遞択の苊痛ず衚蚘法ず蚀語の亀差の䞡方を喜んで免れおいたす。



2.1.4。 ゚ンタヌプラむズアヌキテクトの知識に぀いお



最初は知識がありたせんでした。 もちろん、ある意味では、単独で䜜業する方法や単玔なドキュメントを䜜成する方法に぀いおは断片化されおいたした。 䞀般的に、振り返っおみるず、あなたは私たちの認知症ず自信ず孊習のスピヌドの勇気に驚いおいたす。 それ以来、゚ンタヌプラむズアヌキテクトの深Architectにどんどん突っ蟌んでいたすが、私たちはただ新しい地平を発芋しおいたす。 珟圚、私たちは次の偎面を所有しおいたすEAプロゞェクトず芁玠の操䜜、バヌゞョン管理、アクセス制埡、ドキュメント生成。



2.2。 料理



そのため、䞍快感、メタモデル、正匏な蚀語、゚ンタヌプラむズアヌキテクトの知識、フレンドリヌなチヌム、怠iness、コヌヒヌ、忍耐、柔軟性がありたす。

次に、EAを取埗し、その䞭にプロゞェクトを䜜成し、メタモデルに埓っお構造を䜜成し、芁玠ず接続を䜜成する必芁がありたす。

私たちは詊しお-結果を芋お、評䟡しお-気に入っお、さらに適甚したす。 気に入らなかった-メタモデルを修正し、芁玠や接続などを曎新しおから調理したす。



気に入らなかったものを理解する方法は あなたはそれが奜きではない、あなたはさらに䞍快であり、あなたは利益を感じない。 どういうわけか、非垞に平凡で挠然ずしおいるでしょうか あなたは絶察に正しい、芪愛なる読者です。 ただし、䞀般的なケヌスに察しお非垞に明確で厳密な基準を提案するこずは困難であり、おそらく必芁ではありたせん。 しかし、もちろん、私たちは経隓を共有したす。



2.2.1。 プロゞェクトに぀いおEAにありたす



Enterprise Architectのプロゞェクトは、ルヌトパッケヌゞのセットで構成されおいたす。



同様に、各ルヌトパッケヌゞには他のパッケヌゞが含たれる堎合がありたす。 そしお、すべおの通垞のパッケヌゞには芁玠ここでは芁玠はEA芁玠ず図が含たれおいたす。

ルヌトディレクトリは、EAPファむル内でロヌカルに配眮するこずも、デヌタベヌス内で䞭倮に配眮するこずもできたす。 さらに、各パッケヌゞはバヌゞョン管理システムのリポゞトリにxmlずしお保存できたす。



デヌタベヌスにプロゞェクトを保存するこずはできたせんでした。 最初はクヌルでした-倉曎はすべおの人に反映されおいたしたが、しばらくしおからミスをしたり、芁玠の消倱などの奇劙な状況になったりしたした。 その結果、私たちはそれを治療のために吐き出し、しばらく忘れおいたした。 しかし、バヌゞョン管理システムを匕っ匵っおSVNをねじ蟌みたした。



゚ンタヌプラむズアヌキテクトのプロゞェクト



最も原始的なバヌゞョンでは、メタモデルの䞻芁郚分をルヌトパッケヌゞたたは第1レベルパッケヌゞずしお䜜成し、モデル芁玠ずそれらの間の関係を栌玍するための構造を取埗できたす。 この䟋では、これらのパヌツの䞀郚が第1レベルのパッケヌゞに分散しおいるため、少し耇雑です。 しかし、䞀般的に、原則は远跡可胜です。 さらに、SVNを「ねじ蟌む」こずで、「1぀のパッケヌゞ-1人の所有者」の原則に埓っおブランチやリリヌス、アクセス制埡を操䜜する機䌚を埗たした。



2.2.2。 芁件に぀いお



芁件EA芁玠ずしおは次のようになりたす。



電子的盞互䜜甚の芁件の䟋



これは、UMLのEA芁玠の圧倒的倚数ですそのため、芋たした-残りを芋たした。



メタモデルは、芁件の芳点からはかなり退屈です-この郚分は、より倧きなクロヌズアップでは䜎くなっおいたす。





䞀般に、特別なこずは䜕もありたせん。芁件を䜜成し、それを策定し、必芁に応じお他の芁件ず関連付けたす。 しかし、1぀の「しかし」がありたす。アクティブな識別ず収集の段階での芁件は、EAには根付いおいたせん。 そしお、私たちはそれらを昔ながらの方法で-盎接蚀葉にした。



なぜこれが起こっおいるのかず繰り返し疑問に思いたした。 珟時点では、次の結論に達したした。





すべおの芁件に同意するずすぐに、メタモデルの察応する郚分でそれらをすぐにEAにアップロヌドしたした。 そしお、すべおの芁件の倉曎はEAのみを通過したす。



2.2.3。 構造に぀いお



基本的な芁件が組み立おられるず、IPの構造、技術、コンポヌネント間の通信、メタモデルのこの郚分に応じた個々の技術的゜リュヌションなど、蚭蚈䞊の決定をスケッチし始めたした。





このように起こった。 ただ存圚しない゜リュヌション甚の図が䜜成されたした。 このため、システムを蚘述する芁玠をEnterprise Architectプロゞェクトに蓄積し、これらの芁玠が関係する゜リュヌションを䜜成する際に、必芁な図にドラッグしお単玔に再利甚したした。 この堎合、圱響の分析に必芁な接続が機胜し始めたす。



構造を説明するために、4぀のタむプの図を䜿甚したした-ナヌスケヌス、コンポヌネント、展開、およびクラス論理デヌタモデルを説明するため。 さらに、堎合によっおは、倖郚オブゞェクト図面、ファむル、リッチテキストドキュメントを䜿甚するEAの機胜が䜿甚されたした。



たずえば、1぀の物理コンポヌネント展開モゞュヌルに盞圓の説明がEAプロゞェクトのダむアグラムずその関係でどのように芋え、耇雑なものではないかを以䞋に瀺したす。





2.2.4。 プロダクションに぀いお



基本的な゜リュヌションが完成したら、プログラムコヌドの蚭蚈ず開発を開始できたすが、埌者の堎合は「開発ステヌトメント」が必芁です。



このステヌトメントには、IPが機胜たたはシナリオ、詳现に関䞎するコンポヌネントずメ゜ッド、䜿甚される論理デヌタモデルの゚ンティティに関しお、IPがどのように機胜するかに぀いおの説明が含たれおいたす。



念のため、以䞋では、システムの機胜ナヌスケヌスのピクトグラムずしお説明は、システムの特定の耇雑なプロセスを意味したす。たずえば、ナヌザヌから普通預金口座を開くためのアプリケヌションを凊理するず、いく぀かのシステムたたは1぀のシステムの䞀郚間の盞互䜜甚の「重い」プロセスを隠すこずができたす。





この段階では、システムの機胜が䞭心になりたす。 センタヌ呚蟺で次の䜜品が䜜られおいたす。





これらの䜜業の埌、この情報を䜿甚しおコヌドを蚭蚈および開発し、テストしたした。



転送プロセス自䜓はjiraを介しお線成されたす-タスクが䜜成され、ステヌトメントが配眮されおいるEAプロゞェクト内の堎所ずSVNブランチを瀺したす。



ステヌトメントは次のようになりたす。





2.2.5。 蚭蚈に぀いお



蚭蚈には、基本クラス、゜フトりェアむンタヌフェむス、パッケヌゞJava甚語の説明、およびシステムの構造ずの関係が含たれたす。



これに加えお、蚭蚈では、システム関数の実装を瀺すコンポヌネントずクラス間の盞互䜜甚の順序がありたす。





レシピのこの郚分は秘密にしたす。



3.結論の代わりに



レシピのやや混乱した手順を経お、EAのプロゞェクトである料理を手に入れたした。



䞀郚の私たちのレシピは奇劙で、ばかげおいるように芋えたす。 誰かが自分で新しいこずを孊ぶでしょう。 誰かが料理を始めお結果に満足したすが、誰かはそうではありたせん。

そしお、これは正垞です-結局のずころ、これは私たちのITキッチンのレシピにすぎたせん。



メモは敵意にずらわれず、建蚭的な批刀ず有益な質問があるず確信しおいたす。そこからレシピを修正し、Enterprise Architectの䜿甚ずHabréでの公開に関するメモを続けるこずができたす。






All Articles