ログインのシーケンス図を作成したいと思います。最初のステップは、ユーザーが私のウェブサイトにアクセスし、システムがログインフォームにリダイレクトすることです。その後、ユーザーがユーザー名とパスワードを挿入し、システムがそれを検証します。成功すると、ホームページに誘導されます。
私の質問は:ログインフォームのようなUIをシーケンス図にどのように置くのですか?私はインターフェイスのように使用します:ログインフォームですが、それは間違った方法だと思います。なぜなら、私が知っているインターフェイスはc#/ Java ..のクラスのようなものだからです。これが私のシーケンス図です。
助けが必要、助けてくれてありがとう
この図には「間違っている」ことがいくつかありますが、大きなことは何もありません。主に、UMLで特定の意味を持つ要素を使用していて、その意味が表現したいものと一致しない場合です。
ホワイトボードにスケッチをし、口頭で説明すると、図はうまくいきます。
UMLからの逸脱を説明するためにあなたが周りにいないかもしれないドキュメントでそれを使用したい場合は、いくつかの小さな変更を提案します。
<<interface>>
は、キーワード<<interface>>
で定義されたC#/ Javaクラスと同じことを意味します。 UMLステレオタイプを使用して、UIのページであることを示す場合は、<<UI>>
や<<Form>>
などの別のステレオタイプを選択する必要があります。あなたの図は興味深いことに混乱しています。
ユーザーインターフェイスシナリオをモデル化する場合は、いくつかの注釈付きワイヤーフレームシナリオを使用することをお勧めします。これらはそのためにより表現力があります。
最初の質問は、ユーザー(つまりアクター)をシーケンス図に入れるかどうかです。
しかし、モデリングの目標はデザインをよりよく理解することです。そのため、アクターがあなたを助けた場合、その正式な質問を決めるのはあなた次第です。
あなたの役割:User
オブジェクトが完全に明確ではありません。常に存在するユーザーオブジェクトはありますか?それとも、すべての要素を取得したら、それを作成しようとしますか?
後者の場合、おそらくこの生命線を条件付きで作成するために メッセージの作成 を使用することをお勧めします。
そして、その役割は何ですか:なぜあなたはオブジェクトにウェブページを「見せたい」のですか?
また、ログインが失敗した場合、User
オブジェクトはログインフォームをログインフォームに返し、ログインフォームはアクターに戻ります。ここには明らかにいくつかの問題があります。
UMLは、システムをその環境(使用例)で示し、システムの内部(他のほとんどの図)を示すのに適したツールです。
ただし、ユーザーインターフェイスのシナリオを文書化するツールではありません。 UMLの発明者であるBooch、Rumbaugh、Jacobsonでさえ、システムの分析と設計でUMLを使用することについて書かれた彼らの著書「Unified Process」でこれを明らかにしています。他のより専門的なツールは、何が起こるかについての人間の認識に適しています(例 wireframe シナリオ)。
ユーザーとのやり取りが明確になったら、抽象化されたバージョンを シーケンス図 に表示できます。しかし、これにより、どのsystemオブジェクトが相互作用のどのアクションに責任があるかが明確になります。そして、メッセージは関数呼び出しまたはシステムイベントにマップ可能である必要があります。