Orientasi Objek

Prinsip Perancangan
1.      Apa yang dimaksud dengan objek? Apakah titik pandang berorientasi objek? Mengapa suatu metode dianggap sebagai berorientasi objek? Jelaskan!
Jawab :
Objek adalah sebuah benda. Meskipun objek memang tidak harus sebuah benda, namun cara paling cepat untuk memahami tentang objek adalah membayangkannya sebagai sebuah benda. Yang luar biasa dari cara berpikir berorientasi objek adalah kita dapat melihat sebuah benda secara sederhana sebagai sebuah objek saja, atau kita dapat melihat sebuah benda sebagai wujud dari kumpulan banyak objek yang bekerja sama bergabung menjadi satu.
Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

2.      Jelaskan apa yang dimaksud dengan “pemrograman berorientasi objek”!
Jawab :
Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.

3.      Jelaskan perbedaan antara pendekatan konvensional (struktural) dengan pendekatan objek!
Jawab :
Perbandingan
Orientasi Objek
Konvensional
Pembangunan sistem
Lebih mudah
Lebih rumit
Waktu pengembangan, level organisasi, ketangguhan, penggunaan kembali kode program
Lebih tinggi
Dibawah orientas objek
Fase desain dan analisis
Adanya pemisahan, sehingga meningkatkan komunikasi antar user dan developer
Tidak ada pemisahan
Batasan implementasi sistem
Tidak dibatasi, desain dapat diformulasikan dengan berbagai lingkungan eksekusi
Dibatasi
Analisis
Terlalu sering menganalisis terhadap fungsionalitas sistem
Tidak berbasis pada fungsionalitas sistem
Desain
Kemudahan dalam desain
Rumit
Kinerja team
Kurang ditekankan pada kinerja team
Sangta ditekankan pada kinerja team
Perubahan
Memungkinkan adanya perubahan
Susah dilakukan perubahan
Data dan method
Adanya enkapsulasi  antara data dan methode
Tidak adanya enkapsulasi
Adaptasi
Sulit beradaptasi, karena sering memakai metode terstruktur
Mudah beradaptasi

4.      Jelaskan perbedaan antara Kelas dan Objek!
Jawab :
Objek adalah sebuah benda. Meskipun objek memang tidak harus sebuah benda, namun cara paling cepat untuk memahami tentang objek adalah membayangkannya sebagai sebuah benda. Yang luar biasa dari cara berpikir berorientasi objek adalah kita dapat melihat sebuah benda secara sederhana sebagai sebuah objek saja, atau kita dapat melihat sebuah benda sebagai wujud dari kumpulan banyak objek yang bekerja sama bergabung menjadi satu.
Class atau Kelas merupakan kumpulan dari objek yang mempunyai sifat sejenis. Di dalam dunia pemrograman, class digunakan untuk menciptakan objek. Satu class dapat digunakan untuk membuat banyak object. Seumpama kita membangun rancangan rumah yang digunakan untuk mebangun ratusan rumah, hal ini bisa dilakukan karena semua object rumah yang dibangun memiliki karakteristik yang sama, sehingga dapat dibuatkan semacam blueprintnya, tetapi object yang dibangun tetap akan memiliki bentuk fisik tertentu. Kelas dapat didefinisikan menjadi sebuah blueprint yang mendefinisikan variabel dan metode yang sama untuk semua objek sejenis.


5.      Apa yang dimaksud dengan Enkapsulasi, Pewarisan dan Polimorfisme? Jelaskan!
Jawab :
PENGAKAPSULAN (ENCAPSULATION)
Pengkapsulan adalah metode untuk menggabungkan data dengan fungsi. Dalam konsep ini data dan fungsi digabung menjadi satu kesatuan yaitu kelas. Konsep ini erat kaitannya dengan konsep penyembunyian informasi (information hiding).

PEWARISAN (INHERITANCE)
Dari konsep pewarisan ini suatu kelas bisa diturunkan menjadi kelas baru yang masih mewarisi sifat-sifat kelas orangtuanya. Hal ini dapat dianalogikan dengan kelas manusia. Manusia merupakan turunan dari orang tuanya dan sifat-sifat orang tua diwarisi olehnya. Bisa ditarik kesimpulan bahwa semua kelas di dunia selalu memiliki hirarki yang menggambarkan silsilah kelas tersebut.

POLIMORFISME (POLYMORPHISM)
Polimorfisme berarti kelas-kelas yang berbeda tetapi berasal dari satu orang tua dapat mempunyai metode yang sama tetapi cara pelaksanaannya berbeda-beda. Atau dengan kata lain, suatu fungsi akan memiliki perilaku berbeda jika dilewatkan ke kelas yang berbeda-beda.

6.      Sebutkan paradigm (metodologi) rekayasa perangkat lunak berorientasi objek!
Jawab :
Ada beberapa metode pengembangan perangkat lunak berorientasi objek yang sudah dikenal, dan diantaranya adalah:

·         Object Oriented Analysis (OOA) dan Object Oriented Design (OOD) dari Peter Coad dan Edward Yourdon [1990]
·         Object Modeling Technique (OMT) dan James Rumbaugh, Michael Blaha, William Premerlan,  Frederick Eddy dan William Lorensen [1991]
·         Object Oriented Software Engineering (OOSE) dan Ivar Jacobson [1992].erd,dfd……..
·         Booch Method dan Grady Booch [1994]
·         Sritrop dan Steve Cook dan John Daniels [1994].
·         UML (Unified Modeling Language) dari James Rumbaugh. Grady Booch dan Ivar Jacobson [1997].



7.      Jelaskan apa itu UML!
Jawab :
UML (Unified Modeling Language) adalah sebuah bahasa untuk menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya.

UML merupakan bahasa standar untuk penulisan blueprint software yang digunakan untuk visualisasi, spesifikasi, pembentukan dan pendokumentasian alat-alat dari sistem perangkat lunak.

8.      UML memiliki 9 diagram, jelaskan kesembilan diagram tersebut kemudian berikan contohnya masing-masing!
Jawab :
a. Use case diagram
Use case diagram yaitu salah satu jenis diagram pada UML yang menggambarkan interaksi antara sistem dan aktor, use case diagram juga dapat men-deskripsikan tipe interaksi antara si pemakai sistem dengan sistemnya.
Inilah contoh dari use case diagram.
b. Activity Diagram
Activity diagram atau diagram aktivitas yaitu salah satu jenis diagram pada UML yang dapat memodelkan proses-proses apa saja yang terjadi pada sistem.
Inilah contoh dari activity diagram.
c. Sequence diagram
Sequence diagram yaitu salah satu jenis diagram pada UML yang menjelaskan interaksi objek yang berdasarkan urutan waktu, sequence diagram juga dapat menggambarkan urutan atau tahapan yang harus dilakukan untuk dapat menghasilkan sesuatu seperti pada use case diagram.
Inilah contoh dari sequence diagram.
d. Class diagram
Class diagram yaitu salah satu jenis diagram pada UML yang digunakan untuk menampilkan kelas-kelas maupun paket-paket yang ada pada suatu sistem yang nantinya akan digunakan. Jadi diagram ini dapat memberikan sebuah gambaran mengenai sistem maupun relasi-relasi yang terdapat pada sistem tersebut.
Inilah contoh dari class diagram.
e. Statemachine diagram
Statemachine diagram yaitu salah satu jenis diagram pada UML yang menggambarkan transisi maupun perubahan keadaan suatu objek pada sistem.
Inilah contoh dari statemachine diagram.
f. Communication diagram
Communication diagram yaitu salah satu jenis diagram pada UML yang dapat menggamabarkan tahapan terjadinya suatu aktivitas dan diagram ini juga menggambarkan interaksi antara objek yang ada pada sistem. Hampir sama seperti sequence diagram akan tetapi communication diagram lebih menekankan kepada peranan masing-masing objek pada sistem.
Inilah contoh dari communication diagram.
g. Deployment diagram
Deployment diagram yaitu salah satu diagram pada UML yang menunjukan tata letak suatu sistem secara fisik, dapat juga dikatakan untuk menampilkan bagian-bagian softwere yang terdapat pada hardwere dan digunakan untuk menerapkan suatu sistem dan hubungan antara komponen hardwere. Jadi Deployment diagram intinya untuk menunjukan letak softwere pada hardwere yang digunakan sistem.
Inilah contoh dari deployment diagram.
h. Component diagram
Component diagram yaitu salah satu jenis diagram pada UML yang menggambarkan softwere pada suatu sistem. Component diagram merupakan penerapan softwere dari satu ataupun lebih class, dan biasanya berupa file data atau .exe, source kode, table, dokumen dsb.
Inilah contoh dari component diagram.
i. Object diagram
Object diagram yaitu salah satu jenis diagram pada UML yang menggambarkan objek-objek pada suatu sistem dan hubungan antarnya.

9.      Pilih salah satu kasus di bawah ini :
Sistem Informasi Perpustakaan
Sistem Informasi Kepegawaian
Sistem Informasi Akademik
Sistem Informasi Rental Kendaraan
Gambarkan diagram Use Case dan buatkan Skenario Use Case untuk kasus yang dipilih !
Jawab :
A.    Usecase Diagram      
Use case diagram menggambarkan fungsionalitas sistem secara global.
Gambar 4.1 Use Case Diagram Sistem Informasi Perpustakaan Kampus (SISFOPERPUS)

B.     Skenario Use Case
Skenario use case digunakan untuk memudahkan dalam menganalisa skenario yang akan kita gunakan pada fase-fase selanjutnya dengan melakukan penilaian terhadap skenario tersebut.
           
1.
Nama Use Case
Aktor Tujuan
:

:

:
Pendaftaran Anggota
Anggota/Pengunjung, Petugas Perpustakaan Melakukan pendaftarn anggota
Tabel 1.1 Skenario Use Case Daftar Anggota.
Pengunjung
Sistem
1.   Menyerahkan kartu mahasiswa


2.   Memeriksa kartu mahasiswa
3.   Mengisi formulir anggota


4.   Membuat kartu anggota
5.   Kartu Anggota


2.
Nama Use Case
Aktor Tujuan
:

:

:
Peminjaman Buku
Anggota/Pengunjung, Petugas Perpustakaan Anggota meminjam buku
Tabel 1.2  Skenario use case meminjam buku.

Anggota
Sistem
1.   Memperlihatkan kartu anggota

2.   Memperlihatkan buku yang akan dipinjam


3.  Mencatat      data      anggota      yang meminjam buku

4.   Mencatat data buku yang dipinjam


3.
Nama Use Case
Aktor Tujuan
:

:

:
Pengembalian Buku
Anggota/Pengunjung, Petugas Perpustakaan Anggota mengembalikan buku yang telah dipinjam
Tabel 1.3 Skenario Use Case Mengembalikan Buku
Anggota
Sistem
1.   Menyerahkan kartu anggota

2.  Menyerahkan         buku        yang dipinjam


3.   Mengecek kartu anggota

4.   Mengecek data buku yang dipinjam

5.  Denda
6.   Informasi denda


10.  Dalam hubungan antar Kelas, ada istilah Agregasi, Asosiasi dan Generalisasi.  Jelaskan ketiga istilah tersebut.
Jawab :
·         Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class.
·         Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).

·         Relasi Generalisasi digunakan dalam hubungan antara kelas induk dengan kelas turunan ( inherited) .

0 comments "Orientasi Objek", Baca atau Masukkan Komentar

Post a Comment

Rules:

1. No Spam