• Bagaimana validitas fungsional diuji? • Apa kelas input akan membuat kasus uji yang baik?
• Apakah sistem sangat sensitif terhadap nilai input tertentu? • Bagaimana batas-batas kelas data terisolasi?
• Apa efek akan kombinasi spesifik data terhadap operasi sistem? Dengan menerapkan teknik black-box, kita memperoleh satu set kasus uji
yang memenuhi kriteria sebagai berikut: 1 uji kasus yang mengurangi, dengan jumlah yang lebih besar dari satu, jumlah kasus uji tambahan yang harus dirancang
untuk mencapai wajar pengujian, dan 2 uji kasus yang memberitahu kita sesuatu tentang ada atau tidak adanya layani kesalahan, daripada kesalahan yang terkait
hanya dengan tes khusus di tangan.
2.11 Unified Modelling Language UML
UML adalah bahasa grafis untuk mendokumentasi, menspesifikasi dan membangun sistem perangkat lunak. UML berorientasi objek, menerapkan banyak
level abstraksi, tidak bergantung proses pengembangan, tidak bergantung bahasa dan teknologi, pemaduan beberapa notasi di beragam metodologi, usaha bersama dari
banyak pihak, didukung oleh kakas-kakas yang diintegrasikan lewat XML XMI. Standar UML dikelola oleh OMG object management group Hariyanto, 2004.
Menurut Hariyanto 2004 tujuan utama perancangan UML adalah: 1. Menyediakan bahasa permodelan visual yang ekspresif dan siap pakai untuk
mengembangkan dan pertukaran model-model yang berarti.
2. Menyediakan mekanisme perluasan dan spesialisasi untuk memperluas konsep- konsep inti.
3. Mendukung spesifikasi independen bahasa pemrograman dan proses pengembangan tertentu.
4. Menyediakan bisnis formal untuk pemahaman bahasa permodelan. 5. Mendorong pertumbuhan pasar kakas berorientasi objek.
6. Mendukung konsep-konsep pengembangan level lebih tinggi seperti komponen, kolaborasi, framework dan pattern.
2.11.1 UML Diagram
UML menawarkan diagram yang dikelompokkan menjadi lima perspektif berbeda untuk memodelkan suatu sistem. Diagram UML menyajikan perspektif yang berbeda
mengenai sistem informasi. Bagian berikut menjelaskan berbagai diagram UML beserta pengertiannya Whitten et al. 2004.
2.11.1.1 Class Diagram
Class Diagram merupakan kumpulan class dan object. Oleh karena itu
pengertian class sangat penting sebelum merancang class diagram. Whitten et al. 2004 dalam buku Widodo dan Herlawati 2011 mengartikan class sebagai satu set
objek yang memiliki atribut dan perilaku yang sama. Class terkadang disebut sebagai kelas objek object class. Secara alami, objek yang berupa buku analisis desain dan
buku pemrograman kita kelompokan dalam satu kelas, yaitu kelas buku. Widodo dan Herlawati, 2011
Secara teknis, Pender dan Tom 2003 dalam buku Widodo dan Herlawati 2011 mengartikan sebuah kelas sebagai suatu definisi sumber daya yang termasuk
di dalamnya informasi-informasi yang menggambarkan fitur suatu entitas dan bagaiman penggunaannya. Sedangkan objek adalam entitas yang bersifat unik yang
mengikuti aturan-aturan yang sudah didefinisikan dalam kelasnya. Kelas menggambarkan suatu kelompok yang memiliki kesamaan keadaan dan perilaku.
Kelas merupakan cetak biru suatu objek dalam sistem orientasi objek. Dapat dikatakan kelas adalah sejenis alat pengklasifikasi.
Tabel 2.2 Notasi Class Diagram Whitten dan Bentley, 2008
Notasi Keterangan
Class 1.
class name 2.
attributes 3.
behaviors Association
Agregation Generalization
1
Class
1 2
3
Guru
- jabatan - no_sk_jabatan
- tanggal_sk_jabatan - tanggal_mulai_jabatan
- tanggal_selesai_jabatan
+ read
TU
- jabatan - no_sk_jabatan
- tanggal_sk_jabatan - tanggal_mulai_jabatan
- tanggal_selesai_jabatan
+ create + read
+ update + delete
pegawai
- id_peg - nip
- nm_lengkap - ttl
- jenis_kelamin - agama
- status_kepegawaian - id_jabatan
- masa_kerja - email
- alamat_rmh - tlp_rmh
- hp
+ create + read
+ update + delete
Jabatan
- id_jabatan - nama_jabatan
+ create + read
+ update + delete
dokumentasi
- id_dokumentasi - id_kategori
- judul - nama_file
- tgl_posting - hits
+ create + read
+ update + delete
studi_kasus
- id_studi_kasus - id_peg
- judul - deskripsi
- kronologi - solusi
+ create + read
+ update + delete
laporan
- id_laporan - id_peg
- jenis - judul
- isi_laporan
+ create + read
+ update + delete
berita
- id_berita - kategori
- judul - headline
- isi_berita
+ create + read
+ update + delete
1
1 1
1
Gambar 2.6 Contoh Kasus Knowledge Management System dalam Class Diagram
Dari tabel diatas dapat dijelaskan bahwa: 1. Tabel pegawai merupakan generalisasi dari tabel Guru dan TU merupakan
generalisasi pegawai karena guru dan TU memiliki atribut yang sama. 2. Tabel jabatan merupakan agregasi dari tabel pegawai karena jabatan adalah
bagian dari atribut tabel pegawai. 3. Tabel pegawai memiliki asosiasi dengan tabel dokumentasi, berita, studi kasus,
dan laporan karena pegawai dapat melakukan kegiatan yang ada di tabel-tabel tersebut. Hubungan kardinalitas antara tabel pegawai dengan tabel dokumentasi,
berita, studi kasus, dan laporan adalah 1... satu ke banyak yang artinya seorang pegawai dapat melakukan banyak dokumentasi, berita, studi kasus dan laporan.
2.11.1.2 Mapping Problem Domain Object to an RDBMS Format
Menurut Dennis et al. 2005 cara memetakan problem domain object dalam class diagram
ke format RDBMS ada delapan tahapan, yaitu: 1. Petakan semua class konkret dalam problem domain ke tabel RDBMS. Jika,
problem domain class abstrak memiliki beberapa subclass langsung, petakan
juga ke dalam tabel RDBMS. 2. Petakan atribut bernilai tunggal ke dalam kolom tabel.
3. Petakan metode untuk disimpan di dalam prosedur atau modul program. 4. Petakan agregasi yang bernilai tunggal dan hubungan asosiasi dengan kolom
yang dapat menyimpan primary key dari tabel terkait, yaitu, menambahkan foreign key
ke dalam tabel. Lakukan hal tersebut untuk kedua sisi yang berhubungan.
5. Petakan atribut multi-valued dan buat hubungan one-to-many dari tabel yang asli ke tabel yang baru.
6. Petakan multi-valued agregasi dan hubungan asosiasi ke tabel asosiatif baru yang menghubungkan dua tabel asli bersama-sama. Masukkan primary key dari
kedua tabel tersebut ke dalam tabel asosiatif yang baru, yaitu menambahkan foreign key
ke tabel.
7. Untuk hubungan agregasi dan asosiasi dengan tipe campuran, copy primary key dari sisi single-valued 1..1 atau 0..1 ke kolom baru pada tabel yang memiliki
hubungan multi-valued 1.. atau 0.. yang dapat menyimpan primary key dari tabel terkait. Yaitu menambahkan foreign key ke tabel multi-valued.
8. Untuk hubungan generalisasi, pastikan bahwa primary key dari subclass sama dengan primary key dari superclass. Multiplicity dari hubungan asosiasi yang
baru dari subclass ke superclass harus 1..1. Jika superclass konkret, yaitu mereka dapat menginisiasi sendiri, maka multiplicity dari superclass ke subclass adalah
0.., jika tidak konkret hubungannya adalah 1..1. Selanjutnya, Exclusive-or XOR harus ditambahkan kedalam asosiasi. Lakukan langkah ini untuk setiap
superclass . Atau, sesuaikan inheritance dengan menyalin atribut superclass ke
semua subclass dan hapus superclass dari desain. Berikut ini adalah contoh mapping dari class diagram ke RDBMS tabel:
Gambar 2.7 Contoh Mapping dari Class Diagram ke RDBMS Tabel
user
- id_user - username
- password - level
- blokir + create
+ read + update
+ delete
Guru
- jabatan - no_sk_jabatan
- tanggal_sk_jabatan - tanggal_mulai_jabatan
- tanggal_selesai_jabatan + read
TU
- jabatan - no_sk_jabatan
- tanggal_sk_jabatan - tanggal_mulai_jabatan
- tanggal_selesai_jabatan + create
+ read + update
+ delete
Admin
- jabatan - no_sk_jabatan
- tanggal_sk_jabatan - tanggal_mulai_jabatan
- tanggal_selesai_jabatan + create
+ read + update
+ delete
pegawai
- id_peg - nip
- nm_lengkap - ttl
- jenis_kelamin - agama
- status_kepegawaian - id_jabatan
- masa_kerja - email
- alamat_rmh - tlp_rmh
- hp
+ create + read
+ update + delete
Jabatan
- id_jabatan - nama_jabatan
+ create + read
+ update + delete
user
- id_user - id_peg
- username - password
- level - blokir
+ create + read
+ update + delete
1 1
1
laporan
- id_laporan - id_peg
- jenis - judul
- isi_laporan + create
+ read + update
+ delete
laporan
- id_laporan - id_peg
- id_jenis - judul
- judul_seo - isi_laporan
- hari - tanggal
- jam - dibaca
+ create + read
+ update + delete
jenis_laporan
- id_jenis - nama_jenis
+ create + read
+ update + delete
1
diskusi
- id_diskusi - kategori
- id_pegawai - judul_diskusi
- isi_diskusi + create
+ read + update
+ delete
diskusi
- id_diskusi - id_kategori
- id_peg - judul
- judul_seo - isi_diskusi
- hari - jam
- tanggal - dibaca
- gambar
+ create + read
+ update + delete
komentar
- id_komentar - id_diskusi
- id_peg - isi_komentar
- tgl - jam_komentar
+ create + delete
1
1. Class user dan generalisasi dari class user terpetakan menjadi beberapa tabel yaitu: tabel data pegawai, jabatan, dan user.
2. Class TU, guru, dan admin, merupakan Class Abstrak karena memiliki hubungan Generalisasi dengan Class User sehingga tidak menjadi tabel.
3. Class Laporan dipetakan menjadi dua tabel yaitu Tabel laporan dan jenis_laporan.
4. Class diskusi dipetakan menjadi dua tabel yaitu tabel diskusi dan komentar.
2.11.1.3 Sequence Diagram
Sequence diagram secara grafis menggambarkan bagaimana objek
berinteraksi dengan satu sama lain melalui pesan pada eksekusi sebuah use case atau operasi. Diagram ini mengilustrasikan bagaimana pesan terkirim dan diterima
diantara objek dan dalam sekuensi apa Whitten dan Bentley, 2008.
Tabel 2.3 Notasi Sequence Diagram Whitten dan Bentley, 2008
Simbol Keterangan
Boundary Biasanya berupa tepi dari sistem, seperti user
interface atau suatu alat yang berinteraksi
dengan sistem lain
Activation Merupakan periode yang dibutuhkan saat
melakukan operasi.
Actor1
Merepresentasikan entitas yang berada di luar sistem,mereka bisa berupa manusia, atau
perangkat sistem lain.
Message1
Relasi ini digunakan untuk memanggil operasi atau metode yang dimiliki oleh suatu
objek. Message
mengharuskan kita
menyelesaikan proses
baru kemudian
memanggil proses berikutnya.
Message2
Relasi ini menunjukkan bahwa suatu objek hendak memanggil dirinya sendiri.
Actor Form Login
User
Masukkan Username Password username password
Cek Data Login berhasil
Login gagal Pesan peringatan
Halaman Home
Gambar 2.8 Contoh Sequence Diagram Login
Berikut penjelasan dari sequence diagram di atas: 1. Aktor melakukan operasi login dengan memasukkan username dan password ke
dalam form login. 2. Dari form login akan memanggil data username dan password ke dalam tabel
user di database. 3. Dilakukan pengecekan data username dan password.
4. Apabila data username dan password cocok maka login berhasil dan masuk ke
halaman home. 5. Apabila data username dan password tidak cocok maka login gagal dan muncul
pesan peringatan.
2.11.1.4 Use case Diagram
Use case Diagram menunjukkan hubungan antara actor dan Use cases. Diagram
ini dapat ditemukan di dalam UML, diagram ini pada dasarnya menjelaskan hal yang sama seperti yang terdapat di tabel aktor. Actor dan Use case adalah dua
elemen utama di dalam penjelasan mengenai Use case Diagram. Mereka dapat terhubung satu sama lain, dengan demikian indikasi bahwa pemberian actor dalam
sebuah diagram dapat berpartisipasi dalam pemberian Use case. Actor dan Use case juga saling terkait melalui penggunaan struktur class diagram.
Notasi dalam Use Case: a.
Aktor actor Aktor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk
pertukaran informasi. Aktor menginisiasi kegiatan sistem, yakni sebuah use case, dengan maksud melengkapi beberapa tugas bisnis yang menghasilkan sesuatu yang
dapat diukur. Aktor mewakili sebuah peran yang dipenuhi oleh seorang pengguna yang berinteraksi dengan sistem dan tidak berarti menggambarkan individu ataupun
nama pekerjaan tunggal.
Gambar 2.9 Notasi Aktor Nugroho, 2005
b. Use Case Use case
adalah deskripsi dari urutan aksi-aksi yang ditampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu actor. Use case digunakan untuk
menstrukturkan perilaku pada suatu model. Secara grafis, use case digambarkan dengan elips tegas yang berisi namanya.
Nama Use Case
Gambar 2.10 Notasi Use Case Nugroho, 2005
c. Interaction Interaksi adalah suatu perilaku yang mencakup himpunan pesan-pesan
message yang diperlukan untuk menyelesaikan suatu fungsi tertentu. Perilaku kumpulan objek-objek atas operasi individual bisa dispesifikasi dengan interaksi.
Sebuah interaksi terdiri dari beberapa unsur, yaitu pesan-pesan urutan aksi perilaku yang dihasilkan oleh sebuah pesan, serta link hubungan antara objek-objek.
Gambar 2.11 Notasi Interaction Nugroho, 2005
d. Relationship
Relasirelationship digambarkan sebagai bentuk garis antara dua simbol dalam Use Case Diagram. Relasi antar aktor dan use case disebut juga dengan
asosiasiassociation. Asosiasi ini digunakan untuk menggambarkan bagaimana hubungan antara keduanya.
Relasi antara use case dengan use case: a Include
: pemanggilan use case oleh use case lain atau untuk menggambarkan suatu use case termasuk di dalam use case lain. Digambarkan dengan garis
berpanah dengan tulis include b
Extend : digunakan untuk menunjukan bahwa satu use case merupakan tambahan fungsional dari use case lain jika kondisi atau syarat tertentu terpenuhi.
Digambarkan dengan garis berpanah dengan tulis extend.
guru admin
login logout
Knowledge Management System SMAN 46 Jakarta
Pegawai Tata Usaha Registrasi
include View Data
Guru Input Data
Guru extend
Pesan
Gambar 2.12 Contoh Use Case Diagram Whitten et al. 2004
Berikut penjelasan dari Use Case diatas: 1. Terdapat 3 aktor dalam use case diagram diatas, yaitu guru, admin dan pegawai
tata usaha. 2. Tulisan yang berada dalam bentuk elips disebut use case, dimana dalam use case
diagram diatas use case tersebut antara lain registrasi, login, logout, input data
guru, view data guru, input forum diskusi, view forum diskusi, input studi kasus, view
laporan, input laporan, view studi kasus, input dokumentasi pengetahuan, view
dokumentasi pengetahuan, input informasi, view informasi, pesan dan search
. 3. Guru dapat melakukan registrasi, login, logout, view data guru, input forum
diskusi, input studi kasus, view laporan, view dokumentasi pengetahuan, pesan, view
informasi dan search di dalam sistem manajemen pengetahuan SMAN 46 Jakarta.
4. Admin dapat melakukan login, logout, dan input data guru dalam sistem manajemen pengetahuan SMAN 46 Jakarta.
5. Pegawai tata usaha dapat melakukan login, logout, view forum diskusi, view studi kasus, input laporan, input dokumentasi pengetahuan dan input informasi.
6. Garis bertuliskan include pada use case login ke logout menunjukkan bahwa untuk dapat melakukan logout sebelumnya harus login terlebih dahulu.
7. Garis bertuliskan extend pada use case input data guru ke view data guru dan use case
lain yang serupa menunjukkan bahwa input data guru merupakan tambahan fungsional dari view data guru.
2.11.1.5 Activity Diagram
Activity diagram secara grafis digunakan untuk menggambarkan rangkaian
aliran aktivitas baik proses bisnis atau use case. Diagram ini juga dapat digunakan untuk memodelkan action yang akan dilakukan saat sebuah operasi dieksekusi, dan
memodelkan hasil dari action tersebut.
Tabel 2.4 Notasi Activity Diagram Whitten dan Bentley, 2008
Notasi Keterangan
Action State Action state
adalah langkah-langkah dalam sebuah activity. Action
bisa terjadi saat memasuki activity, meninggalkan activity,
atau pada event yang spesifik.
Initiate Aciivty Menunjukkan arah ke action state berikutnya.
Start of the Process
Menujukkan dimana aliran kerja itu di mulai.
Termination of the Process
Menujukkan dimana aliran kerja itu berakhir.
Decision
Menunjukkan dimana sebuah keputusan perlu di buat dalam aliran kerja.
User Guru Sistem Manajemen Pengetahuan
SMAN 46 Jakarta Mulai
Selesai
Input Data Register
Ingin Register
Pilih Daftar
Apakah data valid ?
Menampilkan pesan berhasil Pilih “Keluar”
Tidak Ya
Tidak
Ya
Gambar 2.13 Contoh Activity Diagram Register
Berikut penjelasan dari activity diagram di atas: 1. User Guru memulai kegiatan
register dengan “input data register” 2. Guru memilih untuk mendaftar atau tidak jika iya akan dilakukan pengecekan
data guru jika tidaka maka akan keluar sistem lalu selesai. 3. Saat pengecekan data apabila data valid maka akan tampil pesan berhasil lalu
selesai, jika tidak maka kembali ke “ingin register”.
2.12 MySQL