Teknologi Objek
didasarkan pada objek. Cara berpikir orientasi objek adalah segala sesuatu
dipandang sebagai objek. James Martin dan James J Odell mengemukakan objek
1995). Objek dapat berupa konsep, abstraksi, atau sesuatu dengan batas-batas
tegas dan mempunyai arti untuk persoalan yang ditangani. Teknologi objek
objek yang terdiri atas mengindentifikasi objek apa yang terdapat dalam sistem
menyangkut perilaku dan tanggung jawab dari objek, dan bagaimana objek saling
Object-Oriented Languages
objek dan kelas, sub kelas (pewarisan), prosedur virtual dan beberapa hal lainnya.
7
8
dengan cepat.
lain adalah SmallTalk, Eiffel, C++, Objek C, Objek Pascal, dan java. Di antara
software yang didasarkan pada manipulasi objek – objek sistem atau subsistem.
yang dihasilkan oleh tiap class dan hubungan antar object. Selain itu, OOD
diimplementasikan.
diantaranya adlah UML (Unified Modeling Language), Adapun tahan dari Object
1. Desain Subsistem
ada pada sistem ini meliputi tabel member, tabel admin, tabel penginapan,
pelanggan. Desain objek dan kelas ini meliputi gambaran relasi dari
tiaptiap kelas/objek yang ada pada sistem. Adapun desain objek dan kelas
pada penelitian ini meliputi tabel member yang berelasi dengan tabel
3. Desain Pesan
eksternal bagi sistem tersebut. Adapun desain pesan pada penelitian ini
Menganalisis Masalah
11
yang ada. Ini melibatkan pemahaman aliran sistem yang sudah ada dan
analisis ini, aliran sistem baru digambarkan untuk memecahkan masalah yang
ada.
Fungsi sistem yang akan dibangun dijelaskan berdasarkan data yang telah
dan dalam penelitian ini, digunakan Usecase Diagram, Class Diagram, dan
antara pengguna dan sistem, serta struktur kelas dan urutan proses dalam
sistem.
Identifikasi Objek
Menentukan Atribut
atribut yang menjadi ciri khas dari sebuah penginapan termasuk nama
penginapan, alamat, koordinat, jenis kamar, harga kamar, dan fasilitas kamar.
12
Kelas-kelas dibuat sebagai abstraksi dari entitas dunia nyata dan menetapkan
Mendefinisikan Operasi
diimplementasikan.
untuk bahasa ADA namun memberi judul paper tersebut dengan : Object-Oriented
Design. Selanjutnya ide tersebut terus ia kembangkan sampai tahun 90 an. Pada
tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek
yang lebih sederhana dibandingkan Booch. Metode ini menjadi cepat populer
karena mendukung layanan-layanan yang terdapat pada C++. Pada waktu itu C++
pendekatan yang digunakan Coad Yourdon namun dengan notasi yang berbeda.
OMT tidak hanya sepenuhnya berbasis pada data driven tapi juga memisahkan
proses dari data dengan penggunan data flow diagram yang terpisah dengan
diagram kelas. OMT juga menggunakan notasi state transition diagram untuk
memperkenalkan konsep use case dan object oriented software engineering. Pada
tahun 1994 itu juga yaitu bulan Oktober 1994 Booch, Rumbaugh dan Jacobson,
tahun 1995 dihasilkan draft pertama dari UML (versi 0.8). Sejak tahun 1996
Tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru adalah versi
1.5 yang dirilis bulan Maret 2003. Booch, Rumbaugh dan Jacobson menyusun
tiga buku serial tentang UML pada tahun 1999. Sejak saat itulah UML telah
[DHA03].
bersifat dinamis. Hal ini disebabkan kebutuhan pengguna berubah dengan cepat.
tahap analisis, perancangan dan tahap lainnya berbeda-beda. Hal ini menyebabkan
berorientasi objek notasi yang digunakan pada tahap analisis, peanccangan dan
mendukung abstraksi pada level fungsional. Hal ini tidak bersesuaian dengan
didasarkan pada fungsinya namun pada karakteristik alami yang melekat, yang
membedakan sesuatu dengan yang lain. Di dunia nyata yang sering kita lihat
adalah objeknya bukan fungsinya. Kita lebih akrab dengan istilah manusia, sapi,
dan harimau, ketimbang dengan pemikir, pemamah biak, atau pemangsa. Dengan
dengan dunia nyata. Artinya, kita dibawa kepada level abstraksi yang lebih tinggi.
Kelebihan
lebih tinggi dibandingkan dengan metode OOAD (Sommerville, 2000). Tidak ada
15
antara user dan developer dari awal hingga akhir pembangunan sistem.
sistem, jadi desain dapat diformliasikan yang dapat dikonfirmasi dengan berbagai
mapping dengan baik seperti kondisi pada dunia nyata dan keterkaitan dalam
memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan
dan kompetitif. Sistem yang dihasilkan sangat fleksibel dan mudah dalam
memelihara.
Kekurangan
Pada awal desain OOAD, sistem mungkin akan sangat simple. Pada
OOAD lebih fockus pada coding dibandingkan dengan SSAD. Pada OOAD tidak
16
menekankan pada kinerja team seperti pada SSAD. Pada OOAD tidak mudah
untuk mendefinisikan class dan obyek yang dibutuhkan sistem. Sering kali
fungsional siste, sementara metode OOAD tidak berbasis pada fungsional sistem.
adalah, team developer butuh waktu yang lebih lama untuk berpindah ke OOAD,
karena mereka sudah menggunakan SSAD dalam waktu yang lama ( Hantos,
reuse. Reuse merupakan salah satu keuntungan utama yang menjadi alasan
reuse, akan sangat sliit untuk menerapkan konsep ini pada skala besar (Hantos,
2005).
Object-Oriented Languages
objek dan kelas, sub kelas (pewarisan), prosedur virtual dan beberapa hal lainnya.
dengan cepat.
17
lain adalah SmallTalk, Eiffel, C++, Objek C, Objek Pascal, dan java. Di antara
dan desain. Dengan metodologi, pihak yang membangun suatu sistem dapat
hal yang sama. Metode yang digunakan harus sesuai dengan kebutuhan aplikasi
yang akan dibangun. Selain itu metode juga harus mudah digunakan dan
a. Metode Booch
menjadikan proses analisis dan desain ke dalam empat tahapan yang iteratif (dapat
relationship. Tahapan utama dalam metodologi ini adalah analisis, desain sistem
dan desain objek, dan implementasi. Keunggulan metode ini adalah dalam
Metode ini memberi penekanan lebih pada use-case. OOSE memiliki tiga tahapan
yaitu membuat model requirement dan analisis, desain dan implementasi, dan
model pengujian (tes model). Keunggulan metode ini adalah mudah untuk
e. Metode Wirfs-Brock
(RDD/CFC) Metode ini diarahkan pada desain, tetapi sangat berguna untuk
memodelkan alur data dalam sistem. Metode ini menghasilkan tiga jenis model
yaitu: information model, state model dan process model. Keunggulan metode ini
adalah dalam memandang masalah dari sudut pandang yang berbeda, mudah
Language (UML)
digunakan untuk membangun sistem berorientasi objek, yang dimulai dari tahap
Pemodelan dan perancangan berorientasi objek sebagai teknik yang mudah, cepat
dan efisien dalam pelaksanaan daur hidup (life cycle) pembutan perangkat lunak.
Oriented Analysis and Design (OOAD) yang dimana dapat didefinisikan sebagai
(syarat/keperluan yang harus dipenuhi oleh suatu sistem) dari sudut pandang
Dan Object Oriented Design yaitu metode untuk mengarahkan arsitektur software
(OOAD) adalah:
a. Objek
Objek (Object) adalah “benda”, secara fisik atau konseptual, yang terdapat
disekeliling kita. Sebuah objek memiliki keadaan sesaat (state) dan perilaku
(behavior). State dari sebuah objek adalah kondisi objek tersebut atau himpunan
dari keadaan yang menggambarkan objek tersebut. Sebagai contoh, salah satu
adalah nilai internal suatu objek, kondisi sesaat, koneksi dengan objek lain dan
semua atau beberapa operasi yang dapat dilakukan dalam objek itu sendiri.
b. Kelas (Class)
21
Kelas (class) adalah definisi umum (pola, tamplate atau cetak biru) untuk
atribut objek-objek tersebut. Kelas adalah keniskalan atau abterasi dari entitas
dalam dunia nyata. Objek adalah “contoh” (instance) dari sebuah kelas.
pihak luar. Oleh karena itu, objek sering digambarkan sebagai kotak hitam (black
box) yang menerima dan mengirim pesan-pesan (message). Dalam object oriented
programming, kotak hitam berisi kode (himpunan instruksi dengan bahasa yang
d. Encapsulation
membawa metode yang ditunjukkan atau perilaku dan mengembalikan result dari
berbeda satu sama lain. Hal ini dikarenakan oleh sejarahnya sendiri dan oleh
sebuah sistem yang diinginkan pengguna dan pelanggan dari sebuah perangkat
lunak. Beberapa teknik yang dapat membantu dalam tahapan analisis (Martin
2005:44) :
1. Use case Diagram adalah gambaran umum sistem dari sudut pandang
apa yang sistem dapat lakukan. Use case diagram dibentuk dari
dalam sistem yang akan dibangun. Notasi UML pada class diagram
adalah sebuah persegi yang dibagi menjadi 3 area, yaitu nama kelas,
23
dari suatu kelas yang berhubungan dengan sebuah objek dari kelas
yang berasosiasi.
di atas dan diurutkan dari kiri ke kanan. Dari setiap objek, ada garis
(Life line) suatu objek. Di atas garis hidup tersebut, ada kotak kecil
Pengembangan UML dimulai dari kerja sama Grady Booch dan James
Rumbaugh pada tahun 1994 untuk mengkombinasikan dua metode Booch dan
artifak-artifak dari sistem. UML dapat digunakan untuk menerangkan sistem yang
berorientasi pada objek secara lebih jelas dan detail disajikan dalam bentuk
diagram atau gambar yang meliputi class beserta atribut dan operasinya, serta
1. Menyediakan bahasa pemodelan visual yang ekpresif dan siap pakai untuk
konsep-konsep inti.
pengembangan tertentu.
digunakan sebagai alat komunikasi bagi para pelaku dalam proses analisis dan
a. Actor
25
komputer. Jadi actor ini bisa berupa orang, perangkat keras, atau
mungkin juga objek lain dalam sistem yang sama. Biasanya yang
dilakukan oleh actor adalah memberikan informasi pada sistem dan atau
b. Class
nyata. Notasi class berbentuk persegi panjang berisi tiga bagian, yaitu
persegi paling atas untuk nama class, persegi paling bawah untuk operasi
c. Interface
class. Oleh karena itu keberadaan interface selalu disertai oleh class
26
d. Use Case
Use case menjelaskan urutan kegiatan yang dilakukan actor dan sistem
use case hanya menjelaskan apa yang dilakukan oleh actor dan sistem,
Di dalam use case terdapat teks untuk menjelaskan urutan kegiatan yang
Adalah jantung dari use case. Menjelaskan interaksi antara actor dan
lancar, tiada halangan atau hambatan dalam mencapai tujuan dari use
case
flow ini dijelaskan apa yang akan terjadi bila suatu halangan atau
5. Special Requirement
Berisi kebutuhan lain yang belum tercakup dalam aliran normal dan
6. Pre Condition
dimulai.
7. Post Condition
Menjelaskan kondisi yang berubah atau terjadi pada saat use case
selesai dieksekusi.
e. Interaction
juga dengan teks bernama Operation Signature yang tersusun dari nama
f. Package
dibangun.
g. Note
suatu elemen sehingga langsung terlampir dalam model. Note ini bisa
h. Dependency
dibagian tanda panah adalah elemen yang tergantung pada elemen yang
yaitu:
1. Include
2. Extend
use case A bisa disisipkan ke dalam use case B atau dengan kata
i. Association
lain yang berhubungan dengan satu objek (Multiplicity antar Class), dan
dengan lebih dari satu objek A atau setiao objek A bisa berhubungan
j. Generalization
(subclass) akan menurunkan atribut dan operasi dari class yang lebih
umum (superclass).
k. Realization
panah akan merealisasikan apa yang dinyatakan oleh elemen yang ada
dalam suatu proses rekayasa software. Artifak dapat berupa model, deskripsi, atau
UCD menjelaskan apa yang akan dilakukan oleh sistem yang akan
yang user ajukan atau sedang dihadapi. Developer menggunakan UCD ini
sistem yang sedang dibangun dan merupakan artifak dari peoses analisis.
b. Realization Diagram
dibuat terpisah dari use case realization, hal ini memungkinkan untuk
dapat mengatur satu persatu dan dapat mengubah desain dari use case-use
case tanpa berpengaruh pada “garis dasar” atau “alur” yang ada dalam use
case tersebut. Untuk tiap-tiap use case dalam model use case, terdapat
c. Collaboration Diagram
perilaku sistem.
d. Class Diagram
super-class dari class lainnya dan class yang lain tersebut menjadi sub-
class, berapa banyak objek lain yang bisa berhubungan dengan satu objek
(Multiplicity antar class), dan apakah suatu class menjadi bagian dari class
e. Sequence Diagram
dilakukan dalam sistem untuk mencapai tujuan dari use case, yaitu
interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan
dari proses desain karena artifak ini yang nantinya akan menjadi pedoman
pesannya. Diagram ini menjelaskan aspek dinamis dari sistem yang sedang
dibangun.
Untuk satu use case bisa dibuat beberapa sequence diagram, karena satu
use case biasanya terdiri dari beberapa aktivitas yang harus dilakukan dan
diagram.
Rational Rose
pemodelan secara visual untuk membangun suat solusi dalam rekayasa sotware
dan pemodelan bisnis. Ratioanal Rose dikeluarkan oleh perusahaan software yang
pemodelannya, ditambah dengan bebarapa fitur lain yang membuat Rational Rose
diantaranya Rational Rose memiliki Rational Unified Process (RUP). Selain itu,
berikut :
menampilkan arsitektur software dari kode yang ada. Hal ini dapat
rekayasa software.
cycle.
C++ Builder
dan Linux yang dikembangkan dengan bahasa C dan C++, sehingga software
Lingkungan pengembang C++ Builder terdiri dari menu utama, toolbar, dan
component pallete. Bagian lain yang disertakan dan secara otomatis akan
ditampilkan saat C++ Builder start adalah object inspector, code editor, dan
sebuah form.
VCL GUI display components, VCL GUI data-aware components, VCL GUI
input components, VCL GUI control components, dan VCL GUI dialog. Pada
saat ini C++ Builder dipergunakan secara meluas di industri perangkat lunak
berguna untuk pengembangan sistem informasi. Selain itu C++ Builder yang
Temanggung yang merupakan pusat penghasil tembakau. Pada saat musim panen
para petani menjual tembakaunya kepada gudang yang telah siap menerima
operasionalnya. Tembakau yang dibeli dari petani akan melewati beberapa proses
perusahaan dengan sampel tembakau yang akan mereka jual yang memiliki
kwalitas yang berbeda-beda. Maka dari itu perusahaan telah menyiapkan personal
yang disebut dengan Kir Master, personal ini bertugas untuk menentukan kwalitas
seluruhnya untuk mengetahui total berat. Tembakau yang sudah melewati proses
akan masuk ke gudang dimana pada bagian ini personal gudang akan mencatat
tembakau yang masuk yang telah ditentukan jenis kwalitas, harga, dan total
beratnya. Bagian ini juga akan mencatat bila ada tembakau yang keluar dari
gudang. Adapun dalam perusahaan ini telah ada ketentuan harga dan ketentuan
a. Ketentuan Harga
37
Dalam istilah perusahaan jenis tembakau yang juga kwalitas tembakau sering
disebut dengan tiam barang. Tiam barang ini digunakan untuk menentukan
tipe-tipe tembakau yang masuk kegudang yang meliputi kwalitas dan harga.
b. Ketentuan Berat
menghasilkan berat bruto dan berat netto. Berat bruto yang juga berat kotor
dikurangi 1 Kg. sehingga akan didapatkan berat bersih atau netto. Berat netto
ini digunakan sebagai patokan untuk menentukan total harga yang diperoleh
menggunakan berat bruto saja sebagai patokan untuk total harga untuk
pelanggan.