Bab 2 Dasar Teori - · PDF fileekonomis dan mempunyai ... 1. Peralatan produksi (mesin...
Transcript of Bab 2 Dasar Teori - · PDF fileekonomis dan mempunyai ... 1. Peralatan produksi (mesin...
6
Bab 2
Dasar Teori
2.1 Sistem Produksi
Produksi secara umum merupakan suatu kegiatan untuk menciptakan atau
meningkatkan nilai suatu benda. Masukan pada proses produksi dapat berupa
faktor-faktor produksi seperti material, pekerja, peralatan produksi atau informasi
produksi. Keluaran yang dihasilkan berupa produk hasil proses produksi. Sistem
produksi secara umum ditunjukkan pada gambar 2.1 di bawah ini.
Gambar 2.1 Pengertian produksi secara umum [1]
Pengelolaan produksi bertujuan menaikkan setinggi mungkin nilai tambah
input proses produksi. Hal tersebut dapat dicapai dengan cara menghasilkan
produk yang sesuai dengan fungsinya, dalam waktu yang sesingkat mungkin dan
ongkos produksi semurah mungkin.
Perkembangan kebudayaan manusia dewasa ini telah memberikan
tantangan dalam berproduksi yaitu kebutuhan akan produk yang semakin beragam
dengan volume produksi yang semakin sedikit. Metode produksi yang efisien,
ekonomis dan mempunyai kehandalan tinggi sangat diperlukan. Hal itu dapat
dicapai dengan mengoptimalkan dalam pengendalian seluruh elemen-elemen
produksi. Elemen-elemen produksi tersebut:
1. Peralatan produksi (mesin produksi, perkakas potong, jig & fixture),
2. Manusia/operator,
3. Material/benda kerja atau produk yang dihasilkan oleh proses
produksi sebelumnya,
7
4. Informasi produksi (rancangan produk, rencana proses, rencana
operasi, kontrol operasi dan sebagainya).
Konsep inilah yang melahirkan sistem produksi. Sistem produksi adalah
sistem yang terdiri atas peralatan pemroses, manusia/operator, operasi produksi,
produk yang diproses, dan informasi tentang produksi. Sistem ini mulai
dikembangkan secara sistematis mulai tahun 1970. Sistem ini banyak
berhubungan dengan bidang lain, seperti teknik produksi, komputer dan teknik
pemrosesan informasi. Dalam perkembangannya, sistem produksi dituntut harus
mampu memenuhi kriteria sebagai berikut:
1. Sistem harus mampu mengantisipasi dengan cepat perubahan pasar,
perubahan produk dan perbaikan desain,
2. Sistem harus cepat memberikan respon terhadap adanya gangguan
dalam proses produksi seperti kerusakan peralatan produksi, interupsi
oleh pekerjaan berprioritas tinggi dan keterlambatan proses produksi,
3. Sistem harus memiliki sistem informasi yang terintegrasi sehingga
pertukaran dan pemrosesan data dapat dilakukan secara real time,
4. Perluasan sistem harus dapat dilakukan dengan mudah.
Oleh karena itu, pengembangan sistem produksi memerlukan
pengintegrasian antara proses produksi dengan sistem informasi produksi. Dengan
pengintegrasian ini diharapkan dapat tercipta sistem produksi yang bersifat
fleksibel dan pandai yang mampu memenuhi kriteria di atas.
2.2 Sistem Produksi Terdistribusi Mandiri
Perkembangan teknologi menuntut perusahaan untuk dapat bersaing di
dalam pasar global. Oleh karena itu, suatu sistem yang maju dan fleksibel sangat
diperlukan agar dapat mengantisipasi perubahan-perubahan yang tidak dapat
diramalkan sebelumnya.
Salah satu sistem produksi yang dikembangkan dalam upaya memenuhi
kriteria sistem produksi maju tersebut adalah Sistem Produksi Terdistribusi
Mandiri (SPTM). SPTM merupakan suatu sistem produksi dengan setiap elemen
produksinya merupakan elemen yang bersifat mandiri. Perencanaan dan
pengendalian produksinya dilakukan secara terdistribusi oleh masing-masing
8
elemen produksi. SPTM ini mampu menghindari terjadinya konflik di antara
elemen produksi mandirinya karena terdapat koordinasi antar elemen produksi
mandiri tersebut.
2.2.1 Konsep Sistem Produksi Terdistribusi Mandiri
Konsep SPTM dikembangkan berdasarkan peniruan terhadap tingkah laku
makhluk hidup yang selalu bersifat dinamis dan memiliki kemampuan beradaptasi
yang cepat terhadap perubahan yang terjadi di lingkungannya. Penerapannya
bertujuan agar sistem manufaktur dapat memenuhi tuntutan, antara lain:
a) Fleksibel (mampu beradaptasi terhadap perubahan),
b) Stabil terhadap gangguan,
c) Efisien dalam penggunaan sumber yang ada,
d) Mampu memberikan respon dengan cepat terhadap perubahan yang
terjadi.
Konsep dasar SPTM dapat dinyatakan sebagai berikut:
1. Pemberian otonomi pada elemen produksi
Setiap elemen produksi diberi otonomi untuk melakukan fungsi:
a) Monitoring yaitu mengetahui status dirinya,
b) Pengambilan keputusan yaitu menentukan proses produksi yang
paling sesuai dilakukan berdasarkan kriteria yang dimiliki status
dirinya,
c) Pengendalian yaitu mengendalikan dirinya dalam melakukan
operasi produksi,
d) Komunikasi yaitu meminta atau memberikan informasi kepada
elemen produksi lainnya tentang status dan hasil pengambilan
keputusan.
2. Pendistribusian tugas pada elemen produksi
Setiap penyelesaian masalah yang dihadapi oleh sistem produksi
dilakukan secara terdistribusi oleh elemen-elemen produksi yang masing-
masing mempunyai otonomi. SPTM merupakan sistem yang terdistribusi
sehingga tidak terdapat pusat pengendali yang secara langsung
mengendalikan aktivitas elemen produksi. Setiap elemen produksi akan
9
mendukung penyelesaian masalah produksi yang ada sesuai dengan
kemampuannya. Arsitektur pengambilan keputusan pada Sistem Produksi
Terdistribusi Mandiri dapat dilihat pada gambar 2.2 berikut ini:
Gambar 2.2 Contoh arsitektur pengambilan keputusan pada SPTM [2]
3. Pengkoordinasian hasil pengambilan keputusan
Setiap elemen produksi dapat melakukan pengambilan keputusan
secara mandiri sehingga diperlukan mekanisme negosiasi untuk
pengkoordinasian hasil pengambilan keputusan oleh masing-masing
elemen produksi. Hal ini dilakukan untuk menghindari adanya konflik dan
menciptakan hubungan yang harmonis di antara elemen produksi. Pada
gambar 2.3 terlihat bahwa diperlukan pengkoordinasian hasil pengambilan
keputusan yang telah dilakukan oleh setiap elemen produksi.
Gambar 2.3 Pengkoordinasian pengambilan keputusan SPTM [2]
10
2.2.2 Pemodelan Sistem Produksi Terdistribusi Mandiri
Pada sistem produksi yang mempunyai peralatan produksi dengan tingkat
otomasi tinggi, umumnya peralatan produksi yang ada dilengkapi dengan
pengendali (komputer) yang dapat melakukan perhitungan dan pengambilan
keputusan yang diperlukan bagi pengendalian produksi itu sendiri. Supaya konsep
SPTM dapat dijalankan, maka diperlukan suatu pemodelan objek riil elemen
produksi menjadi objek virtual di komputer. Objek virtual tersebut diberi sifat-
sifat yang sesuai dengan elemen produksi nyata sehingga aktivitas produksi dapat
berjalan seperti yang diharapkan.
Model yang diinginkan oleh konsep SPTM yaitu model yang memiliki
kedekatan sifat dengan objek riil sesuai dengan fungsi yang dikembangkan.
Metode pemodelan yang sesuai dengan model tersebut adalah metode pemodelan
berorientasi objek. Pemodelan SPTM dapat dilihat pada gambar 2.4 berikut ini.
Gambar 2.4 Pemodelan SPTM [2]
2.3 Konsep Feature
Ada banyak definisi tentang feature karena setiap peneliti
mendefinisikannya sesuai dengan prinsipnya masing-masing. Definisi tersebut
diantaranya sebagai berikut :
Menurut Basak dan Gulesin [3]: “Features are widely used for product
modeling. They play an important role for integrating CAD to CAM.
Therefore, they include both design and manufacturing information. Other
CAD simple elements such as line, circle, arc, primitives, etc. do not have
manufacturing information.”
11
Menurut Qian dan Dutta [4]: “Form feature is a specific geometric shape,
which carries engineering significance, such as a hole and a slot. A form
feature can be either a volume feature or a surface feature. The shape of
the volume must correspond to some specific engineering meaning.”
Menurut Case [5]: “Feature can thus be considered as a way of classifying
particular sets of geometric entities into higher level representations that
have some meaning for activities beyond those geometric specification.”
Menurut Requicha [6]: “A popular approach consists of defining features
as graph-structured patterns of faces and edges, then searching for these
patterns in the boundary of an object.”
Pada awalnya feature hanya dianggap sebagai suatu bentuk geometri
tertentu yang harus dibuang pada proses pemesinan. Namun seiring dengan
perkembangannya feature dianggap mampu memberikan informasi mengenai
karakteristik pada produk dalam melakukan proses pemesinan, pencekaman dan
pengukuran berdasarkan bentuk geometrinya. Hal inilah yang menjadi dasar
penggunaan konsep feature dalam pemodelan produk sebagai salah satu sarana
untuk pengintegrasian proses produksi dengan sistem informasi produksi pada
sistem produksi maju.
2.3.1 Syarat Penting Feature
Agar feature bermanfaat dalam rekayasa, menurut Cristianto [7] feature
harus memiliki persyaratan sebagai berikut:
1. Memiliki identitas
Setiap feature yang dibuat bersifat unik karena setiap feature memiliki
karakteristik informasi yang berbeda satu dengan yang lainnya. Oleh karena itu,
diperlukan suatu identitas yang dapat membedakan antara feature yang satu
dengan yang lainnya. Pemberian identitas tersebut sebaiknya berdasarkan
kesamaan bentuk, kesamaan operasi dan identifikasi yang sesuai dengan proses
pemesinan.
2. Memiliki parameter penentu posisi dan dimensi feature
Setiap feature pada suatu model produk memiliki parameter posisi,
orientasi dan dimensi feature. Parameter posisi menunjukkan posisi titik referensi
12
feature tersebut relatif terhadap titik referensi model produk. Parameter orientasi
feature ditentukan dengan menentukan posisi relatif feature terhadap model
produk pada sumbu koordinat kartesian tiga dimensi. Parameter dimensi feature
ditentukan dengan cara memberikan atribut yang menyatakan ukurannya.
Contohnya untuk feature dengan bentuk primitif balok memiliki atribut panjang,
lebar dan tinggi sedangkan feature dengan bentuk primitif silinder mempunyai
atribut diameter dan tinggi silinder.
3. Mampu diklasifikasikan
Klasifikasi feature dapat dilakukan dengan menentukan bentuk geometri
atau penampang feature. Klasifikasi feature selanjutnya dapat diturunkan dengan
menilai proses yang mungkin bagi pembuatannya. Menurut jenisnya feature
dapat digolongkan sebagai feature bentuk dan feature tepi.
Feature bentuk adalah feature yang memiliki kesesuaian bentuk dengan
sebuah bangun geometri yang telah dibakukan, selanjutnya dinamakan feature
primitif. Beberapa jenis feature primitif yang dianggap dapat memodelkan bagian
kerja ialah balok, silinder, segitiga, dan bentuk bebas. Feature bentuk ditunjukkan
pada gambar 2.5.
Gambar 2.5 Feature bentuk
Feature tepi adalah feature yang mewakili kondisi batas antara dua buah
feature yang berhubungan. Straight adalah feature tepi yang merupakan
perpotongan langsung antara dua buah feature bentuk. Dalam hal ini tidak ada
proses pemesinan khusus yang dilakukan untuk membentuk batas antar feature.
Chamfer adalah kondisi batas dua buah feature berupa bidang rata dengan
kemiringan tertentu terhadap feature bentuk. Rounded adalah kondisi batas dua
buah feature bentuk berupa permukaan lengkung yang mempunyai radius tertentu.
Gambar 2.6 menunjukkan feature tepi.
13
Gambar 2.6 Feature tepi
2.3.2 Metode Pembentukan Feature
Metode pembentukan feature ada dua macam, yaitu metode pengurangan
dan metode penambahan. Pada metode pengurangan, feature menyatakan
besarnya volume buang dan pada umumnya dilakukan dengan proses pemesinan.
Pada metode penambahan, feature menyatakan besarnya volume tambah yang
seolah-olah ditempelkan pada benda kerja dan pada umumnya dilakukan dengan
proses pengelasan. Gambar 2.7 menunjukkan metode pembentukan feature.
Gambar 2.7 Metode pembentukan feature [8]
14
2.3.3 Feature Bentuk Primitif Balok
Feature bentuk primitif balok adalah feature yang memiliki kesesuaian
bentuk dengan bangun geometri balok. Ada tujuh jenis feature primitif balok
yaitu feature muka, step yang dalam penelitian ini disebut RCT (Rectangular
Corner Through), slot yang dalam penelitian ini disebut RMT (Rectangular
Middle Through), poket sudut yang dalam penelitian ini disebut RCB
(Rectangular Corner Through), poket tepi yang dalam penelitian ini disebut RMB
(Rectangular Middle Blind), poket tengah yang dalam penelitian ini disebut RHB
(Rectangular Hole Blind), dan hole yang dalam penelitian ini disebut RHT
(Rectangular Hole Through). Gambar 2.8 menunjukkan jenis feature berprimitif
balok tersebut. Penamaan untuk feature dengan bentuk primitif lainnya dapat
dilihat pada Elvy [9].
Gambar 2.8 Jenis feature bentuk primitif balok
Proses pembuatan feature adalah sebagai berikut:
Proses pembuatan feature step (RCT) terhadap benda kerja akan
menghasilkan dua buah bidang datar, yaitu bidang pertama yang
15
merupakan bidang hasil operasi pemesinan yang sejajar dengan alas
volume buang dan bidang yang tegak lurus dengan bidang yang
pertama.
Proses pembuatan feature slot (RMT) terhadap benda kerja
berbentuk balok akan menghasilkan tiga buah bidang datar. Bidang
datar pertama merupakan bidang yang sejajar dengan alas volume
buang. Bidang datar kedua adalah bidang yang tegak lurus bidang
pertama. Bidang datar ketiga adalah bidang yang tegak lurus bidang
datar pertama dan berhadapan dengan bidang datar kedua.
Proses pembuatan feature poket sudut (RCB) terhadap benda kerja
akan menghasilkan tiga buah bidang datar yang saling tegak lurus.
Bidang pertama adalah bidang alas feature sudut sedangkan bidang
kedua dan ketiga adalah bidang-bidang dinding feature.
Proses pembuatan feature poket tepi (RMB) terhadap benda kerja
akan menghasilkan empat buah bidang datar. Bidang datar pertama
adalah bidang alas feature poket tepi. Bidang datar kedua, ketiga,
keempat adalah bidang-bidang dinding feature yang tegak lurus
terhadap bidang alas feature.
Proses pembuatan feature poket tengah (RHB) terhadap benda
kerja akan menghasilkan sebuah lubang berbentuk balok yang
dibatasi oleh lima buah bidang pembatas. Bidang datar pertama
adalah bidang alas feature poket tengah. Bidang datar lainnya
merupakan bidang-bidang dinding feature poket tengah yang tegak
lurus dengan alas feature poket tengah.
Proses pembuatan feature hole (RHT) terhadap benda kerja akan
menghasilkan sebuah lubang berbentuk balok yang dibatasi oleh
empat buah bidang pembatas yang tegak lurus terhadap permukaan
kerja.
Proses pembuatan feature muka terhadap benda kerja akan
menghasilkan satu bidang datar yang sejajar dengan alas benda
kerja. Bidang datar tersebut memiliki bentuk dan dimensi yang
16
sama dengan alas benda kerja. Proses pemesinan yang
menggambarkan feature ini yaitu proses facing.
2.4 Metode Pengembangan Sistem Informasi Berorientasi Objek
2.4.1 Definisi Model
Model dapat didefinisikan sebagai representasi (perwakilan) suatu masalah
dalam bentuk yang lebih sederhana dan mudah dikerjakan. Suatu model biasanya
dibuat berdasarkan hal-hal yang telah diketahui sehingga belum tentu seluruh
variabel atau gejala yang ada terwakili. Semakin banyak variabel yang terlibat
dalam model maka model yang dibentuk akan semakin dekat dengan keadaan
sebenarnya. Namun penyelesaian masalah pada model akan semakin sulit. Oleh
karena itu, suatu model sebaiknya mencakup variabel yang diperlukan saja dan
menunjukkan penyelesaian yang sederhana.
Kegunaan model adalah sebagai berikut :
Untuk berpikir, abstraksi (membayangkan), menalar dan mengambil
kesimpulan
Untuk berkomunikasi
Dengan menggunakan model, suatu masalah lebih mudah diterangkan
kepada pihak lain.
Untuk melakukan prediksi
Dengan model, suatu keadaan yang akan datang dapat diperkirakan.
Contoh: model matematik laju pertumbuhan penduduk.
Untuk melakukan suatu pengujian
Suatu model dapat mewakili suatu benda/sistem yang akan mengalami
suatu keadaan tertentu yang bila diujikan secara langsung pada
benda/sistem yang sesungguhnya tidak mungkin dilakukan, terlalu
berbahaya, atau terlalu menghabiskan biaya. Pengujian seperti ini
dapat berupa model simulasi yang dimasukkan dalam komputer.
Untuk berlatih
Dengan menggunakan model, seseorang dapat terbantu dalam
membiasakan diri menghadapi suatu keadaan pada benda atau sistem
yang sesungguhnya.
17
Untuk pengendalian
Dengan menggunakan model pada komputer, dapat dihasilkan
perintah-perintah, misalnya dalam bentuk NC (numerical controled)
program, yang diperlukan bagi pengendalian peralatan otomatis.
Umumnya dikenal 3 jenis model, yaitu :
Model ikonis
Model yang berbentuk benda tiruan atau gambaran dari masalah yang
sebenarnya. Model ini umumnya dibuat dengan skala diperbesar atau
diperkecil. Contohnya adalah model atom, maket, model pesawat,
model mobil, dan sebagainya.
Model analog
Dengan model analog, masalah yang dihadapi diterjemahkan atau
dianalogikan ke dalam bentuk yang lebih efisien dan efektif sehingga
pada bentuk baru itu sifat dan kelakuan benda sebenarnya tetap
dimiliki. Misalnya model rangkaian listrik untuk memodelkan
perpindahan panas.
Model simbolik
Model ini tidak menunjukkan benda atau masalah yang sesungguhnya
tetapi mengutamakan kelakuan dan/atau persamaan matematiknya.
Misalnya persamaan matematik terjun bebas.
Pemodelan suatu sistem dapat dibuat dengan cara menggabungkan jenis-
jenis model di atas. Salah satu contoh pemodelan dengan metode penggabungan
ini adalah pemodelan berorientasi objek yang akan dibahas pada subbab
selanjutnya.
Pemodelan dalam arti sempit merupakan virtualisasi objek nyata ke dalam
dunia perangkat lunak komputer. Semakin baik pemodelan yang dilakukan maka
akan semakin dekat sifat objek virtual dengan sifat objek aslinya.
2.4.2 Pemodelan Berorientasi Objek
Pemodelan berorientasi objek merupakan suatu metode pemodelan yang
membuat model objek secara natural sesuai dengan sifat sebenarnya. Pemodelan
18
dibangun oleh sekumpulan objek yang merupakan tempat yang berisi struktur data
dan sekumpulan metode yang dibutuhkan dalam memproses data.
Metode pemodelan berorientasi objek memiliki ciri-ciri penting sebagai
berikut :
1. Pola pikir yang alami
Pola pikir yang alami timbul dengan mengkategorikan objek-objek
tersebut berdasarkan kebiasaan atau perilaku.
2. Dapat dipakai kembali
Objek yang telah ada dapat dimanfaatkan kembali untuk suatu
sistem sehingga akan menghasilkan penghematan biaya dan waktu
pengembangan sistem, serta dapat meningkatkan kehandalan
sistem.
3. Kemudahan dalam membuat model dengan kompleksitas tinggi
Kompleksitas objek yang digunakan dapat terus meningkat karena
objek dapat dibangun dari objek yang lain.
4. Perancangan dan modifikasi mudah
Kelas-kelas dalam pemodelan berorientasi objek memiliki atribut
masing-masing sehingga memudahkan dalam melakukan
perancangan ataupun modifikasi.
Kelebihan metode pemodelan berorientasi objek adalah sebagai berikut :
1. Kelas-kelas objek dirancang untuk dapat digunakan kembali dalam
berbagai sistem,
2. Kelas yang digunakan menjadi semakin stabil,
3. Memiliki sifat encapsulation yang dapat menyembunyikan detail
objek sehingga kelas objek yang kompleks mudah untuk
digunakan.
4. Perancangan yang relatif lebih cepat,
5. Pemrograman yang lebih mudah,
6. Hasil yang diperoleh mendekati kenyataan karena batas antara
analisis, perancangan maupun implementasinya tidak jauh berbeda
melainkan langsung diterjemahkan,
19
7. Dapat diterapkan pada berbagai sistem, baik untuk sistem
informasi maupun untuk sistem yang belum menggunakan
orientasi objek,
8. Mudah dimodifikasi sesuai dengan kebutuhan
2.4.3 Pemrograman Berorientasi Objek
Selama beberapa tahun belakangan ini telah diperkenalkan paradigma
pemrograman baru yang dikenal dengan konsep Pemrograman Berorientasi Objek
(PBO) atau Object Oriented Programming (OOP). OOP merupakan suatu konsep
yang membagi program menjadi objek-objek yang saling berinteraksi satu sama
lain. Konsep OOP secara jelas diulas oleh Hermawan [10].
Untuk memahaminya, pertama kali kita harus mengerti kata objek terlebih
dahulu. Sebuah jam misalnya, ia terdiri dari objek-objek yang berupa jarum,
angka, mesin, baterai, dan sebagainya. Yang ingin dikemukakan di sini adalah,
dalam kehidupan nyata, semua benda (termasuk makhluk hidup) dapat dinyatakan
dalam bentuk hierarki berupa susunan objek-objek.
Fenomena kehidupan nyata inilah yang dibawa ke dalam dunia
pemrograman komputer. Pemrograman yang berorientasi objek kemudian disebut
sebagai object-oriented. Java adalah bahasa pemrograman yang murni object-
oriented. C++ yang merupakan dasar bagi bagi syntax bahasa Java, juga
merupakan bahasa pemrograman yang object-oriented. Tetapi karena C++ harus
mempertahankan kompatibilitas dengan bahasa C (yang bukan object-oriented)
maka ia tidak mungkin murni object-oriented.
Ada enam keuntungan yang diperoleh bila menggunakan OOP, yaitu :
1. Alami (Natural)
2. Dapat diandalkan (Reliable)
3. Dapat digunakan kembali (Reusable)
4. Mudah untuk dilakukan perawatan (Maintainable)
5. Dapat diperluas (Extendable)
6. Efisiensi Waktu
Terdapat hal-hal yang perlu diperhatikan dalam OOP, yaitu:
1. Objek
20
Objek adalah kesatuan entitas (benda), baik yang berwujud nyata
ataupun hanya suatu sistem atau konsep yang memiliki sifat
karakteristik dan fungsi. Contohnya pena yang anda pegang untuk
menulis, motor yang anda kendarai saat bepergian, dan sebagainya
Aktivitas dapat dilakukan oleh objek tersebut:
Penerimaan pesan yang dilakukan menggunakan metode yang
dimiliki,
Pemrosesan data yang ada dalam dirinya sendiri,
Pengiriman pesan ke objek lainnya atau dirinya sendiri,
Pengiriman objek sebagai balasan pesan yang diterima.
Aktifitas yang dapat dilakukan oleh objek ditunjukkan pada gambar
2.9 berikut ini.
Gambar 2.9 Aktifitas yang dapat dilakukan oleh objek [2]
2. Kelas
Kelas adalah pemodelan dari objek yang berisi informasi (aturan)
tentang sifat karakteristik (data) dan tingkah laku (method) yang
dimiliki oleh objek tersebut. Data/atribut/variabel merupakan sifat
karakteristik yang dimiliki oleh objek sedangkan
method/fungsi/prosedur/behaviour adalah fungsi yang dimiliki oleh
suatu objek.
3. Pesan (Message)
Merupakan suatu bentuk komunikasi antar objek. Objek penerima
pesan akan mengerti pesan yang diterima apabila pesan tersebut
21
telah didefinisikan terlebih dahulu sebagai interface yang
dimilikinya.
4. Encapsulation
Encapsulation adalah cara “membungkus” data dan method yang
menyusun kelas dan menyembunyikannya dari dunia luar. Berikut
ini keuntungan menerapkan prinsip enkapsulasi:
Bersifat independen: Suatu modul yang terenkapsulasi
dapat digunakan pada bagian manapun dari program. Ia
tidak terikat pada bagian tertentu dari program.
Bersifat transparan: Bila modifikasi dilakukan pada suatu
modul maka perubahan tersebut akan dirasakan juga oleh
bagian program yang menggunakan modul tersebut.
Menghindari efek di luar perencanaan.
5. Polimorfisme (Polymorphism)
Dalam pemrograman, istilah polimorfi dapat diartikan sebagai
modul yang memiliki nama sama, namun memiliki behaviour
(tingkah laku yang berbeda) sehingga listing code implementasinya
berbeda.
6. Pewarisan (Inheritance)
Yaitu proses pewarisan seluruh data dan method yang dimiliki oleh
suatu kelas kepada kelas lainnya. Kelas yang mewariskan disebut
Kelas Super, kelas yang diwariskan disebut Subkelas.
7. Overriding
Overriding adalah kemampuan kelas anak untuk memodifikasi
(mendefinisikan kembali) data dan method dari kelas induknya.
Proses ini akan mengubah data dan method dari kedua kelas
tersebut (kelas anak dan induknya).
8. Hierarki (Struktur)
Struktur adalah bentuk ekspresi untuk menyederhanakan model
masalah yang kompleks melalui suatu hubungan. Struktur dapat
dibedakan dalam dua kategori :
1. Struktur Generalization-Specialization (Gen-Spec)
22
Jenis struktur ini dapat dilihat sebagai pengklasifikasian. Kelas
umum (general) ditampilkan pada tingkat teratas dan kelas
spesialisasi (khusus) pada tingkat di bawahnya. Contoh :
generalisasi kendaraan sedangkan spesialisasinya yaitu
minivan, sedan, dan sebagainya.
2. Struktur Whole Part
Merupakan struktur bagian dari. Contoh: engine, kaca depan,
spion mobil.
2.5 Java dan Java 3D API
2.5.1 Sekilas Tentang Java
Java adalah nama sebuah bahasa pemrograman yang diciptakan oleh Sun
Microsystems, sebuah perusahaan besar di Amerika Serikat. Bahasa ini
berkembang sangat pesat terutama untuk web programming. Dalam beberapa
tahun terakhir, Java telah merambah dunia mobile dengan J2ME. Java juga
dipakai dalam aplikasi server dengan J2EE (Enterprise Edition: JSP, servlet).
Sejarah kelahiran Java dimulai pada tahun 1991 ketika Sun Microsystems
memulai proyek penelitian yang diberi kode Green. Proyek ini bertujuan untuk
membangun sebuah sistem yang memungkinkan komputer berperan dalam
peralatan rumah tangga. Mereka mengangankan peralatan cerdas yang dapat
saling berkomunikasi serta dapat diperintah oleh manusia hanya dengan sentuhan
tombol dari jarak jauh atau diprogram untuk menjalankan tugas-tugas tertentu.
Saat itu Sun memfokuskan proyek mereka pada peralatan untuk TV kabel yang
disebut set-top box.
Untuk merealisasikan proyek ini, mereka merencanakan untuk membangun
sebuah sistem operasi yang dibagun dengan bahasa C++. Tetapi, salah satu
anggota proyek Green yang bernama James Gosling merasa tidak puas dengan
bahasa C++. Kemudian ia memutuskan untuk membuat sendiri bahasa
pemrograman baru yang diberi nama Oak. Bahasa baru ini dibuat berdasarkan
syntax bahasa C++. Tetapi, Oak lebih sederhana dari C++, lebih stabil, dan lebih
mendukung network-programming.
23
Selanjutnya, Sun yang mengalami kegagalan pada impian peralatan
cerdasnya, melihat celah lain dalam dunia Web. Bahasa Oak yang dibuat sebagai
bahasa multi-platform serta ditujukan untuk pemrograman interaktif dan
distributed, dirasa sangat cocok untuk digunakan dalam dunia Web, yang waktu
itu mulai tumbuh pesat. Nama Oak kemudian harus diganti karena telah ada
produk lain yang mematenkan nama tersebut. Pada tahun 1995, nama Oak diganti
menjadi Java. Nama Java sendiri berasal dari kopi Jawa yang kabarnya saat itu
sering diminum oleh para programmer Sun.
Kelebihan bahasa pemrograman Java dibanding bahasa C/C++ sebagai
berikut [11]:
1. Java adalah bahasa pemrograman yang mempunyai syntax yang (pada
dasarnya) sama dengan bahasa C/C++.
2. Java lebih sederhana daripada C++. Beberapa kemampuan C++, seperti
multiple inheritance, overload operator, proprocessor, serta pointer
telah dihilangkan dalam bahasa Java.
3. Java merupakan bahasa yang murni berorientasi objek.
4. Java merupakan bahasa yang menghasilkan program yang sangat stabil.
2.5.2 Java 3D API
Java 3D API (Application Programming Interface) adalah hierarki kelas-
kelas Java yang dibuat sebagai interface untuk menampilkan grafik tiga dimensi
dan sistem suara. Java 3D menyediakan fungsi-fungsi untuk membuat gambar,
visualisasi, animasi, dan aplikasi program dengan grafik 3D.
Suatu program Java 3D tersusun dari objek-objek Java 3D yang
ditempatkan dalam sebuah struktur data scene graph. Scene graph adalah susunan
objek Java 3D dalam bentuk struktur pohon yang menjelaskan isi virtual universe
dan cara menampilkannya. Simbol objek-objek penyusun scene graph
ditunjukkan pada gambar 2.10.
Berikut ini adalah penjelasan simbol objek yang digunakan pada scene
graph:
Virtual Universe
24
Merupakan ruang atau alam virtual untuk menampilkan grafik 3D
dan sistem suara. Pada struktur scene graph, virtual universe
berada pada tingkat teratas sehingga untuk jumlahnya hanya satu
untuk satu aplikasi.
Gambar 2.10 Simbol yang merepresentasikan objek pada scene graph [12]
Locale (Lokal)
Merupakan manajer atau penghubung antara branch group dengan
virtual universe. Pada struktur scene graph, kedudukan lokal
berada satu tingkat di bawah virtual universe dan jumlahnya hanya
satu untuk satu aplikasi. Lokal hanya menghubungkan satu branch
group saja untuk satu aplikasi.
Group (Grup)
Merupakan kumpulan objek-objek penyusun grafik 3D dan sistem
suara. Objek grup ada dua macam, yaitu Branch Group (BG) dan
Transform Group (TG). Branch group dapat berupa kumpulan
objek leaf dan kumpulan dari transform group. Sedangkan
transform group merupakan kumpulan objek yang memiliki fungsi
transformasi.
Leaf
Merupakan objek yang menyusun grafik 3D secara geometri. Objek
ini dapat dibentuk dengan dua cara. Cara pertama yaitu berdasarkan
bentuk primitifnya, seperti balok, silinder, bola dan kerucut.
25
Sedangkan cara kedua yaitu dengan memasukkan titik-titik
koordinat kartesian penyusun bentuk geometri primitif. Supaya
mudah dikenali dalam penulisan program biasanya penamaan objek
leaf diakhiri oleh 3D seperti Balok3D, Feature3D dan sebagainya.
Objek leaf dapat mereferensi objek-objek yang didefinisikan dalam
bentuk Node Component untuk mendukung tampilannya seperti
untuk warna, mode tampilan, dan lain-lain.
Node Component
Merupakan objek yang digunakan sebagai referensi bagi objek
lainnya. Misalnya digunakan sebagai referensi warna dan tampilan
pada objek atau referensi daerah transformasi pada objek transform
group.
Gambar 2.11 menunjukkan contoh scene graph dari sebuah kubus
berwarna yang memiliki fungsi rotasi dan gambar 2.12 menunjukkan tampilan
dari aplikasi tersebut.
Gambar 2.11 Scene graph [12]
26
Gambar 2.12 Tampilan aplikasi Java 3D [12]