7
BAB II LANDASAN TEORI 2.1
Teori - Teori Umum Untuk mendukung penulisan tugas akhir ini, diperlukan beberapa teori-teori
umum yang berkaitan dengan topik sebagai dasar serta sebagai referensi dan penjelasan mengenai teori-teori yang berkaitan dengan sistem informasi dan database. Berikut adalah teori-teori umum yang sering digunakan. 2.1.1
Data Data merupakan suatu fakta yang diperoleh dari beberapa sumber, yang pada
akhirnya akan diolah dan memberikan suatu informasi yang berguna bagi perusahaan maupun organisasi dalam proses bisnisnya. Data adalah fakta mentah atau deskripsi dasar dari benda, peristiwa, aktivitas dan transaksi yang didapatkan, direkam, disimpan, diklasifikasi tetapi belum terorganisir untuk menyampaikan suatu arti spesifik. Data terdiri dari fakta-fakta, dan gambaran mentah yang akan diproses menjadi informasi. Data penting karena pengguna memerlukan data untuk membuat informasi yang berguna. Dari pendapat para ahli diatas dapat disimpulkan bahwa Data adalah fakta-fakta mentah dari suatu benda, peristiwa, aktivitas, dan transaksi yang didapatkan, direkam, disimpan, dan diklasifikasi yang kemudian akan di proses menjadi informasi yang berguna bagi pembacanya. 2.1.2
Database Kecepatan merupakan kunci penting dalam proses bisnis, perolehan informasi
yang cepat dapat di wujudkan dengan penggunaan database. Database adalah sebuah kumpulan elemen data yang berhubungan secara logikal. Database adalah koleksi data logis, deskripsi dan desain dari data tersebut untuk memenuhi kebutuhan informasi dari suatu perusahaan. Dari beberapa pendapat ahli di atas dapat disimpulkan bahwa database adalah koleksi atau kumpulan data yang secara logis disimpan secara sistematik sehingga dapat diperiksa menggunakan suatu program untuk memperoleh informasi yang dibutuhkan.
8
2.1.3
Database Management System (DBMS) DBMS adalah sebuah sistem perangkat lunak yang memungkinkan user untuk
mendefinisikan, menciptakan, memelihara dan mengontrol akses terhadap sistem basis data. Komponen-komponen DBMS , di antaranya: 1. Hardware DBMS dan aplikasi membutuhkan Hardware untuk berjalan. 2. Software Komponen software terdiri dari perangkat lunak DBMS itu sendiri dan program aplikasi, bersama dengna sistem operasi, meliputi perangkat lunak jaringan jika digunakan dalam jaringan. 3. Data Merupakan komponen yang paling penting dalam lingkungan DBMS. 4. Procedure Mengacu pada instruksi dan aturan yang menentukan desain dan kegunaan dari basis data. 5. People Komponen terakhir adalah orang yang terlibat dengan sistem yang dibangun tersebut.
Dari kutipan diatas dapat disimpulkan bahwa DBMS merupakan suatu sistem perangkat lunak yang terdiri dari beberapa komponen pendukung dimana sistem tersebut mampu untuk membantu user untuk menciptakan, memelihara, dan mengontrol akses terhadap sistem basis data.
2.1.4
Informasi Informasi adalah data yang telah diolah menjadi sebuah bentuk yang berarti bagi
penerimanya dan bermanfaat dalam pengambilan keputusan saat ini atau mendatang.
2.1.5
Pengertian Sistem Informasi Definisi sistem informasi (I Agus Putu , 2014) adalah : “Sistem informasi adalah
kombinasi dari user, hardware, software, jaringan komputer dan sumber daya data yang mengumpulkan,mengubah dan menyebarkan informasi dalam sebuah organisasi”.
9
2.1.6
Decision Support System (DSS) Decision Support System (DSS) atau sistem pendukung keputusan adalah
serangkaian kelas tertentu dari sistem informasi terkomputerisasi yang mendukung kegiatan pengambilan keputusan bisnis dan organisasi. Suatu DSS yang dirancang dengan benar adalah suatu system berbasis perangkat lunak interaktif yang dimaksudkan untuk membantu para pengambil keputusan mengkompilasi informasi yang berguna dari data mentah, dokumen, pengetahuan pribadi, dan/atau model bisnis untuk mengidentifikasikan dan memecahkan berbagai masalah dan mengambil keputusan. Sistem pendukung keputusan atau DSS digunakan untuk mengumpulkan data, menganalisa dan membentuk data yang dikoleksi, dan mengambil keputusan yang benar atau membangun strategi dari analisis, tidak pengaruh terhadap komputer, basis data atau manusia penggunanya. Informasi yang biasanya dikumpulkan dengan menggunakan aplikasi pendukung keputusan akan melakukan:
Mengakses semua asset informasi terkini, termasuk data legasi dan relasional,
kompulan data, gudang data, dan kumpulan jumlah besar data.
Angka-angka penjualan antara satu periode dengan periode lainnya.
Angka-angka pendapatan yang diperkirakan, berdasarkan pada asumsi penjualan
produk baru.
Konsekuensi pilihan-pilihan pengambilan keputusan yang berbeda, dengan
pengalaman dalam suatu konteks yang dirinci ulang.
2.1.7 Data Warehouse Definisi data warehouse adalah kumpulan data yang berorientasi subjek, terintegrasi, tidak dapat di update, memiliki dimensi waktu, yang digunakan untuk mendukung proses manajemen pengambilan keputusan dan kecerdasan bisnis. Jadi dengan definisi tersebut, maka data warehouse memiliki karakteristik, sebagai berikut : 1.
Berorientasi subjek Data diorganisasi oleh subjek detail (misal berdasarkan pelanggan, jenis
kebijakan, dan klaim perusahaan asuransi), yang berisi informasi yang relevan untuk mendukung keputusan. Data warehouse berbeda dengan database operasional. Pada umumnya, database operasional mempunyai sebuah orientasi produk untuk menangani transaksi yang memperbarui database.
10
2.
Terintegrasi Data pada sumber berbeda dapat di enkode dengan cara yang berbeda. Sebagai
contoh, data jenis kelamin dapat di enkode sebagai 0 dan 1 di satu tempat dan “m” dan “f” di tempat lain. Di dalam data warehouse, enkode tersebut dibersihkan atau dibuat ke dalam satu format sehingga mereka distandarisasi dan konsisten. Banyak organisasi menggunakan terminologi yang sama untuk data dari jenis yang berbeda. Sebagai contoh, “penjualan bersih” bisa berarti komisi bersih untuk departemen pemasaran, tetapi retur penjualan kotor bagi departemen akuntansi. Data yang terintegrasi mengatasi inkonsistensi dan menyediakan istilah yang seragam di organisasi keseluruhan, juga format praktis dan data yang bervariasi. 3.
Time-variant Data tidak menyediakan status saat ini. Mereka disimpan untuk lima atau sepuluh
tahun atau lebih dan digunakan untuk tren, peramalan, dan perbandingan. Ada kualitas sementara pada sebuah data warehouse. Waktu adalah dimensi penting yang harus didukung oleh semua data warehouse. Data untuk analisis dari berbagai sumber berisi berbagai poin waktu (misal harian, mingguan, bulanan). 4.
Nonvolatile Sekali dimasukkan ke dalam data warehouse, data adalah read only, mereka
tidak bisa diubah atau dibarui. Data usang dibuang, dan perubahan direkam sebagai data baru. Ini memungkinkan data warehouse untuk disesuaikan hampir secara ekslusif untuk akses data. Sebagai contoh, sejumlah besar ruang kosong (untuk pertumbuhan data) umumnya tidak diperlukan dan reorganisasi database dapat dijadwalkan bersama dengan operasi pengisian sebuah data warehouse. Data warehouse sebenarnya dapat dianggap sebagai suatu salinan data transaksional/OLTP (On-line Transaction Processing) yang terstruktur untuk kebutuhan analisis, reporting, dan data mining. Oleh karena itu, sistem transaksi tidak pernah mengupdate data yang berada di dalam data warehouse melainkan hanya menambahkan data ke dalam data warehouse tersebut. Data berada dalam sistem sumbernya, bermigrasi ke sebuah gudang data relasional, kemudian berubah menjadi batu cubes untuk dikonsumsi oleh pengguna akhir. Setiap bagian dari proses ini mengandung kompleksitas dan proses yang sangat mempengaruhi kegunaan dan penerimaan akhir dari gudang oleh pengguna bisnis.
11
2.1.8
On-Line Analitical Processing (OLAP) Konsep OLAP pertama kali diusulkan oleh E.F. Codd, untuk mempresentasikan
model data multidimensional. OLAP (On-Line Analytical Processing) adalah teknologi yang memproses data di dalam data warehouse dalam struktur multidimensi, menyediakan jawaban yang cepat untuk query analisis yang kompleks. Tujuan dari OLAP adalah mengordinisir sejumlah data yang besar, agar bisa dianalisa dan dievaluasi dengan cepat menggunakan sarana online seperti misalnya Microsoft PivotTable serta representasi grafik. Sistem OLAP menyediakan kecepatan dan fleksibilitas untuk mendukung analisa dalam waktu nyata. Data warehouse dan OLAP (On-line Analytical Processing) menyediakan kunci untuk memecahkan masalah yang kompleks, karena secara umum mampu menyediakan data yang terkonsolidasi dan konsisten, berorientasi pada topic tertentu, bersifat historis dan hanya bisa dibaca (read only). Semakin kompleksnya pengembangan sistem – sistem informasi pemrosesan transaksional yang berevolusi ke arah On-Line Transactional Processing (OLTP) System, menimbulkan konsekuensi semakin rumit dan semakin banyak data maupun informasi yang harus dianalisis oleh pihak manajemen.Untuk itu dikembangkan suatu metode pengelolaan data dalam skala besar dengan membuat suatu data warehouse. Data warehouse, semua data disimpan dan diintegrasikan, termasuk riwayat data (historical data), untuk dimanfaatkan sebagai dukungan penganalisisan data dan pengambilan keputusan nantinya. Cakupan sistem penunjang keputusan pun semakin berkembang untuk menyesuaikan kebutuhan analisis informasi yang juga semakin kompleks. Pada pertengahan dekade 1990, bersamaan dengan adopsi besar - besaran data mendukung pada sejumlah perusahaan besar dunia, dikenalkan suatu teknik untuk penunjang keputusan yaitu OLAP, On-Line Analytical Processing. On-Line Analytical Processing (OLAP) menawarkan metode analisis data yang kompleks dan terkustomisasi yang disesuaikan dengan kebutuhan akan informasi oleh para analisis maupun eksekutif. Data yang dikelola oleh OLAP berasal dari data warehouse. Pengguna OLAP umumnya menghasilkan OLAP dengan pola analisis seperti berikut ini : -
Meringkas dan mengumpulkan sejumlah besar data
-
Melakukan filtering, pengurutan, dan memberikan peringkat (rangking)
-
Membandingkan beberapa set dari data
-
Membuat sketsa / bagan / diagram
12
-
Menganalisis dan menemukan pola dari data
-
Menganalisis kecenderungan data Pola – pola tersebut kemudian dijadikan acuan oleh pengembang perangkat lunak
pendukung
pengambilan
keputusan,
termasuk
pengembang
database,
untuk
mengembangkan sistem berbasis OLAP. Fokus pengembangan OLAP-tools tersebut adalah untuk menyediakan analitis multidimensional dari data dengan berbagai variasi penyajian secara interaktif. OLAP-tools dirancang untuk bekerja dengan data mentah hierarchical,
lalu
mengelompokkanya
dan
meringkasnya
ke
dalam
bentuk
multidimensional . Beberapa RDBMS terkemuka seperti Microsoft SQL Server dan Oracle telah menyatakan dukungan terhadap OLAP maupun data warehouse. Database engine yang OLAP-capable menawarkan fitur built-in berupa perintah – perintah maupun function khusus untuk menangani OLAP, seperti grouping, aggregating, summarizing, filtering, sorting, rangking, hingga membuat pivot tables. OLAP sering kali disebut data multidimensional, yaitu : data yang dapat dimodelkan sebagai atribut dimensi dan atribut ukuran. OLAP dapat digunakan untuk melakukan : - Konsolidasi adalah melibatkan pengelompokan data. - Drilldown adalah suatu bentuk yang merupakan kebalikan dari konsolidasi, yang memungkinkan data yang ringkas dijabarkan menjadi data yang lebih detail. - Slicing and dicing (atau dikenal dengan istilah pivoting) adalah menjabarkan pada kemampuan untuk melihat data dari berbagai sudut pandang.
2.1.9
CUBE
Cube adalah bagian utama dari OLAP. Cube berisi kumpulan banyak data yang telah disatukan (di agregasi) sehingga mempercepat hasil query. Misal, data penjualan yang yang telah disatukan dengan data periode waktu dan jenis barang, akan mempercepat hasil query untuk menampilkan data penjualan per minggu, atau per bulan dan berdasarkan jenis barang tertentu.
Berikut ini terdapat bagian dari cube, yaitu :
- Sarage Location Lokasi Penyimpanan cube data dapat disimpan di sejumlah server analisis menggunakan didistribusikan baru, dipartisi fasilitas kubus. Hal ini juga memungkinkan untuk
13
penyebaran sejumlah cube di server berbagai analisis dan akses mereka semua hanya dengan menghubungkan kesalah satu server. Hal ini terkait teknologi cube memungkinkan keuntungan yang terbesar adalah untuk mengurangi biaya penyimpanan karena sekarang masing – masing cube perlu disimpan hanya sekali (pada server tunggal). - Action Konsep action diperkenalkan sebelumnya, action adalah set operasi yang telah didefinisikan di muka. Sebagai pengguna, dapat memanggil cube atau hanya digunakan untuk keperluan analitis. Action bahkan dapat melakukan tugas eksternal seperti mengirimkan parameter ke aplikasi. Sebagai contoh, seorang analisis melihat data penjualan di berbagai kota untuk beberapa produk. Menyadari bahwa penjualan produk tertentu yang rendah dalam kota tertentu, analisis mengambil tindakan diskon, yang menyebabkan harga perubahan terjadi dalam sistem Penjualan dan Merchandising (barang dagangan). - Dimension Pada umumnya, dimension adalah bagian dari Cube yang menggambarkan suatu kategori data, yang digunakan sebagai dasar untuk merangkum data. Misalnya : dimensi waktu atau area. Biasanya pula, dimension memiliki hirarki atau jenjang atau tingkatan. Misal dimensi waktu memiliki tingkatan berupa : tahun, bulan, minggu, hari, dan sebagainya. Dimensi area, seperti provinsi, kabupaten, kecamatan dan desa. Tabel yang digunakan sebagai dimension disebut Dimension Table. - Measure Measure adalah bagian dari cube yang berisi kumpulan data yang akan dirangkum, seperti data jumlah penduduk laki – laki, jumlah penduduk perempuan, kepadatan penduduk, dan lain – lain. Pada umumnya, data yang tergolong dalam measure ini tidak memiliki hirarki atau jenjang, dan dapat dilakukan proses matematis (penjumlahan, pengurangan, dan lain - lain). Tabel yang berisi data – data dalam kelompok Measure ini disebut dengan Fact Table.
2.1.10 Model Data Multidimensi Multidimensional Modeling (MDM) merupakan salah satu pendekatan dari data warehouse yang dibangun berdasarkan metode OLAP (On-Line Analytical Processing) yang memiliki konsep dimensi, hierarki, level, dan anggota. Agregat dari penerapan konsep tersebut dapat ditampilkan dengan star schema design. Dibandingkan dengan konsep database relasional, konsep multidimensional database dapat melakukan analisa dari berbagai sudut dimensi model data
14
multidimensional dirancang untuk memfasilitasi analisis dan bukan transaksi. Model ini umum digunakan dalam data warehouse karena bersifat memiliki konsep intuitif dari banyak dimensi atau perspektif pengukuran bisnis atau fakta - fakta. Contohnya untuk melihat penjualan dari perspektif pelanggan, produk dan waktu. OLAP adalah suatu sistem atau teknologi yang dirancang untuk mendukung proses analisis kompleks dalam rangka mengungkapkan kecenderungan pasar dan faktorfaktor penting dalam bisnis. OLAP ditandai dengan kemampuannya menaikkan atau menurunkan dimensi data sehingga pengguna dapat menggolongkan data sampai pada tingkat yang detail dan memperoleh pandangan yang lebih luas mengenai objek yang sedang dianalisis. OLAP juga sering disebut dengan analisis multidimensi. Di dalam permodelan sebuah data warehouse terdapat beberapa macam schema yakni meliputi: 1. Star schema : merupakan desain skema tabel dimana terdapat sebuah tabel fact dengan n-dimensi berada di tengah-tengah yang berfungsi sebagai penghubung tabel-tabel dimensi yang ada. Ada beberapa kelebihan dan kekurangan dari penggunaan star schema, yaitu untuk performansi sistem, star schema lebih dapat diandalkan dibandingkan dengan skema yang lainnya, hal ini dikarenakan penggunaan tingkat join antar tabel dimensi dan tabel fact yang sedikit sehingga memudahkan sistem untuk melakukan suatu operasi agregasi, sedangkan permasalahan yang timbul ialah munculnya redudansi di dalam tabel dimensi. Contohnya pada tabel dimensi lokasi, field city akan mengalami penulisan berulang pada jalan (street) yang berbeda.
2. Snowflake schema : skema ini menyerupai star schema yakni terdiri dari satu tabel fact yang berfungsi sebagai penghubung tabel-tabel dimensi. Namun dalam snowflake schema, ada tabel dimensi yang mengalami normalisasi ke dalam suatu tabel dimensi baru yang lebih kecil cakupannya. Contohnya tabel dimensi Location, pada field city_key mengalami normalisasi sehingga membentuk tabel city untuk menghindari redudansi. Kelemahan dari skema ini ialah join tabel yang banyak sehingga membuat sistem berjalan lambat.
3. Fact constellation schema : tipe skema ini berbeda dari dua tipe skema sebelumnya. Pada tipe skema ini memiliki banyak fact tabel yang menghubungkan banyak tabel dimensi. Skema ini juga disebut galaxy schema.
15
2.1.11 PHP Bahasa pemrograman PHP merupakan bahasa pemrograman untuk mebuat web yang bersifat server-side scripting. PHP memungkinkan kita untuk membuat halaman web yang bersifat dinamis. PHP dapat dijalankan pada berbagai macam Operating System (OS), misalnya Windows, Linux dan Mac OS. Selain Apache, PHP juga mendukung beberapa web server lain, misalnya Microsoft IIS, Caudium, PWS dan lainlain. Seperti pernah disinggung sebelumnya bahwa PHP dapat memanfaatkan database untuk menghasilkan halaman web yang dinamis. Sistem manajemen database yang sering digunakan bersama PHP adalah MySQL. Namun PHP juga mendukung system manajemen Database Oracle, Microsoft Acces, Interbase, d-Base, PostgreSQL dan sebagainya. Hingga kini PHP sudah berkembang hingga versi ke 5. PHP 5 mendukung penuh Object Oriented Programing(OOP), integrasi XML, mendukung semua ekstensi terbaru MySQL, pengembangan web services dengan SOAP dan REST, serta ratusan peningkatan kemampuan lainnya dibandingkan versi sebelumnya. Sama dengan web server lainnya PHP juga bersifat open source sehingga setiap orang dapat menggunakannya dengan gratis.
2.1.12 PhpMyAdmin
Gambar 2.1 Capture PhpMyAdmin
Pengelolaan database dengan MYSQL harus dilakukan dengan mengetikkan baris-baris perintah yang sesuai (command line) untuk setiap maksud tertentu. Jika anda ingin membuat database, ketikkan baris perintah yang sesuai untuk membuat database. Jika kita ingin menghapus tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel.
16
Banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola data base dalam MySQL, salah satunya adalah phpMyAdmin. Dengan phpMyAdmin kita dapat membuat tabel, mengisi data dan lain-lain dengan mudah tanpa harus hafal perintahnya. Untuk mengaktifkan phpMyAdmin langkah-langkahnya adalah : yang pertama setelah XAMP kita terinstall, kita harus mengaktifkan web server Apache dan MySQL dari control panel XAMPP. Yang kedua, jalankan browser kesayangan Anda (IE, Mozilla
Firefox
atau
Opera)
lalu
ketikkan
alamat
web
berikut
:
http://localhost/phpmyadmin/ pada address bar lalu tekan Enter. Langkah ketiga apabila telah nampak interface (tampilan antar muka) phpMyAdmin anda bisa memulainya dengan mengetikkan nama database, nama tabel dan seterusnya.
2.1.13 My SQL
Gambar 2.2 Capture My SQL Perkembangannya disebut SQL yang merupakan kepanjangan dari Structured Query Language. SQL merupakan bahasa terstruktur yang khusus digunakan untuk mengolah database. SQL pertama kali didefinisikan oleh American National Standards Institute (ANSI) pada tahun 1986. MySQL adalah sebuah sistem manajemen database yang bersifat open source. MySQL adalah pasangan serasi dari PHP. MySQL dibuat dan dikembangkan oleh MySQL AB yang berada di Swedia. MySQL dapat digunakan untuk mengelola database mulai dari yang kecil sampai dengan yang sangat besar. MySQL juga dapat menjalankan perintah-perintah Structured Query Language (SQL) untuk mengelola database-database yang ada di dalamnya. Hingga kini, MySQL sudah berkembang hingga versi 5. MySQL 5 sudah mendukung trigger untuk memudahkan pengelolaan tabel dalam database.
17
2.1.14 NetBeans IDE 8.0.2
Gambar 2.3 Capture NetBeans IDE 8.0.2
Netbeans adalah sebuah aplikasi Integrated Development Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang berjalan di atas swing. Swing merupakan sebuah teknologi Java untuk pengembangan aplikasi dekstop yang dapat berjalan pada berbagai macam platform seperti Windows, Linux, Mac OS X dan Solaris. Sebuah IDE merupakan lingkup pemrograman yang di integrasikan ke dalam suatu aplikasi perangkat lunak yang menyediakan Graphic User Interface (GUI), suatu kode editor atau text, suatu compiler dan suatu debugger. Netbeans juga dapat digunakan progammer untuk menulis, meng-compile, mencari kesalahan dan menyebarkan program netbeans yang ditulis dalam bahasa pemrograman java namun selain itu dapat juga mendukung bahasa pemrograman lainnya dan program ini pun bebas untuk digunakan dan untuk membuat professional dekstop, enterprise, web, and mobile applications dengan Java language, C/C++, dan dynamic languages seperti PHP, JavaScript, Groovy ,dan Ruby. NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra. Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama. Saat ini netbeans memiliki dua produk yaitu Platform Netbeans dan Netbeans IDE. Platform Netbeans merupakan framework yang dapat digunakan kembali (reusable) untuk menyederhanakan pengembangan aplikasi desktop dan platform NetBeans juga menawarkan layanan-layanan yang umum bagi aplikasi dekstop, mengijinkan pengembang untuk fokus ke logika yang spesifik pada aplikasi. Fitur fitur yang terdapat dalam netbeans antara lain: 1. Smart Code Completion: untuk mengusulkan nama variabel dari suatu tipe, melengkapi keyword dan mengusulkan tipe parameter dari sebuah method.
18
2. Bookmarking: fitur yang digunakan untuk menandai baris yang suatu saat hendak kita modifikasi. 3. Go to commands: fitur yang digunakan untuk jump ke deklarasi variabel, source code atau file yang ada pada project yang sama. 4. Code generator: jika kita menggunakan fitur ini kita dapat meng-generate constructor, setter and getter method dan yang lainnya. 5. Error stripe: fitur yang akan menandai baris yang error dengan memberi highlight merah
2.1.15 Metode Rekayasa Perangkat Lunak Model SDLC air terjun (waterfall) sering juga disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle). Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung (support). Berikut ini penjelasan dari model waterfall tersebut : 1. Analisis Kebutuhan Perangkat Lunak Proses pengumpulan kebutuhan dilakukan secara intensif untuk mespesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlu untuk didokumentasikan. 2. Desain Desain perangkat lunak adalah proses multi langkah yang fokus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasi antarmuka, dan prosedur pengodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya. Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan. 3. Pembuatan Kode Program Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain. 4. Pengujian Pengujian fokus pada perangkat lunak secara dari segi logic dan fungsional dan memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan.
19
5. Pendukung (support) atau Pemeliharaan (maintenance) Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan ketika sudah dikirimkan ke user. Perubahan bisa terjadi karena adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru.
2.1.16 Unified Modeling Language (UML) Definisi UML Unified Modeling Language (UML) adlaah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain system perangkat lunak, khususnya system yang dibangun menggunakan pemrograman berorientasi objek .
1) Use Case Diagram Merupakan deskripsi fungsi dari sebuah sistem dari perspektif pengguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi antara user(pengguna) sebuah sistem dengan sistem yang dipakai . Urutan langkah-langkah yang menerangkan antara pengguna dan sistem disebut scenario. Secara umum use case adalah pola perilaku sistem dan juga urutan transaksi yang berhubungan yang dilakukan satu aktor atau bisa di deskripsikan use case adalah abstraksi dari interaksi antara sistem dan actor. Use case diagram terdiri dari :
20
Tabel 2.1 Komponen – Komponen Dalam Use Case Diagram
NO
1
GAMBAR
NAMA
KETERANGAN
ACTOR
Menspesifikasikan himpunan peran yang pengguna mainkan ketika berinteraksi dengan use case.
2
Dependency
3
Generalization
4
Include
5
Extend
6
Association
7
System / Boundary
8
Use Case
Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri (independent) akan mempengaruhi elemen yang bergantung padanya elemen yang tidak mandiri (dependent).
Hubungan dimana objek anak (descendent) berbagi perilaku dan struktur data dari objek yang ada di atasnya objek induk (ancestor). Pemanggilan use case oleh use case lain atau untuk menggambarkan suatu use case termasuk di dalam use case lain (diharuskan). Digunakan ketika hendak menggambarkan variasi pada kondisi perilaku normal dan lebih banyak menggunakan kontrol form dan mendeklarasikan ekstension pada use case utama. Apa yang menghubungkan antara objek satu dengan objek yang lainnya. Menspesifikasikan paket yang menampilkan sistem secara terbatas.
Deskripsi dari urutan aksi – aksi yang ditampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu aktor.
(Sumber : Prabowo Pudjo, 2011) 2) Class Diagram Class diagram menggambarkan tipe-tipe dari obyek-obyek dalam sistem dan berbagai jenis hubungan atau relasi yang ada. Class diagram juga menunjukkan atribut-atribut dan
21
operasi-operasi dari sebuah kelas dan constraint yang berhubungan dengan obyek yang dikoneksikan. Terdapat beberapa komponen dari class diagram, yaitu : Tabel 2.2 Komponen – Komponen Dalam Class Diagram
NO
GAMBAR
NAMA
KETERANGAN
1
Generalization
Hubungan dimana objek anak (descendent) berbagi perilaku dan struktur data dari objek yang ada di atasnya objek induk (ancestor).
2
Aggregation
Upaya untuk menghindari asosiasi dengan lebih dari 2 objek.
Class Name
3
Class Atribute Type
Himpunan dari objek – objek yang berbagi atribut serta operasi yang sama.
Operation
4
Collaboration
5
Realization
6
Dependency
7
Association
Deskripsi dari urutan aksi – aksi yang ditampilkan sistem.
Operasi yang benar – benar dilakukan oleh suatu objek.
Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri (independent).
Apa yang menghubungkan antara objek satu dengan objek lainnya.
(Sumber : Prabowo Pudjo, 2011)
22
3) Activity Diagram Menggambarkan proses bisnis dan urutan aktivitas dalam sebuah proses. Dipakai pada business modeling untuk memperlihatkan urutan aktifitas proses bisnis. Sebuah activity diagram mempunyai: Tabel 2.3 Komponen – Komponen Dalam Activity Diagram
NO
GAMBAR
1
2
NAMA
KETERANGAN
Activity
Memperlihatkan bagaimana masing – masing kelas antarmuka saling berinteraksi satu sama lain.
Action
State dari sistem yang mencerminkan eksekusi dari suatu aksi.
3
Start State
Bagaimana objek dibentuk atau diawali
4
End State
Bagaimana objek dibentuk dan dihentikan
Menunjukan kegiatan apa berikutnya setelah suatu kegiatan
5
State Transition
6
Fork
Percabangan yang menunjukkan aliran pada Activity Diagram
7
Join
Penggabungan yang menjadi arah aliran pada Activity Diagram
8
Decision
9
Swimlane
Pilihan untuk mengambil keputusan
Untuk membatasi antar aktivitas tiap objek
(Sumber : Prabowo Pudjo, 2011) 4) Sequence Diagram Sequence diagram adalah adalah perancangan form/layar ( visual coding). Biasanya digunakan untuk tujuan analisa dan desain dan memfokuskan identifikasi metoda di
23
dalam sebuah sistem. Diagram ini secara khusus berasosiasi dengan use case diagram. Memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu di dalam use case. Tabel 2.4 Komponen – Komponen Dalam Sequence Diagram
NO
GAMBAR Nama_aktor
1
NAMA
KETERANGAN
Actor
-Orang, proses atau sistem lain yang berinteraksi dengan sistem informasi dan mendapat manfaat dari sistem. -Ditempatkan di bagian atas diagram
Object
-Berpartisipasi secara berurutan dengan mengirimkan atau menerima pesan -Ditempatkan di bagian atas diagram
Lifeline
-Menandakan kehidupan objek selama urutan -Diakhiri tanda x pada titik dimana kelas tidak lagi berinteraksi
atau
2
Objek:kelas
3
Activation 4
5
6
7
8
9
Pesan()
Message
<
>
Create
1:masukan
Input
1:keluaran
Output
Destroy()
Destroy
(Sumber : Prabowo Pudjo, 2011)
-Persegi panjang yang sempit panjang ditempatkan di atas sebuah garis hidup -Menandakan ketika suatu objek mengirim atau menerima pesan
Objek mengirim satu pesan ke objek lainnya
Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat
Menyatakan bahwa suatu objek mengirimkan masukan ke objek lainnya, arah panah mengarah ke objek yang dikirimi Objek / metode menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang diakhiri