Title: Unified Modeling Language (UML)
1Unified Modeling Language (UML)
What is UML ? UML is a graphical language for
visualizing, specifying, constructing, and
documenting the artifacts of a software intensive
system. The UML offers a standard way to write a
systems blueprints, including conceptual things
such as business processes and system functions
as well as concrete things such as programming
language statements, database schemas, and
reusable software components
2UML
- bahasa grafik utk. melihat dan memahami dgn.
lebih jelas - menspesifikasi, membina dan mendokumenkan
- ARTIFACT output setiap fasa/tahap pembangunan
- kaedah piawai utk. menulis
- BLUEPRINTS dokumen/pelan projek bagi
- Bahan Koseptual
- Proses perniagaan fungsi sistem
- Bahan Konkrit
- Pangkalan data, bahasa pengaturcaraan,
- penggunaan semula komponen perisian
3UML
- INGAT ! UML ialah bahasa untuk menspesifikasi
- dan bukannya satu kaedah atau prosidur
- digunakan utk. mendefinasikan sistem perisian
- utk. memperincikan lagi artifact sistem
- bahasa yg. digunakan utk. menulis dokumen/
- blueprint
4UML
- UML boleh digunakan utk. menyokong pelbagai
metodologi pembangunan perisian (cth. Rational
Unified Process) - TETAPI, UML dengan sendirinya tidak
menspesifikasikan metodologi atau proses yang
tertentu
5UML
- UML mendefinasikan notasi bagi domain berikut
- Interaksi Pengguna (User Interaction)
- Interaksi (Interaction)
- Dinamik (Dynamic)
- Logikal (Logical)
- Komponen Fizikal(Physical Component)
- Strategi Fizikal (Pyhsical Deployment)
6UML
- Interaksi Pengguna (User Interaction)
- menerangkan sempadan dan interaksi antara sistem
dan pengguna. - Cth Use Case Model
- Interaksi (Interaction)
- menerangkan bagaimana objek di dalam sistem
berinteraksi antara satu sama lain utk.
melaksanakan suatu tugas - Cth Collaboration Model
7UML
- Dinamik (Dynamic)
- - Digunakan utk. menerangkan dan memodelkan
kelakuan sistem sepanjang ia beroperasi - Cth Activity Diagram, State Diagram,
- Sequence Diagram
- Logikal (Logical)
- Menerangkan kelas dan objek bagi sistem
- Cth Class Model
8UML
- Komponen Fizikal(Physical Component)
- - Menerangkan komponen perisian yg. akan
digunakan utk. membangunkan sistem - Cth Component Model
- Strategi Fizikal (Pyhsical Deployment)
- Menerangkan senibina fizikal dan strategi
penyusunan komponen dalam senibina perkakasan - Cth Physical/Deployment Model
9Pengenalan USE CASE
- Keperluan fungsian yg. ditawarkan oleh sistem
- KELAKUAN SISTEM yang akan dibangunkan
- KELAKUAN sistem didokumenkan dalam
- MODEL USE CASE
- MODEL USE CASE ????
- ilustrasikan fungsi-fungsi sistem (use cases)
- persekitaran (actors)
- hubungan antara use cases dan actors
- (Use case Diagram)
- Ia membolehkan komunikasi antara pelanggan,
- pengguna dan pembangun perisian
10ACTORS (pelakon)
- BUKAN sebahagian drp. sistem
- mewakili sesiapa atau sebarang item yang
berinteraksi - dengan sistem
- ACTOR mungkin hanya
- 1. Input maklumat ke dalam sistem
- 2. Menerima maklumat drp. sistem
- 3. Input dan terima maklumat ke dalam
- /dari sistem
11ACTORS
- Persoalan di bawah boleh digunakan utk.
mengenalpasti ACTORS bagi sesebuah sistem - Siapa yang terlibat dalam sesuatu keperluan?
- Di mana sistem itu digunakan dalam organisasi?
- Siapa yang benefit bila menggunakan sistem?
- Siapa yang input/guna/hapus maklumat dari
sistem? - Siapa yang sokong/menyelenggara sistem?
- Adakah sistem menggunakan sumber luaran?
- Adakah seorang memainkan pelbagai peranan?
12ACTORS
-
- Adakah ramai orang memainkan hanya satu peranan?
- Adakah sistem berinteraksi dengan sistem legasi?
13ACTORS
-
- Dalam UML, ACTOR diwakili dengan
- Manusia lidi
Notasi UML bagi Actor
14ACTORS
Contoh ACTOR Sistem Pendaftaran
Kursus Pelajar Professor Pendaftar Sistem
Kewangan
Contoh ACTOR Sistem Perpustakaan Pelajar Pusta
kawan
15USE CASES
-
- Memodelkan dialog antara ACTOR dan sistem
- Mewakili fungsi yang disediakan oleh sistem
- Apakah perkhidmatan yg. ditawarkan kepada actor
oleh sistem? - Koleksi USE CASES menunjukkan cara-cara sistem
itu boleh digunakan - Definasi USE CASE
- Merupakan satu siri transaksi yang dilaksanakan
oleh sistem di mana nilai ACTOR boleh diukur di
akhir transaksi
16USE CASES
- Persoalan di bawah boleh digunakan utk.
mengenalpasti USE CASES bagi sesebuah sistem - Apakah aktiviti yg. dijalankan oleh ACTOR
- Adakah ACTOR akan cipta, stor, tukar, hapus atau
capai maklumat dalam sistem? - USE CASE apa yang akan cipta, stor, tukar, hapus
atau capai maklumat dalam sistem? - Perlukah ACTOR memberitahu sistem jika ada
perubahan luaran? - Perlukah ACTOR diberitahu jika berlaku perubahan
dalam sistem?
17USE CASES
-
- USE CASE apa yang menyokong dan menyelenggara
sistem? - Bolehkah semua keperluan fungsian dilaksanakan
oleh USE CASES? - Dalam UML, USE CASE diwakili oleh bentuk oval
Notasi UML bagi USE CASE
18USE CASES
Contoh USE CASE
Sistem Pendaftaran Kursus Mendaftar
kursus Memilih kursus Meminta jadual
kursus Menyelenggara maklumat kursus Menyelenggara
maklumat pelajar Mencipta katalog kursus
19USE CASES
HUBUNGAN USE CASE (Association Relationship)
- HUBUNGAN ini mungkin wujud di antara ACTOR dan
USE CASE - Ia juga dikenali sebagai HUBUNGAN KOMUNIKASI
kerana ia mewakili komunikasi antara ACTOR dan
USE CASE. - Ia mungkin 2 hala atau sehala iaitu
- ACTOR USE CASE or
- ACTOR USE CASE or
- USE CASE ACTOR
20USE CASES
- ARAH NAVIGASI HUBUNGAN ditentukan oleh siapa/apa
yang memulakan komunikasi - Cth ACTOR memulakan komunikasi dgn. USE CASE
- USE CASE memulakan komunikasi dgn. ACTOR
- Hubungan diwakili dengan GARIS yang
menghubungkan elemen yang berkaitan - NAVIGASI hanya dalam satu arah diwakili dengan
menambahkan kepala anak panah kepada garis
hubungan mengikut arah navigasi
21USE CASES
- Terdapat 2 jenis hubungan yang mungkin wujud
antara USE CASES - Uses
- Extends
- Hubungan ltltUsesgtgt
- Beberapa USE CASES mungkin berkongsi fungsi yang
sama. - Fungsi ini diletakkan dalam USE CASE yang
berasingan dan TIDAK didokumenkan dalam setiap
USE CASE yang memerlukannya
22USE CASES
- Dicipta antara USE CASE baru dan USE CASE yang
menggunakan fungsi yang sama - Cth Dalam Sistem Pendaftaran Kursus
- Setiap USE CASE dlm. sistem bermula dengan
pengesahan pengguna. - Fungsi ini akan diletakkan dalam use case
berasingan, katakan use case PENGESAHAN PENGGUNA - Di mana use case PENGESAHAN PENGGUNA boleh
digunakan oleh use case lain bila diperlukan.
23USE CASES
- Hubungan ltltUsesgtgt , diwakili dengan anak panah
(kepala kosong) dan hampir dengan USE CASE yang
digunakan
Meminta Jadual Kursus
ltltUsesgtgt
Pengesahan Pengguna
ltltUsesgtgt
Mendaftar Kursus
Pelajar
24- Hubungan ltltExtendsgtgt
- Digunakan untuk menunjukkan
- Kelakuan pilihan (optional behaviour)
- Kelakuan yang hanya berlaku di bawah syarat
tertentu seperti bunyi alarm - aliran yang berlainan yang hanya akan
dilaksanakan bergantung kepada pilhan ACTOR - Cth Bagi USE CASE yang memerhatikan aliran
bungkusan di gudang, di ltltExtendgtgt oleh use case
Bunyi Alarm JIKA aliran bungkusan-bungkusan
berhenti disebabkan JAM.
25USE CASES
- Hubungan ltltExtendsgtgt , diwakili dengan anak
panah (kepala kosong) dan hampir dengan USE CASE
asal
Buat temujaniji/ appointment
ltltExtendsgtgt
Buat penyediaan bayaran
Pesakit
26USE CASES
- Konsep stereotype
- Menyediakan kemudahan utk. meluaskan lagi
elemen-elemen asas pemodelan dengan mencipta
elemen baru - Konsep ini membolehkan UML menyediakan set
simbol yang minimum yang boleh diperluaskan
penggunaanya di mana perlu - Ini membolehkan ARTIFACT yang disediakan
dikomunikasikan dengan mudah mengikut makna yang
sesuai dengan perisian yang sedang dibangunkan
27USE CASES
- Nama stereotype ditulis di dalam ltlt nama
stereotype gtgt dan ditempatkan sepanjang garis
hubungan - Ia digunakan utk. menghasilkan hubungan use case
yang dikehendaki - Stereotype ltltCommunicatesgtgt digunakan utk.
menunjukkan hubungan komunikasi. Hanya hubungan
komunikasi boleh digunakan sebagai hubungan di
antara ACTOR dan USE CASE. Oleh itu, ia adalah
optional.
28USE CASES
- Menulis hubungan ini tidak wajib kerana jika
tidak tulis, secara automatik difahamkan bahawa
ia adalah ltltCommunicatesgtgt - Hanya hubungan Uses dan Extends sahaja perlu
menggunakan stereotype
29USE CASES
- Rajah USE CASE (USE CASE DIAGRAM)
- Ia adalah view grafik bagi sebahagian atau
semua ACTORS, USE CASES dan HUBUNGAN yang
dikenalpasti bagi sistem - Setiap sistem biasanya mempunyai
- Main Use Case Diagram
- Other Use Case Diagrams created as needed
30USE CASES
- Main Use Case Diagram
- Menunjukkan sempadan sistem (ACTORS) dan fungsi
major/utama yang disediakan oleh sistem (USE
CASES). - Other Use Case Diagrams created as needed
- Contoh
- Rajah yang menunjukkan semua USE CASES bagi
ACTOR terpilih Cth Pelajar - Rajah menunjukkan semua USE CASES yang
dimplementasikan secara berulang - Rajah menunjukkan satu USE CASE dan semua
hubungannya
31Contoh Model Use Case
Login
Register with Book Shop
32Contoh Rajah USE CASE 1
Sistem Appointment
Buat appointment
Pesakit
Hasilkan Maklumat Jadual
Pengurusan
Rekod kehadiran
Doktor
33Contoh Rajah USE CASE 2 Sistem Pembelian Buku
Gelintar katalog buku
Cari buku ikut tajuk/pengarang
Pelanggan
Tempah buku yang tiada
34Contoh-contoh lain boleh dirujuk daripada buku
UML TAMAT