Sequence Diagram: Apakah pelaku objek?

11

Jawaban yang paling mungkin adalah tidak, tetapi saya datang dengan keraguan ini. Bisakah aktor bertindak sebagai kelas?

Saya tahu aktor memicu peristiwa dan dapat meminta, tetapi jika ada kelas yang memodelkan aktor (seperti kelas pengguna) dapatkah kita memanggil metode untuk melakukannya? Atau apakah ini benar-benar kesalahpahaman tentang peran aktor, yang dicampur dengan kelas perwakilan?

Seharusnya benar:

Misalkan Contoh yang Benar

Diragukan jika benar:

masukkan deskripsi gambar di sini

Tiago Duque
sumber

Jawaban:

8

Dalam UML, Aktor selalu merupakan sesuatu (sistem atau orang) yang berada di luar ruang lingkup sistem / perangkat lunak yang Anda bangun. Akan sangat salah untuk menyamakan aktor dengan instance / objek kelas yang terjadi untuk memodelkan aspek-aspek tertentu dari aktor dalam sistem Anda.

Dalam diagram UML yang ditampilkan, aktor "Pengguna" (dengan ikon stick-figure) mewakili manusia di dunia nyata yang mengoperasikan sistem Anda. Kelas Usermewakili model orang yang menangkap karakteristik yang relevan untuk Anda. Kelas ini hanya ada dalam sistem Anda.
Ini membuat kelas dan aktor adalah dua entitas yang berbeda dan juga harus ditampilkan dalam diagram Anda.

Bart van Ingen Schenau
sumber
"Aktor selalu merupakan sesuatu di luar ruang lingkup sistem / perangkat lunak yang Anda bangun." Namun demikian aktor berinteraksi langsung dengan objek dari beberapa Kelas dengan menginisiasi tumpukan panggilan. Karena itu ia entah bagaimana adalah bagian dari sistem (ia diwakili oleh kelas arbitrer lain dari lapisan UI yang kemungkinan besar tidak dimodelkan oleh diagram kelas). Ini tampaknya sangat berlawanan dengan intuisi pada awalnya dan mungkin merupakan sumber kebingungan bagi sebagian orang.
dvdblk
Aktor adalah entitas yang terpisah. Aktor ada bahkan jika sistem tidak. Aktor memulai, menutup dan bahkan memberikan input ke sistem tetapi tidak duduk di dalam sistem perangkat lunak untuk melakukan tugas apa pun dari Sistem. Sistem bekerja secara independen dari aktor. Objek dapat mensimulasikan aktor dunia nyata tetapi masih bergantung pada aktor manusia untuk memulai, keluar dan memasukkan secara langsung atau tidak langsung.
user2994783