Uploaded by hasmadspg

CBOP3103 indo compressed (1)

advertisement
Machine Translated by Google
Fakultas Sains dan Teknologi
CBOP3103
Pendekatan Berorientasi Objek
dalam Pengembangan Perangkat Lunak
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
CBOP3103
BERORIENTASI PADA OBJEK
PENDEKATAN DALAM
PERANGKAT LUNAK
PERKEMBANGAN
Karin Kolbe
Dr Geoffrey Phipps
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Direktur Proyek:
Pengembang:
Prof Dato' Dr Mansor Fadzil
Assoc Prof Dr Norlia T. Goolamally
Universitas Terbuka Malaysia
Karin Kolbe
Dr Geoffrey Phipps
Spirus Pty Ltd
Koordinator:
Dr SL Chung
OUHK
Produksi:
Tim Penerbitan ETPU
Diadaptasi untuk
Universitas Terbuka Malaysia oleh: Assoc Prof Dr Nantha Kumar Subramaniam
Universitas Terbuka Malaysia
Diperiksa oleh:
R Moganadas Ramalingam
Diedit oleh:
Aezi Hani Abd Rasyid
Dikembangkan oleh:
Pusat Desain dan Teknologi Instruksional
Universitas Terbuka Malaysia
Dicetak oleh:
Meteor Dok. Sdn. Bhd.
Lot 47-48, Jalan SR 1/9, Seksyen 9,
Jalan Serdang Raya, Taman Serdang Raya,
43300 Seri Kembangan, Selangor Darul Ehsan
Edisi Pertama, Mei 2008
Edisi Kedua, Desember 2015 (rs)
Hak Cipta © Universitas Terbuka Hong Kong dan Universitas Terbuka Malaysia, Desember 2015,
CBOP3103 Hak
cipta dilindungi undang-undang. Tidak ada bagian dari karya ini yang boleh direproduksi dalam bentuk apa
pun atau dengan cara apa pun tanpa izin tertulis dari Presiden, Universitas Terbuka Malaysia (OUM).
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Daftar isi
ixxiv
Panduan Kursus
Topik 1 Pengantar Berorientasi Objek 1.1 Pendekatan
Pengembangan Sistem 1.1.1 Pendekatan Prediktif
1
3
1.1.2 Model dan Notasi dalam
3
Pendekatan Prediktif 1.1.3 SDLC Iteratif 1.2 Perancangan Sistem
Berorientasi Objek 1.2.1 Berpikir
4
dalam Objek 1.2.2 Membangun Sistem dari
Objek 1.2.3 Proses Terpadu 1.2.4
5
6
7
Notasi 1.2.5 Apakah Desain Sistem Berorientasi
Objek merupakan Pendekatan
11
Adaptif?
14
1.2.6 Analisis dan Desain
19
11
18
1.3 Pentingnya Desain 1.4 Memulai:
Tahap Awal 1.4.1 Tahap Awal Ringkasan Artefak
Istilah-istilah Utama Referensi
20
21
23
24
28
28
Topik 2 Persyaratan dan Kasus Penggunaan 2.1
Analisis Persyaratan 2.1.1 Tingkatan
dan Jenis Persyaratan 2.1.2 Tantangan Penulisan
Persyaratan 2.2 Pemangku Kepentingan, Pelaku dan
Peran 2.2.1 Jenis Peran 2.2.2 Perbedaan
Peran 2.2.3 Menemukan
Peran 2.3 Penulisan Use Cases
2.3.1 Tujuan dan Tingkatan Use
Case 2.3.2 Format Penulisan
Use Case 2.3.3 Use Case Diagram 2.3.4 Activity
29
30
31
33
36
37
37
39
41
46
Diagram 2.3.5 Potensi Masalah pada Use Case
48
2.3.6 Cara Menangani Ratusan
48
Use Case
49
51
52
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
iv ÿ DAFTAR ISI
2.4 Menangkap Persyaratan Secara Iteratif Ringkasan
53
Istilah-istilah
54
55
Utama Referensi
55
Topik 3 Pemodelan Berorientasi Objek 3.1 Dari Awal
57
hingga Elaborasi 3.2 Use Case Review System
58
Sequence Diagram 3.3 Model Domain 3.4 Kelas Konseptual 3.4.1
Identifikasi Kelas Konseptual
61
62
3.4.2 Masalah dalam Identifikasi
69
Kelas Konseptual 3.4.3 Spesifikasi Kelas Konseptual
70
73
73
3.5 Asosiasi 3.5.1
74
Mengidentifikasi Asosiasi 3.5.2 Multiplisitas
75
3.5.3 Permasalahan
Asosiasi Lainnya
78
79
3.6 Atribut 3.7 Notasi
81
UML, Model dan Metode: Ringkasan Berbagai Perspektif Istilah-istilah
83
Utama Referensi
84
85
85
86
Topik 4 Kasus Penggunaan Lainnya
87
4.1 Kasus Penggunaan yang
Berhubungan 4.1.1 Hubungan Sertakan
89
4.1.2 Hubungan Perluasan 4.1.3 Hubungan
92
Generalisasi 4.2 Menemukan Semua Kasus
94
Penggunaan 4.2.1 Diagram Status
95
4.2.2 Menampilkan Status
96
Super 4.2.3 Buat + Baca + Perbarui +
99
Hapus = CRUD 4.3 Aturan Bisnis 4.4 Pemodelan Lebih Lanjut 4.4.1
Ringkasan Diagram
100
101
Kekokohan Istilah-istilah
103
Utama Referensi
104
113
114
114
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
DAFTAR ISI ÿ v
116
Topik 5 Pemodelan Dinamis 5.1 Model
Perancangan 5.1.1 Kelas versus
Objek 5.1.2 Objek dan Pesan 5.2
Diagram Interaksi 5.2.1 Notasi Diagram
Kolaborasi 5.2.2 Notasi Diagram
Urutan 5.2.3 Perancangan Tanggung Jawab 5.3
117
119
121
123
123
Perancangan Diagram Kelas 5.3.1 Visibilitas
126
5.3 .2 Spesifikasi Atribut Lengkap 5.3.3 Asosiasi
128
5.3.4 Komposisi („Kegunaan a‰
132
134
Hubungan)
134
135
136
5.3.5 Agregasi („Memiliki‰ Hubungan)
5.4 Warisan 5.4.1
Polimorfisme 5.4.2 Kelas
Beton dan Abstrak 5.5 Prinsip Desain 5.5.1 Kopling
5.5.2 Ringkasan Kohesi Istilahistilah Kunci Referensi
137
138
142
142
144
144
146
148
149
149
Studi kasus
150
Jawaban
151
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
vi ÿ DAFTAR ISI
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
PANDUAN KURSUS
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
PANDUAN KURSUS ÿ ix
DESKRIPSI PANDUAN KURSUS
Anda harus membaca ini
Panduan
denganKursus
cermat dari awal hingga akhir. Ini memberi tahu Anda secara
singkat tentang kursus tersebut dan bagaimana Anda dapat mempelajari materi kursus. Ini juga
menunjukkan jumlah waktu yang mungkin Anda habiskan untuk menyelesaikan kursus dengan
Kursus
sukses. Silakan terus mengacu pada
Memandu saat Anda mempelajari materi kursus karena ini akan membantu Anda memperjelas
komponen atau poin pelajaran penting yang mungkin Anda lewatkan atau abaikan.
PERKENALAN
CBOP3103 Pendekatan Berorientasi Objek dalam Pengembangan Perangkat Lunak merupakan
salah satu mata kuliah yang ditawarkan oleh Fakultas Sains dan Teknologi Open University
Malaysia (OUM). Kursus ini bernilai 3 jam kredit dan harus dibahas selama 8 hingga 15 minggu.
KEPADA SIAPA KURSUS INI DITARGETKAN?
Mata kuliah ini ditujukan untuk seluruh mahasiswa IT khususnya yang mengambil spesialisasi
Sistem Komputer atau Sistem Informasi yang perlu memahami bagaimana perangkat lunak
dikembangkan dengan menggunakan pendekatan berorientasi objek. Siswa yang terdaftar di
spesialisasi terkait TI lainnya juga akan merasakan manfaat kursus ini karena kursus ini akan
menjawab banyak pertanyaan mereka mengenai pengembangan sistem berorientasi objek.
JADWAL BELAJAR
Ini adalah praktik standar OUM bahwa pelajar mengumpulkan 40 jam belajar untuk setiap jam
kredit. Dengan demikian, untuk kursus tiga jam kredit, Anda diharapkan menghabiskan 120 jam
belajar. Tabel 1 memberikan perkiraan bagaimana 120 jam belajar dapat diakumulasikan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
x ÿ PANDUAN KURSUS
Tabel 1 Estimasi Akumulasi Waktu Jam Belajar
Kegiatan Belajar
Belajar
Jam
Pelajari secara singkat isi kursus dan berpartisipasi dalam diskusi awal
3
Pelajari modulnya
60
Hadiri 3 hingga 5 sesi tutorial
10
Partisipasi daring
12
Revisi
15
Tugas, Tes, dan Ujian
20
TOTAL JAM BELAJAR
120
HASIL KURSUS
Pada akhir kursus ini, Anda seharusnya mampu:
1. Menjelaskan prinsip dasar orientasi objek;
2. Menjelaskan bagaimana mengembangkan sistem berorientasi objek secara berulang;
3. Menerapkan analisis berorientasi objek, keterampilan desain, dan notasi pada suatu pernyataan
masalah;
4. Membahas penggunaan metodologi dan notasi berorientasi objek selama pengembangan sistem;
5. Menggunakan keterampilan dan teknik yang sesuai untuk menetapkan ruang lingkup dan
persyaratan dokumen;
6. Mengembangkan aktor dan model use case;
7. Buat model domain dengan kelas;
8. Menggambar diagram keadaan dan ketahanan untuk memvalidasi model domain;
9. Menggambar diagram dinamis untuk mengatasi aspek perilaku suatu sistem;
Dan
10. Memahami prinsip desain berorientasi objek yang baik.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
PANDUAN KURSUS ÿ xi
SINOPSIS KURSUS
Kursus ini dibagi menjadi 5 topik. Sinopsis masing-masing topik disajikan di bawah ini:
Topik 1 memperkenalkan dasar-dasar orientasi objek, menempatkannya dalam konteks perkembangan
komputasi selama 40 tahun terakhir.
Topik 2 mengkaji siapa yang akan menjadi pengguna sistem. Kami akan mempelajari pendekatan untuk
memastikan dan menangkap persyaratan sistem.
Topik 3 adalah yang pertama dari empat unit yang dikhususkan untuk berbagai aspek pemodelan objek.
Secara khusus, Topik
adalah3 tentang menentukan objek yang tepat untuk suatu sistem.
Topik 4 melihat lebih dekat persyaratan sistem dan menambahkan informasi ini ke model kami.
Topik 5 adalah tentang mendesain pesan yang dikirim antar objek. Selain itu, Anda juga akan
mempelajari secara detail tentang pewarisan dan konsep terkait lainnya. Prinsip-prinsip desain
berorientasi objek yang baik akan menjadi bagian terakhir dari topik ini.
Akan ada sejumlah bacaan „pendek‰ tambahan untuk topik-topik tertentu seperti yang ditunjukkan
pada tabel di bawah ini. Bacaan ini disediakan sebagai bagian dari paket kursus Anda di myVLE.
Tema
Membaca
Topik 1
Topik 2
• Membaca 2.1 Membaca 2.3 (dapat diunduh dari myVLE) • Satu
bacaan dari bab e-book (perpustakaan digital 24ÿ7)
-
Topik 3
Topik 4
• Satu bacaan dari bab e-book (perpustakaan digital 24ÿ7)
Topik 5
• Dua bacaan dari bab e-book (perpustakaan digital 24ÿ7)
Ada juga satu studi kasus yang disediakan di akhir modul
Siswa wajib membaca bacaan ini karena akan memberi mereka pemahaman yang kuat tentang konsepkonsep tertentu yang berkaitan dengan kursus. Bacaan ini adalah bagian dari silabus. Oleh karena itu,
dapat digunakan untuk ujian dan ujian akhir.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
xii ÿ PANDUAN KURSUS
PANDUAN PENYUSUNAN TEKS
Sebelum Anda mempelajari modul ini, penting bagi Anda untuk memperhatikan susunan
teksnya. Memahami susunan teks akan membantu Anda mengatur pembelajaran mata kuliah
ini secara lebih obyektif dan efektif. Secara umum susunan teks tiap topik adalah sebagai
berikut:
Hasil Pembelajaran: Bagian ini mengacu pada apa yang harus Anda capai setelah Anda
sepenuhnya membahas suatu topik. Saat Anda mempelajari setiap topik, Anda harus sering
mengacu pada hasil pembelajaran ini. Dengan melakukan ini, Anda dapat terus mengukur
pemahaman Anda tentang topik tersebut.
Self-Check: Komponen modul ini disisipkan pada lokasi-lokasi strategis di seluruh modul. Ini
dapat disisipkan setelah satu sub-bagian atau beberapa sub-bagian. Biasanya muncul dalam
bentuk pertanyaan. Ketika Anda menemukan komponen ini, cobalah merenungkan apa yang
telah Anda pelajari sejauh ini. Dengan mencoba menjawab pertanyaan tersebut, Anda
seharusnya dapat mengukur seberapa baik Anda memahami sub-bagiannya. Seringkali,
jawaban atas pertanyaan dapat ditemukan langsung dari modul itu sendiri.
Aktivitas: Seperti Pemeriksaan Mandiri, komponen Aktivitas juga ditempatkan di berbagai
lokasi atau titik di seluruh modul. Komponen ini mungkin mengharuskan Anda menyelesaikan
pertanyaan, mengeksplorasi studi kasus singkat, atau melakukan observasi atau penelitian.
Bahkan mungkin Anda perlu mengevaluasi skenario tertentu. Ketika Anda menemukan suatu
Kegiatan, Anda harus mencoba merefleksikan apa yang telah Anda kumpulkan dari modul
dan menerapkannya pada situasi nyata. Pada saat yang sama, Anda harus melibatkan diri
dalam pemikiran tingkat tinggi yang mengharuskan Anda menganalisis, mensintesis, dan
mengevaluasi, bukan hanya mengingat dan mendefinisikan.
Ringkasan: Anda akan menemukan komponen ini di akhir setiap topik. Komponen ini
membantu Anda merangkum keseluruhan topik. Dengan membaca ringkasannya, Anda
seharusnya dapat mengukur tingkat retensi pengetahuan Anda. Jika Anda menemukan poinpoin dalam ringkasan yang tidak Anda pahami sepenuhnya, ada baiknya Anda meninjau
kembali rincian dalam modul.
Istilah Kunci: Komponen ini dapat ditemukan di akhir setiap topik. Anda harus mempelajari
komponen ini untuk mengingatkan diri Anda tentang istilah atau jargon penting yang digunakan
di seluruh modul. Jika Anda menemukan istilah-istilah di sini yang tidak dapat Anda jelaskan,
Anda harus mencari istilah-istilah tersebut di modul.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
PANDUAN KURSUS ÿ xiii
Referensi: Bagian Referensi adalah tempat daftar buku teks, jurnal, artikel, konten atau sumber
elektronik yang relevan dan berguna dapat ditemukan. Daftar ini dapat muncul di beberapa lokasi
Kursus
seperti di (di bagian Referensi), di akhir setiap topik, atau Panduan
di belakang
modul. Anda dianjurkan
untuk membaca atau merujuk pada sumber yang disarankan untuk memperoleh informasi
tambahan yang diperlukan dan untuk meningkatkan pemahaman Anda secara keseluruhan
tentang kursus tersebut.
METODE PENILAIAN
Silakan merujuk ke myVLE.
PENGGUNAAN STUDI KASUS
Kursus ini menggunakan dua studi kasus yang akan Anda temukan di akhir Topik 1:
• Sistem POS NextGen
• Video Victoria
Studi kasus adalah bentuk pembelajaran dan penilaian yang berguna dan semakin populer di
Fakultas Teknologi Informasi dan Komunikasi Multimedia OUM.
KESIMPULAN
Desain itu sulit. Desain yang baik bahkan lebih sulit dan membutuhkan latihan serta waktu. Berbeda
dengan akuntansi, seringkali terdapat lebih dari satu jawaban yang benar. Jika Anda mengajukan
pertanyaan kepada tutor Anda, mereka mungkin sering menjawab dengan „tergantung‰. Hal ini bisa
sangat membuat frustrasi pada awalnya, namun dengan praktik berulang-ulang dalam studi kasus,
tes mandiri, dan tutorial, Anda akan mendapatkan kepercayaan diri, dan, kami berharap, menikmati
kursus ini. Semoga beruntung!
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
xiv ÿ PANDUAN KURSUS
CATATAN TENTANG PENGEMBANG DAN
PENINJAUAN MODUL INI
Karin Kolbe (BSc, MSc) memiliki pengalaman luas dalam konsultasi dan pelatihan
berorientasi objek. Dia telah menulis dan menyelenggarakan kursus tentang analisis dan
desain berorientasi objek, menulis kasus penggunaan dan kegunaan. Dalam berbagai
aplikasi, termasuk manajemen portofolio, pengendalian lalu lintas jalan raya, kepolisian
dan e-commerce, ia telah bekerja sebagai manajer proyek, analis bisnis, ahli metodologi,
dan manajer program.
Geoffrey Phipps (BSc, PhD) adalah konsultan berpengalaman dan arsitek perangkat
lunak, ahli dalam Java, J2EE, komputasi terdistribusi dan akuntansi investasi pada
Windows NT dan Unix. Tujuannya adalah untuk terus meningkatkan proses perangkat
lunak menggunakan teknologi berorientasi objek dan metrik perangkat lunak.
Nantha Kumar Subramaniam (PhD (CompSc)) telah mereview, memoderasi dan memberi
nilai tambah pada modul ini agar sesuai dengan kebutuhan mahasiswa Open University
Malaysia (OUM). Beliau memiliki pengalaman mengajar dan penelitian yang luas di bidang
analisis dan desain berorientasi objek serta pemrograman berorientasi objek. Dia ikut
menulis modul di bidang ini untuk siswa OUM.
TAN SRI DR ABDULLAH SANUSI (TSDAS) DIGITAL
PERPUSTAKAAN
Perpustakaan Digital TSDAS memiliki beragam sumber daya cetak dan online untuk
digunakan oleh pelajar. Perpustakaan digital lengkap yang dapat diakses melalui portal
OUM ini menyediakan akses ke lebih dari 30 database online yang terdiri dari e-journal, etesis, e-book, dan lainnya. Contoh database yang tersedia adalah EBSCOhost, ProQuest,
SpringerLink, Books24ÿ7, InfoSci Books, Emerald Management Plus dan Ebrary Electronic
Books. Sebagai pembelajar OUM, Anda didorong untuk memanfaatkan sepenuhnya
sumber daya yang tersedia melalui perpustakaan ini.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Tema
ÿ Pengantar
Berorientasi Objek 1
Perangkat lunak
Perkembangan
HASIL BELAJAR
Pada akhir topik ini, Anda seharusnya mampu:
1. Mendeskripsikan prinsip dasar sistem berorientasi objek;
2. Definisikan istilah air terjun dan iteratif sebagaimana diterapkan pada sistem
perkembangan;
3.
Membedakan metodologi dan notasi;
4. Definisikan UML dan jelaskan cara penggunaannya;
5. Definisikan Unified Process (UP) dan jelaskan cara penggunaannya; Dan
6. Jelaskan keterkaitan fase, disiplin ilmu dan artefak di UP.
ÿ PENDAHULUAN
Selamat datang di Topik 1 kursus Pendekatan Berorientasi Objek CBOP3103 dalam
Pengembangan Perangkat Lunak. Topik ini merupakan pengantar keseluruhan kursus. Kita
akan mulai dengan konsep yang paling penting: apakah benda itu? Sangat penting bagi Anda
untuk memahami konsep suatu benda. Nanti kita akan melihat bagaimana suatu objek
berhubungan dengan suatu kelas.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
2 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Pada tingkat dasar, objek adalah sekumpulan data beserta beberapa operasi yang dapat
dilakukan pada data tersebut. Contoh objeknya adalah rekening bank. Data tersebut terdiri
dari nomor rekening, nama rekening dan cabang tempat rekening tersebut berada. Operasi
yang dapat dilakukan pada rekening bank antara lain pembukaan rekening, penarikan uang,
penyetoran uang dan pemberian saldo rekening.
Gambar 1.1: Objek rekening bank
Sistem berorientasi objek dapat dipandang sebagai kumpulan objek yang mengirim dan
menerima pesan dari dan ke satu sama lain. Analoginya adalah orang-orang di sebuah kota.
Setiap orang merupakan objek yang mengirim dan menerima pesan ke dan dari orang lain.
Beberapa pesan merupakan permintaan informasi („Berapa nomor telepon Anda?‰),
beberapa pesan memberikan informasi („6685 1234‰) dan pesan lainnya merupakan
permintaan untuk melakukan suatu tugas („Silakan fotokopi halaman ini‰). Seseorang tidak
dapat mengubah data orang lain. Segala perubahan terhadap data dilakukan oleh individu
yang bersangkutan, baik sebagai respons terhadap pesan dari orang lain, maupun karena
keputusan pribadi. Saya tidak bisa mengubah nama Anda, tetapi Anda bisa. Oleh karena
itu, kita masing-masing memiliki data sendiri yang dapat dibagikan atau dirahasiakan. Dalam
kursus ini kami menggunakan studi kasus „Video Victoria‰ yang dapat Anda temukan
dalam topik ini. Silakan lihat studi kasus ini karena kami akan menggunakannya di seluruh modul.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1
MEMPERKENALKAN
S. BERORIENTASI CT
PERANGKAT LUNAK PERANGKAT
PERKEMBANGAN
PERSYARATAN TERHADAP KEBERATAN
1.1
PERSETUJUAN
Pemburu (
OACHE
(2000) mempertimbangkanada
KE SISTEM
TEMS DE
beberapa diskelebihan o
(seperti
itu airnya
adaptif
pendekatan ini. AContoh dari
semua model) ke sistem des
f aplikasi adaptif
ÿ3
PERKEMBANGAN
MENDAPATKAN
dari hal sebelumnya
aplikasi prediktif pendekatan
menyarankan masuk
gunakan
menandatangani dan mencatat
berorientasi pada hal lain d
proach adalah obje
desain.
Prediksi
ek
saya menyetujui
1.1.1
Satu contohcukup dari
Mengembangkanment
e jenis p
aplikasi rediktif
Kehidupan Cy
siklus (SDLC) t
itu perkenalan
pendekatan adalah dia
th
air terjun
Sistem
dihasilkan menjadi lunak
mesin perangkat lunak
muncul pada
tahun 1970an
S.
Sebuah SDLC
C adalah manajeralat permata fo
kegiatan
atau merencanakan, melaksanakan suatudan mengendalikan
g berbagai
s terlibat dalam pengembangan sistem
t proses. Mo
bijih secara spesifikly, ini adalah
menjadi
serangkaian rekan
esses oleh Brea mengajak mereka d
. Ini menguraikan langkah
s
kegiatan
untuk
SDLC, peran
setiap fase o
demi langkah a
alat untuk proses
yang kompleks
pengelola
dan aktivitas
fase a
yang dipertaruhkan
masing-masing
aktivitas
n setiap aktivitasitas dan d
kiriman e
karakteristik
dari
e
air
terjun
SD
DLC itu e
dia karakter kunci
orang yang lebih tua bermain
diharapkan dari
setiap
ch. Th
dibiarkan sebelummelanjutkan
m
selanjutnya. Itue kelemahan
ch adalah
langkah selesai
untuk pendekatan ini
ke
kami tidak bisaatau memastikan kami
jika sedang
w
membangun
ng yang benar s sistem sampai th dia mengakhiri proses.
Juga, itu
hampir yakin bahwa
akan cha
persyaratan
t selama pengembangan yang panjang operasi
kemarahan.
Gambar 1.2 : Air terjun
Aku mendekati
Hak Cipta © Universitas Terbuka Malaysia (OUM)
cess, proses
Machine Translated by Google
4 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Pada tahun 1980-an, berbagai pendekatan yang disebut pengembangan cepat, pembuatan
prototipe, atau pengembangan spiral mencoba mengubah pendekatan ini. Semua teknik ini
mempunyai kelebihan, namun juga mempunyai kelemahan sehingga sistem, terutama sistem
besar di organisasi besar (seperti sistem aplikasi perbankan) terus dibangun dengan
pendekatan air terjun.
1.1.2 Model dan Notasi dalam Pendekatan Prediktif
Model adalah analogi yang disederhanakan dari entitas nyata (sistem dalam mata kuliah ini).
Ini bisa berupa dokumen, diagram, atau bahkan model kayu yang memungkinkan kita melihat
detail atau aspek tertentu dari entitas nyata, sambil mengabaikan yang lain. Misalnya, model
kertas sebuah bangunan baru akan menunjukkan ukuran bangunan tersebut dibandingkan
dengan bangunan lainnya. Jika cahaya diberikan, kita bahkan dapat melihat bayangan yang
dihasilkan matahari. Namun, kita tidak akan memiliki banyak gambaran tentang tekstur
bangunan kaca, batu bata, baja, dll.
Pada tahun 1980an, pemodelan aplikasi sebelum mencoba membangunnya menjadi praktik
umum.
Modelnya biasanya dalam salah satu bentuk berikut:
(a) Diagram Hubungan Entitas (ER);
(b) Diagram Aliran Data (DFD); Dan
(c) Diagram alur.
Jangan khawatir jika Anda tidak yakin apa itu, karena saat ini Anda tidak perlu menghadapinya,
terutama dalam proyek pengembangan sistem atau perangkat lunak yang besar. Hal penting
yang perlu diperhatikan adalah model ini memisahkan data dan proses atau fungsi yang
dilakukan pada data selama seluruh proses analisis dan desain. Sistem yang dihasilkan
umumnya sulit dipertahankan seiring berjalannya waktu. Salah satu alasan mengapa
pemeliharaan sulit dilakukan adalah karena semua data dan pemrosesan yang berkaitan
dengan satu entitas dapat tersebar ke seluruh sistem, sehingga perubahan memerlukan
banyak pekerjaan. Misalnya, kita ingin mengubah kolom ID karyawan dari enam menjadi
delapan digit. Ini berarti melihat setiap layar atau laporan untuk melihat dampaknya.
Permasalahan Tahun 2000 adalah contoh lain dimana perhitungan berdasarkan tanggal
tersebar di seluruh sistem, masing-masing perlu diperiksa secara manual. Dari semua model
inilah program kemudian ditulis.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 5
Nanti di topik ini dan nanti di kursus ini Anda akan melihat bahwa pemodelan berorientasi objek menyatukan data
dan proses.
Menurut Fowler (2000), keterbatasan utama pendekatan prediktif adalah bahwa pendekatan ini gagal
memperhitungkan perubahan-perubahan yang tidak bisa dihindari dalam jangka waktu proses pembangunan.
Pengembangan berulang merupakan proses
adaptif yang penting karena perubahan fitur yang
diperlukan
di dalam
proses yang dapat diprediksi
sebagai
baik, tapi itu
yang dapat mereka tangani harus dilakukan
.
Seperti yang akan Anda lihat, salah satu karakteristik utama dari desain sistem berorientasi objek adalah ia
menggunakan SDLC berulang.
1.1.3 SDLC Iteratif
Dengan SDLC berulang, kami membangun sebagian kecil sistem dan kemudian „mencobanya‰. Tergantung pada
apa yang telah dibangun, kata 'cobalah' mungkin memiliki arti yang berbeda. Mungkin kita memiliki sistem yang
cukup bagi pengguna untuk melakukan sebagian kecil pekerjaan mereka, atau untuk mengerjakan kasus-kasus
sederhana. Mungkin kami memiliki beberapa perangkat lunak yang dapat dimainkan oleh pengguna menggunakan
data pengujian. Di awal proyek, mungkin hanya ada beberapa rancangan tata letak layar yang meniru tindakan
tertentu.
Dari hasil tes mungkin kami perlu melakukan perubahan. Setelah kami yakin bahwa semuanya berfungsi dengan
baik, kami kemudian menambahkan beberapa fungsi lagi dan mengulangi seluruh proses. Setiap iterasi dapat
meningkatkan atau menambah beberapa fungsi.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
6 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
1.2
PERANCANGAN SISTEM BERORIENTASI OBJEK
Kita akan memulai bagian ini dengan bacaan singkat yang menyajikan argumen untuk desain
sistem berorientasi objek. Sebagaimana pendekatan terhadap Teknologi Informasi (TI) yang
telah berubah dalam tiga puluh tahun terakhir, demikian pula peran TI dalam organisasi.
TI digunakan dalam suatu organisasi dengan salah satu dari dua cara. Pertama, TI mendukung
dapat menyederhanakan bisnis dengan menyederhanakan dan mempercepat berbagai
tugas. Misalnya, penerbit buku dapat menggunakan TI untuk sisi faktur dan akuntansi bisnisnya.
memungkinkan
Kedua, penggunaan TI yang lebih canggih pada layanan
atau produk baru.
Contohnya di sini adalah penerbit yang menerbitkan buku di Web dan mengenakan biaya per
penayangan. Semakin banyak aplikasi yang mendukung dibandingkan mendukung bisnis.
Dalam lingkungan bisnis yang bergejolak saat ini, kebutuhan pelanggan baru dan cara-cara
baru dalam menjalankan bisnis bermunculan setiap hari. Oleh karena itu, kebutuhan akan
sistem yang fleksibel yang dapat dibangun dan diubah dengan cepat sangatlah penting. Di
sinilah teknologi berorientasi objek sangat penting.
Namun, tentu saja kita perlu menyadari bahwa tidak ada teknologi yang merupakan obat
mujarab untuk semua masalah pembangunan.
AKTIVITAS 1.1
Ambil contoh organisasi tempat Anda bekerja. Apa perannya
TI dalam organisasi? Aplikasi TI apa yang dapat dikategorikan
"mendukung‰? Aplikasi TI apa yang dapat dikategorikan sebagai „memungkinkan
bisnis‰? Bicaralah dengan personel TI di organisasi Anda untuk mencari tahu
tentang perbedaan penggunaan TI dalam dua kategori ini. Posting ringkasan
temuan Anda di papan diskusi myVLE. Bandingkan temuan Anda
dengan teman kursusmu.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 7
1.2.1 Berpikir pada Objek
Seperti yang kami nyatakan di bagian pendahuluan, belajar „berpikir dalam objek‰ adalah hal yang
sulit. Jadi kami ingin Anda mulai memikirkan tentang objek sekarang, meskipun objek tersebut belum
dibahas
Topik 3 .
Ada beberapa istilah penting dalam orientasi objek yang dijelaskan di bagian ini:
(a) Kelas dan objek;
(b) Enkapsulasi data dan metode;
(c) Dukungan terhadap polimorfisme;
(d) Warisan dalam hierarki kelas; Dan
(e) Antarmuka objek.
Kelas adalah cetak biru yang mendefinisikan variabel (atau atribut) dan metode yang umum
untuk semua objek jenis tertentu. Di dunia nyata, kita sering kali mempunyai banyak benda
yang sejenis. Misalnya, mobil Anda hanyalah salah satu dari banyak mobil di dunia. Dalam
konteks berorientasi objek, kami mengatakan bahwa objek mobil Anda adalah turunan dari
kelas objek yang dikenal sebagai mobil. Mobil memiliki beberapa keadaan (gigi saat ini,
kecepatan saat ini, empat roda) dan perilaku (mengganti gigi, mengubah kecepatan) yang sama.
Namun, setiap kondisi mobil tidak bergantung pada dan dapat berbeda dari kondisi mobil
lainnya.
Saat membangunnya, pabrikan memanfaatkan fakta bahwa mobil memiliki karakteristik yang
sama dan mereka dapat memproduksi banyak mobil dari cetak biru yang sama. Akan sangat
tidak efisien untuk menghasilkan cetak biru baru untuk setiap mobil yang diproduksi.
Dalam perangkat lunak berorientasi objek, dimungkinkan juga untuk memiliki banyak objek
sejenis yang memiliki karakteristik yang sama: catatan karyawan, klip video, catatan siswa,
dan sebagainya. Seperti halnya produsen mobil, Anda dapat memanfaatkan fakta bahwa
benda-benda sejenis itu serupa dan Anda dapat membuat cetak biru untuk benda-benda tersebut.
Seperti dibahas di atas, objek adalah turunan dari suatu kelas. Objek merupakan hal terpenting
dalam paradigma berorientasi objek. Objek dalam perangkat lunak berorientasi objek
berkolaborasi dan bekerja sama dengan mengirimkan pesan untuk mengimplementasikan
perilaku perangkat lunak. Untuk lebih spesifiknya, kita dapat mendefinisikan objek sebagai
sesuatu yang memiliki keadaan, perilaku, dan identitas. Tabel 1.1 memberikan penjelasan dan
contoh ciri-ciri benda tersebut.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
8 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Tabel 1.1: Karakteristik Objek
Karakteristik Objek
Penjelasan
Negara
Setiap objek memiliki properti yang secara kolektif mewakili keadaan.
Suatu negara dapat memiliki nilai dinamis atau nilai permanen.
Contoh keadaan yang bersifat dinamis adalah jumlah uang dalam mesin,
jumlah kaleng minuman yang belum terjual, umur, dan lain-lain.
Contoh status permanen yang tidak berubah adalah nama, tanggal lahir,
dll. Dalam pemrograman, status diwakili oleh atribut.
Perilaku
Perilaku objek merupakan respon objek ketika objek menerima pesan.
Mungkin ada dua jenis tindakan yang terjadi yaitu mengubah keadaan
objek yang menerima pesan atau keadaan objek yang mengirim pesan.
Contoh: Perhatikan objek mesin penjual otomatis. Salah satu pesan
yang mungkin diterimanya adalah: lepaskan kaleng minuman pilihan
pembeli. Pesan ini akan dikirim ke mesin penjual otomatis ketika pembeli
menekan tombol di mesin. Pesan yang diterima menyebabkan objek
menunjukkan suatu perilaku, yaitu minuman yang dipilih pembeli
dilepaskan. Selain menunjukkan perilaku, suatu objek juga dapat
mengirimkan pesan ke objek lain sebagai respons terhadap pesan yang
diterima.
Ada hubungan erat antara perilaku dan keadaan. Perilaku suatu objek
dipengaruhi oleh keadaan objek tersebut. Misalnya, asumsikan jumlah
kaleng dalam mesin adalah nol, yaitu semua kaleng dalam mesin
tersebut terjual habis. Jika mesin menerima pesan untuk mengeluarkan
minuman kaleng, maka objek tersebut tentu tidak dapat memenuhi
permintaan tersebut karena keadaannya yang jumlah kalengnya nol.
Dalam pemrograman, metode digunakan untuk mendefinisikan perilaku
yang dapat dilakukan suatu objek.
Identitas
Identitas adalah properti yang membedakan suatu objek dari semua
objek lainnya. Setiap objek mempunyai identitas uniknya masing-masing.
Misalnya, sekelompok objek siswa dapat diidentifikasi dengan identitas
uniknya seperti StudentA, StudentB, StudentC,
dll.
Silakan merujuk ke http://java.sun.com/docs/books/tutorial/java/concepts/ class.html yang
memiliki diagram bagus yang menjelaskan konsep kelas dan objek.
Dalam pemrograman berorientasi objek, istilah metode mengacu pada sepotong kode yang
secara eksklusif dikaitkan dengan suatu kelas (disebut metode kelas atau metode statis) atau
dengan suatu objek (disebut metode instan). Suatu metode biasanya terdiri dari serangkaian
pernyataan untuk melakukan suatu tindakan, sekumpulan parameter masukan untuk melakukan tindakan
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 9
membuat parameter tindakan tersebut dan mungkin semacam nilai keluaran (disebut nilai
kembalian). Tujuan dari metode adalah untuk menyediakan mekanisme untuk mengakses
(untuk membaca dan menulis) data pribadi yang disimpan dalam suatu objek atau kelas.
Pertimbangkan skenario berikut:
Anda memasuki sebuah restoran. Setelah melihat menu, Anda memesan sepiring nasi goreng
dari server. Kemudian, server akan langsung menuju dapur untuk menyampaikan pesanan
Anda kepada juru masak. Setelah sepuluh menit, server akan kembali kepada Anda dengan
makanan yang telah Anda pesan.
Dalam skenario di atas, Anda tidak perlu mempermasalahkan cara memasak nasi goreng.
Anda hanya ingin nasi gorengnya disajikan. Ini adalah contoh enkapsulasi.
Enkapsulasi adalah istilah yang diberikan untuk proses menyembunyikan semua detail suatu
objek yang tidak berkontribusi terhadap karakteristik esensialnya. Enkapsulasi menyembunyikan
detail implementasi objek dan satu-satunya hal yang tetap terlihat secara eksternal adalah
antarmuka objek (yaitu, kumpulan semua pesan yang dapat ditanggapi oleh objek). Setelah
suatu objek dienkapsulasi, detail implementasinya tidak lagi dapat diakses dengan segera.
Sebaliknya mereka dikemas dan hanya dapat diakses secara tidak langsung melalui
antarmuka objek. Satu-satunya cara untuk mengakses objek yang dienkapsulasi tersebut
adalah melalui penyampaian pesan: seseorang mengirimkan pesan ke objek tersebut, dan
objek itu sendiri memilih metode yang akan digunakan untuk bereaksi terhadap pesan
tersebut, yang ditentukan oleh metode. Semua objek dikaitkan dengan daftar pesan yang
dipahami oleh mereka. Daftar pesan ini secara kolektif menjadi antarmuka objek. Misalnya,
antarmuka untuk objek mesin ATM adalah semua pesan valid yang dapat dikirim oleh
pengguna seperti untuk menarik uang, memeriksa saldo, transfer dana, dll. Pesan tidak valid
yang dikirim oleh pengguna yang bukan merupakan bagian dari objek mesin ATM antarmuka
tidak akan diterima oleh objek.
Warisan adalah kemampuan suatu kelas untuk menggunakan properti dan metode kelas lain
sambil menambahkan fungsionalitasnya sendiri. Contoh dimana hal ini dapat berguna adalah
dengan sistem pencatatan karyawan. Anda dapat membuat kelas karyawan dengan umum
status dan tindakan yang umum bagi semua karyawan. Kemudian kelas dapat ditentukan
lagi
spesifik untuk karyawan yang digaji, ditugaskan, dan dibayar per jam. Kelas generik
kelas super
dikenal sebagai kelas induk (atau kelas dasar) dan kelas khusus disebut
sebagai kelas
subkelas
turunan (atau kelas turunan). Konsep pewarisan
sangat meningkatkan kemampuan kode
serta membuat proses desain menjadi lebih sederhana dan bersih.
penggunaan kembali
metode
Polimorfisme adalah kemampuan suatu tindakan atau untuk
melakukan hal yang berbeda
berdasarkan objek yang ditindaklanjuti. Pengikatan metode kelebihan beban, penggantian,
dan dinamis adalah jenis polimorfisme.
Kami akan meninjau kembali beberapa konsep yang diperkenalkan pada bagian ini di Topik 5.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
10 ÿ ATAS
GAMBAR 1 PENDAHULUAN
DUKSI
KE O
PERANGKAT LUNAK TED
E
ORIEN OBJEK
tidak
PERKEMBANGAN
AKTIVVITA 1.2
Tambahkan
ikat pinggang ke dia
e mengikuti laboratorium
agram atau kalimat bel
kelasS
data
instansejak itu
kali
pesan m
rendah:
pesan
_____ satu sama lain.
komunitas objek
bersatu oleh senmenemukan _______
(a) Ob
(b) Dan
adalah perangkat lunak
t
dan
____________
_
adalah templat t yang mendefinisikan metode
variabel dalam kumpulan objek tertentu
S.
sebuah
(Bisa
kata lain f
S ____________
_.
untuk 'objek' adalah
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 11
1.2.2 Membangun Sistem dari Objek
Dari bacaan di bagian sebelumnya Anda seharusnya mempunyai gambaran tentang bagaimana objek
dapat digunakan untuk mengimplementasikan objek dunia nyata seperti rekening bank dan kendaraan.
Namun, Anda mungkin masih bingung bagaimana aplikasi komersial yang kompleks dibangun
seluruhnya menggunakan objek.
Pada topik selanjutnya Anda akan melihat contoh objek lainnya, seperti transaksi, proses, dan
kalkulator. Dalam sistem berorientasi objek, setiap bagian atau blok penyusun adalah sebuah objek.
Selain itu, setiap objek harus memenuhi satu tujuan atau peran. Selama dekade terakhir, pakar
teknologi objek telah mempelajari bahwa sistem yang menerapkan aturan ini lebih mudah beradaptasi
terhadap perubahan dan memiliki lebih sedikit cacat.
Sekarang kita siap untuk melihat bagaimana teknologi berorientasi objek diterapkan dalam proyek
pengembangan aplikasi. Anda telah menemukan SDLC berulang. Sekarang kita akan melihat
metodologi dan notasi yang digunakan untuk mengembangkan sistem berorientasi objek. Jika Anda
perlu mengingat kembali apa yang dimaksud dengan istilah-istilah ini, tinjau bagian sebelumnya.
(Peringatan: tidak semua hal di bagian ini benar-benar berorientasi objek dan tidak setiap proyek yang
memanfaatkan beberapa aspek orientasi objek menggunakan semua pendekatan ini. Apa yang kita
diskusikan di sini adalah praktik terbaik saat ini dalam rekayasa perangkat lunak berorientasi objek.)
1.2.3 Proses Terpadu
Beberapa buku teks menggambarkan Unified Process (UP) sebagai metodologi berorientasi objek. Ini
kurang akurat, karena dapat digunakan untuk pendekatan lain dalam perancangan sistem, namun ini
adalah metodologi yang kami gunakan, jadi dalam konteks kami ini berorientasi objek. Ini memandu
hasil utama (dokumen, model, dll.), komposisi dan keterampilan tim serta tanggung jawab mereka,
serta durasi dan waktu tahapan proyek. Proses tersebut merupakan standar industri yang dipublikasikan
untuk proses pengembangan perangkat lunak khususnya untuk sistem berorientasi objek. Varian UP
yang dikenal dengan Rational Unified Process (RUP) yang merupakan penyempurnaan rinci dari UP
telah diadopsi secara luas. Kursus ini akan fokus pada UP normal. UP adalah pengembangan berulang
yang diselenggarakan dalam fase dan disiplin dua dimensi (awalnya dikenal sebagai alur kerja). Setiap
disiplin ilmu mempunyai artefaknya masing-masing.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
12 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
(a) UP mempunyai empat tahap permulaan, penjabaran, pembinaan dan peralihan.
Tujuan dari semua tahapan ini dijelaskan dalam tabel berikut:
Tabel 1.2: Tahapan UP
Fase
Lahirnya
Tujuan
Tujuan utama tahap awal adalah untuk menetapkan alasan kelayakan
sistem yang diusulkan.
Elaborasi Fase Elaborasi merupakan fase dimana proyek mulai terbentuk.
Pada fase ini analisis domain masalah dibuat dan arsitektur proyek
mendapatkan bentuk dasarnya.
Konstruksi Dalam konstruksi, fokus utama diberikan pada pengembangan komponen
dan fitur lain dari sistem yang sedang dirancang. Ini adalah fase di
mana sebagian besar pengkodean dilakukan.
Transisi
Pada fase transisi produk telah berpindah dari organisasi
pengembangan ke pengguna akhir. Kegiatan fase ini mencakup
pelatihan bagi pengguna akhir dan pengelola serta pengujian beta
sistem untuk memvalidasinya terhadap harapan pengguna akhir.
Penting bagi Anda untuk memperhatikan bahwa semua fase di atas dibagi menjadi
beberapa iterasi.
(b) UP memiliki disiplin ilmu yang mewakili area fokus proyek, pemodelan bisnis,
persyaratan, analisis dan desain, implementasi, pengujian, penerapan, manajemen
proyek, konfigurasi dan manajemen perubahan serta lingkungan. Setiap disiplin ilmu
mempunyai artefaknya masing-masing.
Gambar 1.5 mengilustrasikan perubahan upaya relatif disiplin ilmu sehubungan
dengan fase-fase di UP seperti yang disarankan oleh Larman (2002). Seperti yang
ditunjukkan pada diagram, satu iterasi pekerjaan fase dilakukan di sebagian besar
atau semua disiplin ilmu, namun upaya relatif di seluruh disiplin ilmu ini berubah seiring waktu.
Iterasi awal dalam suatu fase cenderung berfokus pada persyaratan dan desain, dan
yang berikutnya kurang fokus, karena persyaratan dan desain menjadi stabil melalui
proses umpan balik dan adaptasi (Larman (2002).
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 13
Gambar 1.5: Perubahan upaya relatif UP Sumber:
Larman (2002), hal. 22
Anda telah diperingatkan di awal bagian ini bahwa setiap disiplin ilmu memiliki
artefaknya sendiri. Di UP, artefak adalah kata kunci yang digunakan untuk
produk kerja apa pun seperti kode, dokumen teks, diagram, dll. Artefak yang
dipilih untuk proyek pengembangan sistem dapat ditulis dalam dokumen singkat
yang disebut Kasus Pengembangan. Kasus Pembangunan sendiri merupakan
artefak dari disiplin ilmu Lingkungan Hidup. Diagram berikut menunjukkan
Kasus Pengembangan yang menjelaskan artefak untuk studi kasus „NextGen
POS‰ yang akan diperkenalkan di akhir topik ini.
Tabel 1.3: Kasus Perkembangan
Artefak
Disiplin
masuk.
I1
Konstan.
Trans.
C1..Cn
T1..T2
S
Model Domain Pemodelan Bisnis
Persyaratan
Elab.
E1..En
Model Kasus Penggunaan
S
R
Penglihatan
S
R
S
R
S
S
Tambahan
Spesifikasi
Glosarium
Desain
Penerapan
Model Desain
S
Dokumen Arsitektur SW
S
Model data
S
R
Model Implementasi
S
R
R
R
R
R
S
R
Rencana Pengembangan SW Manajemen Proyek
Pengujian
Model Uji
Lingkungan
Kasus Pembangunan
S
S
R
mulai, perbaiki
Sumber: Larman (2002), hal. 24
Hak Cipta © Universitas Terbuka Malaysia (OUM)
R
Machine Translated by Google
14 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Dalam diagram Anda dapat melihat beberapa atrifakta umum yang digunakan untuk disiplin ilmu di
UP. Harap perhatikan bahwa proyek pengembangan perangkat lunak atau sistem yang berbeda
mungkin memerlukan artefak yang berbeda. Fokus kursus ini adalah pada disiplin ilmu pemodelan
bisnis, persyaratan dan desain. Jadi, cobalah mengingat artefak yang digunakan dalam disiplin ilmu
tersebut.
AKTIVITAS 1.3
1.
Sebutkan tiga keuntungan dari iteratif dibandingkan air terjun
mendekati.
2.
Sebutkan tiga tantangan yang terkait dengan pendekatan berulang.
Salah satu praktik UP yang paling penting adalah pengembangan berulang. Aspek lain yang sangat
penting dari UP adalah bahwa UP perlu disesuaikan atau dimodifikasi untuk setiap proyek. Sebagai
sebuah industri, kami kini menyadari bahwa tidak ada satu metode pun yang berhasil untuk setiap
proyek di setiap organisasi. Misalnya, perusahaan kecil yang membangun intranet memerlukan
pendekatan yang berbeda dibandingkan perusahaan besar yang mengerjakan kontrak pertahanan
bernilai jutaan dolar. Pendekatan yang disesuaikan ini merupakan kekuatan sekaligus kelemahan.
Hal ini merupakan kekuatan karena memberikan panduan, namun juga merupakan kelemahan
karena tim proyek masih perlu memutuskan bagaimana menggunakan metodologi tersebut.
UP banyak menggunakan Unified Modeling Language (UML). Inti dari UML adalah model, yang
dalam konteks proses pengembangan perangkat lunak merupakan penyederhanaan realitas yang
membantu tim proyek memahami aspek-aspek tertentu dari kompleksitas yang melekat pada
perangkat lunak. UML dirancang untuk membantu peserta dalam upaya pengembangan perangkat
lunak membangun model yang memungkinkan tim memvisualisasikan sistem, menentukan struktur
dan perilaku sistem, membangun sistem, dan mendokumentasikan keputusan yang dibuat sepanjang
proses.
Banyak tugas yang didefinisikan UP melibatkan penggunaan UML dan satu atau lebih model.
Sekarang mari kita lihat notasi yang digunakan dengan metodologi UP.
1.2.4 Notasi
Dalam kursus ini kita akan menggunakan notasi standar industri yang disebut Unified Modeling
Language (UML). Standar ini merupakan hasil kolaborasi antara tiga ahli metodologi: Jim Rumbaugh,
Grady Booch dan Ivar Jacobson.
Apa yang mereka terbitkan pada tahun 1994 merupakan penggabungan notasi mereka sendiri
ditambah notasi beberapa penulis lain.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1
UML de
MEMPERKENALKAN
S. BERORIENTASI CT
PERANGKAT LUNAK PERANGKAT
PERKEMBANGAN
PERSYARATAN TERHADAP KEBERATAN
standar denda
HAI desain. Ve
model yang dirancang
s dan notasi
Grup nt
d itu sebagai versin 1.2. Versi: kapann 1.4 adalah arus tidak. Terdaftar
(a) UM
Rilis ML 2.0
5;
ed pada bulan Juli 2005
(b) UM
Rilis ML 2.11
t 2007;
sed pada bulan Agustus
(c)UM
Rilis ML 2.12
sed pada bulan November
mber
Sementara standarnya
th
tidak sempurna
ny bagian UM
hanya sebuah kaleng
Di n
Dan
2007 (akhir
versi terbaik).
sempurna untuk semua situasi,
s
itu berarti semua orang mampu
h dia yang lain agram. Paling
onals
Profesi TI
e untuk membaca masing-masing
ml. (Tolong kembali
lihat Gambar 1.6)
Aragambar 1.6: Overv
notasi
ns untuk ekspres bernyanyi berbedat aspek OO
versi 1.1 tadinya s disampaikan t kepada ManajemenObjek
th diterbitkan
(OMG) i pada tahun 1997 dan hei
adalah o versi lain
s dari UML:
menggunakan praktek
ÿ 15
pemandangan mai
dalam diagram UML pagi
kamu beberapa dari dia
th UML
bagian selanjutnyaAnda
y
akan diperkenalkan secara singkatdiberikan kepada Anda
s untuk digunakan isecara intensif dalam kursus ini.
e Kasus
(a) Penggunaan
deskripsi kasus penggunaan
acara
Sebuah kamu
cribe s
nar deskripsi yang bagus
pilihan hal
dasar
sed.
M. Ini adalah
urutan penggunaan seorang
sistem aktor bagimu
se kasusnya juga tidak
proses. Sebuah kita
biasanya
Seorang aktor akan memulai apsistem atau an
muhanya perlu ditanggapi
Hai.
aktor o atau acara-
acara akan ha aplikasikan itu
Hak Cipta © Universitas Terbuka Malaysia (OUM)
e proses
Machine Translated by Google
16 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Contoh Kasus Penggunaan:
Pinjam Video
Pelanggan mengambil video yang telah dipilihnya dan pergi ke konter
pembayaran. Di sana petugas mengonfirmasi keanggotaannya dan memeriksa
video yang sudah lewat waktunya. Total biaya dihitung, pelanggan membayar
dan pulang dengan videonya.
(b) Model Domain
Model domain dihasilkan selama analisis dan bukan merupakan deskripsi
objek perangkat lunak. Ini adalah visualisasi konsep dalam domain dunia
nyata. Ini memiliki identifikasi konsep, atribut dan asosiasi seperti yang
ditunjukkan di bawah ini:
Gambar 1.7: Model
domain
Sumber: http://www.apl.jhu.edu/Classes/605404/stafford/oointro/
process_overview/sld004.htm
(c) Diagram Interaksi
Diagram interaksi diproduksi dalam desain dan berkaitan dengan pendefinisian
objek perangkat lunak dan kolaborasinya. Ini memiliki aliran pesan antara
objek perangkat lunak dan juga pemanggilan metode.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 17
Gambar 1.8: Diagram interaksi
Sumber:
http://www.cs.gordon.edu/courses/cs211/ATMExample/Interactions.html
(d) Desain Diagram Kelas
Diagram kelas desain yang dihasilkan selama desain menunjukkan tampilan statis definisi
kelas. Ia memiliki metode dan atribut kelas. Berbeda dengan model domain, diagram ini tidak
menggambarkan konsep dunia nyata, melainkan menunjukkan kelas perangkat lunak.
Gambar 1.9: Diagram kelas desain
Sumber: http://www.comptechdoc.org/independent/uml/begin/umldcd.html
Saat Anda mempelajari kursus ini, Anda akan melihat bagaimana diagram yang ditunjukkan di
bagian ini cocok satu sama lain. Topik 2 hingga Topik 5 akan membahas notasi ini secara detail.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
18 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
1.2.5 Apakah Desain Sistem Berorientasi Objek merupakan
Pendekatan Adaptif?
Sekarang setelah Anda membaca tentang metodologi dan notasi, bagaimana menurut Anda? Apakah
desain sistem berorientasi objek merupakan pendekatan adaptif?
Anda mungkin pertama kali berpikir demikian, karena Fowler (2000) cukup meremehkan UML dan
berpendapat bahwa proses desain sistem yang menggunakannya tidak bisa adaptif.
Namun, UML hanyalah sebuah notasi; yang terpenting adalah cara penggunaannya. Fowler sedang
mendiskusikan UML seperti yang digunakan dalam metodologi formal. Anda dapat menguraikan UML
dengan menggambar model dua puluh halaman yang ditinjau secara formal. Anda juga dapat menggunakan
notasi UML yang sangat jarang di papan tulis untuk mengkomunikasikan beberapa ide dengan cepat.
Kemungkinan besar ini adalah cara yang digunakan di UP.
Perhatikan juga bahwa tidak ada yang secara intrinsik bersifat iteratif mengenai orientasi objek. Kedua
pendekatan ini bekerja sama dengan sangat baik, namun Anda dapat melakukan pengembangan nonorientasi objek secara iteratif, sebagaimana Anda juga dapat melakukan pengembangan berorientasi
objek secara non-iteratif.
Jadi, meskipun konsep metodologi berat dan ringan, proses prediktif dan adaptif berguna untuk memahami
proses, Anda harus berhati-hati agar tidak membahasnya terlalu jauh.
AKTIVITAS 1.4
Isilah kolom sebelah kanan tabel berikut.
Perbandingan pendekatan tradisional dan berorientasi objek untuk pengembangan sistem.
Tradisional
Pendekatan data dan
fungsi
Pertimbangkan secara terpisah
Siklus hidup pengembangan
sistem (SDLC)
Air terjun
Notasi
Diagram Hubungan Entitas
(ER).
Contoh bahasa
COBOL, berbagai 4GL
Basis data
Basis data relasional
Berorientasi pada objek
Diagram Aliran Data (DFD)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 19
1.2.6 Analisis dan Desain
Analisis dan desain adalah dua komponen utama yang terlibat ketika mengembangkan perangkat
lunak menggunakan pendekatan berorientasi objek. Apa arti istilah „analisis‰ dan „desain‰?
Sederhananya, analisis perlu disediakan danApa
desain akan disediakan.
Bagaimana
Selama analisis berorientasi objek, penekanannya adalah pada menemukan objek atau konsep dalam
domain masalah. Misalnya, dalam kasus Sistem Informasi Perpustakaan, beberapa konsepnya antara
Buku , Perpustakaan Dan Pelindung.
lain Analisis Berorientasi Objek (OOA), kemudian, adalah proses
mendefinisikan masalah dalam bentuk objek: objek dunia nyata yang harus berinteraksi dengan sistem
dan kandidat objek perangkat lunak yang digunakan untuk mengeksplorasi berbagai alternatif solusi.
Kesesuaian alami objek pemrograman dengan objek dunia nyata memiliki dampak besar di sini: Anda
dapat mendefinisikan semua objek dunia nyata berdasarkan kelas, atribut, dan operasinya.
Selama desain berorientasi objek, penekanannya adalah pada pendefinisian objek perangkat lunak
dan bagaimana objek tersebut berkolaborasi untuk memenuhi persyaratan. Misalnya, dalam kasus
judulmetode. Desain
Sistem Informasi Perpustakaan, objek Buku
perangkat lunak mungkin memiliki atribut dan
A dapatkanBab
Berorientasi Objek (OOD), kemudian, adalah proses mendefinisikan komponen,
antarmuka, objek, kelas, atribut, dan operasi yang akan memenuhi persyaratan. Anda biasanya
memulai dengan objek kandidat yang ditentukan selama analisis, namun menambahkan lebih banyak
ketelitian pada definisinya. Kemudian, Anda menambahkan atau mengubah objek sesuai kebutuhan
untuk menyempurnakan solusi. Dalam sistem besar, desain biasanya terjadi pada dua skala: desain
arsitektur, yang mendefinisikan komponen-komponen yang membentuk sistem, dan desain komponen,
yang mendefinisikan kelas dan antarmuka dalam suatu komponen.
Anda pasti ingat bahwa dalam model air terjun seharusnya terdapat perbedaan yang jelas antara
analisis dan desain. Dalam model berulang Anda mungkin bertanya-tanya di mana letak perbedaannya.
Ini adalah garis yang sangat bagus, dan selama sebuah proyek atau bahkan satu percakapan, Anda
mungkin menemukan bahwa Anda melakukan keduanya.
Meskipun berguna untuk memisahkan analisis dan desain ketika kita membagi masalah besar menjadi
bagian-bagian kecil, ada baiknya juga untuk mempertimbangkan ide-ide lain yang mungkin tidak terlalu
cocok untuk saat ini.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
20 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
1.3
PENTINGNYA DESAIN
Hidup kita dipenuhi dengan mainan, peralatan, dan teknologi. Beberapa di antaranya dirancang dengan baik dan
mudah digunakan. Pisau yang bagus memiliki keseimbangan yang baik, mudah dipegang di tangan Anda dan
memungkinkan Anda berkonsentrasi pada apa yang Anda potong. Situs web yang dirancang dengan baik memberi
Anda informasi yang Anda butuhkan dalam waktu dan kerumitan minimum.
Alat atau antarmuka pengguna yang dirancang dengan buruk memerlukan upaya untuk menggunakannya dan
akibatnya seseorang sering membuat kesalahan atau merasa frustrasi. Mesin cuci yang memiliki lima tombol dan
dial dengan 12 pengaturan terlalu rumit untuk sekadar mencuci pakaian!
Aplikasi yang mengharuskan saya memasukkan tanggal kedaluwarsa kartu kredit „02/06‰ dan bukannya „0206‰
dan tidak menjelaskan kesalahannya sungguh membuat frustrasi.
Ada desain yang terlihat, ada pula yang tersembunyi. Pertimbangkan sebuah mobil. Di dalam mobil kita dapat
melihat dan menyentuh kendali pengemudi. Apakah roda kemudi mudah digenggam? Bisakah Anda dengan cepat
menemukan klakson dalam keadaan darurat? Elemen desain lainnya terungkap melalui penggunaan.
Berapa lama waktu yang dibutuhkan AC untuk mendinginkan mobil pada hari yang panas? Seberapa baik rem
bekerja saat hujan? Beberapa elemen desain bersifat internal sehingga hanya seorang ahli yang dapat
mengapresiasi desain dan mampu memprediksi masa depan.
Bagaimana keausan mesin selama bertahun-tahun? Bagaimana performa mobil saat terjadi kecelakaan? Tidak
ada sesuatu pun di dalam mobil yang kebetulan; seseorang telah merancang segalanya. Begitu pula dengan
perangkat lunak. Aspek eksternal adalah antarmuka pengguna. Internal berkaitan dengan keandalan, kemampuan
untuk berubah dan ketahanan terhadap teknologi baru.
Donald Norman dalam bukunya menantangDesain
kita untuk
dari merancangHal
teko
Sehari-hari
kopi, gagang pintu, sistem telepon, dan
kontrol pendingin dengan mempertimbangkan manusia (1989, 36):
Jikaakan
memungkinkan,
terjadi kesalahan,
seseorang
semua
akan
kesalahan
melakukannya.
yang mungkin
sebuah terjadi Perancang harus berasumsi bahwa
dan dirancang sedemikian rupa sehingga efeknya begitu terjadi.
tersebut
hal meminimalkankemungkinan terjadinya
kesalahan pertama-tama,
jika
atau Kesalahan seharusnya mudah jika memungkinkan
dideteksi, dampaknya harus minimal, dan agar dampaknya dapat dibalik.
Ingatlah selalu bahwa pengguna suatu sistem adalah manusia. Desain yang baik memerlukan pemahaman
tentang prinsip-prinsip dasar dan timbal baliknya. Desain yang bagus membutuhkan pengalaman. Desain yang
baik bukan tentang benar atau salah, tapi tentang menjadi lebih baik dalam keadaan tertentu dibandingkan
keadaan lainnya. Karena semua alasan ini, belajar mendesain dengan baik bisa membuat frustasi. Namun
demikian, ketika Anda telah membuat desain yang bagus, itu sangat memuaskan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 21
1.4
MEMULAI: AWALNYA
FASE
Fase awal adalah saat proyek dimulai di UP. Tujuan utama dari fase Inception adalah untuk menetapkan
alasan kelayakan sistem yang diusulkan.
Ini dimulai dengan seseorang mempunyai ide. Orang lain kemudian perlu dilibatkan – orang yang memiliki
wewenang, keuangan, pengetahuan atau keterampilan yang sesuai. Mereka perlu bekerja sama untuk
membentuk visi bersama untuk proyek tersebut. (Istilah „pernyataan misi‰ juga bisa digunakan.) Visi
memberikan gambaran hasil akhir tanpa mengkhawatirkan komponen dan prosesnya. Seringkali orang
khawatir untuk berkomitmen pada kertas terlalu dini. Namun, ingat: ini adalah pengembangan berulang.
Jadi kami berharap untuk melihat banyak versi dari hal yang sama. Dokumen visi dapat dengan mudah
diperbarui setiap hari selama periode dua minggu seiring dengan semakin banyaknya hal yang dipelajari.
Dalam membentuk visi, Anda perlu meminta bantuan semua pemangku kepentingan yang terlibat dalam
proyek seperti CEO, direktur TI, dewan direksi, dll.
Bagian penting dari visi proyek adalah ruang lingkupnya. Apa sebenarnya yang akan dan apa yang tidak
akan ada dalam sistem? Jika cakupannya terlalu besar maka kemungkinan besar proyek tersebut akan
gagal. Cakupannya harus sekecil mungkin namun tetap memenuhi kebutuhan inti. Aturan 80/20, atau
prinsip ParetoÊs (dinamai berdasarkan nama ekonom Italia abad ke-19), menjelaskan mengapa setiap fitur
tidak perlu dibangun. Aturan ini menyatakan bahwa 80 persen nilai sekelompok barang umumnya
terkonsentrasi pada 20 persen barang tersebut. Contohnya termasuk tagihan telepon (80 persen panggilan
hanya ke 20 persen orang) dan makan di restoran (80 persen pesanan ditujukan untuk 20 persen hidangan
di menu) dan perangkat lunak 80 persen dari total biaya. pengguna pengolah kata hanya menggunakan 20
persen dari seluruh fitur.
Tentu saja, semakin banyak pemangku kepentingan yang Anda konsultasikan, semakin besar cakupannya.
Namun, sangat penting untuk mengartikulasikan dengan tegas dan tetap berpegang pada visi utama.
(Salah satu teknik yang berguna adalah dengan memiliki lampiran pada visi Anda tentang semua hal yang
bukan sedang dipertimbangkan, namun bisa jadi nanti. Ini berarti bahwa ide tidak hilang, begitu pula visi).
Ruang lingkup suatu sistem sebenarnya merupakan penjumlahan dari bagian-bagiannya. Beberapa bagian
menyediakan fungsionalitas, seperti menerima pesanan pelanggan dan lainnya disebut persyaratan nonfungsional. Ini adalah hal-hal seperti kecepatan sistem, kualitas dan kepatuhan terhadap standar (Topik 2
membahas lebih lanjut tentang topik ini).
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
22 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Persyaratan fungsional paling baik dijelaskan dengan kasus penggunaan. Use case ditemukan oleh Ivar
Jacobsen, salah satu dari tiga penulis UML. Use case adalah deskripsi dari beberapa interaksi sistem. Itu
ditulis dalam bahasa sehari-hari yang sederhana, bahasa Inggris, atau bahasa apa pun yang paling
nyaman bagi pengguna. Ini bisa berupa narasi sederhana dan santai yang menggambarkan bagaimana
tujuan pengguna terpenuhi.
Berikut adalah contoh kasus penggunaan. Misalkan kita sedang menulis sistem untuk menyewakan video.
Meminjam A kasus penggunaan video cerita sederhana
Pelanggan mengambil video yang telah dipilihnyaatau
dandia
pergi ke konter pembayaran. Di
ke
sana petugas mengonfirmasi keanggotaannya dan memeriksa apakah
atau ada video yang sudah lewat
waktunya.Total biaya dihitung, pelanggan membayar, dan pergi bersamanya
atau videonya.
Ingatlah selalu bahwa use case menggambarkan interaksi antara pengguna dan sistem. Itu tidak memberi
tahu kita apa pun tentang cara kerja sistem. Itu dilakukan nanti.
Jangan khawatir jika Anda masih bingung dengan kasus penggunaan. Topik 2 membahas kasus penggunaan
secara lebih rinci dalam menentukan siapa penggunanya, mencapai tujuan mereka, menggunakan format kasus
penggunaan yang berbeda, dll.
Sejauh menyangkut tahap awal proyek, yang kami inginkan adalah daftar awal nama-nama kasus
penggunaan. Kami ingin tahu apakah ada 5 atau 50 kasus penggunaan. Hal ini, pada gilirannya, akan
memberi kita gambaran tentang berapa lama proyek tersebut akan memakan waktu dan juga biayanya.
AKTIVITAS 1.5
Tulis kasus penggunaan untuk masing-masing hal berikut:
(a) Seorang siswa mendaftar untuk kursus OUM.
(b) Pelanggan membeli barang dari toko online.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 23
1.4.1 Artefak Fase Awal
Selama pengembangan suatu sistem, berbagai model, desain, dokumen, laporan, spreadsheet, manual,
dan kode pemrograman dihasilkan. Kami menyebutnya sebagai artefak. Metodologi biasanya
memberikan pedoman tentang artefak mana yang perlu diproduksi, kapan artefak tersebut diproduksi
dalam siklus hidup pengembangan, formatnya (gambar, dokumen, spreadsheet, dll.) dan mungkin siapa
di tim yang harus memproduksinya.
Berhati-hatilah saat mempertimbangkan artefak untuk proyek tertentu karena setiap artefak menambah
total biaya. Untuk setiap artefak:
(a) memastikan bahwa hal tersebut mempunyai tujuan yang nyata, baik saat ini maupun di masa depan; Dan
(b) menetapkan seberapa „baik‰ hal tersebut perlu dipikirkan kembali tentang aturan 80/20.
Tabel 1.4 berisi daftar artefak yang ditentukan UP untuk tahap awal.
Ingatlah bahwa semua artefak ini bisa dimulai sebagai sketsa atau dokumen yang sangat sederhana.
Tergantung pada ukuran dan sifat proyek, mereka mungkin berkembang menjadi lebih rinci dan/atau
lebih formal.
Tabel 1.4: Artefak Fase Awal
Komentar
Artefak
Visi dan kasus bisnis Ini bisa dimulai dari dokumen sederhana setebal 12 halaman, mungkin dengan beberapa
2 dapat dimasukkan.
diagram. membahas materi Topik
lain yang
Gunakan model kasus
Dibahas lebih lanjut di . Sebenarnya
Topik 2 apa yang diperlukan dalam Fase Awal
adalah daftar kasus penggunaan utama yang perlu dibahas, ditambah
mungkin beberapa detail untuk kasus penggunaan utama.
Spesifikasi tambahan
Glosarium
Ini adalah segala sesuatu yang dianggap perlu tetapi tidak termasuk di
tempat lain. Lebih detailnya di
Topik 2 .
Setiap proyek memiliki kata dan istilah khusus yang perlu dipahami semua
orang. Untuk menghindari pengulangan yang tidak perlu, sebaiknya
kumpulkan semua istilah di satu tempat.
Daftar risiko dan
rencana manajemen risiko
Setiap proyek mempunyai risiko. Risiko dapat dikategorikan sebagai risiko
teknis, manusia, atau politik. Ada yang bersifat umum pada setiap proyek,
seperti orang-orang penting yang keluar dan ada pula yang khusus untuk
proyek tersebut.
Daftar risiko dan rencana manajemen risiko dapat berupa dokumen
sederhana yang berisi daftar risiko dan cara menguranginya. Peninjauan
risiko secara rutin sangatlah penting.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
24 ÿ TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK
Prototipe dan pembuktian konsep
Prototipe dapat diproduksi karena sejumlah alasan. Hal ini dapat dilakukan untuk
mendemonstrasikan tampilan antarmuka pengguna, atau dapat juga untuk
mendemonstrasikan bahwa teknologi yang dipilih berfungsi dan 2.000 transaksi
dapat disimpan dalam database dalam waktu kurang dari dua menit.
Rencana iterasi
Menjelaskan apa yang harus dilakukan pada iterasi elaborasi pertama.
Dalam pengembangan berulang, di akhir setiap fase atau iterasi Anda perlu
merencanakan fase atau iterasi berikutnya.
Rencana tersebut harus mencakup berapa lama iterasi akan berlangsung, siapa
yang akan berpartisipasi dan apa yang akan mereka hasilkan.
Rencana fase dan rencana
Pada tahap proyek ini, Anda akan memiliki gambaran tentang orang, sumber daya,
pengembangan perangkat lunak
dan alat yang Anda perlukan untuk proyek tersebut. Ini perlu dicantumkan. Seperti
biasa, ingatlah bahwa rencana ini dapat diubah seiring dengan dipelajarinya
informasi baru.
Kasus pembangunan
Rencana ini menunjukkan proses seperti apa yang akan Anda ikuti untuk proyek
tersebut. Apakah ini akan menjadi proyek yang setiap dokumennya harus
ditandatangani oleh sponsor proyek, atau apakah Anda akan menggunakan
tinjauan informal?
Di sinilah Anda menyatakan artefak seperti apa yang akan Anda hasilkan dalam
proyek ini.
(Diadaptasi dari Larman (2002), hlm. 3738
• Topik ini menjadi latar untuk sisa kursus. Orientasi objek memungkinkan kita
menggabungkan data dan fungsi saat menganalisis entitas dunia nyata dan perangkat
lunak.
• Pendekatan pengembangan aplikasi berpindah dari air terjun ke iteratif
perkembangan.
• Kami memperkenalkan dua standar: Unified Process (UP) dan Unified Modeling Language
(UML). UP adalah metodologi untuk mengembangkan sistem berorientasi objek secara
berulang. UML adalah seperangkat notasi standar untuk memodelkan berbagai aspek
sistem berorientasi objek.
• Pengembangan sistem merupakan suatu usaha rekayasa dan kreatif
Ada banyak pendapat berbeda tentang cara terbaik untuk melanjutkan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 25
• Kami kemudian memulai tahap awal studi kasus dengan melihat
visi, pemangku kepentingan dan beberapa rencana awal.
• Sekarang kami akan memperkenalkan studi kasus yang digunakan dalam kursus ini.
Studi Kasus 1: Video Victoria
(Ini adalah pengantar Video Victoria, sebuah contoh yang akan Anda gunakan
banyak kegiatan dan diskusi dalam topik berikut.)
VictoriaÊs Video adalah toko video besar dengan ribuan anggota dan video. Ini adalah toko tunggal dan
Victoria tidak memiliki rencana untuk memperluas ke banyak cabang.
Victoria memiliki stok sekitar 50.000 video setiap tahunnya, sekitar sepertiga dari video tersebut dijual
atau dimusnahkan dan yang baru dibeli. Setiap video
memiliki klasifikasi (G umum, PG bimbingan orang tua, MA audiens dewasa, dan
dibatasi R). Anggota harus berusia di atas 18 tahun untuk meminjam video R. Setiap video juga memiliki
kategori: roman, umum, fiksi ilmiah, bahasa asing, dan anak-anak.
Anda harus menjadi anggota untuk meminjam video. Terdapat sekitar 10.000 anggota dan jumlah
tersebut meningkat sekitar 2.000 setiap tahunnya, namun beberapa
anggota belum meminjam selama bertahun-tahun. Ketika orang baru meminta untuk menjadi a
anggota, mereka harus menunjukkan SIM atau tanda pengenal lainnya yang berfoto. Minimal
umurnya 16 tahun. Seorang anggota dapat meminjam video dalam jumlah berapa pun, asalkan mereka dapat meminjamnya
tidak ada video yang lewat waktunya, dan dimungkinkan juga untuk memesan video. Ada denda
untuk video yang sudah lewat waktu.
Lamanya waktu peminjaman video tergantung pada videonya. Baru
rilis hanya dipinjamkan dalam semalam, rilis saat ini untuk sewa tiga hari dan sisanya untuk seminggu.
Ulang tahun anggota ditandai dengan surat khusus yang mengundang mereka untuk meminjam apa pun
video pilihan mereka selama seminggu secara gratis.
Setiap tiga bulan sekali toko tersebut melakukan stock opname. Setiap video yang hilang diperbarui
untuk menunjukkan mereka sebagai 'hilang'.
Sistem Victoria memiliki tiga terminal kasir cerdas yang sangat baik
menangani semua transaksi keuangan. Terminal ini menangani kartu kredit
fasilitas, rekonsiliasi kas, perbankan dan antarmuka dengan sistem akuntansi.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
2 6 ÿ ATAS
GAMBAR 1 PENDAHULUAN
DUKSI
KE O
ORIEN OBJEK
PERANGKAT LUNAK TED
E
tidak
PERKEMBANGAN
H
Namun, perang lama
e (Windows 9
95)
kompilasi saat inisistem puter berjalan sangat dan
sebuah
ditulis secara tidak jelas
kembali memprogram
menggunakan bahasa yang tidak dimengerti oleh siapa pun .
tr
topi membutuhkan sedikit
a
Ini sangat lambatw dan tidak bertemansistem dly th
sttaff. Jadi Victor ria telah memutuskaned untuk berinvestasisecara
i
lengkap sistem baru
adalah
em dan lunak
perangkat keras, opsistem pemerasan
D
keputusan
miliki kamu belum pernah, bu
ade.
h
gudang. Sulit
hujan untuk ne
baru
mereka dengan obat-obatan
masuk
gudang dan operasi
sistem operasi
em
W
Sementara dia d melakukan ini, dia dia ingin beriklandd perang data rehouse jadi th manajemen topi masuk
cadapatkan berbagai macam
laporan statistik AS. Misalnya,
ke untuk melihat siapaich
mereka ingin
pelanggan, ho aduh
os paling po
populer atau tidakpopuler, siapa yang terbaik c
kamu
jenis video
M
dan
video
di
sana
ya, dll.
banyak yang terlambat
n tambahan, di n saat ini s
dan anggota perlu pres
Di dalam
sebuah
masalah apa
pembaca kode adalah
videonya
s diperlukan untuk pindai
s
sistem barc
mengirimkan kartu identitasnya untuk diambile
en anggota lupa membawa
video o
ng kartu mereka ds, jadi Victoria
os,
keluar. Hal ini menyebabkan
se
a ingin hal
jelajahi o lainnya pilihan.
mantan
T
Pengikut
V
Vide
Victoria
posisi th
g adalah fungsinyadekomposisi nasional
dia menargetkan sistem
n
baruf
untuk
aku:
A
Karena ada a
selalu baru st
B Ini mudah dipelajarin dan gunakan.
anggota taff
yang baru w sistem memiliki
s bergabung dengan toko,
s
Hak Cipta © Universitas Terbuka Malaysia (OUM)
ke
Machine Translated by Google
TOPIK 1 PENGENALAN PENGEMBANGAN PERANGKAT LUNAK BERORIENTASI OBJEK ÿ 27
Studi Kasus 2: Sistem POS NextGen (Ini
adalah pengenalan Sistem POS NextGen, contoh yang akan Anda gunakan dalam beberapa aktivitas
dan diskusi pada topik berikut. Kasus ini
Penelitian diadaptasi dari Larman (2002), halaman 2931.
Studi kasusnya adalah sistem point-of-sale (POS) NextGen. Dalam studi kasus ini, kita akan melihat
bahwa ada banyak masalah persyaratan dan desain yang menarik untuk dipecahkan.
Ini adalah masalah yang realistis karena organisasi benar-benar menggunakan sistem POS
teknologi objek. Sistem POS adalah aplikasi terkomputerisasi yang digunakan (sebagian) untuk
mencatat penjualan dan menangani pembayaran dan biasanya digunakan di toko ritel. Dia
termasuk komponen perangkat keras seperti komputer dan pemindai kode batang dan
perangkat lunak untuk menjalankan sistem. Itu dihubungkan ke berbagai aplikasi layanan seperti
kalkulator pajak pihak ketiga dan kontrol inventaris. Sistem harus relatif toleran terhadap kesalahan.
Sebuah sistem POS harus semakin mendukung banyak dan beragam
terminal dan antarmuka sisi klien. Ini termasuk browser Web, PC biasa
yang mendukung Graphical User Interface (GUI), input layar sentuh, PDA nirkabel dan lain sebagainya.
Selanjutnya, kami menciptakan sistem POS komersial yang akan kami jual
klien yang berbeda dengan kebutuhan yang berbeda dalam hal pemrosesan aturan bisnis. Setiap
klien akan menginginkan serangkaian logika unik untuk dieksekusi pada titik-titik tertentu yang dapat diprediksi
dalam skenario penggunaan sistem, seperti ketika penjualan baru dimulai atau ketika penjualan baru dimulai.
item baris ditambahkan. Oleh karena itu, diperlukan suatu mekanisme untuk menyediakan hal tersebut
fleksibilitas dan penyesuaian. Dengan menggunakan strategi pengembangan berulang, kami berhasil
akan melanjutkan melalui persyaratan, analisis berorientasi objek, desain dan implementasi.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
2 8 ÿ ATAS
GAMBAR 1 PENDAHULUAN
DUKSI
KE O
PERANGKAT LUNAK TED
E
ORIEN OBJEK
A
Atribut
Obyek
C
Kelas
Polimor rphisme
Konstruksi
C
tiang pancanglebih tua
E
Elaborasi
Subkelas S
Lahirnya
pantat
kelas super
Warisan
Transisi
Contoh
Bersatu
SAYA
SAYA
SAYA
Pengembangan berulang
kawin
SAYA
tidak
PERKEMBANGAN
pada
Pemodelan La bahasa (UM
ml)
Variabel e
lari
air terjun II
M
Pesan
M
metode
C
Bertahan
Cockburn, A. (1998).
benda hidup
Boston, MMA: Addison n-Wesley.
proyek berorientasi
Sebuah prt:
C
Konstantin,
L.(1995).
Yourdon n Tekan.
Hai
Konstantinus
C
adalah
pada orang-orang
. Inggris
F burung hantu, M. (20
000) Atur pola makan Anda. proses pada a
D
Desember. Ulangdiambil dari
m <http://ww
sdm0012 2a/0012a.htm m>.
perangkat lunak
ulang
ww.sdmagazi
K
D proses:
Krutchen,
P. (1 1999). Tikus kesatuan nasional
Tambahan
n-Wesley.
L
Larman, C. (20 002). Melamar
Aula
N
Norman, D.(1
1989). Des
UML dan pola hal
ide .
manajer
Tebing bagus, NNJ:
pengembangan
majalah ent
ine.com/docu
Sebuah
N
bu panduan
perkenalan
jumlah/s=73
N.
,
37/
Membaca, MMA:
. Uppper Sadel Riv
ver, NJ: Persetanwaktu
NNew York, N
Y: DoubleDa ay/ .
ditanda setiap
tanganihari hal-hal
Mata uang
kamu.
HAI
Kelola Objek
Grup Manajemen . Diperoleh fr
T
Taylor, DA (1998).
ct
Keberatan
MA: Tambahkan
dison-Wesley
teknologi
dari http://w
www.omg.org
G
Panduan rÊs y: manajer (2ndedisi d.). Baca ng,
kamu.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Tema ÿ Persyaratan
dan Kasus Penggunaan
2
HASIL BELAJAR
Pada akhir topik ini, Anda seharusnya mampu:
1.
Membedakan berbagai jenis dan tingkat persyaratan;
2.
Buat daftar persyaratan non-fungsional standar;
3. Menyadari bahwa perubahan persyaratan tidak bisa dihindari dan digariskan
strategi untuk menghadapi perubahan tersebut;
4.
Identifikasi aktor untuk suatu sistem;
5. Tentukan use case, tingkat use case dan jelaskan bagaimana use case cocok
dengan tujuan;
6.
Identifikasi kasus penggunaan suatu sistem;
7. Menggambar diagram use case UML untuk menunjukkan ruang lingkup suatu sistem; dan 8.
Menggambar diagram aktivitas UML yang benar untuk sekumpulan kasus penggunaan.
ÿ PENDAHULUAN
Topik ini adalah tentang menemukan dan kemudian mencatat dan menganalisis persyaratan untuk suatu
sistem. Persyaratan yang didefinisikan dengan buruk adalah penyebab utama kegagalan sistem.
Persyaratan suatu sistem mencakup spektrum yang luas, mulai dari kebutuhan bisnis hingga teknologi spesifik
serta apa yang „harus dilakukan‰ oleh sistem, seperti menghitung pajak.
Topik ini dimulai dengan diskusi tentang berbagai tingkat dan jenis persyaratan. Kami kemudian fokus pada
apa yang „harus dilakukan‰ oleh sistem, atau persyaratan fungsionalnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
30 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
Persyaratan fungsional dijelaskan oleh kasus penggunaan. Kasus penggunaan adalah inti dari
analisis dan desain berorientasi objek. Akibatnya sebagian besar topik ini adalah tentang penulisan
kasus penggunaan, yang telah Anda perkenalkan secara singkat di Topik 1. Kasus penggunaan
terlihat sederhana dan sangat sederhana sampai Anda mencoba menulisnya. Kegiatan untuk topik
ini akan membantu Anda melatih keterampilan ini.
Selain use case, Anda akan mempelajari tiga diagram UML yang digunakan bersama dengan use
case. Diagram use case memberikan gambaran gambaran aktor dan use case. Diagram aktivitas
menunjukkan bagaimana beberapa kasus penggunaan berinteraksi untuk mencapai tugas atau
proses bisnis. Gunakan diagram paket kasus untuk mengelompokkan kasus penggunaan secara
logis agar lebih mudah memahami gambaran besarnya.
Sepanjang keseluruhan proses pengembangan sistem, kami menerima bahwa persyaratan akan
berubah sebagai respons terhadap berbagai kebutuhan. UP mengatasi hal ini dengan menggunakan
metodologi pengembangan berulang. Topik ini diakhiri dengan melihat dokumen dan artefak
persyaratan UP.
2.1
ANALISA KEBUTUHAN
Seperti yang Anda pelajari di Topik 1, ada beberapa disiplin ilmu (atau alur kerja) dalam masingmasing empat fase (UP). Salah satu disiplin ilmu paling awal dan salah satu yang paling penting
adalah analisis kebutuhan. Jelasnya, sebelum kita melakukan apa pun, kita harus bertanya pada diri
sendiri apa yang kita ingin sistem lakukan.
Untuk menjawab pertanyaan ini, perlu dipertimbangkan:
(a) kebutuhan bisnis;
(b) sumber daya yang tersedia;
(c) kemungkinan teknologi; Dan
(d) implikasi sosial dan hukum.
Masalah yang harus dipecahkan didiskusikan di antara anggota tim, pelanggan, dan biasanya
pengguna. Asumsi diungkapkan tetapi dapat diverifikasi atau ditolak menggunakan teknik pembuatan
prototipe „bukti konsep‰.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 31
Persyaratan sistem adalah hasil dari proses ini dan mewakili kesepakatan antara
anggota tim pengembangan sistem, pelanggan, dan pengguna. Perhatikan bahwa
Apa
persyaratan akan memberitahu sistem akan melakukan,
bukan
Bagaimana
itu akan berhasil. Penulisan persyaratan meliputi:
(a) Mendefinisikan tujuan sistem, memprioritaskan fungsionalitasnya dan menentukan
konteksnya (yaitu, siapa penggunanya dan sistem apa yang berinteraksi
dengannya?);
(b) Mengidentifikasi antarmuka eksternal, baik manusia maupun sistem-ke-sistem.
Teknologi dari sistem yang ada yang harus dihubungkan dengan sistem dapat
membatasi persyaratan dan desain;
(c) Mengidentifikasi fungsionalitas utama yang harus disediakan oleh sistem dan
menggambarkannya;
(d) Mendokumentasikan asumsi-asumsi yang menjadi dasar persyaratan. Jika
asumsinya berubah, maka persyaratannya juga akan berubah; Dan
(e) Berkomunikasi dengan pengguna, klien, analis bisnis dan pengembang sehingga
sistem yang dikembangkan memenuhi harapan klien.
Persyaratan tersebut mungkin juga melibatkan prototipe „bukti konsep‰, yang pada
awal siklus hidup proses pengembangan mengkonfirmasi atau membentuk arah
solusi. Prototipe dapat berupa tiruan yang diimplementasikan dari beberapa fungsi
dalam sistem, atau dapat berupa sketsa GUI yang melaluinya skenario dapat
dinavigasi dan dikonfirmasi.
2.1.1 Tingkatan dan Jenis Persyaratan
Suatu organisasi mungkin memulai proyek pengembangan sistem baru karena
sejumlah alasan: kebutuhan bisnis baru, penggantian sistem lama, penggabungan
dua sistem yang ada karena akuisisi dan merger, dll. Dalam kebanyakan kasus,
aktivitas pengembangan sistem didorong oleh kebutuhan bisnis . Oleh karena itu,
Anda perlu memahami berbagai tingkat persyaratan untuk sistem yang akan Anda
kembangkan. Ini adalah:
(a) Persyaratan bisnis ini menentukan proses tingkat tinggi yang terjadi dalam suatu
organisasi. Misalnya dalam sistem perbankan, apa tujuan pengembangan
sistem perbankan baru? Apakah akan menggantikan sistem lama atau akan
digunakan pada bidang usaha baru, dan sebagainya?
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
32 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
(b) Persyaratan sistem yang harus dilakukan sistem komputer bagi penggunanya.
Ini adalah persyaratan fungsional sistem.
(c) Persyaratan internal yang berkaitan dengan teknologi, personel, persyaratan platform
perangkat keras, dll. Ini adalah persyaratan non-fungsional.
Untuk menjelaskan perbedaan kebutuhan fungsional dan non-fungsional, perhatikan contoh
membangun rumah. Bayangkan Anda mewarisi sebidang tanah dan ingin membangun
rumah di atasnya. Jadi Anda menghubungi seorang arsitek dan duduk untuk mendiskusikan
kebutuhan Anda. Berapa banyak kamar yang Anda butuhkan?
Apakah Anda ingin ruang makan di sebelah dapur? Seberapa besar seharusnya taman itu?
Kita dapat menganggap ini sebagai persyaratan fungsional rumah. Ada juga persyaratan lain
seperti kualitas keran kamar mandi, jumlah cahaya alami dan total anggaran untuk proyek
tersebut. Ini tidak berfungsi
persyaratan. Dari perspektif pengembangan sistem, kebutuhan non-fungsional dapat dibagi
lagi menjadi beberapa kategori. Dalam konteks UP, persyaratan dikategorikan menurut
model FURPS+ yang mengacu pada: fungsi, kemampuan, kinerja, dukungan dan „+‰ untuk
Fhal lainnya (seperti implementasi,
Rkelayakan,
P
pengoperasian,
paket, legal, dll.) seperti yang digambarkan
pada Gambar 2.1 .
kamu
Gambar 2.1: Model persyaratan FURPS+
Cockburn (2002) menyatakan bahwa hanya sepertiga dari persyaratan yang fungsional.
Beberapa persyaratan dapat dianggap fungsional dan non-fungsional.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 33
KEGIATAN 2.1
Cirikan persyaratan berikut sebagai fungsional, non-fungsional
atau keduanya.
(a) Pelanggan menerima diskon khusus pada hari ulang tahunnya.
(b) Gunakan arsitektur Java J2EE.
(c) Setiap terminal POS mampu memproses 100 item penjualan per menit.
(d) Menghasilkan laporan permintaan seluruh transaksi yang lebih besar dari
$100.000.
(e) Setiap pengguna dapat melihat opsi menu yang dipersonalisasi.
KEGIATAN 2.2
Sistem Video Victoria Dalam
topik ini, kami akan menggunakan sistem Video Victoria, yaitu Anda
diperkenalkan pada Topik 1 sebagai dasar untuk beberapa kegiatan.
Lihat lagi studi kasus, yang termasuk dalam dan daftar dua persyaratan
fungsional dan dua non-fungsional
persyaratan untuk sistem.
Topik 1 ,
2.1.2 Tantangan Persyaratan Penulisan
Pengembang sistem yang berpengalaman akan memberi tahu Anda bahwa salah satu penyebab
utama kegagalan proyek adalah analisis persyaratan yang dilakukan dengan buruk. Penulis
persyaratan menghadapi sejumlah tantangan, tidak semuanya bersifat teknis. Masalah
komunikasi, manusia dan bisnis juga harus diperhitungkan. Berikut ini adalah tantangan yang
mungkin terjadi:
(a) Kompleksitas Domain Masalah
Tantangan terbesar adalah mencari tahu tentang domain masalah (lingkungan di mana
sistem akan beroperasi, misalnya toko video kita).
Hal ini terutama berlaku jika domain tersebut adalah domain baru. Tantangan terkait
domain lainnya mencakup: memastikan peran sistem dalam domain, mencapai pemahaman
dalam domain masalah, menerjemahkan apa yang Anda pelajari
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
3 4 ÿ ATAS
REMENT
GAMBAR 2 DIPERLUKAN
DAN U KASUS PENGGUNAAN
tentang thdia permintaan domain
pertanyaan s
yaitu.
Jelas sekalily, yang besar
bijih
spesifikasi dan tanggung jawab sistem
r dan lebih kompleks uired, mo
kebutuhan sistem
tantangan melakukan tugas Anda..
(B
b) Orang-ke
o-orang Com
Anda perlu
ed efektif c
komunikasi
komunikasi
dalam urutan t
untuk mengekstrak info
formasi kesana kemari
om
klien sebuahdan pengguna di atas
om
keluar masalahnyalem domain, untuk mendapatkan inf formasi kesana kemari
klien a
dan pengguna atentang s
kebutuhan sistem kemarahan, untuk
mengerti penyerahan sistem kembali ke klien dan
untuk berkumpul
persyaratannya
informasi nts
dan terakhirsangat ingin disampaikan
kamu perlunya
sampaikan padamu
d pengguna untuk penegasan
th
ahli waris
kami
pada,
ion untuk dikembangkan
operasi,
manajer ger dan teste
r berubah menjadi persyaratannya
t
eh,
entitas yang m
mungkin saja
sudah didirikan kandang. Misalnya
perlengkapan an analisis, kelompokup
permintaan yang berhasil
terlibat
(C
c) Konstan
aku perlu konv
sangat informatif ion ke satu ano
efektif lainnya
ely.
t Berubah
Seperti yangtelah
kita h disebutkan, mengubah kembali
pertanyaan i
f perangkat
lunakkembali mengembangkan saya
aspek yang baik
dari
siklus hidup.
. Meski begitu
mungkin f dibekukan pada patitik tertentu
itu akan c terus berkembang. Ini
dia domain masalah oleh analis an
ditingkatkanaku mengerti
ding dari s
solusi sistem
ion di pa
akan selalu ch
tidak
g dari
e untuk berimprovisasi
dan berkembang eh,
seni pengguna, atau
es atau politik
pemberi
regulator, teknologi
w
persetujuan, nyanyikan
Mengakuipermintaan pertanyaan
itu
T.
konsep inti
persyaratan gh
dan orang-orang tidak
t, sebuah sistem an
pemahaman
evolusi ini mungkin disebabkan
sudah mengerti
dan akhir th
sekadar kompetisi,
adalah sebuah keniscayaan
ics.
hange adalah ac pengembangan
berulang
(D
d) Penulisan R
Persyaratan
s di UP
yang
Seperti yang Anda tahu, pergibenar-benar diperlukan
analisis komentar ysis adalah ke desjuru tulis apa t
dandan kebiasaannyamer
sistem s harus dilakukan (th persyaratan
nts) dan dapatkanpengembang
d
pada deskripsi iturobekan. Ke ac
untuk
menyetujui sekeliling
bantingan dan e berperilaku itu
potensi
l pengguna adalah saya
sumber
penting
mencapai ini, w kami mendefinisikan
sistem e dan
itu
itu seharusnya d untuk melakukan. Pelanggan a
dan
informasi
asi.
Di UP berkembang
bingkai pment mework, persyaratan analisis nts
ted
dalam dua ke ey artefak, t
Kasus Penggunaan
e Model untuk t
kemajuannya
hadir secara aktif
fungsia semua persyaratan
nts dan s
aktif untuk no
tambahan
spesifikasi
fungsia
nts (lihat F
semua persyaratan
gambar 2.2).
Ara
gambar 2.2: Ke persyaratannyaartefak nts
Hak Cipta © Universitas Terbuka Malaysia (OUM)
pada-
Machine Translated by Google
DAN
D KASUS PENGGUNAAN
KE
PERSYARATAN OPICUIREMENT
2
ÿ 35
Seperti disebutkan
mer, siapa
d dalam Topik 1, tModel Kasus Penggunaan adalah pentingpenting bagi bo lainnya yang adatnya
yang butuh
diath
menjadi model untuk va
Alidate itu th
akan
menjadi
wh
d dan untuk
di yang diharapkan
dia sistem akan
pengembang
elopers, siapa
untuk
persyaratan
o butuh m
model ke ge
sistem. Kasus Penggunaan M
dan kamu yang lebih baik
memahami
Model tertulis
g dari
sepuluh sehingga kedua
b
pelanggan r dan pengembang
veloper di bawah memahaminya.
Model Kasus Penggunaan cterdiri dari ac
eksternal ke sistem
fungsi
aktor dan kasus penggunaan. Aktor mewakili
e entitas
esent kasusm, baik gunakan ers atau sistem lainnya. Menggunakan kasus ini mewakili
semua perilaku sistem
gambar wh
punya p yang lebih jelas
M. Aktor membantu
p tentukan sy
sistem dan berikan
apakah kamu
dilakukan.Kita
W akan melihat apada aktor lebih jauh
dia terlibat
dalam hal itu adalah harus
suppo
bagian selanjutnya.
tahu dari T
Topik 1, penggunaan
perwakilan
acara nts kasus
tri
dipicu oleh ac aktor dan
menjelaskan
e
kasus
adalah
de
merespons. Sebagai penggunaan
mengembangkan acco
begitulah sy
membendung harus diselesaikan
perintah untuk
aktor
e relevan dengan para
t pengguna.
rsÊ kebutuhan, sistemnya mo
bijih mungkin
Seperti yang Anda k
th langkah utamaps dari itu
proses yang eratifes dari membanguning dan
Gambar 2 2.3 menunjukkan dia
menyampaikan
e
kasus
hidup
th
ng beberapa fungsi
fungsionalitas. Menggunakan
melalui en
sistem ban l
siklus hidup
dan bertindak sebagai pemersatu
dia sama Gunakan
e Mode Kasus el digunakan du semua
benang ng. Th
selanjutnyaalur kerja
4 adalah teluk
nanti
adalah. Topik ini mencakup pohon cemaratiga langkah pertama s
lebih lanjut
optik.
Angkae 2.3: Yang utaman langkah
Hak Cipta © Universitas Terbuka Malaysia (OUM)
ekor. Langkah
Machine Translated by Google
36 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
2.2
PEMANGKU KEPENTINGAN, AKTOR DAN PERAN
Dalam Topik 1 kami mencatat bahwa pemangku kepentingan adalah semua orang atau kelompok, baik internal
maupun eksternal organisasi Anda yang akan mempengaruhi atau terkena dampak proposal Anda.
Tentu saja ini termasuk orang-orang yang akan menggunakan sistem tersebut. Dalam UML, istilah untuk
pengguna adalah aktor namun kata ini dapat menimbulkan kebingungan. Kami tidak mengatakan seseorang
adalah aktor Hamlet; kami mengatakan bahwa seorang aktor memainkan peran Hamlet.
Cara berpikir lain tentang peran adalah memakai topi yang berbeda. Satu orang dapat memakai jabatan yang
berbeda, atau memainkan banyak peran berbeda seiring mereka menjalani hari atau suatu proses. Salah satu
contohnya adalah membuat dokumen atau laporan berukuran besar. Awalnya seseorang, sebut saja dia Alice,
otaknya membuang ide ke halaman secepat mungkin. Dia ingin membuat struktur kasar. Dia tidak tertarik pada
ejaan, tata bahasa, atau font. Setelah beberapa jam, dia berpindah ke peran lain, yaitu peran menulis. Di sini
dia mengetik seluruh kalimat. Dia menyertakan grafik dan judul. Dia prihatin tentang ejaan, tata bahasa, dan
font yang benar. Untuk melengkapi dokumen tersebut, ia meminta rekannya Ahmad dan Bernard untuk
mengkajinya. Mereka perlu menambahkan komentar ke dokumen tanpa mempengaruhi teks aslinya. Di atas
kertas, ini adalah coretan di pinggir salinan cetak. Terakhir, Alice mengambil komentar dari semua orang yang
berbeda untuk menghasilkan satu dokumen akhir (lihat Gambar 2.4).
Gambar 2.4: Orang dan peran „memakai topi‰
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 37
2.2.1 Jenis Peran
Ada tiga macam peran atau aktor:
(a) Primer
Seseorang dalam peran ini secara langsung menggunakan sistem untuk memasukkan, melihat
proses atau mengekstrak informasi. Tergantung pada antarmuka pengguna, orang-orang ini
akan menggunakan keyboard, mouse, tombol pada mesin atau berbicara dengan sistem yang
diaktifkan dengan suara. Contoh dalam studi kasus ini adalah petugas check out dan petugas
stok di ruang belakang.
(b) Sekunder
Seseorang dalam peran ini tidak secara langsung menggunakan sistem, namun menggunakan
atau menghasilkan data untuk sistem. Contoh klasiknya adalah seseorang yang menerima
laporan dari suatu sistem, khususnya di departemen lain dalam organisasi. Orang ini mungkin
atau mungkin tidak mengakses sistem untuk mendapatkan laporan, namun merupakan
pengguna informasi. (Biasanya, peran ini diabaikan dalam analisis kebutuhan.) Contoh dalam
studi kasus ini adalah para manajer.
(c) Eksternal
Sistem apa pun yang menerima atau menghasilkan data untuk sistem tersebut adalah sistem
eksternal, misalnya sistem kantor pajak, bank, sistem rekening, dll.
Perhatikan bahwa taksonomi ini sedikit berbeda dari UML dan Larman (2002). Secara khusus, dalam
UML, pengguna dan sistem eksternal diperlakukan sama. Memang benar bahwa keduanya berada di
luar sistem, namun memperlakukan manusia dan komputer dengan cara yang sama tidak kondusif
untuk membangun sistem yang dapat digunakan. Lebih jauh lagi, pengalaman kami menunjukkan
bahwa kebutuhan aktor sekunder seringkali diabaikan. Seringkali kebutuhan akan pelaporan sudah
diketahui, namun alih-alih kebutuhan tersebut diperiksa dengan cermat, respons standarnya adalah
dengan menambahkan alat pelaporan pengguna akhir. Sangat jarang pendekatan sederhana ini dapat
memuaskan. Jika manajemen senior tidak menerima manfaat apa pun dari sistem, maka proyek
tersebut dapat dihentikan.
2.2.2 Perbedaan Peran
Pertanyaan yang perlu Anda tanyakan kepada seseorang yang memegang peran adalah:
(a) Apakah mereka tahu cara menggunakan komputer? Apakah mereka nyaman dengan a
antarmuka pengguna grafis?
(b) Apakah mereka memahami domainnya? (Untuk domain toko video, apakah orang tersebut
mengetahui cara peminjaman video, apakah mereka mengetahui cara kerja sistem penagihan
kartu kredit, atau apakah mereka anggota masyarakat?)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
38 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
(c) Apakah mereka akan menerima pelatihan dalam menggunakan sistem baru?
(d) Bagaimana lingkungan kerja mereka? Apakah ada kebisingan atau cahaya yang cukup? Apakah banyak interupsi
dari orang lain? Apakah mereka harus dapat beralih di antara banyak aplikasi? Seberapa andalkah jaringan
tersebut?
(e) Frekuensi penggunaan. Apakah mereka akan menggunakan aplikasi tersebut setahun sekali, atau sebulan sekali
tujuh puluh kali sehari?
(f) Dalam melakukan pekerjaannya, apakah mereka mengacu pada formulir kertas atau sumber data lainnya?
(g) Mintalah mereka untuk mengurutkan satu atau lebih hal berikut: keandalan, kebenaran,
kepuasan, kemudahan penggunaan.
KEGIATAN 2.3
Berikut adalah dua peran yang sangat berbeda untuk dua sistem yang sangat berbeda.
Petugas untuk perusahaan investasi kecil. Perusahaan ini hanya memiliki 30 klien dan hanya ada
beberapa transaksi per hari, namun jumlah uang dalam setiap transaksi bisa besar.
Remaja di situs klub penggemar Kylie Minogue. Situs web ini memiliki foto, lirik, dan contoh lagu Kylie.
Terdapat fasilitas diskusi dan chatting online.
Untuk masing-masing peran, pertimbangkan apa yang penting bagi seseorang dalam peran tersebut dan tetapkan
prioritas (1, 2, 3, atau 4) untuk masing-masing peran tersebut. Anda tidak dapat menjadikan semuanya sebagai prioritas 1!
Petugas untuk
Investasi
Objektif
Perusahaan
Remaja di Kylie
Klub Penggemar Minogue
Situs web
Keandalan sistem, misalnya hasil
pencarian atau perhitungan sudah benar
Efisiensi, misalnya jumlah langkah
yang diperlukan minimal, sehingga
mengurangi human error
Kepuasan, misalnya pengalaman
menggunakan sistem yang
menyenangkan
Kecepatan, misalnya kecepatan menampilkan
informasi
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 39
2.2.3 Menemukan Peran
Ada dua cara sederhana untuk mulai menemukan peran suatu sistem. Ini adalah melakukan
brainstorming daftar awal dan melihat jabatan yang ada.
(a) Lakukan Brainstorming untuk
Membuat Daftar Awal Baik Anda sendiri atau bersama anggota tim lainnya, cukup tuliskan namanama yang dapat Anda pikirkan. (Saat melakukan brainstorming, jangan khawatir untuk
mendapatkan nama terbaik untuk peran yang akan datang nanti.)
(b) Lihatlah Judul Pekerjaan yang Ada
Ini adalah awal yang baik, namun nama peran tersebut mungkin akan sangat berbeda dengan
jabatan yang ada karena:
(i) Uraian pekerjaan biasanya memerlukan beberapa peran. Misalnya, jabatan "penulis teknis"
dapat dibagi menjadi beberapa peran:
• pencari dokumen;
• pembaca dokumen;
• penulis dokumen; dan/atau
• peninjau dokumen.
Masing-masing peran ini akan memiliki sejumlah kasus penggunaan.
(ii) Judul pekerjaan yang ada biasanya bukan nama peran yang baik karena sudah mempunyai
banyak arti bagi penggunanya ÿ entah ada riwayat mengenai apa yang terkandung dalam
pekerjaan tersebut atau pekerjaan tersebut mempunyai komponen lain yang tidak terkait
dengan sistem baru.
(iii) Terdapat hubungan banyak-ke-banyak antara jabatan dan kasus penggunaan atau tugas.
Oleh karena itu, jabatan bisa menyesatkan.
Peringatan: Jika Anda melakukan analisis peran terlalu jauh, Anda akan mendapatkan peran yang
berbeda untuk setiap kasus penggunaan. Hal ini merupakan kebalikan dari memiliki satu peran, yang
disebut „pengguna‰ yang melakukan segalanya. Di antara kedua ekstrem ini terdapat serangkaian
peran yang berguna dan bisa diterapkan. Terkadang perlu waktu agak lama untuk menyatukannya. Jadi
mulailah dengan daftar awal peran dan berusaha mengidentifikasi kasus penggunaannya. Kemudian
kembalilah dan tinjau teladannya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
40 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
Tabel 2.1 mungkin berguna untuk menyusun para aktor.
Tabel 2.1: Tabel Contoh untuk Penyusunan Aktor
Aktor
Nama Aktor
Jenis
Nama ini
harus bermakna
mungkin.
Judul
Primer
sekunder
Satu atau dua kalimat untuk
Hal ini berguna
menggambarkan aktor secara
atau
rinci
dalam berkomunikasi
dengan staf.
luar
Pentingnya
Aktor
Pekerjaan saat ini
Keterangan
Rendah,
sedang atau tinggi
Mungkin ada beberapa
jabatan untuk
setiap aktor, atau
mungkin ada satu jabatan
banyak aktor.
Terakhir, tetapkan tingkat kepentingan (tinggi, sedang, rendah) untuk masing-masing aktor. Ini
akan menentukan urutan Anda mulai mencari kasus penggunaan. (Tentu saja, seperti halnya
semua hal, setelah Anda melihatnya lebih dekat, kepentingannya mungkin berubah).
Untuk studi kasus POS NextGen yang diperkenalkan pada Topik 1, daftar awal pelakunya dapat
dilihat pada Tabel 2.2.
Tabel 2.2: Daftar Awal Aktor NextGen POS
Nama Aktor
Aktor
Jenis
Kasir
Utama
Keterangan
Menjual barang ke
pelanggan dan
Pekerjaan saat ini
Judul
Asisten toko
Pentingnya
Aktor
Tinggi
Pengawas tugas
mengumpulkan pembayaran
kode batang
Luar
pemindai
** Tidak yakin apakah ini
bagian dari sistem, atau
aktor eksternal
Tak dapat diterapkan
Sedang
Administrator Utama Belum banyak informasi?
Kontrol
inventaris
Luar
Sedang
Tidak berlaku,
tetapi
Sedang
bicaralah dengan gudang
Pengelola
Analis
Sekunder ** Diperlukan penyelidikan
lebih lanjut
Manajer toko
Sedang
Akuntan
Utama
** Diperlukan penyelidikan
lebih lanjut
Akuntan
Sedang
Hitung pajak yang terutang
Tak dapat diterapkan
Rendah
Kalkulator pajak Eksternal
ÿ
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 41
Anda akan melihat bahwa daftar ini memiliki pertanyaan dan menunjukkan di mana lebih banyak pekerjaan yang
diperlukan. Ini normal.
Pekerjaan analisis selanjutnya pasti akan mengubah beberapa informasi ini, namun ini merupakan titik awal
yang baik. Perhatikan bahwa pemindai kode batang telah disertakan, tetapi uraiannya adalah pertanyaan yang
harus diselesaikan. Ini baik-baik saja. Ingatlah bahwa pengembangan berulang adalah tentang memulai dan
terus menyempurnakan serta mengembangkan pekerjaan sebelumnya.
KEGIATAN 2.4
Identifikasi kemungkinan aktor untuk sistem Video Victoria dan kategorikan
mereka sebagai primer, sekunder atau eksternal.
2.3
MENULIS KASUS PENGGUNAAN
Kami telah memiliki pemahaman yang baik tentang aktor (serta peran yang akan dimainkan aktor) dalam Use
Case Model. Aktor adalah entitas di luar sistem yang akan berinteraksi dengan sistem. Apa yang ada di dalam
sistem diwakili oleh use case dalam Use Case Model. Kasus penggunaan adalah cara untuk menemukan dan
mendokumentasikan persyaratan fungsional. Mereka menggambarkan perilaku sistem dari sudut pandang
pengguna. Kasus penggunaan ditulis dalam bahasa yang sederhana sehingga pengguna dan staf TI dapat
memahaminya. Setiap use case harus mencapai sesuatu yang berguna bagi pengguna. Bacaan selanjutnya
memberikan contoh use case singkat.
Kasus penggunaan mendefinisikan janji atau kontrak tentang bagaimana suatu sistem akan berperilaku (Larman,
2002).
Ada tiga jenis format untuk menulis kasus penggunaan. Format yang perlu diperhatikan tergantung pada
kebutuhan. Penjelasan ketiga jenis format use case tersebut diberikan sebagai berikut:
(a) Kasus penggunaan singkat memiliki ringkasan satu paragraf dan biasanya digunakan untuk skenario
keberhasilan utama. Berikut adalah contoh kasus penggunaan format singkat (Dimodifikasi Proses
Penjualan
dari Larman, 2002):
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
42 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
Proses Penjualan:
1. Pelanggan tiba di kasir POS dengan membawa barang dan/atau jasa ke
pembelian.
2. Kasir memulai penjualan baru.
3. Kasir memasukkan pengenal barang.
4. Sistem mencatat item baris penjualan dan menyajikan deskripsi item, harga, dan total
berjalan.
5. Harga dihitung dari seperangkat aturan harga.
6. Sistem menyajikan total pajak yang dihitung.
7. Kasir memberitahukan jumlah totalnya kepada Pelanggan dan meminta pembayaran.
8. Pelanggan membayar dan Sistem menangani pembayaran.
9. Sistem mencatat penjualan yang telah selesai dan mengirimkan informasi penjualan
dan pembayaran ke sistem akuntansi eksternal (untuk akuntansi dan komisi) dan
sistem inventaris (untuk memperbarui inventaris).
10. Sistem menyajikan tanda terima. Pelanggan pergi dengan membawa tanda terima dan barang (jika
setiap).
(b) Kasus penggunaan kasual merupakan paragraf informal yang memiliki banyak paragraf yang
mencakup berbagai skenario. Pengembalian Pegangan yang ditunjukkan pada Bacaan 2.2
adalah contohnya.
(c) Pakaian lengkap terlengkap yang memperlihatkan semua langkah dan variasinya. Ini memiliki
bagian pendukung, seperti prasyarat dan jaminan keberhasilan. Contoh kasus penggunaan
lengkap untuk studi kasus NextGen dapat ditemukan di http://www3.itu.edu.tr/~buzluca/ymt/
ornek_uc.pdf.
Namun, pembahasan detail tentang use case lengkap berada di luar silabus.
Menulis use case, sampai batas tertentu, seperti menulis laporan, dan seperti yang Anda ketahui
jika Anda pernah menulis laporan, akan lebih mudah jika Anda bisa mengikuti beberapa jenis
format. Sebagian besar perusahaan dan organisasi memiliki templat laporan untuk dijadikan acuan
oleh orang-orang. Demikian pula, untuk kasus penggunaan, terdapat templat yang dapat dirujuk
oleh analis sistem. Salah satu templat kasus penggunaan paling populer dikembangkan oleh
Alistair Cockburn. Versi lengkap dan penjelasan rinci tentang templat tersedia di http://
members.aol.com/acockburn/papers/uctempla.doc. Templat kasus penggunaan tidak tercakup
dalam kursus ini.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 43
KEGIATAN 2.5
1. Tulis kasus penggunaan "pinjam video".
2. Menurut Anda mengapa ini merupakan kasus penggunaan yang baik?
Dalam Latihan 2.5 kami memberi Anda nama sebuah use case, tapi tentu saja, biasanya Anda harus
mengerjakan sendiri use case tersebut. Memutuskan di mana satu kasus penggunaan berakhir dan kasus
penggunaan lainnya dimulai memerlukan sedikit latihan. Saat Anda pertama kali mulai menuliskan kemungkinan
kasus penggunaan, jangan terlalu khawatir untuk memperbaikinya. Setelah Anda menulis kasus penggunaan
lebih jauh, Anda akan dapat menentukan batasannya.
KEGIATAN 2.6
Di Aktivitas 2.4, Anda membuat daftar aktor untuk Video Victoria. Kamu sekarang
perlu menyusun daftar aktor, dari yang paling penting hingga yang paling tidak penting
penting, dan buat daftar kasus penggunaannya. Jangan terlalu khawatir
menyempurnakan nama kasus penggunaan. Tulis saja. Nanti
Anda dapat mengubah nama, menghapus kasus penggunaan, atau menambahkan kasus penggunaan.
KEGIATAN 2.7
Dengan menggunakan daftar Anda dari Aktivitas 2.6, pilih penggunaan terpenting berikutnya
kasus aktor yang paling penting dan tulis format singkat kasus penggunaan tersebut.
Sekarang pilih use case lain dan tulis juga dalam format singkat.
Jika semua aktivitas pengembangan sistem didorong oleh bisnis, maka pembuat persyaratan harus bertujuan
untuk mencapai tujuan yang akan memberikan nilai bagi organisasi. Ini berarti bahwa kasus penggunaan:
(a) harus memberikan sesuatu yang bernilai kepada seorang aktor;
(b) biasanya mewakili bagian utama dari fungsionalitas yang lengkap
mulai sampai akhir;
(c) mewakili tujuan interaksi antara aktor dan sistem; tujuan mewakili tujuan yang bermakna dan terukur bagi
aktor; Dan
(d) mencatat sekumpulan jalur (skenario) yang mengambil aktor dari peristiwa pemicu
(awal kasus penggunaan) ke tujuan (skenario keberhasilan).
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
44 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
(e) Mencatat serangkaian skenario yang melintasi aktor dari peristiwa pemicu menuju suatu tujuan
namun gagal mencapai tujuan (skenario alternatif). Format untuk menulis skenario alternatif
adalah sebagai berikut:
kondisi: penanganan
Contoh skenario alternatif tahun 2002)
berdasarkan format di atas:
Proses Penjualan diberikan di bawah ini (Larman,
3a: Pengidentifikasi item tidak valid ditemukan:
kondisi
1. Sistem memberi sinyal kesalahan dan menolak entri
penanganan
3b: Ada beberapa item yang sama: 1. Kasir
dapat memasukkan pengenal kategori item dan jumlahnya
Tuliskan kondisi sebagai sesuatu yang dapat dideteksi oleh sistem atau aktor. Contoh di atas
kondisi
hanya memiliki satu untuk . Pasti ada lebih dari satu kondisi
penanganan
penanganan .
Ingatlah bahwa sebuah use case mungkin memiliki skenario keberhasilan utama dan beberapa
skenario alternatif. Terkadang, ketika kita memiliki sistem yang besar dan rumit untuk
dikembangkan, terdapat banyak skenario yang berbeda. Mustahil untuk menemukan semua
skenario yang mungkin terjadi sejak awal.
Ingat, di UP, semuanya dilakukan secara berulang. Oleh karena itu, ketika Anda pertama kali
mulai menulis kasus penggunaan untuk suatu sistem, yang terbaik adalah mengabaikan semua
skenario alternatif dan hanya memikirkan segala sesuatunya berjalan dengan baik ÿ „skenario
hari cerah‰. Skenario alternatif dapat ditambahkan pada iterasi mendatang. Tentu saja, skenario
yang berhasil juga dapat direvisi dan diubah pada tahap selanjutnya.
AKTIVITAS 2.8
Kami telah menulis skenario keberhasilan utama untuk „meminjam video‰
kasus penggunaan di Aktivitas 2.5. Cobalah untuk memikirkan beberapa skenario alternatif dan
menyajikannya dalam format singkat yang mirip dengan skenario keberhasilan utama.
Bandingkan jawaban Anda dengan teman kursus Anda di myVLE.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 45
Tujuan utama UP adalah membantu pengembang sistem untuk membangun sistemnya secara sistematis.
Pengembangan sistem yang buruk cenderung dilakukan oleh pengembang yang tidak dapat menilai apa
yang harus mereka lakukan pada setiap tahap dari keseluruhan siklus pengembangan. Kesalahan umum
adalah terjun ke desain sistem sebelum analisis kebutuhan yang baik tersedia. Oleh karena itu, dalam
kerangka UP, pendekatan kasus penggunaan kotak hitam biasanya diadopsi untuk membantu pengembang
sistem menghindari kesalahan yang sama dua kali. Sekarang mari kita bahas istilah tersebut. Sesuatu
disebut kotak hitam jika kita tidak bisa melihat cara kerjanya. Misalnya, dari sudut pandang pengemudi
mobil, mobil adalah kotak hitam. Mobil itu bergerak dengan benar atau tidak. Jika ada masalah, maka
montir mobil datang dan dengan tampilan kotak putih, mengangkat kap mobil dan melihat mesin serta
bagian dalamnya. Oleh karena itu, dalam pendekatan black-box dalam penulisan kasus penggunaan, kita
tidak peduli tentang bagaimana sistem akan melakukan tugasnya tetapi hanya fokus pada apa yang
diharapkan dari sistem.
Dengan kata lain, kami hanya fokus pada tanggung jawab sistem. Contoh kasus penggunaan kotak hitam
ditunjukkan di bawah ini:
Gaya Kotak Hitam
Sistem memperbarui nilai siswa
Bukan Gaya Kotak Hitam
Sistem menulis tanda baru ke database
Sistem menghasilkan pernyataan SQL UPDATE
untuk tugas tersebut
Terkadang kebingungan masih muncul meskipun kita mengadopsi pendekatan kotak hitam, karena orang
yang berbeda mempunyai pemahaman yang berbeda tentang „apa yang dilakukan sistem‰. Misalnya,
seorang kasir mungkin menganggap tujuannya sebagai „login‰, namun sebenarnya ini hanyalah
mekanisme yang mencapai tujuan tingkat yang lebih tinggi yaitu mengidentifikasi dan mengautentikasi
dirinya.
Saat menulis kasus penggunaan, jauhkan antarmuka pengguna dan fokus hanya pada aktor
maksud.
AKTIVITAS 2.9
Sekarang ambil tiga kasus penggunaan dari Aktivitas 2.5 dan 2.7 dan tulis ulang
dalam format dua kolom yang penting. (Ya, menulis kasus penggunaan itu sulit
berhasil, tetapi semakin banyak Anda menulis, semakin mudah jadinya. Hal ini tidak cukup baik untuk dilakukan
lihat saja jawabannya. Anda harus berlatih). Pokoknya jawabannya bisa
diperoleh pada akhir modul.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
46 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
2.3.1 Tujuan dan Tingkat Kasus Penggunaan
Sekarang Anda sudah mempunyai gambaran tentang apa itu use case dan, secara umum, tahu cara penulisannya. Sekarang,
mari kita mundur sejenak dan mengajukan pertanyaan mendasar: Apa yang seharusnya menjadi tujuan dari use case?
Seperti yang kami sebutkan sebelumnya, pengguna yang berbeda memiliki tujuan yang berbeda. Misalnya, manajer umum
sebuah toko ritel mengharapkan sistem ritel di perusahaannya untuk menyederhanakan seluruh proses ritel. Sebaliknya,
kasir mungkin mengharapkan sistem yang sama untuk membaca barcode barang dengan benar dan efisien. Nah, manakah
dari dua persyaratan berikut yang harus diubah menjadi kasus penggunaan? Faktanya, tidak satu pun dari keduanya yang
bisa menjadi kasus penggunaan yang baik.
Sasaran manajer umum berada pada tingkat yang terlalu tinggi sedangkan sasaran kasir terlalu rendah. Jadi, tingkat sasaran
pengguna apa yang dapat diubah menjadi kasus penggunaan? Pedoman umumnya adalah dengan melihat Proses Bisnis
Dasar (EBP). Bacaan 2.1 akan menjelaskan kepada Anda konsep EBP. Ini juga memberikan contoh yang sangat jelas
tentang bagaimana seorang analis sistem menyelidiki tujuan pengguna kasir melalui serangkaian pertanyaan dan
mengidentifikasi tingkat tujuan yang sesuai untuk menulis kasus penggunaan.
Sekarang unduh Reading 2.1 dari myVLE untuk mempelajari tentang tujuan dan cakupan penggunaan
kasus.
Sistem informasi adalah entitas abstrak yang terdiri dari perangkat lunak, perangkat keras, dan aplikasi. Namun, meskipun
kita tidak dapat memvisualisasikan keseluruhan sistem informasi, untuk keperluan kasus penggunaan, kita perlu menentukan
batasannya. Ibarat membangun rumah, kita perlu melakukan survey tanah untuk menentukan batas tapak rumah yang akan
dibangun. Batasan sistem yang jelas membantu dalam mengidentifikasi aktor yang tepat untuk menggunakan kasus, yang
pada gilirannya, membantu analis sistem untuk mencapai tujuan.
Prosedur empat langkah yang diusulkan untuk mendefinisikan kasus penggunaan tercantum di bawah ini:
(a) menentukan batas sistem yang tepat;
(b) mengidentifikasi aktor-aktor utama;
(c) mengidentifikasi tujuan para aktor; Dan
(d) mendefinisikan dan memberi nama kasus penggunaan.
Sekarang unduh Reading 2.2 dari myVLE untuk mempelajari prosedur empat langkah untuk mendefinisikan kasus
penggunaan seperti yang tercantum di atas.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 47
KEGIATAN 2.10
Untuk Video Victoria, hingga saat ini kami telah mencoba mengidentifikasi aktor dan
beberapa kasus penggunaan singkat. Namun, semua ini diproduksi oleh kami
imajinasi. Dalam sistem nyata, cara yang tepat untuk melakukan persyaratan
analisis adalah melakukan kombinasi dari banyak kegiatan seperti:
(a) Membaca dokumentasi apa pun yang telah dikumpulkan;
(b) Lihatlah sistem apa pun yang ada saat ini. Lihatlah layar dan
laporan. Lihat apakah Anda dapat melacak beberapa contoh nyata sepenuhnya
melalui. Misalnya, untuk sistem asuransi, Anda bisa melihat caranya
kebijakan dibuat, dan kemudian bagaimana klaim dapat diproses;
Dan
(c) Berbicara dengan pihak-pihak yang berkepentingan. Biasanya Anda memulai dengan
mengadakan beberapa lokakarya persyaratan pengguna. Gunakan inisial
analisis aktor berfungsi sebagai panduan tentang siapa yang harus hadir
bengkel. Untuk lokakarya pertama, yang terbaik adalah melibatkan lebih banyak orang
daripada menguranginya karena Anda memerlukan jangkauan pandangan seluas mungkin.
Nantinya, Anda dapat mengadakan lokakarya yang jauh lebih kecil untuk dikonsentrasikan
daerah tertentu.
Siapkan daftar pertanyaan yang ingin Anda tanyakan kepada berbagai orang
dari Video Victoria.
Penting bagi Anda untuk memahami Model Kasus Penggunaan karena ini adalah elemen penting dalam
Analisis & Desain Sistem Berorientasi Objek (OOSAD) dan merupakan salah satu tugas paling awal
dalam keseluruhan proyek pengembangan sistem. Keberhasilan proyek di masa depan bergantung pada
penggunaan kasus yang tepat. Karena terkadang bermanfaat untuk mendekati suatu topik dari sudut
pandang yang berbeda, kami ingin Anda memperkuat pemahaman Anda tentang Model Kasus
Penggunaan dengan membaca bacaan berikutnya dari Cockburn:
http://alistair.cockburn.us/structuring+use+cases+with+goals
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
48 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
2.3.2 Format Penulisan Use Case
Ada tiga jenis format untuk menulis kasus penggunaan. Format yang perlu diperhatikan tergantung
pada kebutuhan. Penjelasan untuk ketiga jenis format kasus penggunaan ini diberikan di bawah
ini:
(a) Kasus penggunaan singkat memiliki ringkasan satu paragraf dan biasanya merupakan contoh
Proses Penjualan yang ditunjukkan pada
untuk skenario keberhasilan utama seperti
Reading 2.1.
(b) Kasus penggunaan kasual merupakan paragraf informal yang memiliki banyak paragraf yang
mencakup berbagai skenario. Pengembalian Pegangan yang ditunjukkan pada Bacaan
2.2 adalah contohnya.
(c) Pakaian lengkap format terlengkap yang menunjukkan semua langkah dan variasi. Ini memiliki
bagian pendukung, seperti prasyarat dan jaminan keberhasilan.
Menulis use case, sampai batas tertentu, seperti menulis laporan dan seperti yang Anda ketahui
jika Anda pernah menulis laporan, akan jauh lebih mudah jika Anda bisa mengikuti beberapa
jenis format. Sebagian besar perusahaan dan organisasi memiliki templat laporan untuk dijadikan
acuan oleh orang-orang. Demikian pula, untuk kasus penggunaan, terdapat templat yang dapat
dirujuk oleh analis sistem. Salah satu templat kasus penggunaan paling populer dikembangkan
oleh Alistair Cockburn. Versi lengkap dan penjelasan rinci tentang templat tersedia di http://
alistair.cockburn.us/Basic+use+case+template. Templat kasus penggunaan tidak dibahas dalam
kursus ini.
Bab e-book berikut dari perpustakaan digital OUM (Books24x7) berisi penjelasan lebih lanjut dan
studi kasus „Mesin Soda‰ tentang kasus penggunaan. Anda wajib membaca bab ini.
Schmuller, Joseph. "Jam 6 - Memperkenalkan Kasus Penggunaan". Sams Ajarkan Diri Anda
UML dalam 24 Jam. Sam. © 1999. Buku24x7. http://common.books24x7.com/toc.aspx? buku
buku=414
Kami akan meninjau kembali studi kasus „Mesin Soda‰ di Topik 4 dan Topik 5
2.3.3 Diagram Kasus Penggunaan
„Sebuah gambar melukiskan ribuan kata‰: terkadang ilustrasi visual dapat mewakili ide-ide rumit
dengan cara yang sederhana dan mudah. Diagram use case dapat memberikan pandangan
statis dari suatu sistem sehingga memungkinkan kita memiliki gambaran umum tentang sistem
dan hubungan antara use case serta aktor-aktor sistem.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 49
Gambar 2.5 merupakan notasi UML sederhana untuk menggambarkan suatu use case.
Gambar 2.5: Notasi use case diagram
Kumpulan diagram use case akan membentuk konteks diagram use case yang menunjukkan ruang
lingkup sistem dan hubungan antara aktor dan use case. Ini berfungsi sebagai ringkasan diagram perilaku
sistem.
Menurut Larman (2002), diagram use case hanya bersifat sekunder dalam penulisan use case.
Pengembang sistem tidak boleh menghabiskan terlalu banyak waktu untuk menggambar diagram use
case. Menulis teks use case harus menjadi fokus utama.
Sekarang unduh Reading 2.3 dari myVLE untuk mempelajari diagram kasus penggunaan secara detail.
KEGIATAN 2.11
Dengan menggunakan contoh diagram use case yang ditunjukkan pada Gambar 2.5
Membaca 2.3 sebagai panduan, gambarkan diagram use case untuk Video Victoria.
2.3.4 Diagram Aktivitas
Untuk banyak aplikasi, sangatlah penting untuk melihat bagaimana semua kasus penggunaan cocok
untuk mencapai sesuatu secara keseluruhan. Hal ini terutama berlaku ketika ada banyak orang berbeda
yang terlibat dalam keseluruhan aktivitas. Misalnya, salah satu tantangan utama bagi bisnis yang menjual
produk melalui Internet adalah menyelesaikan seluruh sisi pemenuhannya. Mengambil pesanan dan
uangnya adalah hal yang mudah! UML memiliki notasi yang disebut diagram aktivitas. Diagram ini, dalam
banyak aspek, sangat mirip dengan diagram alir. Mereka dapat digunakan pada berbagai tahap
pengembangan, mulai dari persyaratan hingga pemrograman terperinci.
Diagram berikut menunjukkan bagaimana berbagai aktor menggunakan use case mereka sendiri untuk
mencapai keseluruhan tugas. Diagram tersebut memiliki „jalur berenang‰ untuk masing-masing aktor
yang berbeda.
Setiap sistem berbeda sehingga Anda harus memutuskan apakah diagram aktivitas berguna atau tidak.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
50 ÿ ATAS
REMENT
GAMBAR 2 DIPERLUKAN
DAN U
KASUS PENGGUNAAN
Gambar 22.6: Sebuah contoh le suatu kegiatan kamu diagram
AKTIVVITA 2.12
Apakah
pikirkan suatu tindakan
p jelaskan caranya wa
diagram aktivitas saya akan membantu
Anda kasus penggunaan untuk Vic
Video toria
Jika demikian, thdan
s sistem cocok t
Catatan:
Kami tidak mencoba menggambar
menggambarnya.
N
e dari mereka itu
sistem ole, bu
tapi hanya beberapa
membuat smasuk akal bagi kita
berfungsi sebagai siapa
ole.
WHO
bagian
dari
keseluruhan?
bersama-sama untuk atau
fo
semua
kasus penggunaan
di membuat proses itu
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN ÿ 51
2.3.5 Potensi Masalah pada Kasus Penggunaan
Menulis kasus penggunaan yang efektif bukanlah perkara sederhana dan ada sejumlah kendala yang
harus dihindari. Berikut sepuluh hal yang diidentifikasi oleh Lilly (1999):
(a) Batas sistem tidak terdefinisi atau tidak tetap;
(b) Kasus penggunaan ditulis dari sudut pandang sistem;
(c) Nama aktor tidak konsisten;
(d) Ada terlalu banyak kasus penggunaan;
(e) Hubungan aktor-ke-use case menyerupai jaring laba-laba;
(f) Spesifikasi kasus penggunaan terlalu panjang;
(g) Spesifikasi kasus penggunaan membingungkan;
(h) Kasus penggunaan tidak menjelaskan hak fungsional dengan benar;
(i) Pelanggan tidak memahami kasus penggunaan; Dan
(j) Kasus penggunaan tidak pernah selesai.
Dalam menulis daftar ini, Lilly (1999) tidak menentang use case, namun mencoba mengingatkan
pendatang baru terhadap potensi masalah dan menyarankan cara untuk menghindarinya. Dia
menyarankan:
(a) Definisikan batas sistem secara eksplisit. Ini memperjelas apa yang ada di dalamnya
sistem dan apa yang ada di luar sistem;
(b) Manfaatkan templat standar untuk mendokumentasikan spesifikasi kasus penggunaan Anda. Jika
tim menggunakan templat, ini akan membantu komunikasi antar anggota tim serta membantu
pendatang baru untuk memulai;
(c) Saat menulis use case, fokuslah pada tujuan para aktor. Hal ini akan membantu Anda menemukan
kasus penggunaan dari sudut pandang pengguna dan tetap fokus pada fungsi utama sistem;
Dan
(d) Jangan menjadikan spesifikasi kasus penggunaan sama dengan desain antarmuka pengguna.
Anda dapat menggunakan representasi antarmuka pengguna dengan fidelitas rendah, namun
karena desain antarmuka pengguna sangat bergantung pada perubahan khusus desain,
sebaiknya jangan menyertakannya sebagai bagian dari persyaratan jika Anda ingin membuatnya
ditandatangani lebih awal daripada nanti.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
52 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
Untuk membantu menangkap potensi masalah, Lilly menyarankan agar Anda meninjau Model Kasus Penggunaan
Anda, diagram dan spesifikasinya secara bertahap dengan tim pengembangan, klien, dan pengguna. Mulailah
dengan meninjau diagram use-case Anda sebelum Anda menentukan detail use case, periksa apakah batasan
sistem telah didefinisikan dengan jelas, tidak ada aktor yang terlewatkan, dan use case fokus pada tujuan
pengguna.
KEGIATAN 2.13
Bedakan antara kasus penggunaan dan pernyataan persyaratan. Memeriksa
jawaban Anda di <http://ootips.org/use-cases-vs-requirements.html>
2.3.6 Cara Menangani Ratusan Kasus Penggunaan
Studi kasus yang sedang Anda kerjakan sengaja dipilih menjadi aplikasi kecil. Jadi, Anda mungkin bertanya-tanya
bagaimana proses ini 'ditingkatkan' untuk memenuhi sistem yang lebih besar yang mungkin memiliki 200+ kasus
penggunaan. Kuncinya adalah mengatur kasus penggunaan sehingga tim dapat memahaminya. Salah satu teknik
spesifiknya adalah dengan mengatur use case ke dalam kelompok atau paket.
Paket UML adalah mekanisme untuk mengelompokkan apa pun menjadi satu. Jadi use case package merupakan
kumpulan use case, aktor bahkan paket use case lainnya untuk menyusun model use case dengan membaginya
menjadi bagian-bagian yang lebih kecil. Jadi, daripada mencoba memahami 200+ kasus penggunaan, tim mungkin
hanya perlu memahami 20 paket kasus penggunaan. Oleh karena itu, masing-masing anggota tim perlu memahami
detail beberapa paket kasus penggunaan.
Memutuskan paket untuk suatu sistem memerlukan sedikit pengalaman dan umumnya terdapat beberapa
pendekatan yang valid untuk satu sistem. Beberapa kemungkinan untuk mengemas kasus penggunaan tercantum
di bawah ini:
(a) Berdasarkan area fungsional. Misalnya, letakkan segala sesuatu yang berkaitan dengan uang dalam satu
paket, dan inventaris di paket lain.
(b) Oleh aktor. Misalnya, letakkan semua kasus penggunaan kasir dalam satu paket.
(c) Berdasarkan "gaya" kasus penggunaan. Misalnya, letakkan semua kasus penggunaan gaya pengaturan atau
pemeliharaan sederhana dalam satu paket.
(d) Berdasarkan kepentingan atau pengulangannya. Misalnya, semua kasus penggunaan yang akan dilakukan
dibangun dulu bisa dalam satu paket.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
DAN
D KASUS PENGGUNAAN
KE
PERSYARATAN OPICUIREMENT
2
ÿ 53
N. Untuk ujian Sederhananya, semua
kasus penggunaan
implementasi
itu del
(e) Secara fisik im
ases
diakses d melalui
dijalani melalui th
dia Web ada di n satu paket
ge, dan gunakan c
heakantor iklan com puter berada di paket
a
lain
usia.
Umum
kasus penggunaan
tolong mendekat itu yang terbaik. Desember
hanya kombinasition multip
menyebutkan
sebuah
kolaboratif
sudah ada usaha di antara keduanya
antara
penggunaan
analis
eh, persyaratannya
paketnya s biasanya a
desain basis datapengacau dan itue manajer
, teknisnya
al arsitek, hal mungkin d
kemarahan,
proyek
R.
UML
Notasi L untuk paket ra adalah di folder. Ho
Namun,, seperti mereka
ditekankan
lebih penting dari diagram
t
dia menggunakan kasuslebih
i
ea
. Seringkali a
rlier, teks t
kasus penggunaan
penting
kasusnya, ikutimenikah dengan daftar ojika
hanya sebagai deskripsi singkation kegunaannya
paket
termasuk
kegunaannya
kasus tha di terdiri dari t menggunakan paket.
Secara opsional, saya
diagram kasus m dari
kasus penggunaan
s (lihat Gambargambar 2.7).
Gambar 2.7: Kasus penggunaan hal
kemasan
2.4
CAPTU
URING R PERALATAN
MENS I ITERATIV
VELY
Tt
Topik
Seperti yang Anda pelajari di semua
kegiatan dalam kesatuan
1 ,
proses ed masuktermasuk
s, akan selesai tidak secara berulang
persyaratan
analisis
kamu. Seluruh proses hal
memperbaiki
era. Itu
kasus
menulis ting ini digunakan untuk
penggunaan
beberapa
ini mungkin
hal
ta
pekerjaan dan
kasus memiliki
tion
s membentang bo
lainnya awal mulanya
saja
dan elab
fase borasi
ch konstanta
diselesaikan un sampai kita bereaksi
kamu tidak menjadi rekan
pekerjaan f
se dari UP
P. Mungkin
fase truk
as. Distribusi
untuk kebutuhan saya
analisis entitas dan kasus penggunaanes
menulis thr
pada
kondisi
ch tergantung o
ini
sepanjang
ion dan
ransum dan halfase di UP sangat banyak
kebutuhanf sistem d
pengembangan itu sendiri serta pekerjaan
ng gaya
e
tim manajemen.
H
Namun,
karena pekerjaan
pedoman,
kemarahan
sebagian
akan
besar
dilakukan
selama ini
pengembangan
sistem
t dari persyaratan
seorang analisis
gu umum
iterasi
s di elabo
fase ransum.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
54 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
Khususnya pada sistem yang besar, kuncinya adalah mengidentifikasi semua
secara arsitektural
kasus penggunaan yang signifikan kasus sedini mungkin dan membiarkan kasus penggunaan yang kurang
penting untuk dibahas nanti. Signifikan secara arsitektural di sini berarti semua fungsi penting dari
sistem. Kasus penggunaan sangat penting dan penting dalam Proses Terpadu (Larman, 2002).
Selama analisis persyaratan, kasus penggunaan adalah produk utama. Namun, seperti yang kami
catat sebelumnya, kasus penggunaan memenuhi persyaratan fungsional sistem. Seperti yang Anda
ingat, ada juga persyaratan non-fungsional yang perlu diidentifikasi. Di samping kasus penggunaan,
ada tiga artefak lagi dalam alur kerja persyaratan – visi, spesifikasi tambahan, dan glosarium.
Ketiga artefak ini menangkap persyaratan sistem lain yang tidak dapat ditangkap dalam kasus
penggunaan. Spesifikasi tambahan mencakup persyaratan non-fungsional lainnya dalam kategori
URPS+ seperti dokumentasi, pengemasan, dukungan, persyaratan perizinan, dll. Visi tersebut
mungkin merupakan dokumen tingkat tertinggi proyek, yang memberikan gambaran luas tentang
tujuan dan kebutuhan bisnis proyek. proyek dan bagaimana sistem yang diusulkan akan terlihat. Ini
menetapkan tujuan akhir proyek dari perspektif bisnis organisasi. Glosarium ini terutama berfungsi
sebagai kamus data untuk keseluruhan proyek pengembangan sistem. Ini dengan jelas mendefinisikan
semua istilah teknis dalam konteks pengembangan sistem untuk menghindari masalah komunikasi
dan ambiguitas yang mungkin timbul selama keseluruhan proses pengembangan.
Pembahasan rinci tentang visi, spesifikasi tambahan, dan glosarium tidak termasuk dalam cakupan
kursus ini.
• Setiap proyek pengembangan sistem dimulai dengan analisis kebutuhan. Mendapatkan persyaratan
yang tepat sangat penting untuk keberhasilan pengembangan sistem terutama untuk sistem
yang besar dan kompleks serta dalam lingkungan bisnis yang berubah dengan cepat.
Berbeda dengan siklus hidup pengembangan sistem air terjun tradisional (di mana analisis
persyaratan dilakukan dan diselesaikan sebelum tahap desain dan implementasi), model UP
memiliki alur kerja (disiplin) persyaratan yang diperluas ke seluruh proses pengembangan
sistem. Dengan kata lain, analisis kebutuhan dilakukan secara iteratif.
• Berbagai jenis persyaratan dikategorikan sebagai fungsional atau non-fungsional menurut model
FURPS+. Dalam konteks UP, penulisan persyaratan didasarkan pada model use case.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
DAN
D KASUS PENGGUNAAN
KE
PERSYARATAN OPICUIREMENT
2
• kamu
ÿ 55
mod kasus penggunaan
del
termasuk t identitasnya
asi aktor
s, tujuan mereka dan
ases.
Kesenangan
kemarahan
persyaratan nasional
ditangkap dalam use case dia
ca
kasus S. Kadang-kadang,,
membantu ke bawahtand
agram bisa b terbiasa dengan dia
lebih dari itu
aliran
ev
ventilasi
dan
hubungan antara
semua gambar rs sistem, t
menulispenggunaan
aktor dan menggunakan cas
se.
• Lainnya eh tidak berfungsipersyaratan pribadi
dikirim ke tempat lain
eh artefak seperti itu
ch karena
persyaratannya sudah ditentukan
visio aktif, supel
spesifikasi masukikasi dan g
s membentuk arti fakta di re
kasus penggunaan
Glosarium. Itu
artefak ini bersama dengan
alur kerja peralatan.
Aktor
Kita
se kasus
ment
Fungsi persyaratan pribadi
Kita
se kasus aktivitaskamu diagram
Non-fu
saya
Kita
lihat diagram kasus
perlengkapan
persyaratan nasional
Peran
Konstan
Kita
se paket kasus
ya
untuk
Siap ing, MA:
LAD (1999
9). Perangkat lunak untuk
perawatan
rinci
ddison-Wesley kamu. (Memberikan iklan
ment penggunaankasus penggunaan untuk
o merancang
itu antarmuka pengguna
ce. Lihat juga th situs web pewaris <www.foruse.
<
.com>)
Lockwood, L
tine, LL, & Ad
W menulis
Efek
ayam jantan
rn, A. (2002).
menggunakan.
kasus penggunaan aktif
S.
Boston, MA J: Addison W
Eriksson n, DIA, & Pe
S pemodelan
enkus, M. (20 000). Bisnis
rk.
pola di tempat kerja
New York k, NY: Wiley
. (Sampul ini
menepuk
e model kasus seperti saat ini tidak ada di bagian atas foto.)
ini
Wesley.
w
dengan UML ÿ
B
Bisnis
sampai batas tertentu
nsions
menggunakan
Larman,
C.(2002).
Hasemua.
Lilly, S.(
L dan pola
menerapkan UML
Aplikasi
(1999). Ambil
Bagaimana
Hindari
ToA UseCas
diambil dari: htt tp://www.ap
S. Sadd Atas
sungai kecil, NJ:
pi.adm.br/GR
RS/referensi
sePitfalls.pdf
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Pembantu tukang
sebagai/
Machine Translated by Google
56 ÿ TOPIK 2 PERSYARATAN DAN KASUS PENGGUNAAN
Robertson, S., & Robertson, J. (1999). Mengelola persyaratan. Menguasai
proses persyaratan.
Addison-Wesley. (Lihat juga situs web mereka
untuk templat persyaratan, <http://www.atlsysguild.com/GuildSite/Robs/
Template.html>
Zachman, J. Kerangka Zachman. Diperoleh dari: http://www.zachman
international.com (Pilih „Framework‰ dari menu sebelah kiri. Zachman
Framework memberikan gambaran lengkap tentang persyaratan dari
perspektif perusahaan.)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Tema
3
ÿ Berorientasi Objek
Pemodelan
HASIL BELAJAR
Pada akhir topik ini, Anda seharusnya mampu:
1. Menentukan langkah-langkah elaborasi; 2.
Menerapkan diagram urutan sistem; 3. Menjelaskan
tujuan pemodelan domain; 4. Menjelaskan apa itu kelas
konseptual; Daftar teknik untuk menemukan kelas
5.
konseptual;
6. Mendefinisikan istilah asosiasi dan atribut;
7. Gambarlah diagram kelas domain untuk domain tertentu, menggunakan metode yang benar
Notasi diagram kelas UML; Dan
8. Mendiskusikan permasalahan penerapan UML pada berbagai perspektif dan
model dan menjelaskan apa yang dimaksud dengan kesenjangan representasi.
ÿ PENDAHULUAN
Dari Topik 2 kami telah mendefinisikan persyaratan sistem kami sampai tingkat tertentu.
Mudah-mudahan kita memahami dengan jelas ruang lingkupnya (yakni, apa yang disertakan) dan mempunyai
beberapa kasus penggunaan dan mungkin diagram kasus penggunaan yang telah ditulis untuk bagian-bagian
sistem.
Sampai saat ini belum ada yang berorientasi objek dalam materi. Kita bisa menulis kasus penggunaan dan
kemudian melanjutkan dengan cara yang tidak berorientasi objek. Pada topik ini, kita memulai pemodelan
berorientasi objek yang akan berlanjut untuk beberapa topik. Meskipun materi disajikan kepada Anda secara
berurutan, pada kenyataannya pemodelan berorientasi objek terjadi secara paralel dengan penulisan use
case.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
58 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
Topik ini membahas tentang pemodelan domain. Mengapa kita melakukan ini? Hal ini karena
kita perlu mengkonfirmasi pemahaman kita tentang domain dan ruang lingkup masalahnya.
Dalam beberapa kasus, pengembang perangkat lunak atau analis sistem telah memahami
domain tersebut, namun dalam banyak kasus masih ada beberapa pembelajaran yang harus
dilakukan. Di bidang spesialis tertentu, seperti keuangan, desainer TI diharapkan mengetahui
banyak tentang domain keuangan. Meskipun teorinya mungkin terlihat cukup mudah, Anda
perlu berlatih melalui aktivitas dan tutorial. Pada akhir topik ini Anda akan memiliki model
domain untuk Video Victoria.
3.1
DARI AWAL SAMPAI ELABORASI
Topik ini, yang berfokus pada pemodelan domain, memberikan pertemuan pertama Anda
dengan pemodelan berorientasi objek. Sebelum membahasnya secara detail, mari kita
periksa di mana posisi kita sekarang di UP. Ingatlah bahwa UP memiliki dua aspek: fase dan
disiplin (atau alur kerja). Pada tahun ,Topik
Anda 2mengerjakan satu persyaratan disiplin yang
penting. Dengan menggunakan model use case, Anda melihat bagaimana menghasilkan
sejumlah artefak dalam alur kerja persyaratan, termasuk use case (yang mungkin
menggabungkan beberapa diagram use case), visi, spesifikasi tambahan, dan glosarium.
Sekali lagi, kami ingin menekankan bahwa artefak ini tidak diproduksi sekaligus: UP didirikan
atas dasar pemikiran bahwa semua tugas dilakukan secara bertahap dan berulang. Sebagian
besar tugas dalam alur kerja persyaratan diselesaikan selama fase awal dan elaborasi.
(Tentu saja, dalam dua fase ini, tugas-tugas lain juga dilaksanakan.) Jadi setelah fase awal,
penting untuk memeriksa apa yang telah dilakukan dan apa yang akan kita lakukan pada
fase elaborasi.
Selama fase awal, kita harus menetapkan kasus bisnis untuk sistem dan menentukan ruang
lingkup proyek. Untuk mencapai hal ini kita harus mengidentifikasi seluruh entitas eksternal
yang akan berinteraksi dengan sistem (aktor dan peran mereka) dan mendefinisikan sifat
interaksi ini pada tingkat tinggi. Hal ini melibatkan identifikasi semua kasus penggunaan dan
penjelasan (secara singkat) beberapa kasus penggunaan yang signifikan. Kasus bisnis
mencakup kriteria keberhasilan, penilaian risiko dan perkiraan sumber daya yang dibutuhkan
serta rencana fase yang menunjukkan tanggal pencapaian utama.
Hasil dari fase awal harus mencakup:
(a) Dokumen visi: visi umum tentang persyaratan proyek, fitur utama, dan kendala utama;
(b) Model kasus penggunaan awal (selesai 1020 persen);
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 59
(c) Glosarium proyek awal;
(d) Kasus bisnis awal, yang mencakup konteks bisnis, kriteria keberhasilan (proyeksi pendapatan,
pengakuan pasar, dan sebagainya), dan perkiraan keuangan;
(e) Penilaian risiko awal;
(f) Rencana proyek yang menunjukkan tahapan dan iterasi;
(g) Model bisnis, jika diperlukan; Dan
(h) Satu atau beberapa prototipe sederhana.
Fase permulaan tidak boleh berlangsung lama, umumnya satu sampai dua minggu, sehingga
banyak hal dalam daftar di atas yang dimulai tetapi tidak selesai.
Misalnya, prototipe arsitektur yang serius dapat memerlukan waktu satu bulan untuk memilih dan
menginstal teknologi yang relevan (perangkat keras dan perangkat lunak) dan kemudian
membangunnya. Artefak yang dihasilkan harus singkat dan tidak lengkap. Tonggak sejarah proyek
besar pertama adalah pada akhir fase awal. Kriteria evaluasi untuk tahap awal adalah:
(a) Para pemangku kepentingan menyepakati definisi ruang lingkup dan perkiraan biaya atau jadwal;
(b) Pemahaman persyaratan seperti yang disajikan dalam kasus penggunaan utama;
(c) Kredibilitas perkiraan biaya atau jadwal, prioritas, risiko dan proses pembangunan;
(d) Kedalaman dan keluasan setiap prototipe arsitektur yang dikembangkan; Dan
(e) Pengeluaran aktual versus pengeluaran yang direncanakan.
Jika tonggak sejarah tahap awal tidak terpenuhi, ruang lingkup proyek dapat didefinisikan ulang,
atau bahkan mungkin dibatalkan. Jika melewati tonggak sejarah tersebut, tim proyek memasuki
fase elaborasi di mana penyelidikan persyaratan yang lebih mendalam dilakukan dan implementasi
arsitektur inti dimulai. Tujuan dari tahap elaborasi adalah untuk menganalisis domain masalah,
membangun landasan arsitektur yang kuat, mengembangkan rencana proyek dan menghilangkan
elemen risiko tertinggi dari proyek. Keputusan arsitektur harus dibuat dengan pemahaman tentang
keseluruhan sistem: ruang lingkupnya, fungsionalitas utama dan persyaratan non-fungsional
seperti persyaratan kinerja, dll.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
60 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
Dalam hal manajemen proyek, fase elaborasi adalah fase paling kritis dari empat fase.
Pada akhir fase ini, 'rekayasa' yang sulit dianggap selesai dan tim proyek harus membuat
keputusan yang sangat penting apakah akan berkomitmen atau tidak pada fase
konstruksi dan transisi. Bagi sebagian besar proyek, hal ini juga berkaitan dengan
transisi dari operasi berbiaya rendah dan berisiko rendah ke operasi berbiaya tinggi dan
berisiko tinggi dengan investasi besar. Meskipun prosesnya harus selalu mengakomodasi
perubahan, aktivitas fase elaborasi memastikan bahwa arsitektur, persyaratan, dan
rencana cukup stabil dan risiko cukup dimitigasi, sehingga Anda dapat menentukan
biaya dan jadwal penyelesaian pengembangan.
Pada tahap elaborasi, prototipe arsitektur yang dapat dieksekusi dibangun dalam satu
atau lebih iterasi, bergantung pada cakupan, ukuran, risiko, dan kebaruan proyek.
Upaya ini setidaknya harus mengatasi kasus penggunaan utama yang diidentifikasi
pada tahap awal, yang biasanya mengungkap risiko teknis utama proyek. Meskipun
prototipe evolusioner dari komponen berkualitas produksi selalu menjadi tujuannya, hal
ini tidak mengecualikan pengembangan satu atau lebih prototipe eksploratif dan sekali
pakai untuk memitigasi risiko tertentu seperti pengorbanan desain atau persyaratan,
studi kelayakan komponen, atau demonstrasi kepada investor, pelanggan. dan
pengguna akhir. Hasil dari tahap elaborasi adalah:
(a) Model use case (setidaknya 80 persen selesai): semua use case dan aktor telah
diidentifikasi, dan sebagian besar deskripsi use case telah dikembangkan;
(b) Persyaratan tambahan: persyaratan ini mencakup persyaratan non-fungsional dan
persyaratan apa pun yang tidak terkait dengan kasus penggunaan tertentu;
(c) Diagram urutan sistem yang menggambarkan kejadian dan urutannya: diagram ini
dihasilkan oleh aktor dan kejadian sistem atau antar sistem;
(d) Model domain: visualisasi hal-hal dalam domain yang diminati;
(e) Model desain (lengkap sebagian): sekumpulan diagram yang menggambarkan
desain logis sistem;
(f) Dokumen arsitektur perangkat lunak: ini merangkum arsitektur utama
permasalahan dan penyelesaiannya dalam desain;
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 61
(g) Model data (lengkap sebagian): mencakup skema database dan strategi pemetaan antara
representasi objek dan non-objek;
(h) Model pengujian (lengkap sebagian): ini menggambarkan apa yang akan diuji;
(i) Prototipe arsitektur yang dapat dieksekusi;
(j) Revisi daftar risiko dan revisi kasus bisnis;
(k) Rencana pengembangan untuk keseluruhan proyek, termasuk rencana proyek secara kasar, yang
menunjukkan iterasi dan kriteria evaluasi untuk setiap iterasi;
(l) Perkembangan kasus yang diperbarui yang merinci proses yang akan digunakan; Dan
(m) Panduan pengguna awal (opsional).
Sistem yang ditargetkan akan dirancang dan dibangun oleh tim pengembangan sistem organisasi.
Namun, mungkin saja terdapat paket perangkat lunak yang tersedia secara komersial yang sesuai
dengan persyaratan sistem yang ditargetkan (atau hanya memerlukan sedikit adaptasi). Dalam hal
ini, organisasi dapat memilih untuk tidak membangun sistemnya sendiri namun membeli paket
komersial yang tersedia, yang dalam banyak kasus lebih ekonomis. Keputusan apakah akan membeli
atau membangun sistem harus dibuat pada tahap elaborasi sebelum kita melanjutkan ke tahap
berikutnya, yang sangat mahal dan berisiko.
3.2
TINJAUAN KASUS PENGGUNAAN – URUTAN SISTEM
DIAGRAM
Seperti yang Anda ingat, kasus penggunaan terutama mendeskripsikan „apa‰ yang akan dilakukan
sistem, bukan „bagaimana‰ sistem akan melakukannya. Akibatnya, seperti yang akan Anda lihat
ketika Anda membaca bagian ini, sistem diperlakukan sebagai kotak hitam tempat para aktor
berinteraksi. Sebelum melanjutkan ke desain logis sistem, ada baiknya untuk memperjelas lebih lanjut
perilakunya menggunakan diagram urutan sistem (SSD), sebuah teknik yang memungkinkan Anda
meninjau kasus penggunaan Anda. SSD mengilustrasikan peristiwa dan operasi secara berurutan,
dimulai dengan masukan aktor eksternal ke sistem.
Diagram tersebut dapat dilihat sebagai gambar garis waktu dari kasus penggunaan yang diperluas,
peristiwa paling awal ditempatkan di bagian atas diagram. Gambar 3.1 adalah contoh SSD sederhana
untuk satu use case. Menurut Larman (2002), SSD adalah bagian dari Use-Case Model.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
6 62 ÿ ATAS
MO BERORIENTASIODEL
T
GAMBAR 3 OBYEK
Gambar 3.1: Diagram
diagram urutan sistem m
AKTIVITAS 3.1
Lihat daftarpenggunaan untuk Video
Victo ria
„meminjam
viddi Topik 2: ses yang Anda tulis untuk Latihan 2.5 Anda menulis
deos‰ kasus
penggunaan, dan untuk yang lain kami ingin SSD untuk masing-masing e 2.7kamu salah dalam
Latihan
ini. Menggambar
Dari sebenarnya melakukan hal tersebut pada
SSD, Anda mungkin kasus
mendapati
bahwa kasuses.
penggunaan
Anda kurang tepat. Kesalahan umum adalah tidak jelasnya teks kasus penggunaan tentang apa
yang sedang
kasus ar terjadi. Misalnya, Anda mungkin memiliki
frasa seperti „perbarui
detail‰. Ya, siapa yang memperbarui
detail sistem? Jadi, kalau kamumenemukan ada yang salah dengan dirimu, perbaikilah.
pengguna atau t
3.3
OMAIN
MELAKUKAN
kasus penggunaan kami,
MODEL
Jika Anda merujuk kembali ke fase UP P
dan rencana disiplin ilmu di Topik 1, Anda akan menemukan bahwa ada disiplinmelihat
ilmu „pemodelan bisnis‰ dengan tindakan artifa „model domain m‰ ha. atau selebihnya dari topik ini, kita akan fokus pada
pembahasan bagaimana melakukan pemodelan bisnis F dan produksi n model
domain (atau a sebagaimana dirujuk di rm
beberapa o dari melek
huruf). Model domain adalah masa depan, suatu hal yangada di dunia nyata d.
kesimpulan
mode konseptual del
ulang
presentasi
Hak Cipta © Universitas Terbuka Malaysia (OUM)
sa
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 63
Faktanya, pemodelan domain adalah versi pemodelan bisnis yang disederhanakan. Seperti
digambarkan pada Gambar 3.2, pemodelan bisnis yang lebih detail dapat dilakukan dengan
cara alternatif dengan proses yang lebih detail.
Gambar 3.2: Pemodelan bisnis
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
64 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
Sebelum melangkah lebih jauh, mari kita bahas berbagai jenis model yang Anda temui di UP, karena
model tersebut mungkin membingungkan kecuali Anda memahami dengan jelas bagaimana model
tersebut cocok satu sama lain.
Di UP, kami mengadopsi metodologi pemodelan untuk melakukan sebagian besar tugas di seluruh
proses pengembangan sistem. Ada sejumlah model berbeda yang perlu kita bangun pada fase dan
iterasi berbeda. Kita dapat mengkategorikan semua model yang berbeda ini ke dalam tiga tingkatan,
konseptual, logis, dan fisik.
Tabel 3.1: Hierarki Model di UP
Model Konseptual Model ini merupakan representasi dunia nyata (dalam konteks pengembangan sistem,
domain bisnis dimana sistem yang dihasilkan akan dioperasikan) dari konsepsi
pengguna. Misalnya, dalam kasus Video Victoria, model konseptual adalah
model yang menggambarkan entitas serta hubungannya dalam sistem
pemeriksaan video seperti yang dirasakan oleh, misalnya, anggota toko video.
Entitas dalam domain check-out video mungkin mencakup: (a) anggota (b)
CD video (c)
judul video (d)
kategori video, dll.
Model konsepsi memiliki tingkat abstraksi tertinggi dalam hierarki pemodelan
karena model tersebut mencerminkan cara pengguna memandang operasi
mereka sendiri.
Model logis
Model fisik
atau memiliki,
Model ini menunjukkan apa yang harus dilakukan suatu
sistem tanpa
memperhatikan bagaimana hal itu dilakukan, dibangun, dan direpresentasikan.
implementasi model
Hal ini termasuk yang dibahas dalam Topik 2. Model
persyaratan-independen
logisnya adalah sistem akhir dapat
diimplementasikan pada platform pemrograman apa pun, baik itu C++ atau
Java dan bahkan sistem manual.
Mengerjakan
Ini adalah model desain akhir yang menunjukkan bagaimana sesuatu akan dilakukan
atau dibangun dan menggambarkan semua detail platform, penyimpanan data, dan
detail implementasi lainnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 65
Disiplin pemodelan bisnis datang sebelum disiplin persyaratan.
Namun seperti yang Anda lihat, dalam praktiknya, kami tidak mengikuti
urutan ini. Misalnya, kita telah membahas cukup detail tentang disiplin
persyaratan tanpa menyebutkan satu kata pun tentang pemodelan bisnis.
Faktanya, disarankan agar pemodelan bisnis dimulai pada iterasi pertama
tahap elaborasi setelah beberapa artefak persyaratan awal telah dihasilkan
seperti yang ditunjukkan pada Tabel 3.2.
Tabel 3.2: Pemodelan Bisnis
Artefak
Disiplin
masuk.
I1
Konstan.
Trans.
C1..Cn
T1..T2
S
Model Domain Pemodelan Bisnis
Persyaratan
Elab.
E1..En
Model Kasus Penggunaan
S
R
Penglihatan
S
R
S
R
S
S
Tambahan
Spesifikasi
Glosarium
Desain
S
Model Desain
R
Arsitektur SW
S
Dokumen
Penerapan
Proyek
Pengelolaan
Model data
S
R
Model Implementasi
S
R
R
R
R
R
S
R
Rencana Pengembangan SW
Pengujian
Model Uji
Lingkungan
Kasus Pembangunan
S
S
R
mulai, perbaiki
Sumber: Larman (2002), hal. 24
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
66 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
Hal ini karena dalam praktik UP, kami mengerjakan disiplin ilmu secara berulang. Mereka
tidak dimulai dan diselesaikan secara berurutan. Dalam setiap iterasi, mungkin ada beberapa
disiplin ilmu yang sedang berjalan (tentu saja dengan tingkat penyelesaian yang berbedabeda) pada waktu yang bersamaan. Untuk memfasilitasi pengembangan model domain
(terutama dalam identifikasi objek domain, yang akan kita bahas di bagian selanjutnya),
kasus penggunaan (setidaknya yang pendahuluan) dikembangkan sebelum model domain.
Seperti yang akan Anda lihat nanti dalam diskusi, model domain dan model use case saling
terkait.
Sekarang setelah Anda memiliki pemahaman yang jelas tentang keseluruhan hierarki
pemodelan UP, Anda akan melihat mengapa penting untuk memiliki proses pemodelan
bisnis di atas model UP lainnya. Seperti kita ketahui, sistem informasi tidak lagi sekedar
mendukung bisnis. Semakin lama, mereka menjadi bagian integral dari sebuah bisnis, oleh
karena itu bisnis itu sendiri yang menentukan persyaratan sistem yang akan kita kembangkan.
Model bisnis (model domain) adalah abstraksi tentang bagaimana suatu bisnis berfungsi. Ini
adalah pandangan yang agak disederhanakan mengenai realitas bisnis yang kompleks.
Model bisnis memungkinkan pengembang sistem menghilangkan detail yang tidak relevan
dan fokus pada aspek bisnis yang lebih penting.
Seperti yang kami katakan di atas, model use case dan model domain saling terkait. Model
use case (seperti sebagian besar artefaknya) pada dasarnya bersifat tekstual: model ini
menggambarkan rincian persyaratan fungsional (dan non-fungsional) sistem dalam katakata. Namun, seperti yang sering dinyatakan, ide-ide yang disajikan dalam bentuk visual
dibandingkan tekstual sering kali lebih mudah dipahami (sebuah gambar menggambarkan ribuan kata).
Jadi model bisnis visual (domain) dapat meningkatkan pemahaman operasi bisnis dan
membantu menyempurnakan pengembangan model persyaratan dan model desain pada
tahap UP selanjutnya.
Terkadang, proyek pengembangan sistem berskala besar berjalan seiring dengan perubahan
besar dalam proses bisnis (yang kami sebut Rekayasa Ulang Proses Bisnis (BPR). Dalam
hal ini, model bisnis tidak hanya melayani tujuan analisis dan desain sistem tetapi juga dapat
diperlakukan sebagai cetak biru bagi mereka yang melakukan rekayasa ulang (dalam hal
ini, kita mungkin perlu melalui proses pemodelan bisnis secara rinci seperti yang digambarkan
pada Gambar. 3.2). Panduan ini menyediakan bahasa dan platform yang sama bagi kedua
komunitas, serta menunjukkan cara membuat dan memelihara ketertelusuran langsung
antara model bisnis dan perangkat lunak.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 67
Ada banyak cara berbeda untuk melakukan pemodelan bisnis. Dalam konteks UP,
kita biasanya menggunakan notasi diagram kelas UML (yang menghasilkan apa yang
disebut model domain atau model konseptual dalam beberapa literatur berorientasi
objek lainnya). Ingatlah bahwa UML hanyalah sebuah alat untuk analisis dan desain
berorientasi objek. Diagram kelas di UML dapat digunakan untuk tujuan lain di UP
seperti 'diagram kelas desain' dalam model desain yang akan kita bahas nanti. Di
sini, dalam konteks pemodelan bisnis, model domain adalah diagram kelas yang
diambil dari perspektif konseptual (yang berbeda dengan perspektif spesifikasi dalam
diagram kelas desain pada tahap pemodelan desain).
Dalam model domain, kami memiliki tiga jenis informasi:
(a) Objek domain (atau kelas konseptual) yang mengidentifikasi entitas bisnis atau
konsep, misalnya toko, video CD, member, dan sebagainya;
(b) Asosiasi antara objek domain yang menentukan hubungan yang relevan, objek
yang menangkap informasi bisnis yang perlu dilestarikan dan keragamannya,
misalnya, sebuah toko memiliki banyak CD video, seorang anggota meminjam
banyak CD video; Dan
(c) Atribut objek domain yang merupakan nilai data logika suatu objek, misalnya
setiap anggota boleh mempunyai „nomor anggota‰ yang merupakan atribut
dari objek „anggota‰.
Penting untuk dicatat bahwa diagram kelas analisis adalah visualisasi hal-hal dalam
domain dunia nyata yang diminati dan bukan komponen perangkat lunak seperti
kelas Java.
Ingat...
Diagram kelas analisis yang dihasilkan selama tahap analisis adalah visualisasi halhal di domain dunia nyata yang diinginkan dan BUKAN komponen perangkat lunak
seperti kelas Java. Di sisi lain, hubungan antar kelas perangkat lunak, yang
menggambarkan detail kelas dilakukan melalui diagram kelas desain yang
berlangsung selama tahap desain.
Desain diagram kelas berada di luar silabus.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
68 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
KEGIATAN 3.2
Sebelum kita masuk ke detail model domain, mari kita pastikan
sudah jelas fungsinya. Lihat diagram di bawah ini:
Sumber: Larman (2002)
Jangan khawatir dengan arti sebenarnya dari notasi baris,
kata-kata, panah, dll. karena semuanya akan dijelaskan nanti di topik ini. Untuk
sejenak, coba saja baca diagram dengan kata-kata berikut ini, mulai
A Toko .
Barang adalah Ditebar
di pojok kanan atas: Toko memiliki
alamat (misalnya Jalan Buntong 15, Ipoh) dan Kedai Perabot nama (Misalnya,
toko
Ali). Masing-masing atau memiliki,Rumah
beberapa
atau ,direkam pada,
Register . Setiap
Penjualan
, adalah
ditangkap
Daftar .
Lanjutkan dengan deskripsi ini untuk mencakup semua objek domain dan
hubungan seperti yang digambarkan pada gambar di atas. Lihat apakah itu memberi Anda yang lebih baik
pemahaman tentang proses „penjualan pembayaran‰ kasus NextGen POS.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
OBJEK OPIC 3
M. BERORIENTASI CT
PEMODELAN
ÿ 69
3.4 KONSESIEPTUAL SKELAS
model adalah untuk mengidentifikasi
hal yang harus kita lakukan dalam membangun domain m
r domain kelas sses, sebagai istilahed oleh beberapa dari
kelas aktual (atau
o konsep berorientasi objek
Yang pertama Itu
literatur
membenci sesuatu
e). Sebuah konsep
perwakilan kelas sebenarnya
hal fisik
cal atau konsepsi
ptual dalam
, seperti yang akan Anda
konsepsi kelas nyata,
C
kelas
lihat di a. Namun,pertama,
fi
kita perlu merevisi apa yang kami maksud dengan
y kata-kata dan momen
Y
1
.
Anda
akan
ingat
akan
dari
itu
kelas
C
makan
untuk
satu
set
o
Tema
ss adalah sebuah templat
obyek
objek
yang
al
akan terlihat samaSaya. Jadi seorang pria
lant
untuk
mobil
itu
seperti
sebuah
kelas
s, dan
manufaktur hal
semua mobil yang dibuatnyaes adalah objeknyaproyek. Tentu sajarse, setiap mobilr punya sendiri n lisensi
bisnis
ess. Ada
e saudara yang berbeda
temuan
aliran yang berbeda
wner (lihat Gambar 3.3).
piring dan d milik a
Angkae 3.3: Kelas dand objek
Sebagai rekegembiraan b antara kelas
malas dengan
h bahasa kami
melukis mobil n
prosesnyacess yang pergi
perangkat lunak
e pemodelan
telinga, kita sering merasa sedikit
ss dan objeknya jects sangat bagus
usia. Jika dia
kepala mesin
mencari ac
perlu dilakukan satu lebih baik‰,dia
h adalah pr
itu ada di pabrik
eh dari spe
kata pabrik
mungkin banyak bicara
ng
tentang
mobil yang spesifik. Jadi, juga, dalam
kelas ds dan ob
ada di antara kita menyanyikan kata itu
w tempat kita berenang
Entitas itu ity 'objek' jatuh ke dalam
jumlah kucing
penting.
Di
sini
ar
ada tiga jenis
objek th yang mereka wakili
ys: „G pada
objek.
kategori, dasar
ed di sana
topi dunia
s konseptua
al kelas itu
t kita akan
pertemuan melakukan bisniss pemodelan:
(a) Bersamaobjek beton
Bersama
ini tangib
s adalah mo
benda-benda beton
Dalam
e toko video e
berwujud dan
undmemahami. Untuk
r contoh, sch
sekolah nyata
bukan hanya b
di sebuah
gempa bumi
st dengan mudah dan
dipahami
lihat
deo
CD
misalnya, adalah
penipu
(b) Bersamaob konseptual objek masuk
sebuah sc
ble, yaitu, mereka memiliki
kehadiran.
fisik hal
oleh a analis dan kamu pengguna.
benda beton;
dan seringkali jauh
r lebih banyak perbedaan
sulit untuk
hool adalah sebuah kesimpulan
objek konseptual bahwa t. Anda mungkin
berpendapat
.
Namun,
th
Konsep sekolahnyaadalah n
hanya ada itu h memiliki bangunan.
s di sekolah runtuh karena
bangunan. Saya agine bahwa semua bangunan
ke. Kita tidak bisa jangan katakan itu
sekolahnya tidak ada
lihat
judul
deo
o konseptual
Demikian pula, juga
aku keberatan; dan
Itu tidak akan dibangun kembali. S
dapat
Hak Cipta © Universitas Terbuka Malaysia (OUM)
bertahun-tahun lagi.
Machine Translated by Google
70 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
(c) Objek peristiwa dan keadaan bersifat sangat abstrak. Mereka saling terkait karena biasanya ketika
suatu peristiwa penting terjadi, beberapa atau lebih objek akan beralih ke keadaan yang
berbeda. Contoh objek peristiwa dan keadaan di toko video adalah . Kita dapat melihat bahwa
pinjambiasanya
video akan mengubah status (misalnya, peminjaman daftar
peristiwa peminjaman video
video) objek.
Kelas konseptual merupakan konsep penting dalam paradigma berorientasi objek. Dalam proses
pengembangan perangkat lunak tradisional, program perangkat lunak yang rumit dipecah menjadi
beberapa proses atau fungsi (dalam istilah pemrograman komputer). Misalnya, lihat gambar
dekomposisi fungsional untuk sistem toko video di
Topik 1 .
Dalam pendekatan pengembangan perangkat lunak berorientasi objek, program perangkat lunak
yang rumit dipecah menjadi objek (yang, dalam banyak kasus, menyerupai objek dunia nyata). Oleh
karena itu, pembagian domain bisnis atau masalah ke dalam kelas konseptual adalah langkah
pertama dalam analisis dan desain berorientasi objek.
Namun, harap dicatat bahwa kelas konseptual atau objek yang kita bicarakan dalam pemodelan
domain berbeda dari kelas objek perangkat lunak yang akan kita bicarakan pada tahap UP selanjutnya.
Menurut Larman (2002), kelas konseptual dapat dipertimbangkan dalam istilah berikut:
(a) Simbol kata atau gambar yang mewakili kelas konseptual
(b) Intensi definisi kelas konseptual
(c) Memperluas kumpulan contoh yang diterapkan pada kelas konseptual
Misalnya, dalam transaksi kredit, kelas konseptual dapat mempunyai simbol . Maksudnya bisa saja
Meminjam„mewakili peristiwa transaksi
Meminjam
peminjaman yang mempunyai tanggal dan ID transaksi‰.
Perpanjangan dari adalah semua contoh pinjaman.
Meminjam
3.4.1 Identifikasi Kelas Konseptual
Kelas konseptual dalam model domain dapat menjadi inspirasi desain kelas perangkat lunak dalam
model desain. Dalam hal ini, identifikasi kelas konseptual dalam model domain sangat penting bagi
keberhasilan pengembangan sistem. Dalam domain bisnis yang rumit, mungkin terdapat ratusan
entitas yang berpotensi diperlakukan sebagai kelas konseptual.
INGAT: Apakah mereka termasuk dalam model domain sangat banyak
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 71
bergantung pada pengguna dan cara mereka memandang lingkungan bisnisnya. Kita
harus memilih kelas konseptual yang tepat sehingga model domain yang bermakna
dapat tercipta.
Ada sejumlah cara agar kita dapat mengidentifikasi kelas konseptual secara sistematis.
Salah satu caranya adalah dengan membuat daftar kategori kelas konseptual.
Kita telah mengategorikan kelas konseptual ke dalam tiga kategori besar, yaitu objek
konkrit, objek konseptual, dan objek peristiwa dan keadaan. Ketiga kategori ini
selanjutnya diperluas ke kategori yang lebih halus sesuai Tabel 3.3.
Tabel 3.3: Daftar Kategori Kelas Konseptual
Contoh
Kategori Kelas Konseptual
Benda fisik atau nyata
Daftar
Spesifikasi
Tempat
Spesifikasi produk
Toko
Transaksi
Penjualan, Pembayaran
Item baris transaksi
Item Garis Penjualan
Peran orang
Kasir
Wadah barang lainnya
Simpan, Bin
Hal-hal di dalam wadah
Barang
Sistem komputer lain di luar sistem
Sistem Otorisasi Pembayaran Kredit
Konsep Kata Benda Abstrak
Kelaparan
Organisasi
Acara
Departemen penjualan
Proses
MenjualProduk
Aturan atau Kebijakan
Kebijakan pengembalian
Katalog
Katalog Produk
Catatan keuangan, pekerjaan, kontrak, hukum
Kwitansi, Buku Besar, Kontrak Kerja
Penjualan, Pembayaran, Rapat
penting
Instrumen dan layanan keuangan
JalurKredit
Manual, dokumen, kertas referensi, buku
Daftar Perubahan Harga Harian
Sumber: Diadaptasi dari Larman (2002)
Meskipun daftar kategori yang disajikan diambil dari beberapa domain tertentu (dalam
kasus Tabel 3.3, domain toko), daftar tersebut kurang lebih mencakup banyak kategori
umum di domain bisnis lainnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
72 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
AKTIVITAS 3.3
Dengan menggunakan Tabel 3.3 sebagai panduan, buatlah kategorisasi kelas konseptual untuk
Video Victoria.
Teknik lain untuk mengidentifikasi kelas konseptual adalah penggunaan identifikasi frase kata benda.
Setelah Anda mempelajari Bacaan 3.5, Anda akan melihat bahwa salah satu argumen untuk mengembangkan
kasus penggunaan sebelum pemodelan domain adalah bahwa kasus tersebut merupakan sumber frasa
kata benda yang sangat baik untuk identifikasi kelas konseptual. Namun, perhatikan bahaya ambiguitas
dalam bahasa alami kasus penggunaan yang diterjemahkan ke dalam kelas konseptual jika transformasi
dari satu ke yang lain dilakukan terlalu mekanis.
Sekarang mari kita lihat satu contoh di mana kita akan menggunakan identifikasi frase kata benda untuk
mengidentifikasi kelas konseptual.
Contoh Di
bawah ini adalah gambaran sistem reservasi tiket berbasis web. Semua frasa kata benda yang merupakan
kandidat untuk kelas konseptual ditandai dengan huruf tebal.
Perusahaan reservasi tiket berbasis internet mengkhususkan diri dalam menjual tiket acara hiburan
kepada pelanggan yang mengunjungi situs web perusahaan. Perusahaan memperoleh tiket untuk acara
dari agen tiket biasa secara teratur atau berdasarkan permintaan ketika stok menipis.
Sebelum mereka dapat menggunakan situs ini, pelanggan harus mendaftarkan rincian kontak mereka
atau memasukkan informasi yang cukup untuk mengidentifikasi diri mereka jika mereka telah mendaftar
sebelumnya. Mereka kemudian dapat melihat materi publisitas dan informasi ketersediaan tiket untuk
sejumlah acara berbeda dan menambahkan tiket untuk acara yang dipilih ke dalam pesanan mereka.
Setelah selesai, mereka memasukkan rincian kartu kredit mereka dan, jika semuanya baik-baik saja, tiket
mereka akan dikirim melalui pos. Perusahaan menyimpan alamat kontak dan alamat penagihan (kartu
kredit) (yang mungkin sama) untuk setiap pelanggan terdaftar.
Berkonsentrasi hanya pada sisi pelanggan, jangan memodelkan pasokan tiket dari „agen tiket biasa‰.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 73
3.4.2 Permasalahan dalam Mengidentifikasi Kelas Konseptual
Tidak ada daftar kelas konseptual unik untuk domain bisnis tertentu.
Pengguna yang berbeda dan analis sistem berorientasi objek mungkin menghasilkan daftar yang berbeda.
Dimasukkannya objek entitas tertentu ke dalam daftar kelas konseptual atau tidak bergantung
pada konteks kasus penggunaan dan terkadang pada tahapan dan iterasi dalam UP.
Misalnya, apakah objek "daftar video pinjam" harus disertakan dalam model domain toko
video? Ini adalah pertanyaan yang bisa diperdebatkan karena „daftar video yang dipinjam‰
dari seorang anggota dibuat berdasarkan permintaan (mungkin untuk beberapa anggota
yang lupa berapa banyak video yang telah mereka pinjam). Ini bukan bagian dari proses
peminjaman video biasa; hal ini hanya diperlukan, katakanlah, dalam kasus penggunaan
„permintaan peminjaman daftar video‰.
Ada juga masalah penamaan kelas konseptual yang tepat sehingga penggunaan model
domain sebagai alat komunikasi yang efektif dalam proyek pengembangan sistem dapat
disorot. Ada dua prinsip dasar yang perlu kita ikuti dalam memberi nama kelas konseptual:
(a) Keduanya harus berbeda; Dan
(b) Harus ada cara untuk membedakannya.
Kita akan membahas „atribut‰ kelas konseptual di bagian selanjutnya.
Terkadang, mungkin terjadi kebingungan antara kelas konseptual itu sendiri dan atributnya.
Misalnya, haruskah „Popularitas‰ menjadi kelas konseptual yang terpisah dari „Video‰
atau hanya atributnya saja? Gunakan petunjuk berikut untuk mengatasi kebingungan ini:
A nomor
atau teks tapi sesuatu
„Kelas konseptual tidak dianggap sebagai sesuatu
yang mempunyai badan hukum, organisasi dan menempati ruang‰
3.4.3 Spesifikasi Kelas Konseptual
Terdapat kategori kelas konseptual yang disebut „spesifikasi‰ atau „deskripsi‰ dalam
daftar kategori kelas konseptual yang diperluas pada Tabel 5.1. Kategori kelas konseptual
ini memerlukan sedikit elaborasi. Contoh berikut akan membantu Anda memahami gagasan
tersebut.
Perjalananada
Bintang
Dalam contoh toko video, misalkan kita mempunyai video yang pernah
dalam stok.
Video tersebut memiliki judul video, klasifikasi video dan kategori video, dll., yang
menyertainya. Setelah video dipinjam oleh anggota dan hilang, maka video tersebut akan
dihapus dari sistem. Jika manajemen perlu memperoleh informasi tentang video tersebut
(misalnya, klasifikasi apa), maka mereka tidak mungkin dapat memperoleh informasi
tersebut. Untuk mengatasi ini
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
74 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
masalahnya, kita memerlukan kelas konseptual „VideoSpecification‰ yang mencatat informasi tentang
video sehingga kapan pun informasi tentang video tertentu diperlukan (tidak peduli apakah masih
tersedia atau tidak), informasi tersebut dapat diambil dari spesifikasi. Berikut ini saran kapan waktu
yang tepat untuk menggunakan kelas konseptual spesifikasi:
(a) Terdapat kebutuhan untuk mendeskripsikan suatu barang atau jasa, terlepas dari keberadaan
barang atau jasa tersebut saat ini.
(b) Menghapus contoh hal-hal yang dijelaskannya (misalnya: Item) mengakibatkan hilangnya informasi
yang perlu dipertahankan.
(C)
Ini mengurangi duplikasi informasi.
AKTIVITAS 3.4
Perbarui model domain yang ditampilkan di Aktivitas 3.2 untuk menyertakan deskripsi
kelas konseptual.
3.5
ASOSIASI
Sekarang kami telah berhasil mengidentifikasi kelas konseptual dalam domain bisnis. Katakanlah,
dalam sistem toko video, kami telah mengidentifikasi „Member‰, „Video‰, „FrontDesk‰,
„MemberRecord‰ sebagai kelas konseptual (harap dicatat bahwa ini adalah model domain yang
sangat disederhanakan dan mungkin bukan model domain sebenarnya untuk kasus toko video). Apa
yang akan kita lakukan dengan semua objek (atau kelas konseptual) ini? Jawaban yang jelas adalah
mencari tahu bagaimana keterkaitannya. Asosiasi adalah istilah berorientasi objek untuk hubungan.
Orang-orang di dunia nyata mempunyai hubungan dengan orang lain, dengan benda, dan dengan
tempat. Jadi kita dapat mengatakan seseorang mempunyai ibu, menikah dengan pasangannya, suka
mengendarai Porsche, tinggal di rumah, dll. Ini adalah asosiasi objek 'orang' dengan objek lain di dunia
nyata. Kita melihat bahwa sebagian besar hubungan antara objek „orang‰ dan objek lainnya
dideskripsikan dengan kata kerja seperti „has‰, „married to‰, „likes to‰, „lives in‰, dan sebagainya.
Dalam UML, asosiasi adalah hubungan yang mengungkapkan interaksi antara contoh dua kelas
konseptual, diwakili oleh kata kerja yang menggambarkan apa yang mereka lakukan satu sama lain,
dan/atau dengan kata benda untuk peran yang masing-masing mainkan dalam kehidupan yang lain.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
OBJEK OPIC 3
Gambar 3 .4 menunjukkan hubungan b
„Video‰ .
M. BERORIENTASI CT
PEMODELAN
antara dua konseptual cl
gadis „Memb
ÿ 75
ber‰ dan
Notasi ML untukatau asosiasi
Gambar 3.4: UM
Garis
e antara
mber‰ dan „V Video‰ ditayangkan
mengirimkan
e kelas konseptual „Mem
asosiasi ion antara dua kelas
ses dengan label „Pinjam
w‰ indikasi itu
asosiasi menyebutkan nama
ion (rela Th dia „1‰ dan „*
hubungan).
akan disk uss secara rinci Nanti.
l
3.5.1
Mengenali
ying
domain
lurus
antara konseptualc
kelas, kami n perlu mengidentifikasi
ntify semua ion penting
kelas yang w akan menghasilkan yang
a
bermakna aku asosiasi
gunakan videonya
o sistem toko tolong. m sebagai contoh
Mulai w dengan daftar a semua kelas
kelas d ditarik (dengan asosiasi ut
s di sebelah kiri dan UM
n) di sebelah
masuk ke dalam daftar
st,
asosiasi ion ke UM
Diagram ML o
Pilih pada
3.5.
Anggota‰ dan d „Video‰ an dan periksa
m penggunaan cas
se atau diskusi ion dengan
„
„Anggota Bor
baris Video‰), ,
Pada
saatwaktu,
yang sama
diagram
ML.
sebuah
tambahkan
„Anggota er‰ dan „Vide item eo‰ di t
dari semua ht,
seperti yang ditunjukkanGambar
i
kanan
yaitu, 'M
apakah mereka memiliki sebuah hubungan
p (baik dari
jika ada ulang kegembiraan (i dalam hal ini
pengguna). Jika
dua kelas ses telah c
multiplisitas, w yang kami
ini
mple dan
boleh melakukan iniadalah. Berikut sayap
adalah sim
jumlah w
cara maju di mana kita u
pertama dan
d kelas kedua
wakili m
asosiasi
Asso
Sama seperti kita mengidentifikasi konseptual c
model. T Ada sebuah
‰
garis ditarik lin
memasukkan
daftarnya, indikasi
e hubungan ini
makan itu
diperiksa.
F
identitas pergaulanlangkah
Gambar
3.5: Bokong
ifikasi 11
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
76 ÿ ATAS
MO BERORIENTASIODEL
T
GAMBAR 3 OBYEK
T
Lalu
kita pindah sudah turun ke l daftar untuk memeriksa hubungannyapinggul antara 'Anggota' a
'FMeja Depan‰ adan asosiasi
ist juga lin
diikat dengan lin
kutipan „Go T
Ke‰ ditambahkan. Sekali lagi, yang kedua
dua item di t
dan
li
tidak.
T
R‰dia daftar, yaitu, 'Membe
Proses ini diulangi dengan cerdas dan yang lainnya ituturun th
"M
AnggotaReco pasangan ord‰. Jika suatu hubunganshi p ada, asosiasi i
ditambahkan dalam t
kamu
em di dalam lis st, bahkan kamuugh tidak ada hubungan
pinggul
diagram UML M. Untuk itu
juga antara dua item, seperti „Anggota
r‰ dan „Mem mberRekam‰, , tautan adalah al
d
een dua jam
memiliki
hubungan ion antara kita
tertarik untuk menggabungkan kedua item tersebut
ms menunjukkan t itu relati
b
B sudah pertimbangkan
merah. Ketika „MAnggota‰ dan d semua yang lain
eh item dow
B een terhubung, iitu menunjukkan ttopi hubungannyahubungan antaraween „Anggota
Hai
kelas-kelas di sana
telah
h ditipu
sebagai
asosiasi di
tidak dipertimbangkan (reg
tanpa
penjaga wapa pun terjadi
wn daftarnya ha
atau mereka
dan langkah berikutnya
di kelas „V
Video‰ dan th dia kelas lain
ep, hubungannya nship antara
d
turunkan
daftar i dianggap
ems
adalah
tautan
ed
setelah r mereka
hubungan h
. Demikian pula, itu
een diperiksa dan assoc
d
diagram jika re
sebuah
P.
memiliki diagramgram).
UML Kami kira-kiradan lanjutkan ke o langkah berikutnya
Di dalam
b
jalan
er‰ dan semuanya t
ded antara dua kelas mana pun
ciation adalah menambahkan
xists (lihat F
kegembiraan mantan
ses di UM
Gambar 3.6).
Angkae 3.6: Asosiasi pada identifikasi
pada langkah 2
Hak Cipta © Universitas Terbuka Malaysia (OUM)
ses
memiliki
ML
Machine Translated by Google
KE
PEMODELAN
OBJEK OPIC 3 M. BERORIENTASI CT
ÿ 77
mengudara di bawah
e daftar sampai semua pasangan kelas hatelah
Langkah ini
p diulangi dengan kelas pa
dipertimbangkan
merah. Model terakhirnya akan lo oke seperti Figur ulang 3.7.
Figambar 3.7: Asso identifikasi kutipanpekerjaan akhir hal
Sim
mencari
kelas. T
besar
nomor
pada identifikasi haustive adalah,intinya,
di es seorang mantantion
hubungan yang mungkin
10 pasangan
nkapal antar
metode sederhana untuk asosiasi
g metode th
topi akan memeriksa
k semua pos
metodenya adalah itu
di kemungkinan kemampuan mis melemparkan
dia keuntungan ge dari m ini
ion ke dalam mo odel sangat rendah. Namun
eh, untuk model besar dengan ha asosiasi
konseptua
akan menjadibesar
v
(n*
c
al kelas, pasangan jumlah
kelas itu
*[n-1] untuk n kelas
keledai). Ef
kapan begitu
beberapa dari sebagai
asosiasi ar
tidak signifikan
di perlu diperiksa sangat
upaya yang terlibat
d mungkin tidak dibenarkan
tidak bisa atau jahat
modelnya.
tidak menyenangkan bagi
teksb
Oleh karena itu,dalam
alternatifnya
bertemu
buku, sebuah alte
„umum
pada asosiasi
yang disebut
pembuatannya g penggunaan sebagai
„perlu
n daftar‰ disarankan
disarankan. Ini m metodenya ba ased pada „
diketahui‰asosiasi
a
hal
prinsip ke a
akan le bisa membingungkanion di bulan
„Biasa
biasa saja
kelas. T
hindari juga bu
apapun yang dihasilkan
g asosiasi
s, yang
odel.
pada asosiasi
arman (2002) berisi com
n daftar‰ oleh La
kategori mmon ories yang
n
penentu
sekutu bernilai c mempertimbangkan masuk
ng hubungannya onships antara antara itu
Asosiasi umum li
s mengikuti untuk maskapai
t
penerbangan res
pelayanan
ist diberikan sebagai
sistem (T Tabel 3.4).
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
78 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
Tabel 3.4: Daftar Asosiasi Umum (Seperti yang Diusulkan oleh Larman (2002))
Contoh
Kategori
A adalah bagian fisik dari B
Pesawat Sayap
A adalah bagian logis dari B
FlightLeg-FlightRute
A secara fisik terkandung dalam/pada B
Pesawat Penumpang
A secara logis terkandung dalam/pada B
Jadwal Penerbangan-Penerbangan
A adalah deskripsi untuk B
FlightDescription-Penerbangan
A adalah item baris transaksi atau laporan B
Log PemeliharaanPekerjaan-Pemeliharaan
A diketahui/dicatat/dicatat/dilaporkan/ditangkap
B
Reservasi-FlightManifest
A adalah anggota B
Pilot-Pesawat
A adalah subunit organisasi dari B
Pemeliharaan-Pesawat
A menggunakan atau mengelola B
Pilot-Pesawat
A berkomunikasi dengan B
Agen Reservasi-Penumpang
A terkait dengan transaksi B
Tiket penumpang
A adalah transaksi yang berkaitan dengan transaksi lain B
Reservasi-Pembatalan
A berada di sebelah B
Kota-Kota
A dimiliki oleh B
Pesawat-Pesawat
A adalah peristiwa yang berkaitan dengan B
Keberangkatan penerbangan
3.5.2 Multiplisitas
Saat Anda mengidentifikasi dan menggambar setiap asosiasi, awalnya Anda akan
menggambarnya sebagai garis sederhana yang menghubungkan dua kotak di diagram
UML. Setelah Anda membentuk asosiasi, misalnya, „Video Pinjam Anggota‰, ada
pertanyaan lain yang perlu ditanyakan: Berapa banyak video yang akan dipinjam anggota?
Pertanyaan ini berkaitan dengan banyaknya asosiasi.
Multiplisitas suatu asosiasi adalah jumlah instance dari setiap kelas yang dapat berpartisipasi
dalam suatu kejadian asosiasi. Tabel berikut mencantumkan beberapa kemungkinan nilai
multiplisitas untuk asosiasi (lihat Tabel 3.5). Multiplisitas adalah informasi penting untuk
tahap desain sistem selanjutnya. Ini mengkomunikasikan batasan domain penting yang
akan mempengaruhi desain perangkat lunak, terutama dalam desain database pada tahap
implementasi.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
OBJEK OPIC 3
M. BERORIENTASI CT
PEMODELAN
ÿ 79
Tabel 3. .5: Multiplisitas y Nilai
Banyak
tiplicities
Arti
11
satu lawan satu
1*
satu-ke-banyak
1 1..*
satu lawan satu atau lebih
1 0,1
satu-ke-nol atau satu-ke-satu
e domain mo
Gambar 3 .8 menggambarkan
del dari video tersebut
sistem
toko deo mereka dengan mu
multiplisitas
ditambahkan.
asosiasi
Gambar 3.8 : Sebagai
3.5.3
Ada
dengan h multiplisitas
masalah AAsosiasi
Saya yang lain
ada masalah lainya prihatin
asosiasi ng
pada
dan itu dia
membantu dalam mak
raja model
domain lebih memahami
dapat dan melayani
sudah tujuannya se dari komunitas
menyatukan
domain k pengetahuan mlebih efektif
ly. Ini termasuk lude:
(a) Tidak Konferensi Aming saran untuk Asso asosiasi itu
asosiasi e harus dimulai w
dengan modal
adalah konvensi umum untuk
Ini saya
aku menulis seperti itusebagai
a
Kirim-oleh atau Kirim-oleh.
o membaca keledai
pergaulan dari m dari kiri ke kanant atau from
p ke bawah. atas
(b)Mu
se
beberapa Asosiasihubungan antaraid Dua Kelas
Itu kamu bisa menjadi mu
beberapa hubungan
di kapal antara kitaeen objek dalam domain m
shosendiri di bawah ini.sini.
H Di sini F
Terbang-ke dan F
Lalat-Dari ar
jelas sekali di
terpisah
hubungan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
model sebagai
hubungan
Machine Translated by Google
80 ÿ ATAS
MO BERORIENTASIODEL
T
GAMBAR 3 OBYEK
(C
c) Asosiasi
Asosiasi
ion dan Imp
ion dalam an
implementasi
kelas analisis d diagramnya tidakatau tentang aliran data, atau keberatan dll
dalam perangkat lunak
solusi perangkat n tapi itu terlihat begitulah hubungannya
kapal dalam keadaan murni
koneksi yang aktif
bagus
t
nyata
konsepnyaarti sebenarnya dari dunia
diagram kelas analisis
(yaitu cod ding). Kamu M
masuk tapi kita
saya dari asso
ld. Juga, beberapa
lima Asosiasi
Komprehensif
Kapan identitas
perkumpulan di t analisisc
mengidentifikasi pantat
(D
d) „Perlu
di fo
o-tahu‰ vs C
berikut ini (Lar
(i) Fokus cus di pantat
ke bdilestarikan f
(ii) Av
ion
pelaksana
tidak perlu dilaksanakan
m mungkin tidak dilaksanakan
d selama i
w asosiasi
mungkin juga d temukan yang baru
ketinggalan di th dia analisis cl
asosiasi di t
diagram gadis.
ns
diagram kelas m, perhatikan
rman, 2002):
perkumpulan untukpengetahuan
w
yang mana
tepi kembali
untuk beberapa dura
asi („
oid menunjukkan berlebihan atau
A
Penggunaan yang ketat dari pendekatan
'perlu-untuk-tahu'
perlu-t
kegembiraan ne
‰
untuk mengetahui
juga asosiasi yang diperlukan).
r dapat diturunkan sebagai
asosiasi
sorot oh
hted di atas t
untuk mempertahankan t
asosiasi di
analisis na c
diagram kelas m akan menyediakanea informasi minimal th
m mungkin tidak menyatu
dia analisis kelas diagram pantat. yaArtinya
kedudukan t
penuh itu
di bawah
sebagai
P
masalah
ke
ion
pada
pengguna. sesuaiding ke Larm man (2002), dalam istilah asosiasi
A pada, model analisis yang baik cl diagram gadis dapat dikonstruk suatu saat
M
kebutuhan minimald-untuk-tahu m model dan o
salah satu yang ilu
malam hari
di mana antara
tidak
ry bayangkanb bisa
dan dengan kata lain
s, gunakan yang berikut ini
kegembiraan. Di dalam
rendah:
ulang
Penekananize perlu-untuk-knsekarang asosiasiion, tapi tambahkan
d pilihan kompilasipemahaman-on
asosiasi hanya untuk memperkaya bagian kritis
modelnya (La
arman, 2002).
kedudukan t
n kepala sekolah, gunakan fo
asosiasi menjadi antar kelas
Di dalam
sebagai
mengikuti pantat sosialisasi gu
es (Larman, 20
o-tahu‰ juga
(A
a) Fokus pada n 'kebutuhan untuk'
(B
b) Ini bulan
bijih penting
asosiasi aktif;
pedoman wh
ing
kutipan;
t untuk mengidentifikasi konsep
kelas biasa th
(C
c) Terlalu laki-lakiasosiasi apa pun ns akan mengarah ke kebingungan dan
dan marginal b
(D
d) Hindari sh
hen identifikasi
002):
han ke identitas tify
keuntungan; Dan
asosiasi variabel tions.
bagaimana redunndant atau turunan
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 81
AKTIVITAS 3.5
Gambar ulang Gambar 3.8 untuk menambahkan kelas konseptual „VideoSpecification‰ ke dalamnya
model domain toko video.
3.6
ATRIBUT
Atribut adalah bagian data yang kami gunakan untuk mengidentifikasi atau mendeskripsikan
sesuatu. Misalnya seseorang mempunyai nama, tanggal lahir dan warna mata. Atribut
biasanya berhubungan dengan kata benda yang diikuti dengan frasa posesif, misalnya
„warna mobil itu‰. Dalam hal ini, warna merupakan atribut dari mobil. Atribut biasanya
berupa tipe data sederhana atau tipe data primitif seperti integer, float, string, date, time, dll.
Nanti di Topik 5 Anda akan melihat bahwa atribut juga dapat menunjuk suatu kelas.
Untuk sistem toko video, berikut adalah atribut yang mungkin ada pada kelas konseptual
yang diidentifikasi:
(a) nomor anggota;
(b) ID video video, klasifikasi;
(c) nomor registrasi meja depan FrontDesk; Dan
(d) AnggotaMencatat jumlah item video yang dipinjam, tanggal jatuh tempo item
dipinjam.
Dalam UML, atribut ditampilkan di bagian bawah kotak persegi panjang yang mewakili kelas
konseptual. Oleh karena itu model domain yang telah selesai, sebagaimana direpresentasikan
dalam UML untuk sistem toko video, adalah seperti yang ditunjukkan pada Gambar 3.9.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
82 ÿ ATAS
MO BERORIENTASIODEL
T
GAMBAR 3 OBYEK
Gambar 3.9: Konseptual m model video s
S terkadang,
w
apakah kita sh
sulit untuk dilakukan
o menilai apa
ada atribut
harus memperlakukannya sebagai kelas lainpantat.
itu sebuah atribute dari kelas su
sebagai
sistem toko
atau
bute benar-benar sebuah atribut sederhana,
Untuk ujian
sebuah tanggal adalah
ted
biasanya mengobati
seperti Hutang tanggal e. Namunvernya, sekarang kontra
sider cuaca
foperkiraan sy
sistem di observatorium yang menyimpan d
catatan harian atmosfer
kondisi eric dan d menghasilkan aanalisis untuk d berbeda sekali eks, bulan a
dan tahun. Ya
d
variabelnya
s, misalnya
ya, maksimal
tanggal dapat dijelaskan b
oleh banyak orang lain
bersama
ach
um,
jam matahari
bersinar, total ra jatuh, rata-rata
d suhu rata-rata suhu, h
w
tc. Anal
kecepatan angin usia,
et ini
atribut terpisah utes untuk d
lisis mungkin a juga membutuhkan se
hari
M
minimal dan
Hai
f dalam seminggu,
m dan kamu telinga. Dalam ca iniya, mungkin sajat kemudian memilih untuk memperlakukan „Dat
bulan
terpisah c
sebagai
W
Ketika
ada
pantat dengan o variabel lain
te‰ kelas konseptual
memasukkan
menilai apakah r untuk
untuk menghilangkan
tidak
y dan
perlu
incorre
di mana letaknyasulit
d untuk ju
atribut situasi, gunakan yang berikuti
kriteria ng t
atribut: di
pada
(A
a) Jika ind
s sebagai atributnya
utes.
keberadaan
ketergantungan mantan
sebuah
rath
n entitas adalah penting,
im
sebuah
dll
dia dari sekedar
kelas arate;
nilainya, thmaka itu adalah sepa
(B
b) Suatu entitas ty yang memiliki fefitur-fiturnya
miliknya sendiri di dalam
n yang
diberikan aaplikasi adalah
sa
memisahkankelas;
(C
c) Jika va
nilai attr
menyatakan kembali
g atributnya
ribut tergantung ds di pesta
R;
e sebagai kualifikasi
konteks khusus t, lalu pertimbangkan
der
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 3 PEMODELAN BERORIENTASI OBJEK ÿ 83
(d) Nama adalah atribut kelas jika tidak bergantung pada konteks, khususnya jika tidak harus unik;
(e) Jangan mencantumkan pengidentifikasi objek yang digunakan semata-mata untuk merujuk suatu
objek secara jelas;
(F)
Jika suatu atribut menggambarkan keadaan internal suatu kelas yang tidak terlihat di luar kelas,
maka hilangkan atribut tersebut dari analisis; Dan
(g) Hilangkan atribut-atribut kecil yang kecil kemungkinannya mempengaruhi sebagian besar operasi.
Tips Larman (2002) berikut ini sangat berguna saat membuat diagram kelas analisis:
(a) Gunakan Kategori Kelas Konseptual (dari Tabel 3.3) atau identifikasi frasa kata benda untuk
mengidentifikasi kelas konseptual.
(b) Gambarkan mereka dalam diagram kelas analisis.
(c) Tambahkan asosiasi yang diperlukan untuk menunjukkan hubungan antara
kelas.
(d) Tambahkan atribut yang diperlukan untuk memenuhi persyaratan informasi.
AKTIVITAS 3.6
Mirip dengan Aktivitas 3.5, tambahkan kelas konseptual „VideoSpecification‰
dan atributnya yang sesuai dengan Gambar 3.9.
Selamat! Anda sekarang telah membuat model domain. Mungkin belum sempurna, namun cukup baik
untuk digunakan.
3.7
NOTASI UML, MODEL DAN
METODE: PERSPEKTIF GANDA
Kami telah membuat model domain kami. Model domain adalah model pertama di UP yang kami gunakan
dengan serius notasi UML (tentu saja kami telah menggunakan beberapa notasi UML dalam kasus
penggunaan kami tetapi tidak terlalu ekstensif). Kami juga pertama kali bertemu dengan objek dan kelas
dalam pengembangan model domain. Seperti yang telah dijelaskan pada bagian sebelumnya, dalam UP
terdapat beberapa level pemodelan dengan level abstraksi yang berbeda-beda. Namun, apapun levelnya
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
84 ÿ TOPIK 3 PEMODELAN BERORIENTASI OBJEK
Abstraksi dari tahap pemodelan yang kita jalani, pada dasarnya kita mengandalkan kumpulan
notasi UML yang sama untuk memvisualisasikan dan mengkomunikasikan model. Oleh karena
itu, sangat penting untuk memperjelas bahwa kami tidak mencampuradukkan model dengan notasi UML.
Misalnya, kotak persegi panjang yang sama di UML dapat digunakan untuk mewakili kelas-kelas
dalam model yang berbeda, baik itu kelas konseptual dalam model domain atau kelas perangkat
lunak dalam model desain.
Salah satu keuntungan menggunakan kumpulan notasi yang sama di seluruh proses
pengembangan adalah mengurangi apa yang disebut kesenjangan semantik (atau „kesenjangan
representasi‰). Kesenjangan semantik berarti kesenjangan antara model mental kita tentang
domain dan representasinya dalam perangkat lunak. Dalam pengertian yang lebih luas, hal ini
mengacu pada kurangnya pemahaman konseptual bersama mengenai aspek bisnis dan sistem
yang perlu dimodelkan sedemikian rupa sehingga memungkinkan manusia dan teknologi untuk
bekerja sama secara harmonis dan beradaptasi terhadap perubahan. Dengan pendekatan
berorientasi objek dan penggunaan UML, kami menggunakan representasi, notasi, dan yang
terpenting gaya berpikir yang sama, mulai dari analisis hingga implementasi akhir dan pemeliharaan
sistem. Hal ini tidak hanya membuatnya lebih mudah dan murah untuk menyelesaikan semua
tugas pengembangan sistem, namun juga memungkinkan kami mengedukasi pengguna dengan
lebih baik. Dengan mengurangi kompleksitas semuanya melalui pengurangan jumlah konsep yang
sulit, kita dapat membawa pengetahuan ke dalam jangkauan kelompok orang yang lebih besar
dalam organisasi dan pada akhirnya mendapatkan lebih banyak kerja sama dan antusiasme serta
kepemilikan pengguna terhadap proyek tersebut.
• Dalam topik ini, Anda pertama kali bertemu dengan objek dan kelas. Anda memodelkan domain
bisnis dengan kelas konseptual yang sangat abstrak. Anda mempelajari bagaimana kasus
penggunaan yang digunakan untuk membantu identifikasi kelas konseptual.
Anda juga mengidentifikasi hubungan antara kelas konseptual dan menemukan sifat
intrinsiknya dengan mengidentifikasi atributnya.
• Ide untuk menggunakan kumpulan notasi standar yang sama, UML, dalam model yang berbeda
dan pada tahapan yang berbeda dalam UP ditekankan. Menggunakan kerangka kerja ini akan
mengurangi kesenjangan representasi antara model mental domain dan representasi
perangkat lunak dan menghasilkan lingkungan pengembangan sistem yang jauh lebih baik.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
PEMODELAN
OBJEK OPIC 3M. BERORIENTASI CT
Asosiasiasi
Melakukan
Atribut utes
Lihatlah
Konsepkelas sebenarnya
Musifat serba bisa
Konsepmodel sebenarnya
Phmodel historis
Larman, C.(2002).
Hasemua.
ÿ 85
model utama
model logis
L dan pola
menerapkan UML
Aplikasi
Eriksson n, DIA, & Pe
enkus, M. (20 000). Bisnis
k. New York,
pola di
bekerja
menepuk
NY: Wiley.
S.
Sadd Atas
pemodelan s
sungai kecil, NJ:
engan UML
Hak Cipta © Universitas Terbuka Malaysia (OUM)
w
Pembantu tukang
B
Bisnis
Machine Translated by Google
Tema
ÿ Lebih Banyak Kasus Penggunaan
4
HASIL BELAJAR
Pada akhir topik ini, Anda seharusnya mampu:
1. Mengembangkan sub-use case dengan menyertakan dan memperluas hubungan; 2. Jelaskan
tujuan diagram keadaan UML secara konseptual
tingkat pemodelan; 3.
Menggambar diagram keadaan sederhana untuk kelas konseptual; 4.
Definisikan CRUD dan terapkan; 5.
Menjelaskan dan menerapkan aturan bisnis dalam analisis kebutuhan; 6. Mendeskripsikan
tujuan analisis ketahanan; dan 7. Menggambar sekumpulan diagram
analisis ketahanan suatu sistem.
ÿ PENDAHULUAN
Topik ini menggabungkan pekerjaan yang dilakukan pada kasus penggunaan dan membantu Anda mempelajari
lebih lanjut tentang model. Meskipun hal ini mungkin tampak sedikit membingungkan, dalam praktiknya terdapat
orang-orang berbeda yang mengerjakan berbagai aspek proyek, atau, dalam kasus proyek skala kecil, orangorang yang sama mengerjakan kasus penggunaan dan model lainnya secara bersamaan.
Kasus penggunaan adalah inti dari keseluruhan proses, jadi ada baiknya meluangkan waktu yang diperlukan
untuk 'melakukannya dengan benar'. Namun, mengetahui apa yang “benar” sering kali merupakan bagian yang sulit.
Seperti yang akan Anda lihat dalam topik ini, tidak semua penulis dan praktisi sepakat mengenai apa yang benar.
Anda perlu menyelesaikan ini untuk setiap proyek.
Pada bagian kasus penggunaan, kita melihat bagaimana kita dapat membagi kasus penggunaan menjadi sub-kasus
penggunaan. Seberapa jauh Anda mengambil tindakan ini agak kontroversial seperti yang akan Anda lihat.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 87
Pertanyaan besar ketika bekerja dengan use case adalah kapan Anda selesai? Dengan kata lain,
kapan Anda menemukan semua kasus penggunaan? Salah satu teknik yang sangat berguna untuk
membantu menjawab pertanyaan ini adalah dengan menggambar beberapa diagram keadaan.
Singkatnya, kami mengambil entitas utama dari model kelas domain dan melihat siklus hidup
masing-masing entitas saat dibuat, diperbarui, dan mungkin dihapus.
Selama pengembangan kasus penggunaan, dengan satu atau lain cara, kita perlu mengetahui
bagaimana operasi dan bisnis perusahaan atau organisasi berjalan.
Setiap perusahaan atau organisasi memiliki kebijakan dan aturannya sendiri dalam melakukan
sesuatu, yang dapat dirangkum dalam seperangkat aturan bisnis. Kami mungkin menemukan
sedikit demi sedikit aturan bisnis selama proses penulisan kasus penggunaan. Tidak ada cara
formal untuk menyajikan aturan bisnis (dalam hal UML atau alat pengembangan lainnya). Namun,
seperti yang mungkin Anda sadari nanti, seperangkat aturan bisnis yang baik penting untuk setiap
tahap proyek pengembangan sistem secara keseluruhan, jadi sekali lagi ada baiknya
mendedikasikan beberapa upaya untuk hal tersebut.
Terakhir, kita melihat teknik yang disebut diagram ketahanan. Diagram ini membantu kita beralih
dari analisis ke desain.
4.1
KASUS PENGGUNAAN YANG TERKAIT
Seperti yang Anda ingat, kita pertama kali membahas use case di Topik 2. Use case
menggambarkan interaksi seorang aktor (baik orang atau sistem eksternal) dengan sistem yang
sedang dibahas. Kasus penggunaan ditulis dalam bahasa sederhana sehingga pengguna dan staf
teknis dapat membacanya. Kasus penggunaan dapat ditulis secara informal atau menggunakan
template yang lebih formal. Versi awal dari sebuah use case menggambarkan alur utama kejadian
bagaimana sesuatu seharusnya terjadi dalam situasi normal, dengan asumsi tidak ada masalah.
Kemudian, seiring dengan kemajuan pekerjaan pada sistem, kasus penggunaan akan
disempurnakan untuk memuat aliran alternatif dan penanganan pengecualian.
Ada banyak pendekatan dan gaya berbeda dalam menulis kasus penggunaan. Alasan perbedaan
ini mencakup preferensi pribadi, gaya penerapan yang berbeda (misalnya, situs web yang menjual
buku berbeda dengan sistem perdagangan pasar saham), dan skala atau gaya pengembangan
yang berbeda (misalnya, dua orang dalam proyek tiga bulan bekerja sangat berbeda dari 50 orang
dalam proyek dua tahun).
Bacaan selanjutnya adalah review kasus penggunaan yang ditulis oleh penemunya, Ivar Jacobsen.
Dia memulai dengan sejarah singkat perkembangan mereka.
http://download.boulder.ibm.com/ibmdl/pub/software/dw/rationaledge/ma
r03/usecases_TheRationalEdge_mar2003.pdf
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
88 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
Seperti yang dapat Anda lihat dari bacaan ini, salah satu aspek use case yang telah berkembang sejak tahun
1986 adalah bagaimana kita dapat menghubungkan satu use case dengan use case lainnya. Mengaitkan
kasus penggunaan satu sama lain memungkinkan kita melihat persamaan dan perbedaan di antara keduanya.
Ada tiga macam hubungan antar use case, yaitu:
(a) Termasuk biasanya ketika satu set kasus penggunaan masing-masing mencakup beberapa fungsi
umum yang dinyatakan dalam satu sub-kasus penggunaan bersama;
(b) Perluas dimana fungsionalitas suatu use case diperluas dengan mereferensikan use case lainnya; Dan
(c) Menggeneralisasi ketika beberapa kasus penggunaan berbagi sesuatu yang serupa.
Sebelum kita membahas hubungan ini secara lebih rinci, ingatlah bahwa kami terutama menulis kasus
penggunaan untuk dibaca orang. Kasus penggunaan tidak dibaca oleh compiler (program perangkat lunak
yang mengubah program komputer menjadi kode komputer yang dapat dieksekusi) atau oleh alat jenis
apa pun. Jadi sebelum kita menambahkan hubungan ke kasus penggunaan kita, kita harus yakin bahwa
menambahkan kompleksitas akan membantu pembaca (manusia) untuk lebih memahaminya.
Satu lagi peringatan. Seperti yang Anda lihat dalam bacaan, Jacobsen telah mengubah pandangannya
tentang cara terbaik untuk menghubungkan kasus penggunaan. Kasus penggunaan tidak didefinisikan
secara matematis, sehingga hubungan di antara kasus-kasus tersebut juga tidak didefinisikan secara ketat.
Anda mungkin akan menemukan bahwa ketika Anda membaca rincian tentang berbagai jenis hubungan,
semuanya akan tampak cukup sederhana, namun ketika Anda mencoba menerapkan pengetahuan ini, itu
bisa jadi sangat sulit. Setiap orang, baik pemula maupun praktisi terampil, menghadapi masalah yang
sama. Solusinya adalah dengan mengingat bahwa use case adalah untuk manusia
menggunakan.
http://download.boulder.ibm.com/ibmdl/pub/software/dw/rationaledge/ma
r03/usecases_TheRationalEdge_mar2003.pdf
„
Baca halaman 45, yaitu bagian ‰ dan „
bahasa
Kasus penggunaan dan pemodelan terpadu
Berhati-hatilah saat memformalkan kasus penggunaan‰.
Catatan: Bacaan selanjutnya, mulai dari judul „‰, lebih maju dan teoretis.
Besok: potensi
langkah selanjutnya
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 89
4.1.1 Hubungan Sertakan
Pada bagian bacaan yang baru saja Anda pelajari, Jacobsen menjelaskan tentang „hubungan inklusif‰.
Saat Anda menulis kasus penggunaan, Anda mungkin menemukan bahwa bagian dari beberapa kasus
penggunaan terjadi di beberapa kasus penggunaan. Untuk menangkap kesamaan ini dan untuk
menyederhanakan kompleksitas kasus penggunaan yang panjang, Anda dapat menempatkan bagian
umum dalam sub-kasus penggunaan dan kemudian mereferensikan sub-kasus penggunaan ini dari kasus
penggunaan lain yang relevan. Jika Anda memiliki pengalaman dalam bidang tradisional, Anda pasti
bahasa prosedural pemrograman
sudah familiar dengan konsepnya
menggunakan subrutin untuk mengurangi kompleksitas pemrograman.
Sebagai contoh, mari kita perhatikan Video Victoria. Dalam Topik 2 kami mengidentifikasi kasus
penggunaan Pertahankan Anggota (Aktivitas 2.6). Tabel berikutnya adalah draf pertama untuk penggunaan tersebut
kasus.
Tabel 4.1: Kasus Penggunaan Pertahankan Anggota
Pertahankan Anggota
Niat Aktor
Tanggung Jawab Sistem
Identifikasi peminjam
Menampilkan detail pribadi (nama, alamat, tanggal lahir,
tanggal, bergabung, dll.) peminjam, ditambah ringkasan
pinjaman saat ini Simpan perubahannya
Secara opsional, pengguna dapat mengubah
rincian pribadi anggota
Secara opsional, pengguna dapat menghapus
anggota
Periksa apakah peminjam tidak meminjam apa pun
Hapus anggota tersebut
Sekarang bandingkan kasus penggunaan ini dengan Pinjam Video (dari jawaban Latihan 2.9). Apakah
ada kesamaan? Ya. Baris pertama untuk masing-masingnya sama: „Identifikasi peminjam‰. Saat kita
melihat kasus penggunaan dalam format penting, hal ini mungkin tampak tidak terlalu berarti. Namun,
sebelum kita dapat membangun sistem ini, kita harus memutuskan bagaimana peminjam akan diidentifikasi.
Akankah pengguna memiliki kartu untuk dipindai, atau akankah dia memberi kami nama atau nomor
identifikasinya?
Apakah dia perlu mengutip kata sandi? Jadi, untuk mengatasi semua kekhawatiran ini, kita dapat membuat
sub-use case yang kita sebut „Dapatkan Peminjam‰. Kini kasus penggunaan Video Pinjam dan Identifikasi
Anggota akan ÿmencakupŸ sub-kasus penggunaan Dapatkan Peminjam. (Perhatikan notasi UML yang
menempatkan karakter khusus ÿ Ÿ di sekitar kata „include‰.)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
90 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
Jadi sekarang bagaimana tampilan kasus penggunaan kita? Di sisi lain kita bisa (lihat Tabel
4.2).
Tabel 4.2: Penyertaan Sub-Kasus Penggunaan
Pertahankan Anggota
Niat Aktor
Tanggung Jawab Sistem
Sertakan kasus penggunaan Dapatkan Peminjam
ÿ
Saat ini penggunaan teks yang digarisbawahi dalam sebuah situs web berarti hyperlink ke
sesuatu yang lain. Konvensi ini digunakan untuk use case untuk menunjukkan sub-use case.
Jadi cara penulisan singkatnya cukup dengan menggarisbawahi nama use case, seperti
berikut (silahkan lihat Tabel 4.3).
Tabel 4.3: Cara Singkat Penulisan Penyertaan Sub-use Case
Pertahankan Anggota
Niat Aktor
Tanggung Jawab Sistem
Dapatkan Peminjam
ÿ
Kasus penggunaan Dapatkan Peminjam adalah sebagai berikut (lihat Tabel 4.4).
Tabel 4.4: Kasus Sub-Penggunaan
Dapatkan Peminjam
Subfungsi
Tingkat:
Niat Aktor
Identifikasi peminjam
Tanggung Jawab Sistem
Menampilkan detail pribadi (nama, alamat, tanggal
lahir, tanggal bergabung, dll.) peminjam ÿ
Anda akan melihat judul di awal use case yang memiliki klausa level. Ini memberitahu kita
bahwa ini adalah sub-use case, karena hanya memberi kita sebuah subfungsi. Artinya, use
case ini tidak masuk akal dengan sendirinya. Itu perlu dipanggil oleh use case lain.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
sertakan Notasi
Kasus Penggunaan
e Diagram Inc
ÿ 91
GAMBAR 4 LEBIH BANYAK KASUS PENGGUNAAN
pada
Memperlihatkan
w hubungan
penyertaan pada penggunaan c
kasus, UML sp
dengan ing kepanah
luded menggunakan cas
se (mohon rujuk
incl menunjuk
F
Gambar
4.1: Depi icting termasuk hubunganmu
baris tted,
menentukan sebuah titik
1).
eh ke Gambar 4.
P
AKTIVITAS4.1
4
Leet kami lagi t
al siap punya a
pikirkan kembali t ke situasi tersebut ion Victor
Video ria.
kasus penggunaan untuk
pinjam
eos. Tapi
video
sekarang
itu di dia juga ingin se
Anda
Victoria menceritakan
itu kamu
semua video lama itu yang dia lakukan itu tidak perlu.
ble, inkorpora
perbarui kami Andase kasus ke ulangmencerminkan cha initidak. Jika memungkinkan
incsertakan relasi
kasus.
nkirim ke simp
tingkatkan penggunaan Anda
makan sebuah
Ke atas
perbarui kamu
ca se.
Ke atas
Termasuk hubungan baik
ram
diagram kasus penggunaan
kapal adalah mo
A
pertama
st
aturan dari
kegiatan 2.11) w
dengan yang baru kami menggunakan
OST berguna relhubungan menjadi tween menggunakan
ases,
ca dan
d model yang digunakan
ng hanya hubungan ini. rn (2002, hal.
kamu bisa
membangun sangat rumit
s
ayam jantan20
07), menulis:
Sebagai
(dari Ac
mb, selalu
kamu
menggunakan
w
thmiliknya
yang mengikuti
Orang-orang siapa
termasuk
des
hubunganshipinggul antara
Memang,
kamu
T bahwa mereka menemukan
pembaca mereka
rs memiliki lebih sedikit co
dan
dengan mereka
campuran termasuk
yaitu dan memperluas
ds
yang
tulisan mereka itu aturan melaporkan orangho
dan [generasi
ayam jantanrn menganut pandangan ini karena
kasus penggunaan. onfusi sadar].
jika kasusnya,
e penekanannya kakak ada di dan teks kamu
peran mereka di com
rast, orang w
yang memberi
berkomunikasi antar orang
ople. Dengan kontras
lebih banyak em
d
penekanan pada th dia menggunakan kasusdiagram,
bagian
khususnya kapan n dilakukan dengan alat CASE,
mereka
seperti
e co yang ditambahkan
kompleksitas h
Selanjutnyat bagian disk
menjalin hubungan lain
cuss ekstensinya nd dan genera
hubungan baik
S.
kapal.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
92 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
4.1.2 Memperluas Hubungan
Hubungan perluasan adalah jenis hubungan lain antar kasus penggunaan. Di bagian sebelumnya kita melihat
hubungan include, yang dapat Anda anggap sebagai "melakukan sesuatu yang umum pada beberapa kasus
penggunaan". Definisi informal dari perluasan hubungan adalah 'melakukan sesuatu yang ekstra'.
Mari kita lihat contoh salah satu cara penggunaan hubungan perluasan. Di Video Victoria, kami memiliki
persyaratan ini (dari deskripsi Studi Kasus Video Victoria di Topik 1):
Ulang tahun anggota ditandai dengan video pilihan A surat khusus yang mengundang mereka ke pinjam apa saja
A minggu secara gratis.
mereka
Jadi kita jelas membutuhkan sebuah use case untuk menghasilkan surat ulang tahun, yaitu use case yang
sederhana. Namun, bagaimana kita menangani situasi ketika seseorang datang ke toko dengan membawa surat
ulang tahun dan ingin meminjam video secara gratis? Jelas ini merupakan perpanjangan dari kasus penggunaan
Pinjam Video.
Jadi, bagaimana tampilan kasus penggunaan ini?
Tabel 4.5: Hubungan yang Perluasan
Tangani Surat Ulang Tahun
Tingkat:
Subfungsi
Pemicu:
Pelanggan memiliki surat ulang tahun
Titik perpanjangan: Hitung total biaya yang harus dibayar dalam Pinjam Video
Niat Aktor
Tunjukkan bahwa peminjam memiliki surat
Tanggung Jawab Sistem
Pastikan pinjaman ulang tahun belum digunakan tahun ini
ulang tahun
Rekam penggunaan surat ulang tahun
Sesuaikan total jatuh tempo
Sekali lagi Anda dapat melihat kita berada pada level subfungsi. Klausa pemicu memberitahu kita kapan hal itu
dimulai, yaitu ketika pelanggan memiliki surat ulang tahun. Titik ekstensi memberitahu kita bahwa kasus
penggunaan Menangani Surat Ulang Tahun dimulai dari kasus penggunaan Pinjam Video ketika mencapai
bagian „hitung total biaya yang harus dibayar‰. Ini disebut titik ekstensi.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
o pertahankan kitaJika kasusnya rapi, kami dapat mendokumentasikannyaingat Bor
Terakhir, untuk
menunjukkanbahwa ada ekstensi
N. Di tempat lain
ÿ 93
GAMBAR 4 LEBIH BANYAK KASUS PENGGUNAAN
baris Video untuk
kasus penggunaan
ke jelas untuk s
pesanan, kami mak
seseorang
e‰, ada begitu
ada sesuatu
membaca kasus penggunaan ini, sebagai bagian dari „menghitung total biaya yang harus dibayar
yang lebih terjadi
pening.
Tabel 4
.6: Dokumentasi
ng Kasus Penggunaan untuk Menampilkan Mantanxtension
Pinjam V Video
Ekstensi tepat: Kal
Hitung total biaya
Aktor Int
e jatuh tempo
ketegangan
Sistem Kembali
tanggung jawab
Dapatkan bor
pendayung
Kalkulasiketerlambatan total biaya yang harus dibayar untuk a denda di
Mengenali
kamu videonya
masa lalu
dana bo baru
Lulus t total cinta
atau tulisan tangan
jumlah karena th
dia Tunai
Daftar di Terminal
Perhatikan itu
di selain menambahkan mantan
kasus penggunaan,
,
exte
poin xtensi
tidak pada awal Peminjaman
kami miliki tidak tidak mengubah e teks itu sama sekali. Ini adalah sebuahn penting a
dan hubungan
pinggul. Pinjam Video adalah u yang lengkap dan utuh
sebelum wkami menambahkansurat
b
ulang tahun ers, jadi tidak perlu c
mengubah.
e Diagram Contohxtend Notasi
yaitu li bertitik
padan kasus penggunaan, spesifik UML
kasus penggunaan dasar (tolong r mengacu pada Gambar
ulang 4.2).
Memperlihatkan
w perpanjangan kembali
kegembiraan
aku menunjuk ke
F
Gambar
4.2: Dep
Sangat c penggunaan umum
diambil kapan saja. Sebuah
layar
id kapan saja
dari ekstensi
ujian umum
aspek
kasus penggunaan
pada
Kasus Penggunaan
panah
w Video yang
dan
menggambarkan ekstensinya
hubungan
ine, dengan
P
dan hubungan
aku
ip untuk beberapa orang
cukup adalah a
kemampuan untuk mencetak
bertindak itu di tidak bisa
menginformasikan
kawin aktif
e.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
94 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
Jadi, misalnya, jika kita mempunyai kasus penggunaan Pertahankan Anggota, maka setiap saat
petugas meja depan dapat mencetak ringkasan anggota tersebut.
KEGIATAN 4.2
Seperti yang dibahas di bagian sebelumnya, fungsi cetak adalah contohnya
hubungan yang diperluas. Tulis kasus penggunaan Pertahankan Anggota termasuk
segala sesuatu yang diperlukan untuk memungkinkan pengguna mencetak. Gambarkan juga use case-nya
diagram.
Perbedaan antara hubungan perluasan dan penyertaan diberikan di bawah ini:
Termasuk
Memperpanjang
Use case dengan perluasan (sub) use
Use case dengan use case umum
kasus
Use case utama memerlukan sub use case
Use case utama masih lengkap tanpa sub
use case
ini untuk menyelesaikan proses atau aktivitas
Hanya aktivitas tambahan
4.1.3 Hubungan Generalisasi
Hubungan ini jarang digunakan, bahkan lebih jarang digunakan dengan baik. Kami menyertakannya di
sini hanya sebagai peringatan bagi Anda yang mungkin menemukannya di materi lain. Inilah yang
dikatakan Cockburn (2002, p. 241) tentang hal itu. Notasi generalisasi kasus penggunaan:
Secara umum, masalah dengan hubungangeneralisasi adalah bahwa komunitas profesional
belum mencapai pemahaman tentang apa yang tersirat dalam perilaku subtipe dan cara
ke
spesialisasi, apa yang dimaksud dengan properti dan pilihan. Karena use case adalah deskripsi
perilaku, maka tidak ada pemahaman standar tentang apa itu perilaku
berarti
mengkhususkan mereka.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 95
Studi Kasus
Bab e-book berikut dari perpustakaan digital OUM (Books24x7) berisi studi kasus pembuatan diagram use
case. Anda wajib membaca bab ini.
7
Schmuller, Joseph. „Jam - Bekerja dengan
Use Case Diagram‰. Sams Ajari Diri Sendiri UML 1999. Buku
24x7. dalam 24 Jam.
toc.aspx?bookid=414>
Sam. © <http://common.books24x7. com/
4.2
MENEMUKAN SEMUA KASUS PENGGUNAAN
Jadi, bagaimana Anda tahu jika Anda telah menemukan semua kasus penggunaan?
Dalam pembacaan online sebelumnya, Jacobsen memberikan aturan praktis untuk jumlah kasus penggunaan.
Dia mengatakan, „sistem besar yang mendukung satu proses bisnis mungkin memiliki tidak lebih dari 20
kasus penggunaan‰. Jumlah ini tidak termasuk sub-kasus penggunaan, maupun kasus penggunaan tipe
generik, seperti logon atau logoff. Coba pikirkan tentang VictoriaÊs Video, yang hanya memiliki satu fungsi
bisnis kecil, yaitu menyewakan video.
Kami memiliki kurang dari 20 kasus penggunaan, jadi aturan ini tampaknya berlaku. Namun, dalam
praktiknya, dengan sistem yang besar, terkadang sulit untuk mengatakan apa yang dimaksud dengan satu
proses bisnis.
Cara lain untuk melihat berapa banyak kasus penggunaan yang harus ada adalah dengan mencatat tingkat
penemuan kasus penggunaan. Biasanya, seorang praktisi berpengalaman akan mengidentifikasi sekitar 70
persen kasus penggunaan dengan cukup cepat. Bagian selanjutnya mencakup beberapa teknik yang
digunakan saat bekerja dengan pengguna untuk membantu membuat proses tersebut selancar mungkin.
Namun, bagaimana dengan 30 persen kasus penggunaan lainnya? Beberapa di antaranya akan menjadi
jelas setelah Anda mulai menguraikan 70 persen awal. Ada juga dua teknik yang sangat berguna. Keduanya
mengharuskan kita bekerja dengan model kelas konseptual. (Inilah sebabnya kami mengajari Anda
menggunakan penulisan kasus dan pemodelan domain secara paralel.)
Teknik pertama adalah menggambar diagram keadaan untuk kelas konseptual utama. Pada diagram ini kami
kemudian menulis nama use case. Saat melakukan hal tersebut, kami sering menemukan kasus penggunaan
yang hilang.
Teknik kedua adalah memeriksa apakah Anda memiliki kasus penggunaan untuk membuat, membaca,
memperbarui, dan menghapus informasi untuk setiap kelas konseptual.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
96 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
4.2.1 Diagram Keadaan
Diagram keadaan menunjukkan siklus hidup suatu objek: peristiwa apa yang dialaminya, transisinya,
dan keadaan di antara peristiwa-peristiwa tersebut. Seperti kebanyakan diagram UML, diagram
keadaan menyediakan notasi dasar yang dapat digunakan untuk berbagai tujuan. Tujuan kita pada
tahap ini adalah untuk menggambar gambaran siklus hidup kelas konseptual yang menjadi inti sistem.
Biasanya dalam suatu sistem, hanya ada beberapa kelas konseptual yang benar-benar memerlukan
diagram keadaan. Tidak salah menggambar diagram keadaan untuk semua kelas konseptual, tapi
mungkin hanya membuang-buang waktu, karena menggambar semua ini tidak akan menunjukkan
sesuatu yang baru kepada kita. Jadi kuncinya adalah dengan cepat menentukan mana yang perlu
Anda lakukan.
Tabel berikut memberikan beberapa contoh sistem dan daftar kelas konseptualnya. Kolom ketiga
menyarankan kelas konseptual yang mungkin memerlukan diagram keadaan. Seperti yang Anda
lihat, kata-kata di kolom ketiga sebenarnya adalah inti dari setiap sistem.
Tabel 4.7: Contoh Sistem dan Kasus Konseptual yang Memerlukan State Diagram
Pesanan masuk
Kelas Konseptual itu
Kelas Konseptual
Sistem
Membutuhkan Diagram Negara
Pesanan, pelanggan, produk, kwitansi, toko,
Pesanan, pelanggan, produk
dll.
Manajemen aset Aset, pembelian, penjualan, lokasi, dll. Aset
Manajemen
Tahanan, tempat tidur, hukuman, laporan
tahanan
medis, perintah pengadilan, dll.
Pendaftaran mahasiswa Mahasiswa, mata kuliah,
Universitas,
Tawanan
Mahasiswa, tentu saja
dosen, dll.
AKTIVITAS 4.3
Untuk Video Victoria, tentukan kelas konseptual mana yang memerlukan status
diagram.
Sebagai contoh, mari kita perhatikan sistem penjara.
Misalkan kita baru saja mulai bekerja dan kita telah mengidentifikasi tiga kasus penggunaan:
(a) Penerimaan Menangani tahanan yang dipindahkan dari polisi atau
pengadilan ke penjara, dan diterima.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
(b) Lalu
jawab Tangan
transfernya
(c) Rel
sewa Tangan
Dles cara di mana ap
GAMBAR 4 LEBIH BANYAK KASUS PENGGUNAAN
r sampai setengah wa
menjadi seorang tahanan
ya
ÿ 97
rumah.
tahanan kembali dilepaskan kembali ke
com
komunitas.
lel dengan iden ntifying dan w
Secara paralel
konsep
kelas ual
jadi kami berhenti
seni
Apa yang harus dilakukan
oes
el. Cepat w
kita
penggunaan tulisan kasus,
c
juga bekerja
kami menyadari hal itu
t Tahanan adalah a konsep kunci
g pada mod
kelas ual,
menggambarnya
s diagram keadaanM.
suatu negara bagiantampilan
d
e adalah ujian
diagram kamu suka? Di Sini
sederhana (tolong
mengacu pada
Gambar 4. .3).
Aragambar 4.3: Sebutkandiagram
d
untuk Pri versi isoner
pada 1
Catatan: HalJika rumah jalan adalah
adalah tempat untuk menyimpan
op di tengah jalan aperjalanan.
Kita punya e kotak dengan cor bulat
diberikan am
bermakna n
ini av
sangat umum
Apa ini
ners ke deno
nama. Perhatikan bahwa nam
menunjukkandia
th
t negara bagian berakhirndi„ed‰
n berakhir untuk Enegara bagian Inggrisnama.
n
bagaimana itu th ini tiga
adalah diagram sh
kita
Selanjutnya kita
e. Setiap negara bagian harus
perhatikan setiap negara bagian
aku yang terakhir
lihat caranyaw kasus penggunaan kamipasokan model
menggunakan kasus pada diagram keadaan (pl
e menyatakan bahwa tahanan bisa masuk
tolong staf ini
sewa lihat
makan. Jadi yang kami lakukan adalah
o Gambar 4.4)
diagram aku
kita sekarang ini:
Aragambar 4.4: Sebutkandiagram
d
untuk Pri versi isoner
pada 2
Hak Cipta © Universitas Terbuka Malaysia (OUM)
. Jadi
Machine Translated by Google
98 ÿ KE
9
E KASUS PENGGUNAAN
OPIC 4 LEBIH BANYAK
N
Perhatikan juga, th dia memulai
stYang terakhir, hormat
secara efektif.
dan simbol keadaan akhir. Itu
S o sekarang kita bisa
diagram s ke t
Hai
aku akan menunjukkan ini
pengguna ke c
ini menunjukkan thdia pertama dan l
tegaskan bahwa wkami benar
tidak
dalam pemahamanmu
dan siapa yang mengerti
berdiri sistem penjara uld wou
menemukan. Sangat mirip
mungkin seseorang
saay:
„Yah, itu
semuanya baik-baik saja, tapi bagaimana jika ya
A
Setelah beberapa di
miliknya
(F
Gambar
diskusi dengan kecerdasan
th
A tahanan esca
pengguna, kita bisa kembali
kera?‰
menggambar dia agram seperti th
4.5):
m untuk Tahanan
Gambar 4.55: Diagram keadaan
T
Versi baru ini
versi 3
ion memiliki yang baru
w negara bagian disebut Escaped (bukansepertinya itu sudah berakhir
ds dalam „ed‰), a dan
w
kami punya identitastified dua baru
w kasus penggunaan,yaitu
n
Escap
krrusial o
caases.
makan diagram mereka membantu kamu kita untuk segera f menemukanmu yang hilang
menggambar sta
e dan tutup ulanggambar. Ini adalah t titik
menggunakan
N
Perhatikan
pada diagram terakhir ini m bahwa kita sekarang
kami mengenali t
N
gambar. tidak
pernah mendapatkan rekap
bahwa beberapa esc
tahanan berjubah
AKTIVVITA 4.4
Untuk Vic Video toriaÊs
Pita,
s, gambar dua s
negara bagian yang terpisah
e diagram,
aktif
tidak untuk Video
dan temukan satu untukku
bara.
sebuah
Apakah kamu
kamu mengidentifikasi apa pun kasus penggunaan yang hilang?
Hak Cipta © Universitas Terbuka Malaysia (OUM)
ers
Machine Translated by Google
KE GAMBAR 4 LEBIH BANYAK
4.2.2
Menunjukkan
ng
KASUS PENGGUNAAN
ÿ 99
Super S Amerika
Setelah menggambar
Staf super ates adalah seorang teknisi
teknik untuk sim menyederhanakan sta
makan diagram.
ng „Diagram
m
untuk
Tahanan
versi
3‰
kita
bisa
sh
bagaimana
dengan
ano
pengguna
lain
ap
,
keadaan
ho mungkin
berkata:
Ini baik saja,
B tahanan
tapi
“Kamu
rumah. Dari tentu saja
Jadi di
S juga bisa scape
yaitu
dari menjadi
berada di h
setengah jalan
N merekapergi
kembali ke dalam tahanan
y.‰
jikakami
kamumenangkap
yakin, kalau begitu
terlihat seperti ini
S:
iagram bisa
Ara
gambar 4.6: Sebutkandiagram
d
untuk Priversi isoner
Kamu akanaku perhatikan itu ada
t dua
sejak th
ini merujuk pada
memperkenalkan
cing
Di n
o transisi,
sama kamu
ept dari super
conce
pada 4
atau kasus penggunaan,
disebut melarikan diri
pe.
Sekarang
kasus penggunaan, wkita bisa menyederhanakannyamenyempurnakan diagramnya
gram dengan
negara bagian (lihat Gambar
ulang 4.6).
ada sebuahnegara bagian yang super
Aku menelepon Laksamana
disetujui. Jadi
Anda dapat melihat bahwa
t
versi ext y
apa yang kita
tahanan wa Dalam Penahanan o
e sekarang katakan
ying adalah jika atauada
Di setengah
e di negara bagian Lolos.
E
Sekali
dan mereka
y Kalau begitu, kaburlah
dan mereka akan menjadi seperti itu
, jika mereka r
bagian Lolos,
y rumah,
e mereka berada di negara
ditangkap kembali, mereka
t
pergi ke e negara bagian Di Cus
tenang (tolong e lihat .7).
Gambar 4.
Ara
gambar 4.7: Sebutkandiagram
d
untuk Priversi isoner
pada tanggal 5
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
100 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
4.2.3 Buat + Baca + Perbarui + Hapus = CRUD
Sekarang kita melihat teknik kedua yang membantu kita menemukan kasus penggunaan yang hilang.
Akronim „CRUD‰ adalah singkatan dari Buat, Baca, Perbarui, dan Hapus. Kita perlu memeriksa setiap
kelas dalam diagram kelas konseptual untuk memastikan bahwa kita memiliki semua operasi ini, atau kita
dapat memutuskan untuk tidak memasukkannya. Misalnya, operasi penghapusan sering kali dihilangkan.
Di Video Victoria, ada Anggota kelas konseptual. Dalam tinjauan informal model kelas konseptual dan kasus
penggunaan, percakapan ini dapat dengan mudah terjadi:
Sarojini (
pengulas
Tiveesha ():
Apakah kita memiliki kasus penggunaan untuk membuat anggota?
):
Ya, ini disebut „Buat Anggota‰.
perancang
Sarojini: Apakah kami memiliki kasus penggunaan yang dapat membaca anggota?
Tiveesha: Ya, kami punya beberapa. Yang utama adalah Mempertahankan Anggota dan
Pinjam Video.
Sarojini: Apakah sistem mendukung pembaruan anggota?
Tiveesha: Ya, sekali lagi itulah kasus penggunaan Keep Members.
Sarojini: Dan yang terakhir, bagaimana dengan penghapusan?
Tiveesha: Jawaban yang sama lagi karena dalam sistem ini memperbarui dan menghapus cukup
mudah, kami telah menggabungkannya ke dalam satu kasus penggunaan.
Sarojini: Ide bagus. Sekarang, beralih ke kelas konseptual lainnya ÿ
Dalam percakapan ini, Sarojini telah mengkonfirmasi bahwa Tiveesha telah mempertimbangkan semua
operasi CRUD untuk Anggota kelas konseptual. Rangkaian pertanyaan berikutnya adalah tentang kelas
konseptual lain, seperti Video.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 101
AKTIVITAS 4.5
Lanjutkan review Sarojini dan lihat kelas Spesifikasi Video.
Apa yang kamu temukan?
4.3
PERATURAN BISNIS
Kami sekarang mendekati akhir analisis kebutuhan. (Ingatlah bahwa „mendekati akhir‰ di sini berarti akhir
dari pembahasan analisis persyaratan. Dalam praktiknya, karena kita melakukan berbagai hal secara
berulang di UP, semua tugas dalam analisis persyaratan akan mencakup berbagai fase di UP .)
Sebelum kita beralih ke pembahasan desain, ada topik sangat penting yang tidak boleh kita lewatkan:
aturan bisnis.
Aturan bisnis mungkin merupakan bagian paling dasar dari analisis persyaratan dan harus dilakukan
bersamaan dengan pemodelan kasus penggunaan. Bacaan berikut mengeksplorasi hubungan antara
aturan bisnis dan kasus penggunaan secara lebih lengkap:
Gottesdiener, E. (1999). „Menangkap aturan bisnis‰, Majalah Pengembangan Perangkat Lunak,
7(12), di <http://
www.ebgconsulting.com/pubs/articles/businessrulesrule_gottesdiener
.pdf>
Faktanya, selain perannya dalam kasus penggunaan, aturan bisnis juga terkait dengan artefak lain dalam
proses pengembangan perangkat lunak. Bacaan berikut membahas tautan tersebut, khususnya pada
desain antarmuka pengguna, pembersihan data, dan validasi.
Ambler, S (2000) „Aturan bisnis berorientasi objek‰ di: <http://
www.sdmagazine.com/documents/s=826/sdm0006j/>
Di bagian terakhir bacaannya, Ambler menyebutkan Object Constraint Language (OCL) sebagai sarana
untuk mengekspresikan aturan bisnis. Para ahli lain tidak setuju.
Misalnya, Gottesdiener mengatakan bahwa peraturan bisnis harus ditulis dalam bahasa yang dimengerti
pengguna. Kami juga ingin mengadopsi pendekatan ini dalam menulis aturan bisnis. Berikut adalah
beberapa opsi yang kami sarankan untuk mengungkapkan aturan bisnis dengan cara terbaik:
(a) mencantumkan semua aturan dalam satu daftar, dan kemudian merujuk ke daftar tersebut dari kasus
penggunaan lainnya, maket layar, diagram kelas, dll.;
(b) cukup temukan aturan dalam kasus penggunaan, seperti yang telah kita lakukan dalam kursus ini; Dan
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
102 ÿ TOPIK 4 KASUS PENGGUNAAN LAINNYA
(c) membuat kasus penggunaan tetap sederhana, namun menambahkan bagian ke template kasus penggunaan
Anda untuk secara eksplisit merujuk pada aturan bisnis yang diterapkan setiap kasus penggunaan.
Jadi, seperti yang Anda lihat, ada berbagai kemungkinan. Faktor tambahan yang perlu dipertimbangkan
adalah gaya sistem (misalnya, apakah sistem tersebut melibatkan banyak perhitungan), ukuran aplikasi, alat
yang digunakan, dll.
Jadi apa aturan bisnis di VictoriaÊs Video? Berikut beberapa contohnya:
(a) Hanya anggota yang dapat meminjam video;
(b) Apabila ada orang baru yang mengajukan permohonan untuk menjadi anggota, ia harus menunjukkan
SIM atau tanda pengenal lainnya yang berfoto;
(c) Usia minimal 16 tahun;
(d) Seorang anggota dapat meminjam video dalam jumlah berapa pun, selama tidak ada video yang sudah
lewat batas waktunya;
(e) Ada denda untuk video yang sudah lewat waktunya;
(f) Lamanya waktu peminjaman video bergantung pada video tersebut.
Rilisan baru hanya dipinjamkan dalam semalam, rilisan saat ini untuk sewa tiga hari dan sisanya untuk
seminggu;
(g) Anggota dapat memesan video;
(h) Setiap video memiliki klasifikasi, (G umum, PG bimbingan orang tua, MA penonton dewasa, dan R
terbatas). Anggota harus berusia di atas 18 tahun untuk meminjam video R. Setiap video juga memiliki
kategori: roman, umum, fiksi ilmiah, bahasa asing, dan anak-anak;
(i) Saat seorang anggota berulang tahun, mereka akan dikirimi surat khusus yang mengundang mereka untuk
meminjam video apa pun pilihan mereka selama seminggu secara gratis;
(j) Setiap tiga bulan sekali toko melakukan stock opname; Dan
(k) Setiap video yang hilang diperbarui untuk ditampilkan sebagai hilang.
Anda harus mengenali sebagian besar teks ini karena cukup dekat dengan deskripsi awal yang Anda lihat
dari Studi Kasus Video Victoria di Topik 1. Saat mendeskripsikan suatu sistem, salah satu metode yang
sangat umum adalah membuat daftar dan mendeskripsikan aturan bisnis. Keahlian seorang analis persyaratan
adalah menangkap aturan-aturan ini dan menjadikannya sesuatu yang dapat dikerjakan oleh tim desain dan
pemrograman lainnya. Kasus penggunaan adalah cara utama untuk menyatukan aturan bisnis untuk
menciptakan sebuah sistem.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 103
KEGIATAN 4.6
Untuk masing-masing contoh aturan bisnis yang baru saja kami berikan untuk Victoria
Video, putuskan apakah aturan telah diterapkan dalam kasus penggunaan apa pun. Jika begitu,
sebutkan nama mereka; atau, Anda mungkin memperhatikan bahwa aturan bisnis belum ada
ditangkap dalam kasus penggunaan apa pun.
Latihan sebelumnya seharusnya membantu Anda memahami fakta bahwa terdapat hubungan yang cukup
kuat antara kasus penggunaan dan aturan bisnis, namun setiap bentuknya sangat berbeda.
4.4
LEBIH BANYAK PEMODELAN
Jadi, di mana kita akan pergi? Kita hampir selesai dengan diskusi kita tentang analisis kebutuhan. Namun
pada tahap UP ini, persyaratan kami belum lengkap, sehingga kemungkinan ada beberapa bagian sistem
yang lebih lengkap dibandingkan yang lain. Kami memiliki diagram kelas konseptual, dan serangkaian kasus
penggunaan dengan aturan bisnis. Beberapa pekerjaan lain yang dijelaskan dalam Topik 3 juga dapat
dilakukan, seperti SSD. Kami juga memiliki beberapa diagram keadaan untuk kelas konseptual yang penting.
Oleh karena itu, sudah waktunya bagi kita untuk memulai beberapa pekerjaan „desain‰.
Terkait Video Victoria, apa yang kami punya?
Dari Topik 2 dan topik ini, model use case kami sedang dikembangkan. Kami memiliki daftar aktor dan
kasus penggunaan. Kami memiliki diagram kasus penggunaan secara keseluruhan. Beberapa kasus
penggunaan telah ditulis secara rinci, sementara yang lain hanya memiliki nama. Kami memiliki diagram
aktivitas untuk menunjukkan bagaimana beberapa kasus penggunaan utama cocok satu sama lain.
Dari Topik 3 kita mempunyai model kelas konseptual dan dari topik ini juga kita telah menggambar beberapa
diagram keadaan untuk kelas konseptual Member dan Video Tape.
Jadi sekarang kami ingin beralih ke model desain. Namun, ada kesenjangan yang sangat besar antara kelas
domain konseptual dan kelas desain. Untuk membantu kita menjembatani kesenjangan ini, ada teknik yang
disebut analisis ketahanan (terkadang juga disebut „analisis kasus penggunaan‰). Teknik ini dapat
membantu kita untuk menghasilkan desain awal. Teknik ini sangat berguna bagi pemula, namun bahkan
desainer berpengalaman pun sering menggunakan teknik ini ketika menghadapi masalah yang sulit.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 04 ÿ KE
E KASUS PENGGUNAAN
OPIC 4 LEBIH BANYAK
R
Kekokohan di
bantuan iagramtolong kita cepat mudah mengidentifikasikelas
d
desain
R
Kekokohan
di
iagram adalah mjauh lebih cepat r harus dilakukan daripada urutan diaagram karena
thhei kurang detail
D. Kekokohan
diagram dia
sebuah
e 4.8).
analisis ke des tanda tangan (tolong ulang
mengacu pada Gambar
s dan metode
ds.
menggunakan
kesenjangan itu om
bantu kami menyeberang t
F
Gambar 4.8: Robu diagram kegunaanms bantu jembatan
e kesenjangan antara
antara analisis dan dan fase desain
se
R
Kekokohan
di
UML normal sehingga sebagian besar CASAlat SE melakukantidak
n
iagram adalah n bukan bagian dari fo
su
mendukung mereka.. Namun, th
dia semangat t jenis d
diagram adalah th
tapi itu benar
ya
tidak
r
lebih
dari
t
‰,
yaitu
tindakan
dra
buang‰
menakjubkan itu membantu Anda jauh
en
Faktanya, sebagai semantik dari f kekokohan d diagramnya cukup longgar
produk ke-nd. SAYA
Sangat mungkin untuk memiliki banyak
Q
kamu berbeda versi dari hal yang sama.
4
4.4.1 Ro
T
Bagian ini ta
MS
sifat keras kepala
s Diagram
membuat kamu senang
ya
menggambar ga kokoh
R
Kekokohan sebuah
keterlibatan analisisaku menganalisisnya
ng narasinya
mengidentifikasi af
set tebakan pertama
t objek th
obobjek dapat diklasifikasikan menjadio tiga jenis,
(A
a) Batas
ss diagram fo
teks aktif id
atau satu penggunaan ca
as.
kasus penggunaan a
Dan
topi akan berpartisipasiipate di setiap kasus penggunaan. Ituini
, yaitu
coba;
(B
b) Entitas; sebuahdan
(C
c) Pengendalian eh.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 105
Masing-masing mempunyai simbol tersendiri (lihat Gambar 4.9).
Gambar 4.9: Simbol batas, entitas, dan pengontrol
Objek batas mewakili semua hubungan antara objek internal sistem dan dunia luar. Jenis objek batas
yang paling umum adalah bagian dari antarmuka pengguna, seperti jendela atau kotak dialog. Pembaca
kode batang juga diwakili oleh objek batas.
Misalnya, di Video Victoria kita memiliki objek untuk mengontrol pembaca kode batang.
Objek entitas adalah objek yang mewakili data yang harus diingat oleh sistem, baik secara permanen di
luar eksekusi use case (data tersebut mungkin disimpan dalam tabel database) atau untuk eksekusi use
case. Model domain konseptual harus menjadi sumber dari banyak objek entitas Anda. Biasanya, Anda
akan menemukan entitas baru yang tidak ada dalam diagram kelas domain Anda. Ini bukan cacat pada
model konseptual Anda, namun merupakan tanda bahwa analisis ketahanan membantu Anda.
Dalam Video Victoria, objek yang telah kita identifikasi sebagai kelas konseptual mungkin semuanya akan
direpresentasikan sebagai objek entitas.
Objek pengontrol mewakili hal lain yang Anda perlukan agar keseluruhan diagram masuk akal. Hal-hal
seperti aturan bisnis atau proses yang ditangkap oleh use case akan ditampilkan sebagai objek pengontrol.
Di Video Victoria, semua logika yang membentuk kasus penggunaan akan berada dalam objek pengontrol.
Selain itu, kita bisa meletakkan beberapa perhitungan di objek pengontrolnya sendiri.
Kita akan mempelajari sebuah contoh, tapi pertama-tama kita perlu memperhatikan aturan-aturan berikut,
yang harus dipatuhi oleh diagram ketahanan:
(a) Aktor hanya berbicara pada objek pembatas;
(b) Objek batas hanya berkomunikasi dengan objek pengontrol;
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 06 ÿ KE
E KASUS PENGGUNAAN
OPIC 4 LEBIH BANYAK
ajak untuk boun
(C
c) Pengendalian
eh benda ta
kendalinya ers; Dan
(D
d) Entitas ob
objek hanya bicara
objek yang tidak penting
ts,
entitas ob
objek atau lainnya
ers.
kamu untuk mengendalikan
Jika
jika kamu menemukantopi
th kamu tidak bisa atau memodelkan diagram dengan cara ini, itu
dan mungkin kamuAnda
N
perlu menambahkan objek baru. T
Himpunan ob
potongan pertama di t
yang harus dilakukan adalah a
objek yang Anda akhiri
sekumpulan desain c gadis.
H ujiannya
Ini
contoh sebuah val ketahanan identitas
diagram s (ple
Gambar 4.10:
fa valid kuat
Contoh dari
kemudahan lihat FGambar 4.10).
diagram ketuhanan
HAI
Tentu
saja ini
eds beberapa wo perintah untuk memberi label pada semua entitas ya, jadi kami tahu
s diagram ne
w
aduh,
tentang apa itukeluar. Langsung tions dari ar
orang bodoh adalahIni tidak khusus sebagian besar penting
o kamu bisa Dra aw mereka yang mana
cara chever m
Jadi
F atau mereka yango sudah khawatir
akrab dengan
dengan kecerdasandetail m
pesan antara
w
kami melakukan selanjutnya
diagram pengaruh ms sendiri
semut, membuat lebih
se
masuk akal bagi Anda.
h urutan dia
bersama
bahwadikita
adalah
n
agram, perhatikan bukan
antara
objeknya
dll. com
aku nanti ap
induk ayam
yaitu.
S o bagaimana kabarmukamu mulai? Dengan baikaku, kamu kembali k untuk Anda gunakan
e kasus. Ambil teksnya, dan
Anda melakukannya, SSD-nya. Sta
kondisi di wo lain
kamu
bersama
melalui kasus penggunaan. Aku g
baiklah, ambillah „hari yang cerah‰
mayor atau sejenisnya
hanya kesalahan bisaakan ditangani
pertimbangkan bagaimana m
bersama
membaca seni t
‰ mendekati.
D.
,
jika
kesalahan
tidak ada kesalahan
Bisa
Nanti kamu c
L
Mari
kita sekarang sp
tunggu sedikit waktu untuk bekerja ng melalui sebuah n diperpanjang e contoh ho
roketegaran dia
pemrograman ca sebuah karya di pr latihan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
aduh
Machine Translated by Google
KE GAMBAR 4 LEBIH BANYAK
e
Contoh
Lihat gambar b
di bawah ini yang menunjukkan SSSD untuk P
KASUS PENGGUNAAN
Proses Penjualan
ÿ 107
kasus penggunaan
(Larman n (2002)):
N
Catatan:
*[...]
] adalah
itu
tanda terasi
er dan
klausa indikasi ng c
B
kotak
untuk iterasition.
Sumber: LLarman (2002), halaman 119
Jadi marilah kita
Mari menggambar robu
diagram
dari
e kasir ke th
kegunaan saya untuk ini. T Baris pertama adalah „Make Ne
dia sistem. Th
dia adalah perwakilan
dimasuki oleh bo objek dasar
aturan kamis di atas, kita tahu bahwa batas ob
menggambar satu. Dia
ke
pengontrol,ojadi
mungkin terlihat seperti itu
objek hanya bisa
4.11: Versio
ct. Dari
objek
kamu berbicara dengan rekan
yang berikut iniing.
ure
Gambar
ew Sale‰,
pada 1
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 08 ÿ KE
E KASUS PENGGUNAAN
OPIC 4 LEBIH BANYAK
T
Baris berikutnya o dari SSD adalah "Masukkan Item"‰. Jelas sekali, inis membutuhkan ano
batas lainnya
ary
obobjek disebut E Masukkan Barang.
2: Versi 2
Gambar 4.12
T
Baris berikutnya odari SSD adalah dmenampilkan
en
entitas Butir a
dan Spesifikasi Produk
sebelum kita membutuhkan t
e deskripsi dan harga. H
. Aturan s
mengatakan bahwa hanya pengontrol cBisa
taberbicara dengan entitas
w baris dari Penjualan Baru
s, jadi kita menggambar
P
Spesifik Produk
objek fiksi
e Pengendali t
ke butir a
ts.
3: Versi 3
Gambar 4.13
Hak Cipta © Universitas Terbuka Malaysia (OUM)
dan
Machine Translated by Google
KE GAMBAR 4 LEBIH BANYAK
Untuk menampilkan
ya
harga dan deskripsinya
ion, tambahkan nebatas baru
ure
Gambar
Kee ini
tapi kami melakukantidak
n
eps yang sedang berjalan,
4.14: Versio
perlu sh
KASUS PENGGUNAAN
ÿ 109
:
pada 4
karena kita sebenarnya
kamu hanya tertarikditempatkan di findin
ng tahu apa th
atau berulangG. Ini adalah
dia entitas ar
re, bukan di
th
gambaran bagaimanamereka digunakand itu terjadi
masuk nanti
dia merincinya
bagaimana pengulangan
aktif
optik.
Selanjutnyakami tidak menarik acara
adalah kapan
n pengguna ind
e
menyatakan bahwa dia
e sudah 'selesai'. T
Kalau begitu,
pergi dan c hitung kita mungkin Di
n sini w
Spesifikasi produk
n (misalnya
butuh beberapa mlebih jelasnyaf
entri telah di
e, banyak hitungan
pajak di di item yang berbedaS). Juga, kami m mungkin memerlukan beberapa
saya informasi
dari pajak.
tingkat yang berbeda
s penjualan
biarkan saja tarif pajaknya
yaitu. Jadi
info kapak dengan catatan
t
„inve
dia‰. Anda
kami masukkan
n suatu entitas ob objek yang disebut Ta
memperkirakan lebih jauh
c
3
itu
tidak
su
semua
kelas
ada
nfo mungkin
ed, tapi Pajak Masuk
semuanya dari Topi
konsep seperti itu
bisa mengingatnya
menjadi kaleng
ndidate untuk menjadi
eing
diagram m, dalam hal ini a
di kelas
diagram pantat.
diagram ketahanan, ind
Sekali lagi, ulah dr
menunjukkan di mana ada lubang
desain kami.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
menggambar
es dalam
Machine Translated by Google
1 10 ÿ KE
E KASUS PENGGUNAAN
OPIC 4 LEBIH BANYAK
Gambar 4.15 : Versi 5
N
d untuk menyimpan semua informasi dikumpulkan
Selanjutnya, kita perlu
gadis, , kita melihat ada dua
M.
Sdan Item Baris ales
sel
diagram
. Melihat semua konsep kami
o panggilan kelas tinggal di sini, npenjualan yang baik a
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
KE
ure
Gambar
4.16: Versio
GAMBAR 4 LEBIH BANYAK
KASUS PENGGUNAAN ÿ 111
n6
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 12 ÿ KE
GAMBAR 4 LEBIH BANYAK KASUS PENGGUNAAN
L
Terakhir kita berurusan dengan bayarannyament.
Gambar 4.17: Versi 7
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 113
Bacaan berikut akan memperkuat pemahaman Anda tentang analisis ketahanan dan cara menggambar
diagram ketahanan untuk kasus penggunaan Anda. Pembacaan ini juga menunjukkan beberapa
kesalahan umum dalam analisis ketahanan yang harus Anda hindari.
„Analisis ketahanan yang berhasil‰ di <http://www.sdmagazine.com/documents/ s=733/sdm0103c/
0103c.htm>
AKTIVITAS 4.7
Dengan asumsi Anda memiliki kasus penggunaan berikut untuk Pinjam Video, gambarlah a
diagram ketahanan untuk menangani kondisi berikut:
(a) Video Peminjaman Toko Video Kasus Penggunaan
(b) petugas memindai kartu peminjam
(c) sistem menampilkan kata sandi peminjam
(d) peminjam secara lisan memberikan kata sandi
(e) petugas memindai video
(f) sistem menampilkan biaya
(g) peminjam membayar
(h) sistem mencatat informasi.
• Kasus penggunaan adalah inti dari analisis persyaratan yang menjadi landasan seluruh proyek
pengembangan dengan memandu kita untuk „melakukan hal yang benar‰. Pembahasan use
case kita mulai pada Topik 2. Pada topik ini, kita menguraikannya dengan membahas bagaimana
menghubungkan use case menggunakan sub-use case, termasuk „extend‰ dan „include‰.
• Satu pertanyaan yang selalu membingungkan pengembang sistem yang tidak berpengalaman adalah
„berapa banyak kasus penggunaan yang cukup untuk sistem ini?‰ Dalam kebanyakan kasus,
tidak ada jawaban pasti. Namun, ada beberapa teknik yang dapat membantu kami mengidentifikasi
kasus penggunaan yang terlewat. Salah satunya adalah menggambar „diagram keadaan‰ dari
kelas konseptual penting dalam model domain. Cara lainnya adalah dengan melihat operasi CRUD
dari kelas konseptual. Metode-metode ini, dalam satu atau lain cara, dapat membantu
mengidentifikasi serangkaian kasus penggunaan proyek yang lebih lengkap.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 14 ÿ KE
•
OPIC 4 LEBIH BANYAK
E KASUS PENGGUNAAN
Sebelum kita menyelesaikannya
diskusimu
Kak, kita harus
n sesuai kebutuhan
analisis manajemen
Temukan
bisnisnya
memahami d aturan o
logika behi
bukan targetnyasistem yang didapat
mereka tidak bisa
Kalau
sedang melayani.
HAI tidak, kita e akan menentukan
Anda pasti akan berakhir dengan sebuah sistem
aturan
bisnis
nisasi
miliki
e ke
bukan fungsi dengan
pr
es dari komputer pany atau organ
sangat baik. b
dipelajari
d secara rinci.
Aturan bisnis
kami bertaruh
tidak hanya itu kamu bisa membantumu
persyaratan yang lebih
baiknts, mereka juga akan melakukannyao dirujuk
analisis
d oleh model lain di kemudian hari
dalam desain,, implementasi asi dan testi
•
lihatlah
ta alat yang dapat membantu untuk bmenjembatani gaap antara t
Kami juga akan melakukannya
nts dan de
persyaratannya
diagram c
tahapan.
desain robu
dapat membantu kita untuk melakukannya
o mengidentifikasi
anal kehausan lisis. Menggambarkuat
pohon cemara
kasus.
tebakan pertamaobjek
set o
di th
<<memperluas>>
Nyatakan dia
agram
<<sertakan>>
Kasus penggunaan
yaitu
R
Kekokohan d diagram
Kasus penggunaan
A
Ambler,
S. (20
000). Objek-o
sdmagaz zine.com/doc
diagramnya
bisnis yang berorientasi
aturan ness. Ulang
diambil
jumlah/s=82
26/sdm0006j/
C
se kasus.
Ayam Bakar, A. ( (2002). Menulis
ng efektif bagi kita
acobson, I., C
Ya
R
Diperoleh dari sana
om: http://
hristerson, M M., Jonsson, P.
perangkat lunak
misalnya,
rekayasa,
penggunaan
kasus
a
m: http://ww
ww.
/
ding, MA: Iklan ddison-Wesley
/www.ebgcon
ttesdiener.pd
aturanaturan_dapat
dari
Membaca
G
aturan ness.
Gottesdiener, E E.(1999). Topi mengambil bisnis
M
Majalah.
bisnis
ess
dia menggunakan
kamu.
lembut
perangkat lunak Develo
pilihan
nsulting.com/
/pub/artikel
es/
F
ted
., & Overgaar rd, G. (1992).
Berorientasi objek
D
sakit.
MA:
Addiso
padapendekatan yang didorong
Membaca, ,
Wesley.
L
Larman,
C. (20
Aula.
002). Terapkan
UML dan pola hal
. Uppper Sadel Riv
ver, NJ: Persetanwaktu
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 4 KASUS PENGGUNAAN LAINNYA ÿ 115
Rosenberg, D. dan Scott, K. (1999). Gunakan pemodelan objek berdasarkan kasus dengan UML:
Pendekatan praktis. Membaca, MA: Addison-Wesley.
Von Halle, B. (2002).
Penerapan aturan bisnis: Membangun sistem yang lebih baik dengan
menggunakan pendekatan aturanNew
bisnis.York
NY: Wiley.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Tema ÿ Dinamis
5
Pemodelan
HASIL BELAJAR
Pada akhir topik ini, Anda seharusnya mampu:
1. Menjelaskan peran pemodelan desain; 2.
Menjelaskan tujuan diagram kolaborasi UML; 3. Menggambar
diagram kolaborasi UML yang benar untuk suatu sistem; 4.
Menjelaskan tujuan diagram urutan UML; 5. Menggambar
diagram urutan UML yang benar untuk suatu sistem; 6.
Menggambar diagram kelas desain; 7.
Mendefinisikan dan menggunakan pewarisan pada
diagram kelas; 8. Definisikan istilah
polimorfisme; 9. Menjelaskan kelas abstrak dan
konkrit; 10. Menjelaskan prinsip desain kopling dan kohesi; Dan
11. Sebutkan prinsip desain lainnya.
ÿ PENDAHULUAN
Pada topik ini kita melanjutkan dari Topik 4 dan masuk ke tahap desain. Anda akan benarbenar "melihat" bagaimana sistem berorientasi objek menyatu dalam kelas perangkat
lunak. Secara khusus, Anda akan melihat bagaimana objek meneruskan pesan ke objek
lain, dan dengan melakukan itu, Anda akan mendapatkan gambaran umum tentang cara
kerja sistem.
Ada dua diagram interaksi di UML. Keduanya menunjukkan bagaimana pesan dikirimkan
antar objek. Topik ini menjelaskan keduanya secara rinci.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 117
Dengan mempelajari diagram ketahanan di Topik 4 dan diagram interaksi di Topik 5,
Anda akan mempelajari lebih lanjut tentang cara kerja kelas perangkat lunak sebenarnya.
Dengan demikian, hasil dari diagram interaksi adalah mengambil apa yang telah dipelajari
dan mulai mengerjakan diagram kelas desain.
Topik ini juga akan membahas konsep pewarisan dan polimorfisme berorientasi objek
yang sangat penting.
Topik diakhiri dengan diskusi tentang prinsip-prinsip desain berorientasi objek yang baik.
5.1
MODEL DESAIN
Pada titik ini dalam kursus ini kita hampir selesai dengan analisis sistem kita.
Kita harus memiliki model domain yang lengkap dan sebagian besar kasus penggunaan
seharusnya sudah selesai. Dengan kata lain, kita harus mempunyai gambaran lengkap
tentang „apa yang akan dilakukan sistem‰. Sekarang, saatnya untuk memulai
perancangan sistem yang, seperti yang mungkin Anda ingat, memerlukan penjelasan dan
dokumentasi bagaimana sistem akan bekerja dan memastikan sistem berfungsi dengan
baik. Dalam hal ini, kita perlu menghasilkan desain yang baik berdasarkan artefak yang
kita identifikasi pada tahap analisis. Di akhir Topik 4, kami memperkenalkan diagram
ketahanan, sebuah alat penting yang akan membawa kita dari tahap analisis ke tahap
desain. Dalam topik ini, kita melihat proses ini secara lebih rinci. Pertama-tama, mari kita
lihat apa yang akan kita lakukan dan artefak yang akan dihasilkan dalam desain berorientasi objek.
Gambar 5.1 menggambarkan artefak dan hubungan antar artefak dalam model desain.
Seperti yang Anda lihat, diagram ketahanan bertindak sebagai antarmuka antara analisis
dan desain.
Gambar 5.1: Diagram desain utama
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
118 ÿ TOPIK 5 PEMODELAN DINAMIS
Dalam model desain, kami akan menghasilkan dua set diagram:
(a) Rancang diagram kelas yang mendefinisikan kelas-kelas dan hubungan di antara mereka. Ini
mewakili aspek statis dari model desain; Dan
(b) Diagram interaksi yang mendefinisikan interaksi kelas atau objek. Mereka mewakili aspek
dinamis dari model desain. Ada dua jenis diagram interaksi, yaitu diagram sequence dan
diagram kolaborasi.
Perhatikan bahwa pada Gambar 5.1, meskipun terdapat satu diagram kelas konseptual dan satu
diagram kelas desain, terdapat beberapa diagram ketahanan, urutan, dan kolaborasi. Kenapa ini?
Ingat kembali Topik 4 bahwa kita menggambar satu diagram ketahanan untuk satu kasus
penggunaan. Demikian pula, kita mengambil setiap diagram ketahanan dan kemudian menggambar
diagram urutan dan/atau diagram kolaborasi untuk masing-masing diagram.
Di lingkungan UP, kami selalu menekankan bahwa pengembangan persyaratan dan artefak desain
merupakan proses yang berulang. Pendekatan ini juga diterapkan dalam identifikasi kelas perangkat
lunak dalam model desain. Pengembangan dua rangkaian diagram dalam model desain juga
berlangsung dengan cara ini. Mereka akan didefinisikan secara paralel dan berulang. Oleh karena
itu, jangan khawatir jika Anda mempunyai "firasat" bahwa sesi pertama kelas perangkat lunak Anda
belum selesai. Saat Anda melakukan langkah lebih jauh dalam desain dan memperjelas detail
desain, kelas-kelas yang hilang ini akan terlihat.
Langkah-langkah berikut menguraikan bagaimana Anda akan mengidentifikasi bagian pertama dari
kelas perangkat lunak untuk model desain:
(a) Gunakan model persyaratan, kasus penggunaan, atau model domain dan temukan
kata benda. Kemungkinan besar ini adalah kelas;
(b) Gunakan teknik analisis ketahanan untuk mengidentifikasi kelas tambahan;
(c) Menyarankan tanggung jawab;
(d) Identifikasi atribut; Dan
(e) Identifikasi operasi.
Kami akan membahas detail tentang cara melanjutkan langkah-langkah ini di bagian selanjutnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 119
5.1.1 Kelas versus Objek
Mari kita revisi dulu konsep kunci objek dan pesan yang telah diperkenalkan di Topik 1. Hal ini
akan memberi kita gambaran yang lebih jelas tentang bagaimana kelas desain dapat
diekspresikan dalam model kelas desain. Mari kita lihat kembali perbedaan antara kelas dan
objek. Kelas adalah kumpulan objek dengan struktur, perilaku, hubungan, dan semantik yang
sama.
Tabel 5.1: Perbedaan Kelas dan Objek
Definisi
Contoh Dunia Nyata
Berapa banyak?
Kelas adalah definisi atau
Denah pembangunan rumah
Satu
spesifikasi atau templat.
Template unit belajar CBOP3103
Rumah
Objek adalah contoh fisik yang
dibuat sesuai dengan definisi
kelas.
dibangun sesuai denah bangunan. Sebanyak yang dibutuhkan
Sebanyak yang dibutuhkan
Topik pembelajaran diproduksi
dengan format sesuai template.
Dalam UML, sebuah kelas digambar sebagai persegi panjang dengan tiga kompartemen: satu
untuk nama kelas dan pengubahnya, satu untuk atribut dan satu lagi untuk operasi.
(a) Nama kelas adalah string tekstual yang digunakan untuk mengidentifikasi kelas (misalnya,
„Pelanggan‰). Setiap nama memiliki arti unik dalam konteksnya.
Kelas harus diberi nama menggunakan kosakata domain.
Standar penamaan harus dibuat (misalnya, semua kelas adalah kata benda tunggal
yang dimulai dengan huruf kapital).
(b) Struktur suatu kelas diwakili oleh atribut-atributnya.
Atribut mempunyai nama dan tipe yang dipisahkan dengan tanda titik dua „:‰.
Atribut dapat ditemukan dengan memeriksa definisi kelas, persyaratan masalah dan
dengan menerapkan pengetahuan domain. Kita telah mempelajari secara detail tentang
atribut di Topik 3.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 20 ÿ KE
OPIC 5 DINA
MODEL MIC
tidak
(C
c) Operasi
atribut
ons adalah b
perilaku
kelas fa atau objek yang ditindaklanjuti t
s di kelas atau objek. Op
operasi dapat memiliki input(), output() dan input
Saya
di
dalam
tahu ().
argumen ut/keluaran
Uments
Semua berdebat
memiliki nama dan
diawali dengan istilah d
keluar
tidak.
saya tidak
tipe d (sepa
diberi tanda titik dua) dan a
menggambarkan wh
jenis topi arg
gumam mereka
n direkomendasikan
memperbaiki kita
Catatan thtopi yang kita lakukantidak
e masukan/
adalah
adalah.
/keluaran (
di dalam
keluar)
tidak. argumen
Sedang dalam program
serudukan, ap
metode da.
n umum, itu
Di dalam
ada tiga t
prosedur th
di pelaksana
jenis operasi
bukan operasinya tion disebut
ransum yang co bisa ada di diagram kelas
saya
N
yaitu kontra
operasi truk
ransum, quer
n dan pembaruanoperasi tanggal pada.
operasi ry
C
digunakan
untuk
membuat
untuk kelas b dengan memberikan init
Operasi konstruktoroperasi awal adalah kamu
e objek baru
ay nilai untuk atribut. Th
dia nama th
dia membangun engan atau operasinya
sama saja
thdia nama th
n
digunakan
untuk
a
dia kelas. Ya
operasi apa pun
akses hanya th dia keberatan sta makan
dan opera ini
RetrieveID, ch
R
sebuah
asi tidak
heckPassword
keadaan ao
atau ubah
d, dll). Akhirnya
objek (misalnya getNama, dapatkanPa
ay,
ed untuk memperbarui atau
y, perbarui operasierasi adalah penggunaan
perbarui operasi ion akan chan nge
obyek. Ini
bab
nilai atribut
ute(s) dari o
gantung va
thdia menyatakan e objek (misalnya setName,
perbarui
s
tanggalUmur, dll).
kelas
Gambar 5.2 : Notasi
C
F gambar 5.3 sho itulah desainnya n notasi kelas
di kelas
ss Anggota masuk
dan video sh
contoh hop.
mantan
Gambar 5 .3: Notasi kelas ion untuk mem kelas anggota
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 121
Rincian lain dalam notasi kelas akan dibahas di bagian selanjutnya.
Untuk menentukan suatu objek, kita juga menggunakan persegi panjang, tetapi namanya
digarisbawahi. Pada gambar berikut, kotak pertama mewakili Anggota kelas. Kotak kedua
jill . Biasanya objek tidak diberi nama
untuk suatu objek. Dalam hal ini, objek yang
diberi nama hanyalah objek anonim. Kotak ketiga mewakili objek anonim dari Anggota kelas.
Gambar 5.4: Contoh kelas, objek, dan objek anonim
5.1.2 Objek dan Pesan
Objek berkomunikasi satu sama lain dengan mengirim dan menerima pesan.
Terkadang sebuah pesan berisi data, namun di lain waktu tidak.
Pertama-tama kita dapat memikirkan tentang bagaimana orang berkomunikasi. Berikut beberapa contohnya:
(a) Pembawa acara pesta makan malam mengumumkan, „Makan malam sudah siap.‰
(b) Seorang pekerja kantoran kembali ke mejanya setelah istirahat makan siang dan rekan
kerjanya berkata kepadanya, „Saat kamu keluar, saya menjawab teleponmu. Silakan
hubungi Jason Yip di 6343 3472.‰
(c) Dua orang bertemu di sebuah bar, dan di penghujung malam, salah satu orang berkata,
„Berapa nomor telepon Anda?‰ dan yang lainnya menjawab, „3472 3424.‰
(d) Seorang ibu memberikan sebuah catatan kepada anaknya, „Inilah sebuah catatan yang saya ingin kamu berikan kepada anakmu
guru.‰
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
122 ÿ TOPIK 5 PEMODELAN DINAMIS
Tabel 5.2 menunjukkan bagaimana masing-masing pesan dapat dinyatakan dalam UML.
Tabel 5.2: Contoh Pesan yang Dinyatakan dalam UML
Kata-kata
Gaya
Setara dengan UML
"Makan malam sudah siap.‰
Perintah tunggal
Makan malam sudah siap()
„Tolong hubungi Jason Yip di
6343 3472.‰
Pesan dengan data
RingPerson(„Jason Yip‰, „6343 3472‰)
"Berapa nomor telepon anda?‰
Pertanyaan dengan jawaban
DapatkanNomor Telepon():Nomor Telepon
yang diharapkan
„3472 3424.‰
„Ini catatan yang saya ingin kamu
Berikan objek pada suatu
berikan kepada gurumu.‰
objek.
GiveToTeacher (Alasan: Catatan)
Tabel di atas merangkum contoh yang baru saja diberikan, dan di kolom terakhir memberikan
contoh bagaimana pesan UML dapat ditulis.
Lihatlah baris kedua. Detail „Jason Yip‰ dan „6343 3472‰ di dalam tanda kurung disebut
parameter.
Sekarang lihat baris ketiga „:nomor telepon‰. Tanda titik dua memberi tahu kita bahwa suatu
jawaban diharapkan, dan kata PhoneNumber memberi tahu kita jawaban seperti apa yang
diharapkan.
Terakhir, baris keempat adalah contoh suatu objek, dalam hal ini catatan untuk guru, yang
disampaikan sebagai bagian dari pesan.
Notasi dasar untuk menunjukkan penyampaian pesan cukup mudah.
Namun, seperti kebanyakan UML, ada banyak kerumitan kecil yang hanya muncul sesekali. Kursus
ini berpegang pada dasar-dasarnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 123
5.2
DIAGRAM INTERAKSI
Ingatlah bahwa dua set artefak (diagram kelas dan diagram interaksi) akan dihasilkan
berdasarkan artefak dalam tahap analisis dan diagram ketahanan. Kedua rangkaian diagram
ini akan diproduksi secara paralel dan berulang. Kita akan melihat diagram interaksi terlebih
dahulu.
Diagram interaksi digunakan untuk mendefinisikan interaksi kelas atau objek dalam sistem.
Mereka menunjukkan aspek dinamis dari sistem, misalnya aliran pesan. Ada dua jenis diagram
interaksi: urutan dan kolaborasi. Kedua tipe tersebut digunakan untuk mendeskripsikan perilaku
objek untuk memenuhi satu kasus penggunaan.
Kedua jenis diagram interaksi ini masing-masing memiliki kekuatan dan kelemahannya masingmasing, sehingga penggunaannya sedikit berbeda. Diagram kolaborasi (beberapa buku teks
menggunakan istilah diagram komunikasi) sedikit lebih intuitif dan berguna untuk mempelajari
UML. Namun, penggunaannya dalam industri lebih sedikit. Diagram urutan lebih kompleks dan
menampilkan lebih banyak detail.
Diagram interaksi adalah cara untuk menunjukkan bagaimana satu use case akan direalisasikan
dalam bentuk objek perangkat lunak. Anda akan melihat bahwa, seperti halnya diagram
ketahanan, beberapa nama kelas sama atau sangat mirip dengan nama kelas konseptual. Hal
ini diharapkan. Namun, kali ini namanya merujuk pada representasi perangkat lunak dari
benda tersebut. Selain itu, Anda akan menemukan bahwa ada kelas lain yang hanya ada di
perangkat lunak dan tidak di kehidupan nyata.
5.2.1 Notasi Diagram Kolaborasi
Diagram kolaborasi menggambarkan interaksi antar elemen suatu sistem dan hubungannya
yang diatur dalam ruang dan waktu. Diagram ini berisi elemen-elemen berikut:
(a) Kelas, dinotasikan sebagai kelas persegi panjang, untuk mewakili objek yang terlibat dalam
interaksi;
(b) Peran asosiasi, yang mewakili peran yang mungkin dimainkan oleh tautan dalam interaksi;
Dan
(c) Pesan, dilambangkan dengan panah berlabel, untuk mewakili pesan yang dikirim antar
objek. Panah menunjuk dari objek pengirim pesan ke objek penerima. Secara opsional,
parameter diteruskan sebagai bagian dari pesan; dan juga secara opsional, beberapa
informasi, atau objek lain diteruskan kembali.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
124 ÿ TOPIK 5 PEMODELAN DINAMIS
Gambar 5.5: Contoh diagram kolaborasi
Kolaborasi adalah spesifikasi bagaimana pengklasifikasi, seperti kasus penggunaan atau
operasi, diwujudkan oleh sekumpulan kelas dan asosiasi yang memainkan peran tertentu
dan digunakan dengan cara tertentu. Kolaborasi mendefinisikan interaksi.
Diagram kolaborasi menunjukkan pesan yang dikirimkan objek satu sama lain. Sebuah
pesan direpresentasikan sebagai panah di dekat garis asosiasi antara dua objek.
Panah menunjuk ke objek penerima. Label di dekat panah menunjukkan isi pesannya.
Pesan tersebut memberitahu objek penerima untuk menjalankan salah satu operasinya.
Sepasang tanda kurung mengakhiri pesan. Di dalam tanda kurung terdapat parameter
(jika ada) tempat operasi dijalankan.
Tabel 5.3 merangkum rincian diagram kolaborasi.
Tabel 5.3: Detail Diagram Kolaborasi
Tautan
Jalur koneksi antara dua objek yang memungkinkan komunikasi di antara
keduanya.
Ini adalah link asosiasi pada diagram kelas. (Catatan: dalam Paradigma
Visual Anda perlu meletakkan tautan antar objek sebelum Anda dapat
mengirim pesan di sepanjang tautan tersebut.)
Pesan
Pesan sebenarnya dari satu objek ke objek lainnya. Perhatikan bahwa
mungkin ada beberapa pesan antara pasangan objek yang sama.
Pesan untuk 'diri sendiri'
Objek sering kali mengirimkan pesan kepada dirinya sendiri.
Pembuatan instance
Objek terus-menerus diciptakan. Misalnya, penjualan baru menghasilkan
catatan transaksi baru.
Urutan penomoran
pesan
Nomor urut diperlukan untuk menunjukkan urutan pengiriman pesan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 125
Pesan bersyarat Jarang digunakan. Kirimkan pesan tertentu hanya jika syaratnya terpenuhi.
Jalur bersyarat yang
saling eksklusif
Sebuah metode penomoran yang memungkinkan dua urutan pesan
terpisah diikuti, bergantung pada hasil pengujian bersyarat.
Iterasi atau perulangan
Untuk menentukan bahwa pesan tertentu dikirim beberapa kali.
Iterasi atas koleksi
Sangat umum digunakan. Kirim pesan yang sama ke kumpulan objek,
seperti daftar.
Pesan ke objek kelas
Ini adalah sesuatu yang belum kami sebutkan secara eksplisit, dan
merupakan hal yang halus. Selain metode pada objek, terkadang ada
kebutuhan untuk menentukan metode yang beroperasi pada tingkat
kelas. Alasan utamanya adalah pesan „buat‰. Jika suatu objek belum
ada, lalu bagaimana cara membuatnya? Jawabannya adalah setiap
membuat.
kelas mempunyai metode kelas yang disebut Metode kelas
disebut juga metode statis.
Bab e-book berikut dari perpustakaan digital OUM (Books24ÿ7) berisi penjelasan
dan contoh lebih lanjut tentang diagram kolaborasi. Anda wajib membaca bab
ini.
Schmuller, Joseph. „Jam 10 Bekerja dengan Diagram Kolaborasi‰. Sams
Ajarkan Diri Anda UML dalam 24 Jam. Sam. © 1999.
Buku24ÿ7. <http://common.books24ÿ7.com/toc.aspx?bookid=414>
Selain notasi dalam bacaannya juga terdapat konsep multi benda. Ini juga
dikenal sebagai objek koleksi (seperti daftar). Jadi pesan yang ditampilkan
dikirim ke multi objek, sebenarnya adalah pesan yang dikirim ke kolektor objek
tersebut. Kolektor kemudian menemukan objek yang benar.
Gambar 5.6: Multi objek untuk diagram kolaborasi
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
126 ÿ TOPIK 5 PEMODELAN DINAMIS
KEGIATAN 5.1
Perhatikan diagram kolaborasi berikut. Ini menunjukkan kasus penggunaan a
peminum haus datang ke restoran dan meminta minuman dari a
Bot. Bayangkan Bot sebagai robot yang berinteraksi dengan bagian lain dari
restoran.
Tugas Anda adalah menerjemahkan diagram ini ke dalam dialog antar
berbagai komponen.
Gambar 5.7: Seorang peminum yang haus masuk ke sebuah restoran
5.2.2 Notasi Diagram Urutan
Diagram urutan menggambarkan interaksi antar elemen suatu sistem yang diatur dalam urutan
waktu. Diagram ini berisi elemen-elemen berikut:
(a) Peran kelas, dilambangkan dengan persegi panjang kelas, mewakili peran yang mungkin
dimainkan oleh objek dalam interaksi;
(b) Garis hidup, yang dilambangkan dengan garis putus-putus, melambangkan keberadaan suatu benda dalam
jangka waktu tertentu;
(c) Aktivasi, dilambangkan dengan persegi panjang tipis, menyatakan waktu selama suatu
objek sedang melakukan suatu operasi; Dan
(d) Pesan, dilambangkan dengan tanda panah horizontal di antara garis hidup,
mewakili komunikasi antar objek.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 127
Gambar 5.8: Notasi diagram barisan
Biasanya diagram urutan menunjukkan satu kasus penggunaan. Namun, untuk menunjukkan secara
memadai bagaimana kesalahan ditangani, sering kali diperlukan diagram tambahan.
Tabel 5.3 merangkum rincian diagram sequence.
Tabel 5.3: Detail Sequence Diagram
Tautan
Tidak ditampilkan
Pesan
Pesan adalah garis sederhana dari satu objek ke objek lainnya.
Fokus kotak kontrol dan
aktivasi
Ini sangat berguna ketika Anda baru mengenal diagram urutan. Hal ini
memungkinkan Anda dengan sangat mudah melihat objek mana yang aktif
atau menunggu untuk mendapatkan jawaban atas pesan yang telah mereka kirimkan.
Mengilustrasikan pengembalian
Sekali lagi, sangat berguna untuk pemula. Tampilkan secara eksplisit
kapan pesan dibalas.
Pesan untuk „diri sendiri‰
atau „ini‰
Garis sederhana dari suatu objek ke dirinya sendiri. Kotak aktivasi bersarang,
seperti yang ditunjukkan dalam teks, sebenarnya tidak diperlukan.
Pembuatan instance Sangat penting
Jalur hidup objek dan
penghancuran objek
Terkadang berguna
Pesan bersyarat
Adapun diagram kolaborasi
Pesan bersyarat yang
saling eksklusif
Iterasi untuk satu pesan
Adapun diagram kolaborasi
Iterasi untuk serangkaian
pesan
Iterasi pada
koleksi (multi objek)
Pesan ke objek kelas
Adapun diagram kolaborasi
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
128 ÿ TOPIK 5 PEMODELAN DINAMIS
Bab e-book berikut dari perpustakaan digital OUM (Books24x7) berisi lebih banyak penjelasan dan
contoh diagram sequence. Anda wajib membaca bab ini.
Schmuller, Joseph. „Jam 9 - Bekerja dengan Diagram Urutan‰. Sams Ajarkan Diri Anda UML dalam
24 Jam. Sam. © 1999. Buku24ÿ7. <http://common.books24ÿ7.com/
toc.aspx?bookid=414>
KEGIATAN 5.2
Ambil diagram kolaborasi pada Latihan 5.1 dan terjemahkan ke dalam a
diagram urutan.
5.2.3 Merancang Tanggung Jawab
Anda telah melihat seperti apa diagram interaksi (diagram kolaboratif atau diagram urutan). Sekarang
pertanyaannya adalah, bagaimana kita menemukan hal-hal tersebut?
Jelasnya, model desain harus didasarkan pada artefak yang kita miliki dalam analisis kebutuhan. Kami
memiliki serangkaian kasus penggunaan dan diagram ketahanan untuk semua, atau setidaknya kasus
penggunaan yang penting. Kami akan mulai membuat diagram interaksi berdasarkan artefak ini.
Saat kami mengerjakan kasus penggunaan atau diagram ketahanan, dan kami mencoba memutuskan
objek mana yang harus memenuhi fungsi tertentu, kata tersebut digunakan.
tanggung jawab
Booch, Jacobson dan Rumbaugh (1999) mendefinisikan tanggung jawab sebagai „kontrak atau
kewajiban dari suatu jenis atau kelas‰. Kelas bertanggung jawab untuk mengetahui sesuatu dan
melakukan sesuatu.
Dalam hal tindakannya, sebuah instance dari suatu kelas dapat melakukan sesuatu sendiri, dapat
menyebabkan kelas lain melakukan sesuatu dengan memulai suatu tindakan atau mengendalikan atau
mengoordinasikan tindakannya. Ini adalah jenis tanggung jawab 'melakukan' yang harus didefinisikan
dengan tepat untuk kelas-kelas dalam suatu sistem.
Tanggung jawab suatu kelas mungkin: mengetahui datanya sendiri, mengetahui objek terkait, atau
mengetahui hal-hal yang dapat diketahuinya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 129
Desain adalah tentang menugaskan tanggung jawab ke kelas yang sesuai.
Sedang mengerjakan
tanggung jawab suatu objek antara lain:
(a) Melakukan sesuatu sendiri, seperti membuat suatu benda atau melakukan perhitungan;
(b) Memulai tindakan pada objek lain; Dan
(c) Mengendalikan dan mengkoordinasikan kegiatan pada objek lain.
Penuh arti
tanggung jawab suatu objek antara lain:
(a) Mengetahui tentang data pribadi yang dienkapsulasi (misalnya, kaca di
Latihan 5.1 mengetahui ukurannya);
(b) Mengetahui tentang objek yang berkaitan; Dan
(c) Mengetahui tentang hal-hal yang dapat diperoleh atau dihitung.
Contoh: Proses Penjualan
Sekarang kita siap untuk mulai bekerja membuat diagram kolaborasi untuk use case Proses Penjualan. Pada
Topik 4 kita menggambar diagram ketahanan untuk kasus penggunaan ini (lihat lagi Gambar 4.17). Ada
beberapa perbedaan penting antara diagram ketahanan dan diagram kolaborasi.
Perbedaan penting pertama antara diagram ketahanan dan diagram kolaborasi adalah bahwa diagram
ketahanan tidak berkaitan dengan urutan kejadian sebenarnya. Jadi, urutan pengiriman pesan akan sering
berubah antara diagram ketahanan dan diagram kolaborasi.
Perbedaan penting kedua antara diagram ketahanan dan kolaborasi adalah diagram ketahanan menunjukkan
banyak objek antarmuka pengguna. Namun, kami tidak ingin mempersulit diagram kolaborasi dengan
menampilkan semua ini. Memang sering kali mereka belum ditentukan, jadi kita tidak tahu apakah akan ada
kotak daftar, teks biasa, atau input yang diaktifkan suara. Objek antarmuka diagram ketahanan membantu kita
melihat dengan tepat informasi apa yang masuk dan keluar dari sistem. Diagram interaksi melangkah lebih
jauh dan menunjukkan bagaimana informasi diproses dalam sistem. Jadi, dengan kata lain, kita dapat
menerjemahkan semua objek antarmuka diagram ketahanan dengan satu objek yang kita sebut GUI
(„antarmuka pengguna grafis‰) yang umumnya menghubungkan perangkat antara pengguna manusia dan
perangkat lunak dalam sistem nyata).
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
130 ÿ TOPIK 5 PEMODELAN DINAMIS
Selanjutnya, kami ingin merangkum semua kecerdasan use case ke dalam satu objek yang
akan kami sebut Register. Alternatifnya, Anda dapat menyebutnya Pengontrol Kasus
Penggunaan Proses Penjualan. Pada proyek nyata, setelah beberapa use case diselesaikan,
pengontrol use case ini dapat diperiksa ulang dan mungkin digabungkan atau ditangani
dengan cara lain.
Di mana memulainya? Kita mulai dengan GUI yang memberitahukan Daftar bahwa ia siap
untuk membuat penjualan baru. Ini adalah operasi pembuatan sederhana di kelas Sale.
Selanjutnya GUI mengirimkan Daftarkan id atau barcode item dan jumlahnya. Kemudian,
kita perlu mencari tahu itemnya, sesuai dengan diagram ketahanan kita. Mari kita periksa
apakah ini benar. Jadi lihatlah model kelas konseptual pada halaman di bawah ini:
Sumber: Larman (2002)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 131
Apa yang Anda perhatikan tentang itemId? Apakah atribut ini ada di kelas Item?
Tidak, ini bukan pada ProductSpecification. Namun, bagaimana kita mendapatkan
ProductSpecification? Dari model domainnya kita tahu itu dari ProductCatalogue. Kami mencoba
untuk mendapatkan kembali seluruh objek ProductSpecification, jadi perhatikan sintaks pesan 5
dari Gambar 5.9. Selanjutnya objek ProductCatalogue mengirimkan pesan ke objek koleksi
ProductSpecification, yang ditandai dengan notasi khusus. Objek koleksi ini menemukan
ProductSpecification yang benar dan mengirimkannya kembali.
Gambar 5.9: Diagram kolaborasi untuk proses penjualan
(Catatan: Pada titik ini kita berasumsi bahwa semua objek ini hanya diam menunggu kita berbicara
dengannya. Pada kenyataannya, tentu saja, objek-objek tersebut berada dalam database dan kita
harus melakukan beberapa upaya untuk mengeluarkannya. Memasukkan dan mengeluarkan data
dari database tidak tercakup dalam modul ini.)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
132 ÿ TOPIK 5 PEMODELAN DINAMIS
Jadi sekarang kita memiliki objek ProductSpecification. Haruskah objek Register membuat
SalesLineItem? Tidak, karena itu adalah detail yang sebaiknya didelegasikan ke objek lain.
Jadi, seperti yang kita identifikasi dengan benar dalam diagram ketahanan, meskipun dalam urutan
yang berbeda, ProductSpecification diteruskan ke objek Sale, yang kemudian digunakan untuk
membuat SalesLineItem di pesan 7. Pesan 8 kemudian menambahkan SalesLineItem ke objek
koleksi SalesLineItem. Pesan 9 adalah GUI yang memberi tahu kita bahwa tidak ada item lagi, jadi
kita perlu menghitung totalnya. Sekali lagi Register mendelegasikan tugas ini ke objek Sale yang
kemudian, pada gilirannya, menanyakan total masing-masing SalesLineItem. Setiap SalesLineItem
menanyakan ProductSpecification-nya untuk harganya.
Terakhir, pembayaran dilakukan (anggap hanya uang tunai dan uang yang diberikan benar) dan
objek Pembayaran dibuat.
Jadi sekarang kita memiliki satu diagram kolaborasi untuk kasus penggunaan Proses Penjualan.
Tentu saja, kita juga dapat menampilkannya sebagai diagram urutan.
KEGIATAN 5.3
Gambarlah diagram urutan untuk Proses Penjualan, berdasarkan
pemahaman tentang diagram kolaborasi yang telah diberikan
Gambar 5.9.
KEGIATAN 5.4
Gambarkan diagram kolaborasi dan diagram urutan untuk use case
Pinjam Video dalam kasus Video Victoria.
5.3
DIAGRAM KELAS DESAIN
Kita telah melalui langkah-langkah pembuatan diagram interaksi (diagram kolaborasi atau diagram
urutan), yang menunjukkan tampilan dinamis model desain. Di dalam diagram interaksi ini, pada
dasarnya kami telah mengidentifikasi kelas perangkat lunak berdasarkan artefak dari tahap analisis
seperti kasus penggunaan dan diagram ketahanan. Namun, diagram interaksi menunjukkan
bagaimana kelas-kelas perangkat lunak ini berinteraksi dalam kaitannya dengan urutan pesan
yang diteruskan bolak-balik di antara kelas-kelas ini. Sejalan dengan diagram interaksi ini, kita juga
memiliki gambaran statis tentang hubungan antara kelas-kelas ini, yang menggambarkan detail
kelas-kelas tersebut dalam diagram kelas desain.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 133
Diagram kelas desain menggambarkan kelas-kelas yang akan ada dalam perangkat lunak. Saat kami
mengerjakan setiap kasus penggunaan dan menggambar diagram interaksi, kami mencari tahu apa
saja kelas-kelas ini. Ada berbagai cara untuk membuat diagram kelas desain. Salah satu caranya
adalah dengan mendasarkannya pada diagram interaksi yang kita miliki. Sebagai contoh, kita dapat
membuat diagram kelas desain penjualan video versi pertama hanya dengan:
(a) Menggambar kelas-kelas dari diagram interaksi;
(b) Jika suatu pesan diteruskan dari kelas A ke kelas B, maka buatlah garis di antaranya
mereka; Dan
(c) Menambahkan pesan yang diterima oleh suatu kelas sebagai salah satu operasinya.
Gambar 5.10: Upaya pertama pada diagram kelas desain
Perhatikan bagaimana dalam diagram ini, nama kelas tidak digarisbawahi, artinya ini adalah kelas,
bukan objek.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
134 ÿ TOPIK 5 PEMODELAN DINAMIS
Seperti yang telah Anda pelajari di bagian sebelumnya, ada lebih banyak detail kelas yang dibutuhkan
yang belum kami kerjakan. Sekarang kita akan membahasnya satu per satu.
5.3.1 Visibilitas
Visibilitas suatu atribut atau metode dalam suatu kelas menentukan objek lain yang dapat mengaksesnya.
Pilihannya adalah:
(A)
Visibilitas publik
dilambangkan dengan „+‰ dalam UML (atau dengan ikon di alat) artinya
bahwa objek dari kelas mana pun dapat menggunakan atribut atau operasi.
(B)
Visibilitas terlindungi
dilambangkan dengan „#‰: dalam UML (atau dengan ikon pada alat)
berarti hanya objek dari kelas tersebut atau subkelasnya yang dapat menggunakan atribut atau
operasi tersebut. Subkelas dibahas nanti dalam topik ini.
(C)
Visibilitas pribadi
dilambangkan dengan „‰ dalam UML (atau dengan ikon pada alat) berarti
hanya objek dari kelas tersebut yang dapat menggunakan atribut atau operasi tersebut.
Praktik desain yang diinginkan adalah menjaga atribut kelas Anda tetap pribadi, memberikan akses ke
atribut tersebut melalui metode „aksesor‰. Selain itu, hanya metode yang harus diakses oleh objek lain
yang boleh dipublikasikan atau dilindungi.
5.3.2 Spesifikasi Atribut Lengkap
Format spesifikasi atribut adalah:
[visibilitas] nama [:tipe] [= nilai awal]
(a) Setiap bagian bersifat opsional, kecuali nama;
(b) Visibilitas telah dibahas di atas;
(c) Tipe bisa berupa tipe dasar, seperti integer atau string, atau bisa juga kelas lain. Contoh klasiknya
adalah jenis „uang‰; Dan
(d) Nilai awal adalah nilai yang akan ditetapkan untuk setiap objek baru kelas ini.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
DINAMIS M PEMODELAN
TOPIK 5
5.3.3
ÿ 135
Asosiasi
asi
Seorang rekan
ciation adalah rekan
koneksi
hubungannya kelas
ted. Jika
antara di antara kelas dan ditampilkan n sebagai garis comenghubungkan
jika ada n
tidak ada panah yang menyala garis, diasumsikan t
dua arah akhir. Seorang asosiasiperwakilan inisiasi
ent yang satu m metode atau m etos Kla
menjadi
pantat B dapat
v
pantat
pergaulan
ion Cla pantat A ke Kelass B dan sebaliknyasebaliknya.
dua arah atau satu arah
nasional. Sebuah arr
kepala baris di t akhir th
garisnya
tentang hubungan itustatus
melaporkan ab
bisa b
digunakan untuk
r
-arah n5.11, tentang
mewakili
uni-n Gambar
kemampuan navigasi. Di dalam
kelas Gunakaneh tahu
kelas e Passwo pesanan, tapi bukan dia
th sebaliknya.
Di d
modus domain el, saat kita menggambar pantatnya pergaulan pada konsep tersebut diagram kelas
tidak khawatir d dengan bagaimanabenda
t
diakses
D. Itu sudah
m, kami n
yang sebenarnya
w
cukup t
di sini adalah a asosiasi. W
untuk mengatakan bahwa th
kita adalah rekan
kecerdasan yang bersangkutan
th
arah
Saat mendesain ng kelas d
bagaimana obobjek dapat berupa diakses.
Kam kami dapat sp
a
ecify kami,
n akses, sebagaiditunjukkan pada Gambar
gambar 5.11.
re 5.11: Sebuah asso
hubungan dengan navigasi
o
Gambar
Seperti halnya model domain, multiplisitas o
menunjukkan
Itu nomornya
terjadi
diagram,
asso
eh misalnya
dari sebuah asosiasi
asi
ces dari setiap kelas yang ca
asosiasi. Untuk emisalnya, vi
jumlah vid
atau apa pun
satu arahasi
antara
te di bagian
seorang partisipan
baris satu
ideo belanjakan akubisa membosankan
eos, yang ditunjukkan sebagai berikut.
Angkae 5.12: Perkalian kota asosiasi
n kelas
hubungan antara ckelas
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 36 ÿ KE
OPIC 5 DINA
MODEL MIC
F gambar 5.13 demenggambarkan final
versi al dari t
tidak
desain kelas
diagram pantat odari Proses
pada desain
n diagram kelasM
sa
Skasus penggunaan bir.
kedua
Gambar 5.13: Versi
A
5.3.4 Bersama
5
ompositio
n (“Kegunaana” Hubungankapal ion)
A
pada hubungan pinggul, juga tahudimiliki sebagai rekan gabungan agg gregasi, adalah sa
Sebuah komposisi
"Slebih kuat‰ untukm dari agregat asi dimana th
makan dan des dicoba dengan t
dia bagiannya adalah cre
w
keseluruhan.
Ini menunjukkan
menyatakan hal itukelas e belon ngs ke yang lain dia. Contoh komposit
hubungan ion: A Sebuah persegi panjang dibuat p dari beberapa poin. Jika th
ulang
hancur, jadi a
dia persegi panjang adalah d
adalah poinnya S.
A
Komposisi
n hubungan
lisebagai berikut S:
p ditunjukkan dalam UML dengan berlian terisi dan
Hak Cipta © Universitas Terbuka Malaysia (OUM)
ya
Machine Translated by Google
TOPIK 5
5.3.5
DINAMIS M PEMODELAN
ÿ 137
kegembiraanP)
Agregatgerbang (“HMemiliki” Re
t dari keseluruhan
e tapi
bagian mungkin mandiri
keseluruhannya
kembali
membutuhkan
parrt. Di tempat lainperintah, agregatserupa
Dalam sebuah aghubungan
hubungan, itu
gregasi
ke komposisi
aktif, tetapi
nship: cara
mengerikanpengelompokan
o
hal-hal.
t
Contoh contoh agregat hubungan gerbang
pesanan terdiri dari s
produk berlanjutkamu harus ada ev
bahkan jika
beberapa produk
bagus, tapi profesional
rignya lebih sedikit
yang
pesanannya dihancurkan. Sebuah
A
agregasi n hubungan
tidak terisi berlian dan garis sebagai berikut kita:
p ditunjukkan dalam UML dengan d yang
Gambar bdi bawah ini menunjukkan kelas desaindiagram ss w yang memiliki jugaasosiasi, com komposisi
asi antara
n kelas
dan aggr hubungan relasi hubungan. Itu e multiplisitas y dari sebuah asosiasi
juga s
w:
ditunjukkan pada gambar di bawah ini
Jadi
sumber:
Modifikasi
diedit dari www.apemodelan tangkas..com/style/cla
Perhatikan topi
th dengan keduanya
h jenis ag
berlian
d terletak o
agregatasi dan dan komposit
n sisi titik garis
tidak ke cl
"siapa".
ole‰ di sana kegembiraan. AAgregasi adalah khusus untuk
r
aktif berarti itu
lebih ketat dari norma asosiasi yang buruk
lubang n. Agregasi
hubunganmengirimkan. Lebih jauhlebih lanjut, pa seni biasanya tidak bisa ada
assDiagram.htm M
hubungan ion
pinggul,
gadis yang mana
mewakili
perusahaan asosiasition
yang
tidak ada apa-apa
bagian
tanpa
penyebab asi m banyak kebingunganpada. Sebagai Martin
n Fowler menulisini
Agrega
dalam edisiion,
ke-2
halaman 85:
dan utuh.
UML
D
sulingan
,
f terbesar
"Satu dari
saya
b
R ketakutan]di
bêtes noires [a A sesuatu, entahlah
rly tidak suka atau
Itu
Dia
ng jelaskan
agregat asi.
sy ke
regeasi adalah itu
w
A
Itu
mobil
punya
e
roda
sebagai
itu
kapal.
pa
mudah mengatakan itu
satu dengan jelas: mesin Aggre dan
e
G
sepertinya
bagus,itu
tapi
adalah pertimbangan
deringapa
hubungan modellin terdengar
agregat
bedanya ng
bagian dari seni. Ini antara
tion dan asosiasi
hubungan tipis yang sulit.‰
Anda akanaku mungkin n perhatikan itu th e kelas desain diagram ss adalah
ar ke
sangat mirip
model
apa
pun.
H
Namun,
konsep diagram kelas ualgram itu w
kami produksi di doma
ada
dan ada yang berbeda
ences. orang-orang itutabel berikut merangkum t
kesimpulan.
perbedaan utama ini
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
138 ÿ TOPIK 5 PEMODELAN DINAMIS
Tabel 5.3: Perbedaan Utama antara Diagram Kelas Konseptual dan Desain
Konsep
Konseptual
Kelas
Desain
Ya mewakili entitas
dunia nyata
Hubungan
Ya mewakili kelas perangkat lunak.
Beberapa di antaranya akan memetakan 1:1 ke
kelas dunia nyata.
"Mempunyai sebuah‰
Tambahkan arah ke hubungan „has-a‰ Kirimkan
Navigasi tidak relevan
pesan ke kelas.
hubungan "Is-a".
Mewarisi kode
Kardinalitas
Ya
Ya
Atribut
Tampilkan yang utama, tipe
Tambahkan lebih banyak atribut. Tambahkan jenis.
Warisan
(dibahas nanti)
bersifat opsional
Metode
Biasanya sangat sedikit
Tambahkan lebih banyak lagi, dengan parameter lengkap.
KEGIATAN 5.5
Gambarlah diagram kelas desain untuk kasus penggunaan Pinjam Video di
Video Victoria.
5.4
WARISAN
Warisan adalah aspek penting dari orientasi objek dan kita telah membahas konsep
ini secara singkat di Topik 1. Warisan adalah hubungan antar objek. Hal ini dikenal
sebagai hubungan 'is-a'. Hal ini berbeda dengan hubungan asosiasi, yaitu hubungan
“memiliki”. Hubungan pewarisan dapat ditunjukkan pada diagram kelas konseptual
dan diagram kelas desain.
Mari kita lihat sebuah contoh. Bayangkan Anda sedang menulis sistem untuk
menangani registrasi kendaraan untuk Departemen Transportasi. Sistem ini harus
menangani berbagai jenis kendaraan, baik mobil, sepeda motor, dan bus. Semua ini
mempunyai beberapa kesamaan dan beberapa hal yang berbeda. Jika kita
menggambar kelas-kelasnya, kita mungkin memiliki yang berikut ini (lihat Gambar 5.14):
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
DINAMIS M PEMODELAN
TOPIK 5
tiga kelas wi
Gambar 5.14 : Th
ÿ 139
dengan persamaan
Jadi apa yang Anda perhatikance? Mereka semua hmemiliki atributnya
lisensi butePl
inspeksi.
permintaanMasuk
dipanggilVe
Kendaraan
dan kr ,
makan dan o operasi
jika ini keluar masuk
bukan su baru kelas atas
bstraksi dari
Jadi o kita membuat ab
makan tiga sub bclasses (permohonan
as lihat Gambar gambar 5.15).
Gambar 5.15:: Warisanc
Perhatikan itu
di panah
w digambar p
hierarki ini
dariM
subkelas
ss ke sup
dan panah ini berlawanan dengan intuisiitif). arr
baris bisa d
(Awalnyakamu mungkin baik-baik saja
dalam berbagai
w
choi
cara, seperti yang ditunjukkan
wn pada gambar 5.16
5
es adalah milikmu.
menunjuk
perkelas.
ditarik
Gambar 5.16: Dua gaya panah berbeda untuk atau ahli waris setelah hierarki
Jadi kita ha
ave gen
adalah ayMobil, Bus
kendaraan
konsep ral
fa kendaraan dand spesialisasinya
situasi. Kami sa ay itu
e.
S adalah kendaraan dan
a Sepeda Motor
ke kendaraan
adalah
erclass memegang
itu atributnya
es dan metode peluang yang semuanya umum untuk a
Sup
subkelas yaitu. Masing-masing dia
th subkelas kemudian dapat memilih secara nasional memiliki
e tambahan a atribut dan
operasi
jatah.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
140 ÿ TOPIK 5 PEMODELAN DINAMIS
Seperti yang ditulis Larman (2002), mengidentifikasi superkelas dan subkelas mempunyai nilai dalam model kelas
konseptual karena kehadirannya memungkinkan kita untuk memahami konsep dalam istilah yang lebih umum, halus,
dan abstrak. Hal ini mengarah pada penghematan ekspresi, peningkatan pemahaman dan pengurangan informasi
berulang. Selanjutnya, ketika menentukan kelas desain, pewarisan adalah alat yang ampuh untuk menyederhanakan
desain dengan mengekspresikan kesamaan secara ringkas.
Ketika sebuah subkelas mewarisi dari superkelas, ia mewarisi apa yang dimiliki superkelas
tersebut. Subkelas
semuanya
mewarisi semua atribut, operasi, dan hubungan superkelas. Berikut ini contohnya:
Pelajari diagram berikut (lihat Gambar 5.17).
Gambar 5.17: Warisan artinya mewariskan segala sesuatu
Bisakah kita mengatakan
Bus juga diwariskan.
mempunyai sebuah
Pemilik? Jawabannya adalah ya, karena semua hubungan memang demikian
Bisakah seorang pemilik memiliki dua Mobil dan sebuah Bus? Ya.
Apakah setiap Bus mempunyai pemilik? Ya.
Bisakah objek mengubah kelas? Ini adalah pertanyaan penting dan ilustrasi yang sangat bagus tentang perbedaan
antara diagram kelas konseptual dan desain. Mari kita bertanya, apakah bus bisa menjadi sepeda motor? Jelas di
dunia nyata hal ini tidak masuk akal. Namun, pada contoh lain, hal ini tidak begitu jelas.
Gambar 5.18: Penggunaan pewarisan yang baik untuk diagram kelas konseptual
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 141
Katakanlah di Video Victoria kita menggambar kelas konseptual dengan superkelas Peminjam,
dan dua subkelas Anak dan Dewasa (lihat Gambar 5.18). Ada aturan berbeda yang berlaku
untuk masing-masingnya, jadi ini masuk akal. Namun, ketika kita bertanya „Apakah seorang
anak menjadi dewasa?‰ Tentu saja jawabannya adalah ya. Jika ini adalah diagram kelas
desain, kita akan mendapat masalah, seperti. Ya, kita selalu bisa
benda tidak bisa berubah
kelas menulis beberapa kode untuk menghapus objek Anak, dan membuat objek Dewasa, tapi
itu adalah pendekatan yang sangat berantakan. Untuk desain diagram kelas, jauh lebih baik
tidak menggunakan pewarisan, namun menggunakan asosiasi biasa (lihat Gambar 5.19).
Gambar 5.19: Penggunaan pewarisan yang baik untuk diagram kelas desain
KEGIATAN 5.6
Pada sistem NextGen POS, pembayaran dapat dilakukan secara tunai, kredit
kartu atau cek. Untuk pembayaran kartu kredit lebih dari $200, sistem harus
mencatat nomor otorisasi. Untuk menerima cek beberapa bentuk
identifikasi (seperti SIM atau paspor) harus dicatat.
Perbarui diagram kelas pada Gambar 5.13 untuk mencerminkan persyaratan ini.
KEGIATAN 5.7
Di Video VictoriaÊs ada berbagai kategori video, yaitu
romansa, umum, fiksi ilmiah, bahasa asing, dan anak-anak. Tunjukkan bagaimana ini
informasi dapat tercermin pada kelas konseptual dan desain
diagram.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
142 ÿ TOPIK 5 PEMODELAN DINAMIS
5.4.1 Polimorfisme
Polimorfisme sangat terkait dengan pewarisan. Perhatikan contoh berikut (lihat Gambar 5.20):
Gambar 5.20: Pohon pewarisan dokumen
Pohon pewarisan sejumlah tipe dokumen ditunjukkan pada Gambar 6.3.
Perhatikan bahwa setiap tipe dokumen di pohon memiliki metode pencetakan. Jadi ketika
objek pemilik ingin mencetak dokumen, ia cukup mengirimkan pesan „print‰ ke dokumen
tersebut. Poin pentingnya adalah objek pemilik tidak perlu mengetahui jenis dokumennya
sebelum dapat mengeluarkan perintah print. Konsep ini dikenal sebagai polimorfisme yang
mempunyai banyak bentuk. Perhatikan bahwa polimorfisme menyiratkan bahwa objek
mengubah kelas. Artinyabukan
kode pasti dari metode tersebut akan berubah sesuai dengan kelas
objek yang menerima pesan.
5.4.2 Kelas Konkrit dan Abstrak
Ketika membahas pewarisan, kita tidak bisa menghindari pembahasan kelas abstrak dan
konkret. Kelas abstrak adalah kelas yang tidak pernah memiliki objek apa pun. Pertimbangkan
ini: apakah masuk akal untuk memiliki objek Buah? Jelas tidak, karena kelas Fruit adalah
abstraksi dari sebuah buah, dan bukan buah itu sendiri. Dalam hal ini, Fruit adalah kelas
abstrak dan kita tidak dapat membuat objek untuk kelas ini.
Kelas konkrit adalah kelas yang mempunyai objek. Sampai pada topik ini, semua kelas yang
kita bahas adalah kelas konkrit.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 143
Kembali ke kelas abstrak, jika kita tidak dapat membuat objek dari kelas abstrak, lalu mengapa kita
memiliki kelas abstrak dalam diagram kelas? Sebenarnya, setiap kelas abstrak mewakili beberapa ide,
meskipun tidak akan sepenuhnya lengkap karena beberapa detail dan definisi akan diserahkan kepada
kelas konkret yang mewarisi kelas abstrak. Nama kelas abstrak harus mencerminkan bahwa itu adalah
sebuah konsep dan bukan sesuatu yang spesifik. Jadi „Rekening‰ versus „Rekening Giro‰, atau
„Kendaraan‰ versus „Truk‰.
Dua hal yang perlu diperhatikan:
(a) Kelas konkrit harus selalu berupa daun; Dan
(b) Kelas abstrak tidak boleh mewarisi kelas konkrit, karena tidak masuk akal untuk beralih dari umum ke
khusus dan kembali ke umum seperti yang ditunjukkan pada Gambar 5.21:
Gambar 5.21: Kelas Abstrak dan Konkrit diperbolehkan dan tidak diperbolehkan
Ada dua cara untuk menentukan kelas abstrak dan konkret di UML. Salah satu caranya adalah dengan
mengetikkan nama kelas dalam huruf miring; cara lainnya adalah dengan meletakkan kata abstrak dalam
tanda kurung kurawal seperti terlihat pada gambar di bawah ini.
Gambar 5.22: Notasi untuk kelas abstrak
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
144 ÿ TOPIK 5 PEMODELAN DINAMIS
5.5
PRINSIP DESAIN
Sampai di sini kita telah membahas bagaimana mengubah model analisis kita menjadi model
desain. Berdasarkan kasus penggunaan, diagram kelas konseptual, dan diagram ketahanan, kami
menghasilkan tampilan dinamis dan tampilan statis dari model desain. Untuk tampilan dinamis,
representasi UML adalah diagram urutan atau diagram kolaborasi. Untuk tampilan statis model
desain, representasi UML adalah diagram kelas desain. Agar model desain berfungsi lebih baik,
ada beberapa prinsip kelas desain yang perlu kita ikuti.
Bagian ini membahas beberapa prinsip yang harus diwujudkan oleh desain berorientasi objek yang
baik, yaitu kohesi dan penggandengan. Bagian ini membahas tentang bagaimana Anda dapat
mengevaluasi sebuah desain. Dalam pekerjaan Anda sampai saat ini, terkadang Anda mungkin
telah melihat bahwa ada pilihan dalam cara Anda mendekati sesuatu. Misalnya, apakah Anda
harus membagi kelas menjadi dua kelas terpisah, atau kelas mana yang harus mengimplementasikan
metode tertentu? Pada bagian ini, kami memberikan beberapa terminologi bagi Anda untuk
mendiskusikan suatu desain dari segi berbagai kelebihan dan kekurangannya. Seperti halnya
semua upaya desain baik itu desain interior, pakaian, perencanaan kota, dan sebagainya, trade-off perlu dilakukan.
Seperti yang Anda lihat di topik sebelumnya, kelas desain awalnya berasal langsung dari model
konseptual, dan kemudian ditambahkan, diubah, atau digabungkan seiring berkembangnya solusi.
Seiring berkembangnya desain, desain harus terus dievaluasi berdasarkan prinsip desain
berorientasi objek berikut.
5.5.1 Kopling
Kopling berasal dari metode terstruktur Edward Yourdon, seorang pengembang model desain
berorientasi objek. Kopling mewakili kekuatan hubungan antara dua kelas. Dua kelas digabungkan
jika salah satu dari mereka menggunakan, mengacu pada yang lain, atau dalam beberapa hal
memiliki pengetahuan tentang yang lain.
Melihat kembali Gambar 5.12, kita dapat mengatakan bahwa Peminjaman dan Video digabungkan,
sedangkan Anggota dan Video tidak. Untuk mengonfirmasi hal ini, kita dapat membaca kode
metode kelas Anggota dan Video untuk mengonfirmasi bahwa tidak ada yang mengirimkan pesan
apa pun ke yang lain.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 145
Jika suatu kelas berubah, maka semua kelas yang digabungkan (mungkin) akan berubah. Penggabungan
yang begitu kuat akan memperumit suatu sistem sehingga lebih sulit untuk mengubah dan memahami
satu kelas jika kelas tersebut sangat terkait dengan kelas lainnya. Lebih jauh lagi, kelas-kelas yang
digabungkan secara ketat sulit untuk digunakan kembali dalam sistem yang lebih baru. Kopling longgar
berupaya membuat sistem lebih mudah dipahami, dipelihara, dan diubah. Anda dapat mengklasifikasikan
kopling ke dalam berbagai jenis, empat bentuk paling dasar (lihat Richter (1999), hal. 133)
(a) Penggabungan identitas;
(b) Penggabungan representasional;
(c) Kopling subkelas; Dan
(d) Kopling warisan.
Kopling identitas mengukur tingkat konektivitas suatu desain. Ini ditampilkan sebagai asosiasi pada
diagram kelas. Secara efektif suatu objek „tahu‰ tentang objek lain. Asosiasi satu arah kurang
berpasangan dibandingkan asosiasi dua arah.
Kopling representasional adalah ukuran bagaimana satu objek mengakses data objek lain.
Mengakses metode publik foo di kelas X, seperti pada Gambar 5.23, merupakan pendekatan tingkat
rendah sehingga memiliki tingkat penggabungan representasional yang tinggi.
Gambar 5.23: Metode getFoo adalah contoh 'pengambil' yang mendapatkan nilai atribut
Di sisi lain, menggunakan metode getFoo, yang hanya akan memberi kita nilai atribut foo, adalah
penggandengan representasional tingkat rendah. Versi terakhir lebih disukai karena rincian implantasi
tingkat rendah kelas X disembunyikan.
Ini adalah enkapsulasi.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
146 ÿ TOPIK 5 PEMODELAN DINAMIS
Penggabungan subkelas terjadi ketika kelas klien secara langsung mereferensikan subkelas,
bukan superkelasnya. Hal ini harus dihindari sedapat mungkin (lihat Gambar 5.24).
Gambar 5.24: Pendekatan penggandengan subkelas yang lebih disukai dan kurang disukai
Kopling pewarisan: suatu subkelas dihubungkan dengan superkelasnya melalui penggabungan
warisan. Ingatlah bahwa subkelas mewarisi segala sesuatu dari superkelasnya dan hal ini tidak
dapat diubah pada saat run-time. Pada bagian 5.4, kami memperingatkan terhadap kemungkinan
penggunaan warisan yang berlebihan dan merekomendasikan agar asosiasi dipertimbangkan.
Lihat Gambar 5.19 sebagai contoh.
5.5.2 Kohesi
Kohesi juga berasal dari metode terstruktur Edward Yourdon dan merupakan ukuran seberapa
fokus fungsionalitas suatu kelas. Suatu kelas memiliki kohesi yang tinggi jika hanya mewakili satu
ide.
Kelas VideoSpecification mendefinisikan judul film tertentu. Ini memberi tahu kita sesuatu tentang
film itu (namanya, aktornya, tahun pembuatannya, ratingnya, dan sebagainya). Kelas Video adalah
tentang satu rekaman tertentu dari spesifikasi video.
Jadi Video dan VideoSpecification adalah kelas yang terpisah. Jika digabung menjadi satu maka
kelas yang dihasilkan tidak akan memiliki kohesi yang tinggi.
Jika perilaku suatu kelas bersifat multi-fungsi, atau hanya sebagian dari suatu fungsi, maka ia
memiliki kohesi yang rendah dan hal ini tidak diinginkan. Kelas yang sangat kohesif lebih mudah
untuk dipahami tidak hanya dalam dirinya sendiri tetapi juga dalam hubungannya dengan kelaskelas lain. Jika Anda tahu persis apa yang akan dilakukan suatu kelas (fungsi tunggalnya), maka
Anda memahami dengan tepat bagaimana kelas lain akan menggunakannya. Faktanya, ini
memfasilitasi desain kelas baru yang akan menggunakan kelas yang kohesif secara fungsional.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5 PEMODELAN DINAMIS ÿ 147
AKTIVITAS 5.8
Manakah dari dua kutipan diagram kelas berikut yang menunjukkan baik
kohesi?
2. Manakah dari dua diagram berikut yang menunjukkan kopling yang lebih baik?
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
148 ÿ TOPIK 5 PEMODELAN DINAMIS
3. Diagram manakah di bawah ini yang menunjukkan penggandengan yang lebih baik?
• Dalam topik ini, kita memasuki tahap desain sistem. Dengan selesainya semua (atau sebagian
besar) artefak dan dokumen dalam tahap analisis, kita mulai melihat bagaimana sistem
dapat dibangun dan bagaimana kelas dan objek perangkat lunak dapat bekerja sama untuk
mencapai tugas yang kita identifikasi dalam analisis.
• Model desain terdiri dari dua jenis artefak, yaitu diagram interaksi dan diagram kelas desain.
Diagram interaksi akan memberi kita tampilan dinamis sistem yang menunjukkan urutan
pertukaran pesan antar kelas. Diagram kelas desain akan menggambarkan hubungan antar
kelas dan memberikan lebih banyak rincian tentang struktur kelas dan operasi yang dapat
dilakukannya.
• Kita juga telah mempelajari properti yang sangat penting dari desain berorientasi objek
pewarisan kelas selain polimorfisme, kelas abstrak dan konkret.
• Pada saat yang sama, prinsip-prinsip desain berorientasi objek yang baik telah diterapkan
diperkenalkan.
• Dalam kursus ini, kita telah mempelajari pendekatan berorientasi objek dalam perangkat lunak
perkembangan.
• Kami juga fokus pada Proses Terpadu dan UML.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
TOPIK 5
DINAMIS MPEMODELAN
Kelas mmetode
Int diagram interaksigram
Kohesio
Paarameter
pada
Kolaborasi
diagram orasi
ÿ 149
Poolimorfisme
pagi
kopling ng
Urutan
diagram
Enkapsu ulasi
Stametode atik
urutan
d desain denganjam aplikasi
Booch, G G.(1991).
Keberatan
berorientasi objek
Bententu saja Cummmings.
pagi
, , kayu
merah cKota, California:
Booch, G G., Rumbaugh h, J., & Jacobs anak, J. (1999). . Yang bersatud pemodelan la bahasa.
Reatambahan, MA: Addison-We
referensi untukatau UML,
esley. (Ini adalah penjelasan
proyang bagus
e detail dari y kamu akan pernahperlu.)
n
Fowler, M M., & Scott, K K.(2000). UM ML Sulingan (
Kami
esley. (Ini saya sa pendek dan d praktis o
(edisi ke-2). Rea tambahan, MA :AddisonA
ikhtisar aktual untuk
Anda
menggunakan
UMLdalam
i
pratindakan.)
Larman, C.(2002).
Hasemua.
L dan pola
Aplikasi
S. Sadd Atas
F
Richter, C. (1999).
menerapkan Perancangan UML
objek fleksibel berorientasi dll
IndDianapolis, IN N: Pub Teknis Macmillan
berkilauan.
UM
Scott, K K. (2001).
ML menjelaskan D . Boston, M
sics dari UML.)
pramenunjukkan bas
Dangkal ay, A., & Trot
dan aktif
berorientasi
tt, JR (2002)
objek
desain ted
MA: Addison
. Pola desain jelaskan
. Booston, MA: Iklan ddison Wesle
sungai kecil, NJ:
Pembantu tukang
S
sistem
dengan UML ke-.
n-Wesley. (Th
edisi: Per
bukunya
prospektif baru
mata.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
150 ÿ JAWABAN
Studi kasus
Sekarang kita telah sampai pada bagian akhir buku ini. Untuk memastikan bahwa
Anda telah memahami semua konsep penting dan diagram UML yang dibahas
dalam buku ini, mari kita bahas studi kasus. Studi kasus diambil dari bab e-book
yang tersedia di perpustakaan digital OUM (Buku24ÿ7) seperti yang ditunjukkan
pada tabel di bawah. Dalam menjalani studi kasus ini, ikuti urutan tugas yang
ditunjukkan pada tabel di bawah.
Tugas
Pengantar studi
kasus
Referensi
Schmuller, Joseph. „Jam 16 Memperkenalkan Studi Kasus‰. Sams Ajarkan
Diri Anda UML dalam 24 Jam. Sam. © 1999. Buku24ÿ7. <http://
common.books24ÿ7.com/toc.aspx?bookid=414>
Melakukan
analisis domain
Schmuller, Joseph. „Jam 17 Melakukan Analisis Domain‰.
Sams Ajarkan Diri Anda UML dalam 24 Jam. Sam. © 1999. Buku24ÿ7.
<http://common.books24ÿ7.com/toc.aspx?bookid=414>
Mengembangkan penggunaan
kasus
Schmuller, Joseph. „Jam 19 Mengembangkan Kasus Penggunaan‰. Sams
Ajarkan Diri Anda UML dalam 24 Jam. Sam. © 1999. Buku24ÿ7.
<http://common.books24ÿ7.com/toc.aspx?bookid=414>
Mengembangkan
diagram
interaksi
Schmuller, Joseph. „Jam 20 Melakukan Interaksi dan Perubahan Keadaan‰.
Sams Ajarkan Diri Anda UML dalam 24 Jam. Sam. © 1999.
Buku24ÿ7. <http://common.books24ÿ7.com
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN
ÿ 151
Jawab
swer S
TEMAC 1: INT
RODUKTI KE O
RIENTED
OBYEK-ATAU
PERANGKATPERKEMBANGAN
D
MENDAPATKAN
LEMBUT
Kegiatan 1.1
Contoh
es TI untuk su
laporan:
ponseltelepon ile (
WAP ikasi), pergi
sudah mengaturku
sistem masuk.
PDAA (Pribadi Da
di Asisten)
Contoh
untuk telepon c
esai, telepon
semuanya, kirim pesan padaku
tidak ada buku dand aplikasi
) seperti Palm P Pilot.
es untuk IT sebagai
kegunaan‰:
n „mengaktifkan bu
Data
Aplikasi Penambangan ikatan
Sistem ert, e
pengalaman
tc.
Kegiatan 1.2
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
152 ÿ JAWABAN
(a) pesan
(b) kelas
(c) contoh
Kegiatan 1.3
(a) Ada beberapa kemungkinan jawaban, antara lain:
• Mitigasi risiko dengan mengerjakan aspek-aspek paling berisiko dari suatu proyek, kita
dapat mengatasi masalah apa pun atau menghentikan proyek lebih awal daripada
menunggu hingga proyek selesai.
• Memberikan hasil awal dan nyata kepada pengguna, sehingga semakin besar
kerja sama.
• Menanamkan kebiasaan mengantarkan artefak secara rutin. Artinya, proyek ini
tetap menjaga momentumnya dan tidak terperosok dalam detail-detail rumit atau
fitur-fitur yang tidak mutlak diperlukan.
(b) Berikut tiga tantangannya:
• Proyek yang berulang akan lebih sulit diprediksi, dikendalikan, dan dikelola.
• Kontrol versi sangat mendasar pada setiap dokumen dan bagian
kode dapat diubah beberapa kali.
• Setelah suatu sistem diimplementasikan, Anda berdua harus mendukung sistem yang ada
sistem serta melanjutkan pengembangan.
Kegiatan 1.4
Tradisional
Pendekatan data dan fungsi Pertimbangkan secara terpisah
Berorientasi pada objek
Pertimbangkan bersama
Siklus hidup pengembangan sistem
(SDLC)
Air terjun
Iteratif
Notasi
Diagram hubungan entitas
(ER).
diagram UML
Diagram Aliran Data (DFD)
Contoh bahasa
COBOL, berbagai 4GL
Basis data
Basis data relasional
Jawa, C++
Biasanya masih pakai
database relasional
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 153
Kegiatan 1.5
• Seorang Siswa Mendaftar untuk Kursus OUM
Siswa menerima paket pendaftaran dari Register melalui surat. Ia mencari daftar mata
kuliah yang tersedia di Prospektus atau Suplemen Mata Kuliah. Ia memutuskan mata
kuliah mana yang ingin ia ikuti pada semester mendatang. Dia mengisi formulir pendaftaran
dan mengirimkannya kembali ke Registry. Dia menerima slip pembayaran dari Registry.
Dia pergi ke bank yang ditunjuk untuk membayar biaya sekolah untuk kursus yang dia
daftarkan. Ia menerima instruksi dari Panitera untuk mengumpulkan materi kursus dan
jadwal belajar kursus.
• Pelanggan Membeli Barang dari Toko Online Pelanggan
menyalakan PC-nya dan terhubung ke Internet. Pelanggan membuka browser Internet
dan memasukkan URL toko online. Pelanggan mencari katalog online untuk barang yang
ingin dia beli. Pelanggan mengklik ikon pembelian item tersebut. Item ditambahkan ke
keranjang belanja online. Pelanggan mengklik keranjang belanja online dan memeriksa
apakah item telah ditambahkan. Pelanggan mengklik ikon checkout. Pada halaman
pembayaran, pelanggan memasukkan informasi pembeliannya (nomor kartu kredit,
tanggal kedaluwarsa, email, alamat) dan mengklik ikon konfirmasi.
TOPIK 2: PERSYARATAN DAN KASUS PENGGUNAAN
Kegiatan 2.1
(a) fungsional
(b) tidak berfungsi
(c) fungsional
(d) tidak berfungsi
(e) dapat dianggap sebagai keduanya
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
154 ÿ JAWABAN
Kegiatan 2.2
Persyaratan fungsional:
• mendaftarkan anggota;
• melacak video yang sudah lewat waktunya;
• menghasilkan file unggahan harian untuk buku besar; Dan
• mencetak surat untuk anggota pada hari ulang tahunnya
Persyaratan non-fungsional:
• kecepatan sistem harus memungkinkan transaksi peminjaman video diselesaikan dalam waktu
satu menit;
• pembaca kode batang harus memiliki keakuratan minimal 99,5 persen; Dan
• petugas meja depan harus dapat memahami semua fungsi
sistem dalam waktu satu minggu.
Kegiatan 2.3
Objektif
Staf
Keandalan
1
4
Efisiensi
2
3
Kepuasan
4
1
Kecepatan
3
2
Remaja
Kegiatan 2.4
Pelanggan (atau anggota)
primer atau sekunder, tergantung pada apakah
pelanggan berinteraksi langsung dengan sistem. Menyarankan
kepada klien, Victoria, bahwa untuk versi pertama
sistem, anggotanya adalah orang sekunder dan meja depan
petugas berinteraksi dengan sistem. Versi yang lebih baru bisa
memungkinkan pelanggan untuk meminjam video mereka sendiri.
Petugas meja depan
utama Aktor ini berurusan dengan anggota yang bergabung,
meminjam video, mengajukan pertanyaan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 155
Petugas kantor belakang
primer Aktor ini menangani semua fungsi back office, seperti
pengiriman data ke sistem buku besar. (Mungkin nanti akan
diketahui bahwa 'aktor' ini sebenarnya adalah beberapa aktor.)
Pengambil saham
primer atau sekunder, tergantung pada implementasinya.
Membutuhkan lebih banyak informasi tentang apa saja yang diperlukan dalam
pengambilan stok.
Pengelolaan
sekunder, karena kebutuhan pelaporan mereka dipenuhi dari
gudang data. Butuh informasi yang cukup untuk menjalankan
bisnis.
Manajer keamanan
primer mempertahankan nama pengguna untuk mengontrol
akses ke sistem.
Gudang data
eksternal membutuhkan pembaruan data harian.
Terminal mesin kasir
eksternal menangani semua transaksi keuangan.
Selain itu, setiap pengguna utama harus dapat masuk, keluar, dan mengubah kata sandinya.
Aktivitas 2.5
Meminjam format video singkat untuk versi awal kasus penggunaan
Kasus penggunaan ini dimulai ketika anggota selesai memilih videonya dan membawanya ke meja
depan. Petugas meja depan meminta untuk melihat kartu anggota mereka.
Petugas kemudian memasukkan nomor anggota ke dalam sistem. Petugas front desk kemudian
memindai barcode video anggota. Sistem menghitung harga berdasarkan apakah video tersebut rilis
baru, rilis saat ini, atau lainnya, dan harga ditampilkan di terminal kasir. Pelanggan membayar dengan
kartu kredit atau uang tunai, lalu meninggalkan toko dengan videonya.
Aktor yang paling penting adalah petugas front desk karena aktor ini melayani para member. Lagi
pula, jika tidak ada anggota, toko video itu akan gulung tikar. Demikian pula, jika tidak ada yang
meminjam video apa pun, maka sudah waktunya berkemas dan pulang.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
156 ÿ JAWABAN
Aktivitas 2.6
Daftar berikut berisi kasus penggunaan utama yang mungkin telah Anda identifikasi. Perhatikan bahwa ada kasus
penggunaan lain, yang akan kita temukan pada analisis selanjutnya. Anda mungkin sudah memikirkan beberapa di antaranya
sendiri. Tentunya semakin banyak kasus penggunaan yang Anda temukan sebelumnya, semakin mudah keseluruhan
prosesnya.
Aktor
Catatan atau Masalah
Kasus Penggunaan
Petugas meja depan Pinjam video
Kasus penggunaan ini berinteraksi dengan
mesin kasir
Kembalikan video
Buat anggota
Perlu diputuskan apakah masih
menggunakan kartu anggota
Masukkan reservasi
Anggota
Ini termasuk mengubah dan menghapus
Cari judul
Petugas kantor belakang Menghasilkan surat ulang tahun
Pengambil saham
Lakukan stock opname
Intern
Menghasilkan data untuk
Tidak terlalu dipahami pada tahap ini
gudang data
Manajer keamanan Mempertahankan pengguna yang valid
Setiap orang
Masuk
Keluar
Ganti kata sandi
Dapatkan bantuan daring
Kegiatan 2.7
1. Return Video Use case ini
digunakan ketika ada anggota yang mengembalikan video. Petugas meja depan memindai video dan sistem
diperbarui untuk menampilkan video yang dikembalikan.
(Seperti yang Anda lihat, beberapa kasus penggunaan sangat sederhana.)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 157
2. Menghasilkan Surat Ulang Tahun
Petugas back office melakukan use case ini kira-kira sekali seminggu.
Sistem menampilkan rentang tanggal ulang tahun yang terakhir dibuat.
Petugas kemudian memilih rentang tanggal lain, biasanya satu minggu lagi. Sistem menghasilkan
surat-surat. Petugas memasukkan surat-surat itu ke dalam amplop dan mengeposkannya.
Kegiatan 2.8
Alur alternatif dalam video pinjaman
• Nomor anggota mungkin tidak valid. Minta petugas untuk memasukkan kembali nomor tersebut.
• Anggota mungkin memiliki video yang sudah lewat waktunya. Mereka tidak diperbolehkan meminjam video
lagi, jadi akhiri kasus penggunaan tersebut.
• Anggota mungkin dikenakan denda untuk membayar video yang terlambat dikembalikan. Mereka harus
membayar denda serta biaya untuk video baru tersebut.
Kegiatan 2.9
Meminjam video
Niat Aktor
Tanggung Jawab Sistem
Identifikasi peminjam Konfirmasikan peminjam ada
Identifikasi videonya
Hitung total biaya yang harus dibayar untuk denda masa lalu dan
pinjaman baru
Berikan jumlah total yang harus dibayarkan ke terminal kasir
Identifikasi videonya
Rekam video seperti yang dikembalikan
Kegiatan 2.10
Berikut adalah beberapa contohnya. Masih banyak lagi:
• Apakah benar anggota tidak akan menggunakan sistem komputer? Artinya, apakah semuanya akan
dilakukan melalui petugas?
• Bagaimana para anggota akan mengidentifikasi diri mereka sendiri?
• Ceritakan tentang stock opname. Apa masalahnya? Apa yang kamu coba
meraih?
• Siapa yang akan mendukung dan memelihara sistem?
• Pernahkah Anda berpikir untuk mentransfer data dari sistem lama ke sistem baru
sistem?
• Apakah diperlukan audit?
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
158 ÿ JAWABAN
Kegiatan 2.11
Hal-hal yang perlu diperhatikan tentang diagram ini:
• Lihat bagaimana anggota ditampilkan di sisi kiri. Meskipun mereka tidak berinteraksi langsung dengan
sistem, ada baiknya kita melihat di mana mereka cocok.
• Meskipun terminal mesin kasir merupakan sistem eksternal dalam hal pelacakan video, terkadang
berguna untuk melihat ke dalamnya dan melihat kasus penggunaannya.
Jadi, dalam contoh ini, kita dapat melihat ada use case yang disebut „ambil uang‰.
Harap diingat bahwa ini bukan diagram aliran data jadi kami tidak mengatakan apa pun tentang
aliran data antara kedua sistem.
• Perhatikan bagaimana diagram ini dengan cepat menjadi sangat sibuk dengan banyak garis. Inilah
sebabnya mengapa use case yang digunakan semua orang, yaitu logon, logoff, dll, tidak ditampilkan.
Nanti di unit ini kami akan menunjukkan kepada Anda cara menangani sistem besar dengan
ratusan kasus penggunaan.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN
ÿ 159
Kegiatan 2.12
TEMAC 3: OBJ
ECT-ORIEDIMASUKKAN MO
ODEL
Kegiatan 3.1
Ada ar
berapa banyak cara
s Anda bisa dr
mentah ini. Di hal
khususnya, itu
G
n adalah,
sebuah pertanyaan besar
adalah dua ujian
adalah 'sy sistem‰. Ini contohnya.
Versi 1 Lihat barulah sistemnya
m‰ secara keseluruhan
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
WERS
1 60 ÿ JAWABAN
V
Tampilan
Versi 2
‰
dengan 'sistem'
hanya sebagai videonya
pelacakan
deo pa
seni
n Versi 1 w
utuh. Dalam versi ion 2 kita melihat 'sistem'
kita melihat 'sy sistem‰ sebagai aw
dan trek video bagian cking. W Yang mana kor benar? Keduanya. Bagaimanapun itu
juhanya menjadi
aku
kebenaran. Jika ada
penting itu
kamu tidak mengertitahan perbedaannya
re adalah conf apa pun
fusi, lalu y
kamu
Di dalam
sebagai
adalah
SH
harus dilampirkan
harus mencatat diagrammu
tugas bu
sebagai
n Versi 2 t
ke
jumlah total.
V
Versi 2 jelas
m sehingga hal orang (seperti dan tutor a
arkers) tidak bisa mengerti apa
topi kamu sh
bagaimana.
Masalahnya adalah bagaimana caranya
dengan CashRe egisterTermin nal diberitahu t
dia penting
Apakah itu datang
e dari V
Pelacakan Video g Sistem, atau dari penggunaan
di Video T
terminal.
itu benar-benar menunjukkan hal itu
Sistem Pelacakan em memberitahu te
T
Sebelumnya
g diagram w
P
Paradigma. Bukan te itu en
ditarik kita
di
eh?
nyanyikan Sequ Diagram pengaruhm alat di Visu
terVideo dan
d menampilkanJudul
pesannya ha
jalan a
biasa „*‰ pref
T
Tanda „*‰ mengirimkan
iterasi
mewakili
N. Anda mungkintelah
h memperhatikan sayadi kotak teks Andamemperbaiki. oke, persegigle
panjang
menunjukkan
bahwa
alat
t
s ditempatkan di thdia diagram untuk mengurung sekelompok m
pesan ke dalam
M
biasa
eter.
Namun
m
di
Visu
ver, Sekuelnya
diulangi bersama
pesan adalah P
Diagram ence
adalah
Aku tidak mengizinkannya
Paradigma memang demikian
dia
menempatkan persegi
r
panjang pada diagram.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 161
Kegiatan 3.3
Kategori Kelas Konseptual
Contoh
Benda fisik atau nyata
CD Video
Spesifikasi, desain, atau
deskripsi suatu benda
Judul video
Tempat
Toko video Meja depan
Transaksi
Pinjam a
A video
video Kembali
Item baris transaksi
CD Video
Peran orang
Petugas meja depan anggota,
Petugas ruang belakang, Akuntan
semua peran yang Anda identifikasi akan hilang
Konsep kata benda abstrak
Membosankan Menyenangkan
Organisasi
Perusahaan yang membuat kaset video
Bank
Acara
Sebuah video baru dirilis
Proses
Meminjam A
A video
video Kembali
Lakukan a
stock mengambil banyak kasus penggunaan
cocok di sini
Aturan dan kebijakan
Kebijakan peminjaman Kebijakan bergabung Kebijakan yang sudah lewat waktu
Katalog
Katalog video
Manual, dokumen, referensi,
kertas, buku
Catatan anggota Rilis baru Pelatihan karyawan baru
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
1 62 ÿ JAWABAN
WERS
A
Kegiatan 3.4
A
Kegiatan 3.5
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN
ÿ 163
Kegiatan 3.6
TEMAdari 4: MO
KASUS
PENGGUNAAN KEMBALI-C
Kegiatan 4.1
Ini jawabannya, tapi mari kita bicara
Mungkin kamu sudah bisa
ady membayangkan
berhasil melewatinyatidak perlahan.
o jual video lama eos. Jadi ini dia
Ini versi pertama kami
sion.
Kita butuh da gunakan kasus untuk
Aktor Niat
S
Respon
Sistem
pada
Mengenali
kamu video lama S
kepekaan
G
Dapatkan harganya
Pamenghitung jumlah total yang harus dibayarkan ke Kas
Daftar
Teterminal
tentang la
yang Anda
perhatikan Pinjam
Video menggunakan
V
ca
as.
Apa yang harus dilakukan
garis ast? Dia
sama dengan
itu baris terakhir salah satu dari
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
164 ÿ JAWABAN
Jadi kita bisa membuat sub-use case baru yang disebut Proses Pembayaran.
Subfungsi
Tingkat:
Niat Aktor
Dapatkan pembayaran
Tanggung Jawab Sistem
Berikan jumlah total yang harus dibayarkan ke Terminal Mesin Kasir
Kemudian, memperbarui dua kasus penggunaan lainnya memberi kita hal berikut:
Pinjam Video
Niat Aktor
Tanggung Jawab Sistem
Dapatkan Peminjam (catatan yang digarisbawahi) Menampilkan rincian pinjaman saat ini
Identifikasi videonya
Hitung total biaya yang harus dibayar untuk denda masa lalu dan
pinjaman baru
Proses Pembayaran (catatan digarisbawahi)
Jual Video Lama
Niat Aktor
Identifikasi video lama
Tanggung Jawab Sistem
Dapatkan harganya
Proses Pembayaran (catatan digarisbawahi)
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 165
Diagram use case dari Aktivitas 2.11 sekarang adalah sebagai berikut.
Kegiatan 4.2
Pertahankan Anggota
Titik Ekstensi:
Kapan saja rincian anggota ditampilkan
Niat Aktor
Tanggung Jawab Sistem
Dapatkan Peminjam
Menampilkan detail pribadi (nama, alamat, tanggal lahir,
tanggal bergabung, dll.), ditambah ringkasan pinjaman saat
ini (misalnya, jumlah pinjaman, jumlah tunggakan, jumlah
pinjaman saat ini, jumlah tunggakan saat ini)
Secara opsional, pengguna dapat
mengubah rincian pribadi anggota
Simpan perubahannya
Secara opsional, pengguna dapat menghapus
Periksa apakah peminjam tidak meminjam apa pun
anggota
Hapus anggota tersebut
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
166 ÿ JAWABAN
Cetak Detail Peminjam
Tingkat:
Subfungsi
Pemicu:
Pengguna ingin mencetak rincian anggota
Poin Perpanjangan: Kapan saja dalam Mempertahankan Anggota
Niat Aktor
Tanggung Jawab Sistem
Tunjukkan bahwa cetakan diperlukan. Cetak detailnya
Kegiatan 4.3
Entitas paling jelas yang ingin kita lacak adalah setiap Video Tape.
Entitas lain yang diagram keadaannya berguna adalah anggota kelas.
Pembahasan masalah tidak menyebutkan bahwa jika seorang anggota memiliki terlalu banyak
tunggakan, maka dia tidak diperbolehkan meminjam, namun fakta inilah yang harus diverifikasi dengan
pengguna individu jika diagram keadaan digunakan.
Seperti yang telah kami nyatakan, tidak salah menggambar diagram keadaan untuk kelas lain, hanya
saja diagram tersebut akan sangat sederhana dan Anda tidak akan belajar darinya. Namun, tentu saja
cara terbaik untuk mengetahuinya adalah dengan menggambarnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 167
Aktivitas 4.4
Versi pertama diagram keadaan untuk Video Tape mungkin terlihat seperti ini:
Kemudian, Anda dapat memikirkan tentang bagaimana rekaman video muncul. Jelas kita kehilangan
kasus penggunaan di sini, sebut saja Dapatkan Kaset Video Baru.
Dan bagaimana dengan keadaan akhirnya? Jawaban awalnya adalah dengan membuat kasus
penggunaan baru lainnya, kali ini disebut Retire Video Tapes. Jelas kami telah menemukan fungsi baru
dan perlu kembali ke pengguna untuk mendiskusikan hal ini. Misalnya, mungkin mereka mencoba
menjual beberapa kaset video lama.
Jadi sekarang diagramnya terlihat seperti ini:
Terakhir, mari kita pikirkan tentang kaset video yang hilang atau hilang. Sekali lagi, kami perlu
mendiskusikan hal ini dengan Victoria, dan jawabannya mungkin sebagai berikut.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
168 ÿ JAWABAN
Sekarang ke diagram keadaan untuk anggota:
Aktivitas 4.5
Jika Anda memikirkan semua use case yang telah kita diskusikan sejauh ini, Anda harus
menyadari bahwa satu-satunya use case yang mungkin ada hubungannya dengan kelas
Video Spesifikasi adalah use case yang kami identifikasi dalam jawaban Aktivitas 4.4, yaitu
Dapatkan Kaset Video Baru.
Jadi langkah selanjutnya adalah menulis use case tersebut, lalu melanjutkan dengan review.
Pengoperasian pada Spesifikasi Video
Bagaimana Ditangani
Membuat
kasus penggunaan baru: Buat Judul Video
Membaca
kasus penggunaan baru: Pertahankan Judul Video
kasus penggunaan: Dapatkan Kaset Video Baru
Memperbarui
kasus penggunaan baru: Pertahankan Judul Video
Menghapus
kasus penggunaan baru: Pertahankan Judul Video
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 169
Kegiatan 4.6
Aturan Bisnis
Kasus Penggunaan
Hanya anggota yang dapat meminjam video.
Pinjam Video
Ketika ada orang baru yang meminta menjadi anggota, mereka
Ditangani oleh Panitera, bukan sistem
harus menunjukkan ID.
Usia minimal adalah 16 tahun.
Ditangani oleh Panitera, bukan sistem
Seorang anggota dapat meminjam video dalam jumlah berapa
Seharusnya ada di Video Pinjam
pun, asalkan tidak ada video yang sudah lewat waktunya.
Ada denda untuk video yang sudah lewat waktunya.
Pinjam Video
Lihat juga Video Pengembalian
Lamanya waktu peminjaman video bergantung pada video
Kasus penggunaan Pinjam Video perlu
tersebut. Rilisan baru hanya dipinjamkan dalam semalam,
menangani hal ini
rilisan saat ini untuk sewa tiga hari, dan sisanya untuk
seminggu.
Anggota dapat memesan video.
Cadangan Video
Setiap video memiliki klasifikasi, (G umum, PG bimbingan
Klasifikasi dan Kategori adalah atribut Spesifikasi
orang tua, MA pemirsa dewasa, dan R terbatas). Anggota
harus berusia di atas 18 tahun untuk meminjam video R.
Setiap video juga memiliki kategori: romansa, umum, fiksi
Video, sehingga dikelola oleh kasus penggunaan
Pertahankan Judul Video, yang diidentifikasi
dalam Aktivitas 4.5.
ilmiah, bahasa asing, dan anak-anak.
Ketika seorang anggota berulang tahun, mereka akan dikirimi surat
Hasilkan Surat Ulang Tahun
khusus yang mengundang mereka untuk meminjam video apa pun
pilihan mereka selama seminggu secara gratis.
Setiap tiga bulan sekali toko tersebut melakukan stock opname. Lakukan stock opname. Pengguna harus melakukannya
ingatlah untuk melakukannya.
Setiap video yang hilang diperbarui untuk ditampilkan sebagai
hilang.
Rekam Kaset Video Hilang. Ini adalah kasus
penggunaan yang kami identifikasi di Aktivitas
4.4
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
170 ÿ JAWABAN
Kegiatan 4.7
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 171
TOPIK 5: PEMODELAN DINAMIS
Kegiatan 5.1
Peminum yang haus: (kepada BarBot) Bolehkah saya minta segelas bir?
BarBot:
(ke GlassTray) Ambilkan aku Gelas (bersih)?
Baki Kaca:
(mengambil kaca dari GlassTray dan mengembalikannya ke BarBot)
BartBot:
(memberikan Gelas kosong ke BeerTap) Isilah.
Keran Bir:
(ke Kaca) Seberapa besar kamu?
Kaca:
(ke BarBot) 285ml.
Keran Bir:
(mengeluarkan 285ml bir ke dalam gelas, dan mengembalikan Gelas yang
sudah diisi ke BarBot)
BarBot:
(memberikan segelas penuh kepada peminumnya)
Kegiatan 5.2
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
172 ÿ JAWABAN
Kegiatan 5.3
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 173
Kegiatan 5.4
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
174 ÿ JAWABAN
Kegiatan 5.5
Kegiatan 5.6
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
JAWABAN ÿ 175
Kegiatan 5.7
Ini merupakan pertanyaan jebakan, karena sejauh ini kita tidak mempunyai informasi atau persyaratan
pemrosesan yang berbeda untuk kategori yang berbeda. Jadi, meskipun secara konseptual hal ini mungkin
cukup penting bagi pemilik bisnis, dari sisi persyaratan pemrosesan, tidak ada tambahan yang diperlukan.
Mungkin diagram kelas desain kedua pada awalnya merupakan versi yang lebih baik, tetapi setelah
desain selesai, dan tidak ada persyaratan lebih lanjut yang ditemukan, maka gunakan diagram kelas
desain pertama.
Kegiatan 5.8
1. Diagram kedua; memiliki fungsionalitas untuk Catur dan Catur di kelas yang sama (BoardGame) tidak
kohesif secara fungsional.
2. Diagram kedua; Diagram pertama menampilkan kelas Player yang membuat kelas CheckersMove
untuk kelas CheckersBoard. Diagram kedua memungkinkan kelas CheckersBoard menangani
kelas CheckersMove itu sendiri.
3. Gambar B memiliki kopling yang lebih sedikit karena setiap kelas mempunyai paling banyak satu
asosiasi dengan kelas lainnya.
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
UMPAN BALIK MODUL
MODUL MAKLUM BALAS
Jika Anda memiliki komentar atau masukan, Anda dipersilakan untuk:
1. Kirimkan komentar atau tanggapan Anda melalui email ke modulefeedback@oum.edu.my
ATAU
2.
Isi formulir evaluasi online Modul Cetak yang tersedia di myVLE.
Terima kasih.
Pusat Desain dan Teknologi Instruksional ()
Pusat Reka Bentuk Pengajaran dan Teknologi
No Telp : 03-27732578
Nomor Faks : 03-26978702
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Machine Translated by Google
Hak Cipta © Universitas Terbuka Malaysia (OUM)
Download