BAB 5 ANALISIS HASIL IMPLEMENTASI
2.7. Pengembangan Perangkat Lunak Berorientasi Objek
2.7.1. Analisis dan Desain berorientasi objek
2.7.1.2. Object Oriented Design (OOD)
Menurut Whitten (2004), Object Oriented Design merupakan pendekatan yang digunakan untuk menspesifikasikan solusi perangkat lunak dalam bentuk kolaborasi objek, atribut, dan fungsinya. Tahap ini merupakan
kelanjutan dari proses object oriented analysis. Dalam tahap ini terdapat tiga jenis objek, yaitu :
1. Entity Object, merupakan sebuah objek yang berisi informasi yang
berhubungan dengan bisnis dan secara khusus bersifat persisten dan disimpan dalam database.
Simbol Entity Object :
Gambar 2.1. Simbol Entity Object
2. Interface Object, merupakan sebuah objek yang disediakan untuk
menggambarkan bagaimana sebuah aktor akan berkomunikasi dengan sistem. Contoh : sebuah window, dialog box. Interface object
mempunyai dua tanggung jawab, yaitu :
a. Menterjemahkan input user ke dalam informasi yang dapat dimengerti oleh sistem dan sistem dapat menggunakannya untuk memproses kejadian bisnis.
b. Membawa data yang berhubungan ke dalam suatu kejadian bisnis dan menterjemahkan data untuk dipresentasikan secara tepat kepada user.
Simbol Interface Object :
3. Control Object, merupakan sebuah objek yang berisi aplikasi logik yang bukan merupakan tanggung jawab entity object. Control object akan mengkoordinasikan message antar interface object dan entity object dan mengurutkan message yang terjadi.
Simbol Control Object :
Gambar 2.3. Simbol Control Object
2.7.2. UML ( Unified Modelling Language )
Menurut Whitten (2004), UML merupakan konfensi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem software
yang terkait dengan objek. UML tidak menentukan sebuah metode untuk mengembangkan sistem tetapi hanya berupa notasi.
UML memberikan sembilan diagram yang dikelompokan ke dalam lima group dengan sudut pandang yang berbeda terhadap sebuah model sistem. Berikut adalah pengelompokannya :
1. USE-CASE MODEL DIAGRAM
Use case diagram adalah sekumpulan diagram yang menggambarkan
interaksi antara sistem dan eksternal sistem dan user. Use case secara
otomatis maupun manual dengan tujuan untuk melengkapi bisnis tunggal, misalnya login ke sistem, manambah data barang, menghapus data barang, dan sebagainya. Actor adalah segala sesuatu yang dibutuhkan untuk berinteraksi dengan sistem untuk mengubah informasi.
2. STATIC STRUCTURE DIAGRAM
Ada 2 diagram yang tergolong dalam kelompok ini yaitu:
a. Class diagram menggambarkan struktur dari objek sistem. Class
diagram memperlihatkan class dalam sistem beserta relasi antara class.
b. Object diagram sama dengan class diagram, tetapi lebih dari pada
menggambarkan class, object diagram memodelkan object instance
secara aktual, memperlihatkan nilai tertentu dari atribut instance. Diagram ini tidak sering digunakan seperti class diagram tetapi digunakan untuk membantu developer memahami struktur dari sistem.
3. INTERACTION DIGARAM
Interaction diagram memodelkan sebuah interaksi, yang berisi sekumpulan
objek dan relasinya, dan juga message yang dikirim antara objek dan relasinya. Diagram ini memodelkan dinamic behaviour dari sistem. Ada dua diagram yaitu:
a. Sequence diagram menjelaskan interaksi objek yang disusun dalam
case. Sequence diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu didalam use case.
b. Collaboration diagram sama dengan sequence diagram tetapi tidak
berfokus pada timing atau ‘sequence’ dari message. Menggambarkan interkasi (collaboration) antar objek dalam format network. Antara
sequence diagram dan collaboration diagram bersifat isomorphic, yang
berarti dapat melakukan transformasi satu bentuk ke bentuk yang lainnya.
4. STATE DIAGRAM
State diagram terdiri dari dua diagram yaitu:
a. Statechart diagram digunakan untuk model dinamic behaviour dari
particular object.
b. Activity diagram digunakan untuk menggambarkan aliran sequen dari
aktifitas dari proses bisnis atau sebuah use case.
5. IMPLEMENTATION DIAGRAM
Implementation diagram terdiri dari dua diagram:
a. Component diagram digunakan untuk menggambarkan organisasi dan
ketergantungan dari komponen sistem software. Component diagram
dapat digunakan utnuk memperlihatkan bagaimana kode program dibagi ke dalam modul-modul (atau komponen).
b. Deployment diagram menggambarkan arsitektur secara fisik dalam
Menggambarkan konfigurasi dari run-time software component,
processor, dan peralatan lain yang membentuk arsitektur sistem.
2.8. Java
Java merupakan pemrograman yang dikembangkan oleh Sun Microsystem dan dirancang sedemikian rupa agar program yang dibuat menggunakan Java dapat berjalan pada semua platform. Java merupakan pemrograman berorientasi objek (OOP), dengan kata lain rancangan Java merupakan suatu teknik yang memusatkan rancangan pada data (objek) dan interface (Didik D.P, 2004).
Menurut Indrajani dan Martin (2004), dibandingkan dengan bahasa pemrograman yang lain, Java memiliki beberapa kelebihan, yaitu :
1. Bersifat portable dan platform independent
Program Java dapat dieksekusi di platform manapun tanpa memerlukan kompilasi ulang (portable) asalkan Java Virtual Machine untuk platform tersebut tersedia.
2. Memiliki garbage collection yang dapat mendealokasi memori secara otomatis.
Walaupun kelihatannya lebih sebagai suatu kekurangan, namun banyak para ahli yang mengakui bahasa konsep pewarisan berganda lebih banyak
mengakibatkan kerugian daripada keuntungan. 4. Mengurangi pointer aritmetik
Penggunaan pointer pada Java telah dibatasi dengan menggunakan reference.
5. Memiliki array sejati
6. Mengurangi kerancuan antara pemberian nilai pada statemen kondisional. Contoh penggunaan tanda ‘=’ dengan ‘= =’ pada kondisi if.
Menurut Indrajani dan Martin (2004), ciri khas dari Java adalah : 1. Berorientasi Objek
Java telah menerapkan konsep pemrograman berorientasi objek yang modern dalam implementasinya.
2. Robust
Java mendorong pemrograman yang bebas dari kesalahan dengan bersifat
strongly typed dan memiliki run-time checking.
3. Portable
Program Java dapat dieksekusi di platform manapun selama tersedia Java Virtual Machine untuk platform tersebut.
Java mendukung penggunaan multithreading yang telah terintegrasi secara langsung dalam bahasa Java.
5. Dinamis
Program Java dapat melakukan suatu tindakan yang ditentukan pada saat eksekusi program dan bukan pada saat kompilasi.
6. Sederhana
Java menggunakan bahasa yang sederhana dan mudah dipelajari. 7. Terdistribusi
Java didesain untuk berjalan pada lingkungan yang terdistribusi seperti halnya internet.
8. Aman
Aplikasi yang dibuat dengan bahasa Java dapat dipastikan keamanannya terutama untuk aplikasi internet.
9. Netral secara arsitektur
Java tidak terikat pada suatu mesin atau sistem operasi tertentu. 10.Interpreted
Aplikasi Java dapat dieksekusi pada platform yang berbeda-beda dengan melakukan interpretasi pada bytecode.
2.9. JDBC
Menurut Didik D.P (2004), JDBC merupakan API Java Database
Connectivity dan merupakan bagian dari Java Enterprise APIs dari JavaSoft.
Class JDBC terdapat di dalam paket java.sql, dan semua program Java
menggunakan method serta objek dari paket tersebut untuk membaca serta menulis data source.
Pada prinsipnya JDBC memiliki DriverManager yang berfungsi untuk mengatur driver serta menampilkan daftar driver aktif pada program aplikasi. JDBC memungkinkan kita untuk membuat aplikasi dengan Java dalam mengakses database server, baik itu secara lokal (stand-alone) maupun secara
remote. JDBC API memudahkan untuk mengirimkan perintah SQL ke sistem
database relasional dan mendukung bermacam-macam perintah SQL.
Dengan JDBC dapat dibuat program dengan portabilitas tinggi dan cukup mudah karena secara umum pemrograman JDBC tidak memiliki perbedaan kode yang berarti untuk pemrograman pada database tertentu dengan
database lain. Perbedaan utama pada kode hanyalah kode yang mendefinisikan
driver dari database server serta perintah SQL tertentu yang mungkin memiliki
perbedaan sintak atau perintah SQL khusus yang hanya terdapat pada database
tertentu. Pemrograman JDBC memiliki struktur seperti melakukan koneksi, membuat object statement, mengeksekusi perintah SQL, mendapatkan hasil
2.10. MySQL
MySQL (My Structure Query Language) adalah sebuah program pembuat database yang bersifat open source dan merupakan program pengakses database yang bersifat jaringan sehingga dapat digunakan untuk aplikasi multi user (banyak pengguna).
MySQL menggunakan bahasa Query standar yang dimiliki oleh SQL
(Stucture Query Language). SQL adalah suatu bahasa permintaan yang
terstruktur, yang telah distandarkan untuk semua program pengakses database seperti Oracle, Posgres SQL, SQL Server, dan lain-lain. SQL dibagi menjadi dua bentuk perintah, yaitu :
1. DDL (Data Manipulation Language)
DDL (Data Manipulation Language) adalah suatu bentuk bahasa yang digunakan untuk melakukan pendefinisian data, adapun perintah yang digunakan adalah:
a. CREATE
Perintah ini digunakan untuk membuat tabel dan database. b. DROP :
Perintah ini digunakan menghapus tabel maupun database. c. ALTER :
Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat, baik menambah field (add), mengganti nama field (change) ataupun menamakan kembali (rename), serta menghapus field (drop).
2. DML (Data Manipulation Language)
DML (Data Manipulation Language) adalah suatu bahasa yang digunakan untuk memanipulasi data, adapun query yang digunakan adalah:
a. SELECT
Perintah ini digunakan untuk melihat data dalam tabel. b. INSERT
Perintah ini digunakan untuk menambah data ke suatu tabel. c. UPDATE
Perintah ini digunakan untuk mengubah suatu data dalam suatu tabel. d. DELETE
Perintah ini digunakan untuk menghapus data dalam suatu tabel Beberapa kemampuan MySQL antara lain :
1. MySQL bisa diakses dan dimanipulasi dari sejumlah bahasa pemrograman terkenal, diantaranya C, C++, Java, Perl, Phyton, dan PHP.
2. MySQL ditulis dalam C/C++ dan dioptimasi untuk platform Unix dan Win32.
3. MySQL mendukung tipe data yang umum digunakan termasuk FLOAT, DOUBLE, CHARVARCHAR, TEXT, BLOB, DATE, SET dan ENUM. 4. MySQL mendukung subset fungsi query dan pengelompokan lanjut,
termasuk diantaranya GROUP BY dan ORDER BY.
5. MySQL memungkinkan alokasi password tiap server. Password yang melalui MySQL untuk melakukan authentifikasi terenkripsi.
6. MySQL mendukung berbagai macam metode koneksi, seperti TCP/IP, soket Unix, dan koneksi untuk Windows NT/2000.
7. MySQL bisa diperoleh secara gratis termasuk aplikasi-aplikasi lain yang diperlukan dalam memakai MySQL.