Aspek-Aspek Utama dalam Object

Hasil gambar untuk materi oop

Pengertian OOP

OOP (Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi kepada objek. Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari. Jadi setiap bagian dari suatu permasalahan adalah objek, nah objek itu sendiri merupakan gabungan dari beberapa objek yang lebih kecil lagi. Saya ambil contoh Pesawat, Pesawat adalah sebuah objek. Pesawat itu sendiri terbentuk dari beberapa objek yang lebih kecil lagi seperti mesin, roda, baling-baling, kursi, dll. Pesawat sebagai objek yang terbentuk dari objek-objek yang lebih kecil saling berhubungan, berinteraksi, berkomunikasi dan saling mengirim pesan kepada objek-objek yang lainnya. Begitu juga dengan program, sebuah objek yang besar dibentuk dari beberapa objek yang lebih kecil, objek-objek itu saling berkomunikasi, dan saling berkirim pesan kepada objek yang lain.

 

  • Abstrak Class
    1. Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
    2. Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang digunakan untuk menciptakan objek.
    3. Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
    4. Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property).

 

  • Inheritance
    1. Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
    2. Penurunan sifat ini bisa dilakukan secara bertingkattingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
    3. Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
    4. Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kodekode itu.

 

  • Polymorphism
    1. Polimorfisme merupakan kemampuan objekobjek yang berbeda kelas namun terkait dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama.
    2. Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.
    3. Method overriding.
    4. Method name overloading.

 

  • Encapsulation
    1. Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
    2. Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
    3. Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
    4. Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut.

 

  • Assosiation (Assosiasi)

Assosiasi adalah hubungan antara object. Relasi assosiasi biasa disebut is “a” relationship. Assosiasi berarti bahwa sebuah object “menggunakan” object yang lain. Assosiasi adalah sebuah relasi dimana semua object memiliki lifecycle nya sendiri dan tidak ada yang bertindak sebagai owner.

Contoh Teacher dan Student. Banyak Student dapat berasosiasi dengan satu Teacher dan satu Student   dapat berasosiasi dengan banyak Teacher. Object keduanya bisa dibuat dan dihancurkan secara mandiri tanpa berpengaruh pada eksistensi object lain.

  • Aggregation (Agregasi)

Agregasi adalah bentuk hubungan yang lebih khusus dari Assosiasi dimana sebuah object memiliki lifecycle nya sendiri tapi dengan kepemilikan dan class child tidak dapat memiliki class parentnya. Relasinya biasa di sebut relasi “has-a”.

Sebagai contoh, Department dan Teacher. Satu Teacher tidak dapat memiliki banyak Department, tapi jika kita menghapus object Department, object Teacher tidak akan ikut terhapus.

============================================================================

Contoh Kasus

kalian bisa bayangkan kasus seorang yang sedang dalam perjalanan dengan mobil. Dari pernyataan itu, di dalam pikiran kita sekelebat akan melihat 2 object yang saling berelasi, yaitu mobil dan seorang manusia.

Mobil dan manusia dalam pernyataan tersebut masing-masing pasti memiliki sifat(karakteristik) dan fungsinya. Mobil yang berwarna, jenis mobil, bentuk mobil dan lain-lain, dan juga memiliki fungsi, seperti maju, mundur dan berbelok.

Begitu pula dengan manusia, manusia pasti memiliki identitas dan tugasnya, seperti “andi yang mengemudikan mobil dari puwokerto ke medan”.

Dasar Pola Pikir OOP (Object Oriented Programming)

Dasar Pola Pikir OOP (Object Oriented Programming)

Dan kita juga tau bahwa mobil tidak berdiri sendiri, mobil merupakan kesatuan object-object multi fungsi yang bersatu untuk membuat satu object mobil, seperti object roda, kaca, gas dan lain-lain. Begitu pula dengan manusia yang terdiri dari object kepala, badan, kaki dan tangan.

Jika kita membedah mereka dan memisahkan object-object tersebut, kita juga kemungkinan akan menemukan object-object kecil yang membentuk object tersebut (contoh, roda jika dibedah lagi, kita akan mendapatkan pentil, ban dalam, ban luar dan lain-lain).

Jenis-Jenis OOP pada Bahasa Pemrograman

Karena kemudahan yang diberikan oleh konsep OOP, banyak Bahasa yang membawa dukungan fitur OOP, karena hal itu OOP menjadi memiliki dan dibagi menjadi 3 jenis, yaitu :

  • Bahasa OOP Murni adalah sebuah bahasa yang mengharuskan program ditulis hanya berupa object saja. Contoh – Eifel, Smaltalk, Ruby, Jade dan lain-lain.
  • Bahasa OOP Hybrid adalah bahasa yang dirancang untuk pemrograman object dengan beberapa elemen procedural.
  • Bahasa OOP Hybrid dalam Web sama seperti Bahasa OOP Hybrid, yang berbeda hanyalah, konsep ini sering digunakan dalam pemrograman Web.

Referensi :

Metode SDLC-Synchronize Stabilize & Extreme Programming

Hasil gambar untuk sdlc

 

SDLC adalah tahapan-tahapan pekerjaan yang dilakukan oleh analis sistem dan programmer dalam membangun sistem informasi.

Model SDLC :

Metode Synchronize & Stabilize

Screenshot_7

Sinkronisasi & menstabilkan (kadang hanya disebut sync & menstabilkan) adalah model SDLC di mana tim bekerja secara paralel pada modul aplikasi individual, sering sinkronisasi kode mereka dengan tim lain, dan stabilize (menstabilkan) kode teratur seluruh proses pembangunan.

Model ini adalah model yang digunakan oleh Microsoft.  Secara garis besar, Model Synchronize and Stabilize ini sama dengan model incremental, tetapi oleh CUsamano dan Selby tahun 1997 menyebutnya sebagai model Syncronize and Stabilized Model karena ada beberapa proses manajemen yang ditekannya oleh microsoft.

Keuntungan Model Synchronize and Stabilize
1. Pendekatan pembangunan sistem periodik membuka jalan untuk menguji perangkat    lunak untuk kedua fungsionalitas dan kinerja.
2. Pemantauan proyek akan lebih mudah karena ada tonggak menengah.
3. Masalah integrasi yang dihadapi dalam proyek-proyek besar menggunakan model lainnya dieliminasi dalam model ini.
4. Karena rilis menengah, produk dapat dibuat kaya fitur dengan memasukkan umpan balik yang diperlukan.

 Kekurangan Model Synchronize and Stabilize
1. Sebuah tim pengujian independen paralel perlu berada di tempat.
2. Dokumen spesifikasi rinci akan tersedia hanya pada saat rilis.
3. Sistem Periodik membangun meminta proses ketat untuk didefinisikan untuk integrasi berbagai modul.

Metode Extreme Programing

Extreme Programming (berikutnya akan disingkat sebagai XP) adalah sebuah model pengembangan perangkat lunak yang mencoba menyederhanakan berbagai tahapan dalam proses pengembangan tersebut sehingga menjadi lebih adaptif dan fleksibel. XP bukan hanya berfokus pada coding tetapi meliputi seluruh area pengembangan perangkat lunak. XP mengambil pendekatan ‘ekstrim’ dalam iterative development.

Tujuan XP adalah meminimalisir biaya yang diperlukan jika ada perubahan dalam pengembangan perangkat lunak.

Captureeee.PNG

  1. Perencanaan (Planning)

Hal ini dibutuhkan agar pengembang mengerti bisnis konten, kebutuhan output sistem, dan fitur utama dari software yang dikembangkan. Tahapan ini untuk menganalisa kebutuhan dari sistem tersebut untuk dapat digunakan sesuai dengan user requirement atau user stories.

  1. Desain (Design)

Desain dari sistem pada penelitian ini digambarkan dengan model UML berupa use case diagram, activity diagram, dan relation table. Pembuatan desain pada XP tetap mengedepankan prinsip Keep it Simple (KIS). Desain disini merupakan representasi dari sistem guna mempermudah pengembang dalam membangun sistem. Desain ini dimaksudkan untuk mempermudah pengembangan sistem nantinya.

  1. Coding

Proses melakukan coding system (pengkodean perangkat lunak) oleh Programmer/Software Engineer sesuai dengan planning dan design yang telah dibuat  sebelumnya.

  1. Testing

Tahap ini akan menggunakan unit test yang sebelumnya telah dibuat. Karena pembuatan dari unit test adalah pendekatan utama dari XP.  Dalam melakukan pengujian, penulis menggunakan 2 teknik pengujian yaitu pengujian white box. Pada tahap pengujian black box, dilakukan pengujian setiap unit test, maksudnya melakukan pengujian integrasi antara input dan hasil output yang sesuai semestinya terjadi.

Keuntungan dan Kekurangan Extreme Programing

Keuntungan :

Menjalin komunikasi yang baik dengan klien. (Planning Phase)
Menurunkan biaya pengembangan (Implementation Phase)
Meningkatkan komunikasi dan sifat saling menghargai antar developer. (Implementation Phase)
XP merupkan metodologi yang semi formal. (Planning Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima, atau dengan
kata lain eksibel. (Maintenance Phase)

Kekurangan :

Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga).

Selain dari keunggulan dan kelemahan XP yang telah disebutkan diatas, XP juga memiliki keunggulan yang sekaligus menjadi kelemahannya, yaitu XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user.

Referensi :

http://bit.ly/2thTBp1

http://bit.ly/2BAkQzD

http://bit.ly/2SrGfW1

http://bit.ly/2I8hkCr

http://bit.ly/2SrexZO

 

Ayo! Kita Jelajahi Pengembangan Sistem Informasi Saat Ini

7bdd92d481e278e87788446e487561bb204c3eb9.gif

APA ITU PENGEMBANGAN SISTEM INFORMASI ??

question-mark-animated-gif-21.gif

Yang dimaksud dengan pengembangan sistem informasi adalah menyusun suatu sistem yang baru untuk menggantikan sistem yang lama secara keseluruhan atau memperbaiki sistem yang telah ada.

Sebenarnya untuk  menghasilkan sistem informasi tersebut terdiri dari :

  1. System analisis adalah upaya mendapatkan gambaran bagaimana sistem bekerja dan masalah-masalah apa saja yang ada pada sistem.
  2. System development adalah langkah-langkah mengembangkan sistem informasi yang baru berdasarkan gambaran cara kerja sistem dan permasalahan yang ada.

 

MENGAPA PERLU ADANYA PENGEMBANGAN SYSTEM INFORMASI??

  1. Menjamin adanya konsistensi proses.
  2. Dapat diterapkan dalam berbagai jenis proyek.
  3. Mengurangi resiko kesalahan dan pengambilan jalan pintas.
  4. Menuntut adanya dokumentasi yang konsisiten yang harus bermanfaat bagi personal baru dalam tim proyek.

 

Untuk memaksimalkan Sistem Informasi yang sudah ada harus diadakan pengembangan sistem informasi berdasarkan langkah-langkah yang ada agar Sistem Informasi mampu memberikan kegunaannya kepada pemakai dengan lebih mudah. Langkah-langkah yang harus dilakukan untuk melakukan pengembangan yaitu:

IS4.png

1. Survei

Survei yaitu tindakan yang dilakukan dengan terjun ke lapangan untuk mendapatkan informasi tentang apa yang dibutuhkan agar mempermudah proses pengembangan sistem.

  1. Analisis

Analisis merupakan tindakan yang dilakukan untuk menindaklanjuti hasil dari survei yang telah dilakukan dengan menganalisa langkah yang tepat dalam mengelola hal-hal yang dibutuhkan.

  1. Studi Kelayakan

Studi Kelayakan dilakukan untuk melihat apakah pengembangan yang dilakukan dapat direalisasikan atau tidak dengan mempertimbangkan berbagai factor seperti factor keuangan dan sebagainya.

  1. Desain

Desain dilakukan terhadap beberapa komponen yaitu database (database yang sederhana), input (aplikasi input yang interaktif), proses (jalannya proses sistem dengan baik) dan output (laporan dari hasil proses).

  1. Proses Pengembangan

Proses Pengembangan merupakan langkah untuk merealisasikan desain konsep sesuai dengan analisa yang tepat.

  1. Pengujian

Pengujian dilakukan terhadap sistem yang telah dikembangkan untuk mengurangi kegagalan sistem sebelum langkah selanjutnya.

  1. Pelaksanaan

Pelaksanaan merupakan proses implementasi dari sistem yang baru dengan menerapkan dan mengenalkannya kepadanya pemakai.

  1. Dokumentasi

Dokumentasi merupakan panduan yang diberikan kepada pengguna untuk mempermudah jalannya sistem.

     Metode System Development Life Cycle (SLDC)

Metode ini adalah metode pengembangan sistem informasi yang pertama kali digunakan makanya disebut dengan metode tradisional. Metode ini prototype Adalah tahap-tahapan pekerjaan yang dilakukan oleh analis sistem dan programer dalam membangun sistem informasi.

Adapun tahap-tahap tersebut yaitu:

  1. Melakukan survey dan menilai kelayakan proyek pengembangan sistem informasi.

Tahap ini akan ditentukan ruang lingkup proyek bagi semua pemakai sistem informasi dan berbagai tingkat pertanggungjawaban, meneliti masalah dan berbagai kemungkinan adanya kendala, menentukan sasaran proyek dan menentukan solusinya.

Hasil dari survey adalah laporan kelayakan studi berisi temuan-temuan, rekomendasi, pertimbangan biaya dan manfaat. Temuan ini harus diketahui oleh komite pengawas

  1. Mempelajari dan menganalisis sistem informasi yang sedang berjalan       

Mempelajari sistem yang sedang berjalan, mengetahui sebab dan kendala yang dihadapi. Hasil dari tahap ini adalah laporan yang mengungkapkan adanya berbagai permasalahan (problem statement)

  1. Menentukan permintaan pemakai sistem informasi

Hal terpenting dari sistem informasi adalah terlebih dahulu harus mendapat persetujuan dari para pemakai sistem (pemakai sistem dilibatkan). Hasil dari tahap ini adalah laporan permintaan dari pemakai sistem informasi yang akan dijadikan dasar untuk pembuatan keputusan.

  1. Memilih solusi atau pemecahan masalah yang paling baik

Dari berbagai solusi maka solusi dan pemecahan masalah terbaiklah yang akan dipilih yaitu berdasarkan hasil analisis permintaan pemakaian.

  1. Menentukan perangkat keras dan perangkat lunak komputer

Setelah proposal pengembangan sistem informasi disetujui maka ditentukan hardware dan software yang akan digunakan dan bagaimana cara mendapatkannya

  1. Merancang sistem informasi baru

Kegiatan perancangan sistem informasi baru umumnya meliputi: input, proses, output, bahan yang digunakan, metode dan prosedur serta pengendalian intern

  1. Mengkomunikasikan dan mengimplementasikan sistem informasi baru

Hasil penyusunan sistem informasi adalah sebuah software komputer yang siap pakai digunakan sesuai dengan kebutuhan users, selanjutnya analis harus memperkenalkan paket sistem informasi tersebut untuk dioperasikan (pelatihan users dll)

  1. Memelihara dan melakukan perbaikan/peningkatan sistem informasi baru

Pemeliharaan yang dilakukan adalah dengan melakukan perbaikan-perbaikan pada kesalahan atau kegagalan yang timbul dalam penggunaan sistem informasi.

Keterlibatan Pengguna dalam Pengembangan Sistem

Typical-Office.jpg

Berikut ini beberapa contoh bagaimana keterlibatan pengguna di dalam pengembangan suatu sistem, yaitu:

  1. Pentingnya bagi pengguna untuk menjelaskan bagaimana sistem yang sedang berjalan pada bagian tempat pengguna bekerja.
  2. Menemukan dan mendiskusikan permasalahan yang dihadapi dan bagaimana hal itu dapat diperbaiki pada sistem yang baru.
  3. Kemungkinan perlu untuk memakai tenaga analis sistem dan desainer yang dibutuhkan dalam pengembangan sistem untuk memenuhi kebutuhan bagian.
  4. Kemungkinan anda sebagai pengguna selalu dilibatkan di dalam hal persetujuan proyek dan anggaran sebagai anggota special steering committee.
  5. Pada saat pengembangan sistem akan selesai, pengguna akan dimintai bantuannya untuk mengevalusi dan uji coba, untuk memastikan bahwa sistem bekerja dengan sempurna.
  6. Anda sebagai pengguna turut membantu mempersiapkan sebagian dari dokumentasi yang dikumpulkan selama proses pengembangan sistem.
  7. Anda seharusnya menghadiri pengarahan singkat dan sesi pelatihan untuk belajar bagaimana sistem baru akan mempengaruhi pekerjaan anda dan operasi prosedur baru nantinya.
  8. Terakhir tetapi pasti, anda akan menggunakan sistem yang baru tersebut.

 

Referensi :

https://bit.ly/2TncHWf

https://bit.ly/2Wxs8gg

https://bit.ly/2RY4gUp

https://bit.ly/2E5mgVC

 

FORMATIF TIPE 4

T I P E 4
Buatkan Program dengan menggunakan Borland C++ dari tampilan input dan output dibawah ini menggunakan fungsi kondisi IF-ELSE atau SWITCH CASE !.

tipe 4 soal 1.PNG

tipe 4 soal 2.PNG

3. Ketentuan Program :

Simpan Program pada Folder D://NIM dengan nama Formatif_Nama.cpp

a. Input Nama Pembeli dengan nama masing-masing.

b. Input Kode Theater bisa m

=enggunakan huruf besar atau huruf kecil

c. Input Waktu Tayang

d. Input Jumlah beli

e. Jenis, Paket dan Harga Film ditentukan berdasarkan tabel berikut:

tipe 4 soal 3.PNG

f. PPN diberikan 10 % jika jumlah beli > 3 dari harga selain itu PPN =0 g. Total Bayar = (Harga * Jumlah beli) + PPN

==============================================

FORMATIF 1.PNG

FORMATIF 2.PNG

FORMATIF 3.PNG

FORMATIF 4.PNG

HASILLL.PNG

MENGHITUNG NILAI AKHIR SISWA

Tugas (1) – Penginputan Data (Code::blocks)

Penginputan ialah sebuah unit dari luar yang biasa dipakai untuk memasukkan sebuah data dari luar ke dalam sebuah komputer, misalnya data yang muncul dari keyboard atau mouse lalu dari data yang sudah di Input tersebut akan berubah menjadi sebuah  Informasi. Data ialah sekumpulan informasi yang di dapat dari sebuah pengamatan. misalnya bisa berupa angka,sifat ataupun lambang.

Berikut adalah contoh source code yang saya buat untuk menginput sebuah data :

PERTEMUAN 2(3.2)

dan ini adalah contoh dari sebuah programnya :

PERTEMUAN 2 (3)

Tugas (2) – Menghitung Nilai Akhir Siswa

Di dalam pertemuan ini saya akan menjelaskan terlebih dahulu mengenai Flowchart, Flowchart adalah bagan yang di buat menggunakan simbol-simbol yang urutan prosesnya sangat mendetail. Ada beberapa simbol yang saya gunakan di dalam Flowchart untuk menghitung nilai akhir siswa di bawah. yaitu ada :

  • Terminal : yang berfungsi untuk memulai (start) dan mengakhiri (end)
  • Symbol Input/Output : yang berfungsi untuk menyatakan (Input-Output)
  • Processing symbol : yang berfungsi untuk memprosespengolahan yang dilakukan melalui/oleh komputer
  • Symbol Flowline : yang berfungsi untuk menunjukan intruksi yang akan di lakukan selanjutnya.

 

Ini adalah flowchart dan program untuk menghitung nilai akhir seorang siswa dari kursus yang di ikutinya :

 

Capture flowchart.PNG

Berikut adalah source code untuk menghitung nilai akhir siswa :

Capture2.PNG

Sebuah program dari source code di atas :

Capture.PNG

 

MENGINPUT DATA (CODE::BLOCKS)

Penginputan ialah sebuah unit dari luar yang biasa dipakai untuk memasukkan sebuah data dari luar ke dalam sebuah komputer, misalnya data yang muncul dari keyboard atau mouse lalu dari data yang sudah di Input tersebut akan berubah menjadi sebuah  Informasi. Data ialah sekumpulan informasi yang di dapat dari sebuah pengamatan. misalnya bisa berupa angka,sifat ataupun lambang.

Berikut adalah contoh source code yang saya buat untuk menginput sebuah data :

PERTEMUAN 2(3.2)

dan ini adalah contoh dari sebuah programnya :

PERTEMUAN 2 (3)