Sistem Monitoring Use Case Diagram

9

BAB II LANDASAN TEORI

2.1. Sistem Monitoring

Secara harafiah sistem monitoring terdiri dari 2 dua kata yaitu „sistem‟ dan „monitoring‟. Menurut Jogiyanto 2005 , sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu. Sistem mempunyai karakteristik atau sifat-sifat tertentu, yaitu : Komponen Sistem, Batasan Sistem, Lingkungan Luar Sistem, Penghubung Sistem, Masukan Sistem, Keluaran Sistem, Pengolahan Sistem, dan Sasaran Sistem Sutanta, 2009. Menurut Cassely dan Kumar 1987 monitoring merupakan program yang terintegrasi, bagian penting dipraktek manajemen yang baik dan arena itu merupakan bagian integral di manajemen sehari-hari. Sedangkan menurut Calyton dan Petry 1983 monitoring sebagai suatu proses mengukur, mencatat, mengumpulkan, memproses dan mengkomunikasikan informasi untuk membantu pengambilan keputusan manajemen programproyek. Sistem monitoring adalah suatu jaringan kerja dari prosedur yang saling berhubungan yang dapat mencatat, mengukur, mengumpulkan, memproses, melakukan pengawasan, dan mengkomunikasiskan informasi dari tiap bagian yang diawasi sehingga dapat membantu pengambilan keputusan manajemen programproyek dalam sebuah perusahaan atau organisasi.

2.2. Basis Data

Berikut ini merupakan penjelasan mengenai teori tentang Basis Data:

2.2.1. Pengertian Basis Data

J.L. Whitten dan L.D. Bentley 1998 mendefinisikan basis data sebagai sekumpulan data dalam file yang saling terhubung interrelated file, record dalam file harus mengizinkan adanya kerelasian dapat dibayangkan sebagai pointer ke record-record lain dalam file lain. Abraham Silberschatz, Henry F. Korth, dan S.Sudarshan 2001 mendefinisikan basis data sebagai sekumpulan data yang saling berhubungan dan menjadi bagian dari DBMS.

2.2.2. Sistem Basis Data

Sistem basis data berbeda dengan basis data, sistem basis data memiliki ruang lingkup yang leboh luas karena terdiri dari kumpulan beberapa basis data baik yang terhubung maupun tidak terhubung secara langsung dalam suatu sistem, tetapi secara keseluruhan mempunyai hubungan sebagai sebuah sistem dengan didukung oleh komponen lainnya. Istilah sistem basis data dapat didefiniskan sebagai sekumpulan subsistem yang terdiri atas basis data dengan para pemakai yang menggunakan basis data secara bersama-sama, personal-personal yang merancang dan mengelola basis data, teknik-teknik untuk merancang dan mengelola basis data, serta sistem komputer untuk mendukungnya Martin, 1975.

2.2.3. Batasan Aturan Basis Data

Dalam perancangan dan penyusunan basis data dikenal adanya beberapa batasan aturan yang haris ditaati. Batasan aturan tersebut diperlukan agar file-file basis data yang disusun dapat menenuhi batasankriteria sebagaimana definisi basis data yang dijelaskan sebelumnya. Menurut James Martin 1975, batasan aturan tersebut berhubungan dengan lima aspek penting dalam basis data, yaitu: 1. Kerangkapan data data redudancy 2. Inkonsistensi data data inconsistency 3. Data terisolasi data isolation 4. Kemananan data data security 5. Integritas data data integrity Abraham Silberschatz, Henry f.Korth, dan S.Sudarshan 2001 menyatakan bahwa basis data yang benar mampu mengatasi semua permasalahan yang terkait dengan batasan aturan di atas.

1. Kerangkapan data data redudancy

Kerangkapan data data redudancy adalah munculnya data-data yang sama secara melimpah berulang kali pada file basis data yang semestinya tidak diperlukan. Kerangkapan data dalam basis data perlu dihindari paling tidak harus diminimalkan karena beberapa alasan, yaitu Sutanta, 2004 : 1. Pemborosan media penyimpanan basis data 2. Biaya penyimpanan yang semakin besar 3. Kesulitan atau in-efisiensi dalam pengolahan data 4. Pemborosan waktu dalam pengolahan data 5. Resiko yang semakin besar kemungkinan munculnya inkonsistensi data.

2. Inkonsistensi data data inconsistency

Inkonsisten data data inconsistency atau data tidak konsisten adalah munculnya data yang tidak konsisten pada medankolom yang sama dalam satu atau beberapa file data yang dihubungkandirelasikan Sutanta, 2011. Inkonsistensi data ini dapat terjadi diakibatkan oleh Sutanta, 2004: 1. Proses pemasukan data data entry yang tidak benar 2. Proses pembaruan data update yang tidak benar 3. Pengendalian sistem yang tidak baikterkontrol Menurut Edhy Sutanta dalam bukunya yang berjudul Basis Data dalam Tinjaun Konseptual 2004 penyebab utama munculnya data yang tidak konsisten adalah akibat munculnya kerangkapan data dalam file. Oleh karena itu, contoh inkonsistensi data ini juga dapat berlaku pada file yang mengalami kerangkapan data. Basis data yang baik haruslah terbebas dari inkonsistensi data karena akan berakibat kesalahan fatal pada informasi yang dihasilkan dari pengolahan data dalam basis data yang tidak dapat merepresentasikan fakta yang ada.

3. Data Terisolasi Data Isolation

Data terisolasi disebabkan oleh pemakaian beberapa file basis data dimana program aplikasi tidak dapat mengakses data-data dan file tertentu, kecuali bila program aplikasi diubahditambah sehingga seolah-olah ada file yang terpisahterisolasi terhadap file yang lain dalam basis data Sutanta, 2009. Data terisolasi harus dihindari karena mengakibatkan ketidaklengkapan informasi yang dihasilkan dari pengolahan data dalam basis data. Ini mengakibatkan informasi hasil pengolahan dalam basis data menjadi tidak bernilai. Data terisolasi dapat terjadi Sutanta, 2004 : 1. Tidak adanya kemungkinan untuk menghubungkan antar data dalam file. 2. Tidak adanya standarisasi data berkaitan dengan domainformat data, meliputi tipe dan ukuran data.

4. Keamanan Data Data Security

Kemananan data data security merupakan aspek penting dalam basis data. Prinsip keamanan dalam basis data adalah bahwa data-data dalam basis data merupakan sumber informasi yang bersifat sangat penting dan rahasia Sutanta, 2011. Sehingga perlu untuk menjaga data-data dari kerusakan dan kehilangan yang dapat merusak data. Aspek keamanan basis data meliputi Martin, 1975: 1. Recovery, adalah suatu proses menggunakan kembali basis data dan media penyimpanan cadangan untuk mengembalikan data pada kondisi yang benar karena terjadi kerusakankehilangan data akibat kerusakan media penyimpanan, program aplikasi, OS, basis data, hardware, dll. 2. Integrity, adalah dengan unjuk kerja sistemuntuk dapat menjaga data-data dalam basis data agar selalu berada dalam kondisi yang benar tipe dan ukuran datanya, up to date sesuai dengan kondisi aktual, konsisten, dan selalu tersedia. 3. Concurency, berkaitan dengan mekanisme pengendalian basis data saat digunakan oleh beberapa pemakai secara bersamaan agar terhindar dari kesalahan akibat beberapa transaksi berbeda dilakukan secara bersamaan. 4. Privacy, yaitu dimaksudkan sebagai pembatasan kewenangan akses data dalam basis data dari penggunaan oleh pengguna yang tidak berwewenang dan pengubahan yang tidak dikehendaki. 5. Security, adalah suatu mekanisme system utnuk mencegah dan melindungi basis data kehilangan akibat kerusakan pada fisik media penyimpanan, kebakaran, banjir, badai, huru-hara, dll.

5. Integritas Data Data Integrity

Integritas data data integritas berhubungan dengan kinerja sistem agar dapat melakukan kendalicontrol pada semua bagian sistem. Integritas dimaksudkan sebagai suatu sarana untuk meyakinkan bahwa data-data yang tersimpan dalam PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI basis data selalu berada dalam kondisi yang benar tipe dan ukuran datanya, up to date sesuai dengan kondisi aktual, konsisten, dan selalu tersedia current. Hal ini merupakan aspek kritis dalam manajemen basis data Martin, 1975.

2.2.4. Entity-Relationship Modelling E-R Modelling

Entity Relationship Modelling E-R Modelling merupakan suatu model data yang dikembangkan berdasarkan obyek. E-R Modelling digunakkan untuk menjelaskan hubungan antar data dalam basis data kepada pengguna secara logic. E-R Modelling didasarkan pada suatu persepsi bahawa real world terdiri atas obyek-obyek dasar yang mempunyai hubungankerelasian antarobyek-obyek dasar tersebut Martin, 1975. E-R Modelling digambarkan dalam bentuk diagram yang disebut diagram E-R E-R DiagramE-R_D. Untuk menggambarkan E-R_D digunakan simbol-simbol grafis tertentu. Penggunaan E-R Modelling relatif mudah dipahami, bahkan oleh para pengguna yang awam. Bagi perancanganalis sistem, E-R_D berguna untuk memodel-kan sistem yang nantinya basis datanya akan dikembangkan. Model ini juga membantu perancanganalis sistem pada saat melakukan analisis dan perancangan basis data karena model ini dapat menunjukkan macam data yang dibutuhkan dan kerelasian antardata di dalamnya. Bagi pengguna, model ini sangat membantu dalam hal pemahaman model sistem dan rancangan basis data yang akan dikembangkan oleh perancanganalis sistem Sutanta, 2004.

2.2.4.1. Tipe Entitas Entity Type

Tipe Entitas Entity Typeialah sekumpulan objek yang memiliki property yang sama yang diidentifikasi dalam perusahaan serta keberadaannya independen. Setiap objek yang diidentifikasikan secara unik disebut entity occurrence Connolly and Beg, 2002. Gambar 2.1 di bawah ini menunjukkan representasi diagram dari contoh entity type. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI Gambar 2. 1Representasi Diagram dari Entity Type Staff dan BranchConnolly and Beg, 2002

2.2.4.2. Tipe Relasi Relationship Type

Tipe Relasi Relationship Typeialah sekumpulan entitas entity yang mempunyai hubungan dan memiliki arti Connolly and Beg, 2002 ditunjukkan secara lebih jelas pada gambar 2.2 berikut ini: Gambar 2. 2Representasi Diagram dari Entity Branch Has Staff Relationship TypeConnolly and Beg, 2002

2.2.4.3. Atribut Attributes

Menurut Connolly dan Beg 2002, p350, atribut adalah properti dari sebuah entity atau relationship type. Sedangkan attribute domain adalah sekumpulan nilai yang dibolehkan untuk satu atau lebih atribut. Atribut dapat diklasifikasikan sebagai : 1. Simple Attribute dan Composite Attribute Simple attribute adalah attribute yang terdiri dari komponen tunggal dimana attribute tersebut tidak dapat dibagi ke dalam komponen yang lebih kecil. Simple attribute juga dapat disebut dengan atomic attribute. Contoh dari simple attribute adalah position dan salary dari staff entity. Composite attribute adalah attribute yang terdiri dari banyak komponen dimana beberapa attribute tersebut dapat dibagi kedalam komponen yang lebih kecil. Contoh dari composite attribute adalah address dari branch entity yang dapat dibagi menjadi street, city, dan postcode. 2. Single-Valued Attribute dan Multi-Valued Attribute Single-valued attribute adalah attribute yang memiliki satu nilai pada setiap entity. Contoh dari single-valued attribute adalah branch_No dari branch entity. Multi-valued attribute adalah attribute yang memiliki beberapa nilai pada setiap entity. Contoh dari multi-valued attribute adalah tel_No dari branch entity. 3. Derived Attribute Derived Attribute adalah atribut yang nilai-nilainya diperoleh dari hasil perhitungan atau dapat diturunkan dari atribut lain yang berhubungan. Contoh dari derived attribute adalah duration dari lease entity dimana diperoleh dari perhitungan rent_Start dan rent_Finish. Gambar 2. 3Representasi Diagram dari Entity Staff dan BranchBeserta Atribut- AtributnyaConnolly and Beg, 2002 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

2.2.4.4. Kunci Keys

Menurut Connolly dan Begg 2002 jenis – jenis kunci adalah sebagai berikut ilustrasi untuk memperjelas dijelaskan pada gambar 2.3 : 1. Candidate key, jumlah minimal dari attribute yang secara unik mengidentifikasi setiap peristiwa dalam entity 2. Primary key, candidate key yang terpilih secara unik mengidentifikasi setiap peristiwa dalam entity 2. Alternate key, candidate key yang tidak terpilih menjadi primary key 3. Composite key, candidate key yang terdiri dari dua atau lebih attribute 4. Foreign key, atribut sebuah entity yang menggabungkan diri ke entity lain

2.2.5. Manajemen Transaksi

Transaksi adalah sebuah tindakan atau serangkaian tindakan, dilakukan olehuser atau program aplikasi, yang membaca atau mengubah isi dari basis dataConnolly and Beg, 2002. Terdapat 4 hal dasar yang harus dimiliki semua transaksi, yaitu: 1. Atomicity Sebuah transaksi adalah sebuah unit yang tidak dapat dibagi lagi sehingga dapatmelakukan seluruhnya atau tidak melakukan apapun. Ini merupakan tanggung jawab dari subsistem recovery dari DBMS untuk memastikan ke- „atom‟-annya. 2. Consistency Sebuah transaksi harus mentransformasikan satu keadaan konsisten ke keadaan konsisten lainnya. Ini merupakan tanggung jawab dari DBMS dan pengembang aplikasi untuk memastikan kekonsistenannya. 3. Isolation Transaksi secara bebas mengeksekusi yang lainnya. Dengan kata lain, sebagian transaksi yang tidak lengkap akan mengakibatkan transaksi yang lain menjadi tidak visible.Ini merupakan tanggung jawab dari subsistem concurrency control untuk memastikan isolasi. 4. Durability Setelah DBMS memberitahu pengguna bahwa transaksi telah selesai PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI dengan sukses, maka efeknya tetap bertahan bahkan jika sistem mengalami crash sebelum semua perubahannya direfleksikan pada disk. Ini merupakan tanggung jawab dari recovery subsistem untuk memastikan durability. Gambar 2. 4Diagram Transisi Transaksi Connolly and Beg, 2002 Berdasarkan Gambar 2.4 dalam diagram transisi tersebut terdapat 5 keadaan yaitu: 1. ACTIVE aktif 2. PARTIALLY COMMITTED sebagian dilaksanakan  Terjadi setelah perintah terakhir dieksekusi  Pada saat ini, mungkin ditemukan transaksi melanggar serializability atau melanggar integrity constraint, maka transaksi harus dibatalkan. Transaksi demikian akan menuju FAILED keadaan gagal dan harus dibatalkan  Jika transaksi sukses, beberapa update dapat disimpan secara aman dan transaksi menuju ke keadaan COMMITTED. 3. COMMITTED dilaksanakan 4. FAILED gagal  Terjadi jika transakasi tidak dapat dilaksanakan atau transaksi dibatalkan pada saat ACTIVE keadan aktif.  Kondisi ini terjadi jika user membatalkan transaksi atau protocol concurrency control membatalkan transaksi untuk memastikan serialibility. 5. ABORTED dibatalkan

2.2.5.1. Metode Locking

Locking adalah sebuah prosedur yang digunakan untuk melakukan kontrol pada akses bersama pada data. Pada saat satu transaksi melakukan akses ke dalam database, sebuah lock akan menyebabkan pelarangan akses ke dalam transaksi untuk mencegah hasil yang tidak konsisten. Terdapat 2 jenis lock, yaitu Shared Lock, dan Exclusive Lock. Jika sebuah transaksi memiliki shared lock pada sebuah data item, maka transaksi tersebut dapat melakukan pembacaan terhadap sebuah item tetapi tidak dapat melakukan update. Sedangkan jika sebuah transaksi yang memiliki Exclusivelock pada sebuah data item dapat melakukan pembacaan maupun update item tersebut.

2.2.5.2. Two Phase Locking 2PL

Transaksi dapat dilakukan menggunakan protokol 2PL jika semua operasilocking mendahului operasi yang tidak terkunci dalam transaksi tersebut.Protokol 2PL memiliki 2 fase, yaitu Connolly and Beg,2002: a. Growing phase : jika transaksi sudah mendapatkan semua lock, maka tidak boleh melepas lock. b. Shrinking phase : jika transaksi sudah melepaskan lock, maka tidak dapat mendapatkan lock baru. Beberapa masalah yang disebabkan oleh proses yang konkurenseperti dibawah ini bisa ditangani dengan menerapkan protokoltwo phase locking2PLConnolly and Beg,2002: a. The Lost Update Problem, merupakan kejadian dimana data transaksi yang telah diupdate dibaca oleh transaksi yang lain kemudian di update lagi. b. The Uncommited Dependency Dirty Read Problem, merupakan kejadian dimana data transaksi yang dilakukan dibaca oleh transaksi yang lain, lalu dibatalkan tanpa adanya penyimpanan terlebih dahulu oleh transaksi yang pertama sehingga menyebabkan data yang tidak benar. c. The Incosistent Analysis Problem, masalah ini timbul karena data diakses oleh 2 transaksi yang bersamaan, transaksi yang pertama melakukan perubahan dan transaksi yang kedua melakukan analisis sehingga data yang diperoleh menjadi tidak konsisten.

2.2.5.3. Contoh Penangangan Masalah Concurrency Control

Di bawah ini merupakan contoh-contoh untuk menangani masalah concurrency control : Gambar 2. 5Mencegah Lost Update Problem menggunakan 2PLConnolly and Beg, 2002 Keterangan : Untuk mencegah terjadinya masalah hilangnya data yang diubah, maka : pertama-tama T2 meminta exclusive lock pada balₓ Setelah itu T2 dapat melakukanproses baca nilai balₓ, menambahnya dengan nilai 100, dan menuliskan nilai baru dari balₓ tersebut kedalam basis data. Saat T1 memulai transaksi, T1 juga meminta suatu exclusivelock pada balₓ, namun karena balₓ sedang berada dalam posisiexclusive lock oleh T2, maka permintaan read balₓ tidak segera diberikan kepada T1 dan T1 harus menunggu sampai lock dilepaskan oleh T2. Hal ini terjadi saat t2 melaksanakan operasi commit atau unlock bal x Connolly and Beg, 2002. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI Gambar 2. 6Mencegah Uncommited Dependency Problem using 2PLConnolly and Beg,2002 Keterangan : Untuk mencegah terjadinya masalah ketergantungan transaksi yang belum dilaksanakan, maka : pertama-tama T4 meminta suatu exclusive lock pada balx. Setelah itu, T4 dapat melakukan proses baca nilai balx dari dalam basis data, menambahnya dengan nilai 100, dan menuliskan nilai baru balx tersebut ke dalam basis data. Rollback dieksekusi, peng-update-an pada transaksi T4 tidak jadi dilakukan dan nilai dalam basis data dikembalikan ke kondisi semula yaitu 100. Saat T3 memulai transaksi, T3 juga meminta suatu exclusive lock pada balx, namun karena balx sedang dalam posisi exclusive lock oleh T4 maka permintaan tersebut tidak segera diberikan kepada T3, dan T3 harus menunggu sampai lock dilepaskan oleh T4. Hal ini terjadi saat T4 melakukan operasi rollback atau unlock balx, barulah T3 dapat melakukan proses baca nilai balx Connolly and Beg, 2002. Gambar 2. 7Mencegah Inconsistent Analysis Problem using 2PLConnolly and Beg,2002 Keterangan : Untuk mencegah terjadinya masalah analisis yang tidak konsisten , maka : T5 mengawali meminta suatu exclusive lock pada balx. T5 juga meminta suatu exclusive lock pada baly. Saat T6 ingin membaca nilai balx, ia harus menunggu sampai lock dilepaskan oleh T5. Hal ini terjadi saat T5 melaksanakan operasi commit atau unlockbalx, barulah T6 dapat membaca nilai balx Connolly and Beg, 2002 . Untuk mengatasi masalah di atas, mesin basis data Oracle mempunyai kemampuan mendukung transaksi dengan metode 2PL yang dapat menjamin konsistensi data .

2.2.5.4. Perintah For Update

Perintah for update yang digunakan untuk melakukan penguncian agar menjamin konsistensi. Untuk menjamin konsistensi data, terutama dalam kasus ketika ada banyak sesi terhadap suatu database yang sama, sebaiknya baris-baris record dalam database yang akan di-update atau dihapus, dikunci terlebih dahulu. Penguncian record dalam database dapat dilakukan dengan perintah for update dalam kueriOracleInc, 2004. Sintak yang digunakan :

2.3. Use Case Diagram

Pembuatan use case diagram yang sesungguhnya merupakan deskripsi peringkat tinggi bagaimana perangkat lunak aplikasi akan digunakan oleh penggunanya. Selanjutnya use case diagram tidak hanya sangat penting pada tahap analisis, tetapi juga sangat penting untuk perancangan design, untuk mencari mencoba menemukan kelas-kelas yang terlibat dalam aplikasi, dan untuk melakukan pengujian testing. Membuat use case diagram yang komprehensif merupakan hal yang sangat penting dilakukan pada tahap analisis. Dengan menggunakan usecase diagram, akan didapatkan banyak informasi yang sangat penting yang berkaitan dengan aturan-aturan bisnis yang coba kita tangkap. Dalam hal ini, setiap objek yang berinteraksi dengan sistemperangkat lunak misalnya orang, suatu perangkat keras, sistem lain, dan sebagainya merupakan actor untuk sistem perangkat lunak, use case merupakan deskripsi lengkap tentang bagaimana sistemperangkat lunak berperilaku untk para aktornya. Dengan demikian use case diagram merupakan deskripsi lengkap tentang interaksi yang terjadi antara para actor dengan sistemperangkat lunak yang sedang dikembangkan. Saat akan mengembangkan use case diagram, hal yang pertama kali dilakukan adalah mengenali actor untuk sistemaplikasi yang sedang dikembangkan. Dalam hal ini, ada beberapa karakteristik untuk para actor, yaitu actor ada di luar sistem yang sedang dikembangkan dan actor berinteraksi dengan sistem yang sedang dikembangkan Adi Nugroho, 2009. Rosa A. S dan M. Salahuddin 2013 mengungkapkan bahwa Use case atau diagram use case merupakan pemodelan untuk kelakuan behavior sistem informasi yang akan dibuat. include Notasi yang digunakan dalam Use Caseadalah seperti yang disajikan dalam tabel 4.1 berikut ini: Tabel 2. 1 Notasi Use Case No Notasi Keterangan 1 Gambar di samping adalah notasi untuk aktor. Aktor menggambarkan segala pengguna software aplikasi user. 2 Gambar di samping adalah notasi untuk use case. Use case menjelaskan urutan kegiatan yang dilakukan actor dan sistem untuk mencapai tujuan tertentu. 3 Gambar di samping adalah notasi untuk interaction. Interaction digunakan untuk menunjukkan baik aliran pesan atau informasi antar objek. 4 Gambar di samping adalah notasi untuk package. Package adalah mekanisme pengelompokan yang digunakan untuk menandakan pengelompokan elemen- elemen model. 5 Extend adalah Relasi usecase tambahan kesebuah usecase dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu . 6 Include adalah relasi usecase tambahan ke sebuah usecase dimana use case yang ditambahkanmemerlukan usecase ini untuk menjalankan fungsinya.

2.4. Class Diagram