Anda di halaman 1dari 25

LK 0.

1: Lembar Kerja Belajar Mandiri

Judul Modul Rekayasa Perangkat Lunak


Judul Kegiatan Belajar 1. Konsep Object Oriented Analysis Design Dalam Perancangan
(KB) Aplikasi/Sistem Infomasi
2. Konsep Manajemen Proyek Dalam Pengembangan Sistem Informasi
3. Konsep RDBMS Dalam Pengelolaan Data
4. Pemrograman Berorientasi Objek Dalam Perancangan Aplikasi/Sistem
Infomasi
No Butir Refleksi Respon/Jawaban
1 Garis besar KB 1. Konsep Object Oriented Analysis Design Dalam Perancangan Aplikasi/Sistem
materi yang Infomasi
dipelajari
1. Metodologi Berorientasi Objek
Metodologi berorientasi objek merupakan suatu strategi pembangunan perangkat
lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang
berisi data dan operasi yang diberlakukan terhadapnya. Metodologi berorientasi
objek adalah suatu cara bagaimana sistem perangkat lunak dibangun melalui
pendekatan objek secara sistematis. Metode berorientasi objek didasarkan pada
penerapan prinsip-prinsip pengelolaan kompleksitas.
Karakteristik metode berorientasi objek adalah:
a. Cara kerja yang sistematis untuk mengerjakan tahap analisis berdasarkan
pendekatan objek.
b. Ada kumpulan aturan-aturan tertentu yang harus diikuti untuk
menyelesaikan pekerjaan analisis tersebut.
c. Mempunyai urut-urutan aktivitas, teknik, dan alat bantu (tools) tertentu
untuk memodelkan (mendokumentasikan) hasil dari setiap aktivitas.

Analisis berorientasi objek merupakan investigasi masalah untuk menemukan


(mengidentifikasikan) dan mendefinisikan objek-objek atau konsepkonsep yang
ada di ruang masalah. Terdapat beberapa metode yang dapat digunakan untuk
melakukan analisis berorientasi objek, dan diantaranya adalah sebagai berikut:
a. Metode Coad & Yourdan
b. Metode Rumbaugh
c. Metode Jacobson
d. Metode Booch
e. Metode Wirfs-Brock
f. Metode Shlair-Mellor atau Object Oriented Analysis/Design (OOA/D)

2. Metode Analisis Secara Umum


Tahap atau skema pelaksanaan analisis berorientasi objek :
a. Menentukan Kebutuhan Pemakai untuk Sistem Berorientasi Objek
b. Identifikasi Kelas dan Objek
c. Mengidentifikasi Atribut dan Layanan
d. Mendefinisikan Struktur dan Hirarki
e. Membuat Model Hubungan Objek
f. Membuat Model Perilaku Objek

3. Tahapan Pengembangan Sistem Berorientasi Objek


Pendekatan object oriented dapat menggunakan metodologi apapun, termasuk
yang terstruktur, tetapi umumnya lebih berhubungan dengan metodologi yang
bersifat RAD.
Unified process adalah proses pengembangan sistem yang dijelaskan melalui
tahapan-tahapan dan alur kerja (workflows).
Tahapannya adalah:
a. Inception
b. Elaboration
c. Construction
d. Transition
Sedangkan workflowsnya meliputi :
a. Business modelling,
b. Requirements
c. Analysis
d. Design
e. Implementation
f. Test atau pengujian
g. Deployment
h. Project management
i. Configuration and change management
j. Environment

Tahapan-tahapan yang ada pada SDLC secara global menurut A.S. &
Shalahuddin (2019) adalah sebagai berikut :
a. Inisiasi (initiation),
b. Pengembangan konsep sistem (system concept development)
c. Perencanaan (planning)
d. Analsis kebutuhan (requirements analysis)
e. Desain (design)
f. Pengembangan (development)
g. Integrasi dan pengujian (integration and test)
h. Implementasi (implementation)
i. Operasi dan pemeliharaan (operations and maintetance)
j. Disposisi (dispotition)

Menurut A.S. & Shalahuddin (2019), SDLC memiliki beberapa model


pengembangan perangkat lunak antara lain sebagai berikut :
a. Model Waterfall

b. Model Prototipe (Prototyping)

c. Model Rapid Application Development (RAD)


d. Model Iteratif

e. Model Spiral

4. Alur Kerja Sistem Berorientasi Objek


Siklus pemodelan atau langkah-langkah pemodelan dalam mengembangkan
suatu sistem adalah:
a. Rekayasa pemodelan sistem
b. Analisis
c. Desain
Memiliki fokus terhadap 4 hal, yaitu:
- Desain database
- Arsitektur perangkat lunak
- Arsitektur interface
- Algoritma prosedural.

5. Pemodelan
Dalam banyak aplikasi engineering, model didefinisikan sebagai representasi dari
sistem yang disederhanakan. Representasi ini pun juga bermacam- macam mulai
dari yang bersifat physical, pictorial, verbal, schematic dan symbolic.
Proses pemodelan analisis memiliki atribut dan karakteristik seperti:
a. Understandability, yaitu sejauh mana proses secara eksplisit ditentukan
dan bagaimana kemudahan definisi proses itu dimengerti.
b. Visibility, apakah aktivitas-aktivitas proses mencapai titik akhir dalam
hasil yang jelas sehingga kemajuan dari proses Tersebut dapat terlihat
nyata/jelas.
c. Supportability, yaitu sejauh mana aktivitas proses dapat didukung oleh
CASE
d. Acceptability, apakah proses yang telah ditentukan oleh insinyur dapat
diterima dan digunakan dan mampu bertanggung jawab selama
pembuatan produk perangkat lunak
e. Reliability, apakah proses didesain sedikian rupa sehingga kesalahan
proses dapat dihindari sebelum terjadi kesalahan pada produk.
Robustness, dapatkah proses terus berjalan walaupun terjadi masalah
yang tak diduga.
f. Maintainability, Dapatkah proses berkembang untuk mengikuti
kebutuhan atau perbaikan.
g. Rapidity, bagaimana kecepatan proses pengiriman sistem dapat secara
lengkap memenuhi spesifikasi.

6. Unified Modeling Language (UML)


Unified Modeling Language (UML) adalah bahasa pemodelan untuk sistem atau
perangkat lunak yang berparadigma berorientasi objek” (Nogroho, 2010). UML
(Unified Modeling Language) versi 2 mendefinisikan sehimpunan notasi yang
terdiri dari 14 technique pembuatan diagram yang digunakan untuk
memodelkan sistem. Diagram dikelompokkan menjadi 2 yaitu :
- Structure Modelling Diagram yang digunakan untuk memodelkan
struktur sistem, yang terdiri atas: class diagaram, object diagram,
package diagram, deployment diagram, component diagram dan
composite struktur diagram.
- Behaviour Modelling Diagram yang digunakan memodelkan tingkah laku
sistem, yang terdiri atas: activity diagram, sequence diagram,
communication diagram, interaction overview diagram, timing diagram,
behavioral state machine, protocol state machine dan use case diagram

a. Use Case Diagram


Use Case diagram merupakan suatu diagram yang menggambarkan
fungsionalitas yang diharapkan dari sebuah sistem. Ada 6 tool yang
terpenting pada use case diagram :
- System
- Actor
- Use case
- Assosiation
- Dependency
- Generalization
b. Activity Diagram
Activity diagram menggambarkan berbagai alur aktivitas dalam sistem
yang sedang dirancang, bagaimana masing-masing alur berawal, decision
yang mungkin terjadi, dan bagaimana mereka berakhir

Berikut contoh activity diagram dengan actor mahasiswa dan petugas


perpustakaan
c. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di
sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa
message yang digambarkan terhadap waktu.

d. Statechart diagram
Statechart diagram menunjukkan siklus hidup dari objek tunggal, dari
saat dibuat sampai objek tersebut dihapus.
e. Deployment diagram
Deployment diagram merupakan gambaran proses-proses berbeda pada
suatu sistem yang berjalan dan bagaimana relasi di dalamnya.

f. Collaboration Diagram
Kolaborasi diagram atau collaboration diagram adalah suatu diagram
yang memperlihatkan/menampilkan pengorganisasian interaksi yang
terdapat disekitar objek (seperti halnya sequence diagram) dan
hubungannya terhadap yang lainnya

g. Componen DiagraKomponen adalah bagian fisik atau replaceable dari


sistem yang bersesuaian dan menyediakan realisasi dari sekumpulan
interface. Component diagram menunjukkan organisasi dan
ketergantungan antar komponen Component diagram tidak hanya
penting untuk visualisasi, spesifikasi, dan dokumentasi, tapi juga
mengembangkan executable system.
KB 2. Konsep Manajemen Proyek Dalam Pengembangan Sistem Informasi

1. Konsep Dasar Manajemen Projek


Menurut Soeharto (1999), manajemen adalah proses merencanakan,
mengorganisasikan, memimpin, dan mengendalikan kegiatan anggota,serta
sumber daya yang lain untuk mencapai sasaran organisasi (perusahaan) yang
telah ditentukan.
Sementara itu menurut Gray &Larson (2000), projek adalah kegiatan yang
kompleks, tidak rutin, dan usaha satu waktu yang dibatasi oleh waktu,
anggaran, sumber daya, dan spesifikasi kinerja yang dirancang untuk memenuhi
kebutuhan costumer
Poyek perangkat lunak mempunyai karakteristik tertentu yang membuat projek
software berbeda dengan projek lainnya. Karakteristik tersebut adalah:
a. Invisibility. Dalam sebuah projek software, kemajuannya tidak dapat
dilihat secara langsung dan berbeda dengan projek fisik lainnya misalnya
pembuatan jembatan dan sebagainya.
b. Complexity. Produk software memiliki lebih banyak kompleksitas
daripada projek fisik termasuk dari sisi biayanya.
c. Conformity. Pengembang software harus menyesuaikan kebutuhan
software dan kebutuhan dari klien. Hal ini perlu mendapat perhatian
karena pada dasarnya individual memiliki ketidak-konsistenan.
Konsistensi mulai dari awal hingga akhir menjadi hal yang penting dalam
keberhasilan projek.
d. Flexibility. Software yang dapat diubah dengan mudah biasanya dilihat
sebagai sebuah kelebihan. Hal ini berarti tampilan sistem software
diharapkan dapat diubah dengan mudah untuk mengakomodasi
perubahan lingkungan bisnis organisasi dan komponen lainnya.

2. Fungsi dan Batasan Manajemen Projek


Berikut ini adalah beberapa fungsi manajemen projek:
a. Pelingkupan (scooping), yang menjelaskan mengenai batas-batas dari
sebuah projek.
b. Perencanaan (planning), menidentifikasi tugas apa saja yang dibutuhkan
dalam menyelesaikan sebuah projek.
c. Perkiraan (estimating), setiap tugas yang dibutuhkan dalam penyelesaian
sebuah projek harus diperkirakan.
d. Penjadwalan (scheduling), seorang manajer projek harus bertanggung
jawab atas penjadwalan seluruh kegiatan suatu projek
e. Pengorganisasian (organizing), seorang manajer projek memastikan
bahwa seluruh anggota tim dari sebuah projek mengetahui peran serta
tanggung jawab masing-masing dan hubungan laporan mereka kepada
manajer projek.
f. Pengarahan (directing), mengarahkan seluruh kegiatan-kegiatan tim
dalam projek.
g. Pengontrolan (controlling), fungsi pengontrolan atau pengendalian ini
mungkin saja merupakan fungsi tersulit dan juga terpenting bagi seorang
manajer apakah projek akan berjalan semestinya ataukah tidak.
h. Penutupan (closing), manajer projek hendaknya selalu menilai
keberhasilan atau kegagalan pada kesimpulan dari sebuah projek yang
dijalani.

Pada manajemen projek terdapat sejumlah proses yang saling berkaitan.


Masing-masing proses mencerminkan suatu aktivitas mulai dari projek
dimulai sampai dengan projek berakhir. Proses Manajemen Projek ini
memberikan pedoman dan kriteria untuk menyesuaikan proses organisasi
dengan kebutuhan spesifik projek. Proses yang terjadi dalam aktivitas projek
dibagi menjadi lima tahapan utama atau yang dikenal dengan istilah Project
Management Process Groups (Process Groups).
a. Initiation
b. Planning
c. Execution
d. Monitoring and Control
e. Closing

3. Metodologi Umum Pelaksanaan dan analisis Projek Sistem Informasi


(Metode Generik)
Pengembangan sebuah sistem informasi dalam sebuah perusahaan dilakukan
dengan pendekatan manajemen projek (project management). Lepas dari
berbagai variasi projek-projek teknologi informasi yang ada, seperti pembuatan
aplikasi, penerapan perangkat lunak, konstruksi infrastruktur jaringan, dan lain
sebagainya, metodologi yang dipergunakan secara umum adalah sama. Setidak-
tidaknya ada enam buah tahapan yang harus dilalui: perencanaan, analisa,
desain, konstruksi, implementasi, dan pasca implementasi. Masing-masing
konsultan atau para praktisi teknologi informasi biasanya memiliki variasinya
masing-masing yang secara prinsip tidak lepas dari keenam langkah metodologi
di atas
a. Tahap Perencanaan
Tahap perencanaan merupakan suatu rangkaian kegiatan semenjak ide
pertama yang melatarbelakangi pelaksanaan projek ini diperoleh,
pendefinisian awal terhadap kebutuhan detail atau target yang harus
dicapai dari projek tersebut, penyusunan proposal, penentuan metodologi
dan sistem manajemen projek yang digunakan, sampai dengan
penunjukan tim dan instruksi untuk mengeksekusi (memulai) projek
yang bersangkutan
b. Tahap Analisis
Secara prinsip ada 2 aspek yang jadi fokus analisis, yaitu :
- Aspek bisnis atau manajemen
- Aspek teknologi
c. Aspek teknologi
d. Tahap Konstruksi
e. Tahap Implementasi
f. Tahap Pascaimplementasi

Dalam organisasi satu rangkaian input-process-output yang satu bersambung


kepada rangkaian input-process-output yang lainnya, sehingga membentuk
bisnis proses. Gambar berikut menunjukkan interaksi antar proses yang terjadi
dalam satu organisasi;

Untuk dapat membangun pemetaan proses yang representatif, maka diperlukan


pengetahuan dan pemahaman mengenai proses yang akan dipetakan. Berikut ini,
merupakan hierarki proses, yang akan menjelaskan mengenai proses dan
komponen-komponen yang membangunnya (David Hoyle, 1998)

Dalam pemetaan proses, dapat kita mulai dengan menggambarkan seluruh


aktifitas yang terjadi dalam suatu organisasi menjadi kelompok besar aktivitas
yang kita sebut sebagai peta proses bisnis. Dari peta proses bisnis ini, kemudian
dapat didetailkan menjadi sub peta proses bisnis dan kemudian menjadi SOP dan
intruksi kerja seperti yang dijelaskan dalam gambar berikut ini:

Secara utuh, peta proses yang lengkap dapat dijelaskan seperti gambar di bawah
ini:
Keterangan:
- Business Process Map - Sub Business Process Map merupakan
hubungan keterkaitan antara proses dengan proses.
- Relationship Map merupakan hubungan keterkaitan antara proses
dengan pelaku.
- Cross Functional Map merupakan hubungan keterkaitan antara pelaku
dengan aktifitas

4. Proposal Projek Sistem Informasi


Proposal projek adalah suatu rancangan kegiatan atau kerja projek yang disusun
secara sistematis dan terperinci sesuai standar oleh seseorang atau sekelompok
perencana untuk diajukan kepada pihak pemegang projek dalam mendapatkan
persetujuan maupun bantuan dalam perencanaannya atau pengerjaannya.
Adapun ciri-ciri proposal projek sebagai berikut :
a. Proposal projek dibuat untuk meringkas kegiatan projek yang akan
dilakukan.
b. Sebagai pemberitahuan pertama suatu kegiatan projek.
c. Berisikan tujuan-tujuan projek, latar belakang kegiatan projek.
d. Berupa lembaran-lembaran pemberitahuan yang telah dijilid yang
nantinya diserahkan kepada yang penyelenggara kegiatan projek.
e. Ada pihak yang mengajukan.
f. Ada pihak yang menyetujui.
g. Terdapat gambaran kegiatan projek secara umum.
h. Disusun sebelum rencana kerja.
i. Bersifat bisnis.
j. Memiliki sasaran dan tujuan yang jelas.
k. Manfaat pembuatan proposal projek sebagai berikut:
l. Menjadi rencana yang mengarahkan pengembang dalam melaksanakan
kegiatan projek.
m. Menjelaskan secara tidak langsung kepada pihak-pihak yang ingin
mengetahui kegiatan projek.
n. Untuk meyakinkan user atau sponsor agar mereka memberikan
dukungan material maupun finansial dalam mewujudkan kegiatan
projek.
o. Sebagai gambaran awal sebuah kegiatan projek.
p. Sebagai alat untuk memperoleh persetujuan dari pihak projek
berwenang.
q. Sebagai alat pengontrol jalannya kegiatan projek.
r. Sebagai alat evaluasi kegiatan projek.
s. Sebagai salah satu alat untuk memperluas jaringan kerja dan
komunikasi.

KB 3. Konsep RDBMS Dalam Pengelolaan Data

1. Konsep Basis Data dalam RDBMS


Definisi Database Management System (DBMS) pada sejumlah literatur
sangatlah bervariasi. Namun secara umum DBMS diartikan sebagai suatu
program aplikasi komputer yang digunakan untuk memasukkan, mengubah,
menghapus, memanipulasi dan memperoleh data dan atau informasi dengan
praktis dan efisien.
Dibandingkan dengan sistem data yang berbasis kertas, DBMS memiliki
beberapa keunggulan:
a. Mengurangi redundancy, data yang sama pada beberapa aplikasi cukup
disimpan sekali saja.
b. Integrity, data tersimpan secara akurat.
c. Menghindari inkonsisten, karena redundancy berkurang, maka update data
jadi lebih efisien.
d. Penggunaan data bersama, data yang sama dapat diakses oleh beberapa user
pada saat bersamaan.
e. Menyangkut keseragaman penyajian data.
f. Menyeimbangkan kebutuhan, dapat ditentukan prioritas suatu operasi, misal
antara update dengan retrieval

2. Abstraksi Data
Abstraksi data dalam DBMS biasanya dibagi menjadi 3 lapis, yaitu:
a. Lapis fisis Lapis fisis merupakan lapisan terendah dalam abstraksi data.
Lapis ini menjelaskan bagaimana data sesungguhnya disimpan. Pada
lapis inilah struktur data dijabarkan secara rinci.
b. Lapis konseptual Lapis konseptual bersifat lebih tinggi daripada lapis
fisis. Lapis ini menjabarkan data apa saja yang sesungguhnya disimpan
pada basis data, dan juga menjabarkan hubunganhubungan antar data.
Level ini biasanya digunakan oleh Database Administrator (DBA).
c. Lapis pandangan Lapis pandangan merupakan lapis tertinggi pada
abstraksi data. Pada lapis ini pengguna hanya mengenal struktur data
yang sederhana yang berorientasi pada kebutuhan pengguna. Data yang
dikenal oleh masing-masing pengguna bisa berbeda-beda dan barangkali
hanya mencakup sebagian dari basis data

3. Model Basis Data


a. Model Hierarkis

b. Model Jaringan
c. Model Relasional
Istilah yang digunakan dalam basis data relasional
- Relasi
Relasi merupakan sebuah tabel yang terdiri dari beberapa kolom
dan beberapa baris. Relasi menunjukkan adanya hubungan
diantara sejumlah entitas yang berasal dari himpunan entitas
yang berbeda. Entitas merupakan individu yang mewakili sesuatu
yang nyata dan dapat dibedakan dengan yang lainnya .
- Entitas
Entitas (entity) adalah sebuah objek yang keberadaannya dapat
dibedakan terhadap objek lain. Entitas dapat berupa orang,
benda, tempat, kejadian, konsep
- Atribut
Atribut adalah sifat atau karakteristik yang melekat dalam sebuah
entitas. Setiap atribut akan memiliki nilai (values). Domain (value
Set) merupakan batas-batas nilai yang diperbolehkan bagi suatu
atribut
- Tupel atau baris
Tupel merupakan baris pada sebuah relasi atau kumpulan
elemen-elemen yang saling berkaitan menginformasikan tentang
suatu entitas secara lengkap. Satu record mewakili satu data atau
informasi tentang seseorang, misalnya : NIM, nama mahasiswa,
alamat, kota, dan lain-lain.
- Domain
Domain adalah kumpulan nilai yang valid untuk satu atau lebih
atribut
- Derajat (degree)
Degree menunjukan banyaknya himpunan entitas yang saling
berelasi.
- Kardinalitas relasi
- Kardinalitas relasi menggambarkan banyaknya jumlah maksimum
entitas dapat berelasi dengan entitas pada himpunan entitas yang
lain
4. Key (Atribut Kunci)
Dalam RDBMS, key terbagi menjadi beberapa jenis yaitu: primary key, foreign
key, candidate key, super key, alternate key dan composite key
a. Primary key (kunci primer), merupakan sebuah aturan dimana fungsinya
adalah untuk membedakan anatara baris satu dengan baris lainnya yang
ada pada tabel dan bersifat unik. Ada ketentuan yang harus diperhatikan
ketika field yang menjadi primary key yakni, yaitu data tidak boleh sama
atau ganda (unik) dan data tidak boleh bernilai null
b. Foreign key (kunci tamu), merupakan suatu atribut untuk melengkapi
hubungan yang menunjukan ke induknya, itu artinya field pada tabel
merupakan kunci tamu dari tabel lain. Dan biasanya penggunaan foreign
key akan sangat dibutuhkan ketika menemukan banyak tabel dan ingin
menghubungkan satu tabel dengan tabel lainnya.
c. Super key (kunci super), merupakan satu atau lebih atribut (kumpulan
atribut) yang dapat membedakan setiap baris data dalam table secara
unik.
d. Candidate key (kunci kandidat), merupakan suatu atribut ataupun super
key yang mengidentifikasi secara unik untuk kejadian spesifik dari
entitas.
e. Composite key (kunci gabungan), merupakan kunci yang terdiri dari 2
atau lebih atribut yang secara unik mengidentifikasi suatu kejadian
entitas.
f. Alternative key (kunci alternatif),merupakan candidate key yang tidak
dipilih sebagai primary key.
g. Sekunder key (kunci sekunder) adalah sebuah atribut atau kombinasi
yang digunakan hanya untuk tujuan pengambilan data

5. Perintah DBMS
Semua DBMS minimal mempunyai tiga macam perintah yang digunakan untuk
mengelola dan mengorganisasikan data, yaitu:
a. Bahasa Definisi Data (DDL/Data Definition Language)
b. Bahasa Manipulasi Data (DML/Data Manipulation Language)
c. Bahasa Pemerolehan Data (DQL/Data Query Language)

6. Keamanan Basis Data


Keamanan merupakan suatu proteksi terhadap pengrusakan data dan
pemakaian data oleh pemakai yang tidak punya kewenangan. Keamanan
database adalah suatu cara untuk melindungi database dari ancaman, baik
dalam bentuk kesengajaan atau pun bukan.Ancaman adalah segala situasi atau
kejadian baik secara sengaja maupun tidak yang bersifat merugikan dan
mempengaruhi sistem database.
ancaman terhadap sistem komputer dikategorikan menjadi empat ancaman,
yaitu :
a. Interupsi, Sumber daya sistem komputer dihancurkan atau menjadi tidak
tersedia atau tidak berguna. Hal ini merupakan ancaman terhadap
ketersediaan
b. Intersepsi, Pihak yang tidak diotorisasi dapat mengakses sumber daya.
Hal ini merupakan ancaman terhadap kerahasiaan.
c. Modifikasi, Pihak yang tidak diotorisasi tidak hanya mengakses tapi juga
merusak sumber daya. Hal ini merupakan ancaman terhadap integritas,
d. Fabrikasi
Pihak yang tidak diotorisasi menyisipkan/memasukkan objek-objek palsu
ke sistem. Fabrikasi merupakan ancaman terhadap integritas,

7. Konkurensi
Konkurensi merupakan mekanisme untuk menjamin bahwa transaksi yang
konkuren pada basis data multi user yang tidak saling mengganggu operasinya
masing-masing. Konkurensi adalah bisa dikatakan sebagai suatu fitur di mana
(DBMS) mengizinkan banyak transaksi pada saat bersamaan untuk mengakses
data yang sama

8. Enkripsi
Enkripsi adalah suatu metode yang digunakan untuk mengkodekan data
sedemikian rupa sehingga keamanan informasinya terjaga dan tidak dapat
dibaca tanpa didekripsi (kebalikan dari proses enkripsi) dahulu. Enkripsi
merupakan proses pengamanan suatu informasi dengan cara membuat
informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus.
Enkripsi menerapkan algoritma pada sebuah pesan yang berfungsi untuk
mengacak data di dalamnya sehingga sangat sulit dan akan memakan banyak
waktu apabila data hasil

9. Replikasi Basis Data


Replikasi database adalah seperangkat teknologi yang digunakan untuk
menyalin dan mendistribusikan data dari satu database ke database yang lain.
Dan selanjutnya, mensinkronisasikan antar database untuk menjaga
konsistensi. Dengan replikasi, data dapat didistribusikan ke lokasi yang berbeda
dan pengguna yang jauh melalui LAN, WAN, Dial-up Connection, wireless
connections, dan internet.

Terdapat empat model replikasi basis data, yaitu:


a. One master, one slave

b. One master many slave


c. Master/slave circular relationship

d. Master/slave “daisy chain”

10. Jenis-Jenis Replikasi


Terdapat dua jenis replikasi, yaitu:
a. Replikasi Synchronous

b. Replikasi Asynchronous

KB. 4 Pemrograman Berorientasi Objek Dalam Perancangan Aplikasi/Sistem


Infomasi

1. Konsep Pemrograman Berorientasi Objek


Object-oriented programming atau OOP adalah suatu metode pemrograman yang
berorientasi pada objek. Program-program yang telah ada merupakan gabungan
dari beberapa komponen-komponen kecil yang sudah ada sebelumnya. Hal itu
dapat mempermudah pekerjaan seorang programmer dalam melakukan
pengembangan program.
Dalam object oriented programming, dikenal empat prinsip yang menjadi dasar
penggunaannya. Merangkum Freecodecamp, keempat prinsip OOP tersebut
adalah sebagai berikut:
a. Encapsulation, Encapsulation atau pengkapsulan adalah konsep tentang
pengikatan data atau metode berbeda yang disatukan atau “dikapsulkan”
menjadi satu unit data. Maksudnya, berbagai objek yang berada dalam
class tersebut dapat berdiri sendiri tanpa terpengaruh oleh yang lainnya.
Encapsulation dapat mempermudah pembacaan kode. Hal tersebut
terjadi karena informasi yang disajikan tidak perlu dibaca secara rinci
dan sudah merupakan satu kesatuan. Proses enkapsulasi mempermudah
untuk menggunakan sebuah objek dari suatu kelas karena kita tidak
perlu mengetahui segala hal secara rinci.
b. Abstraction Prinsip selanjutnya yaitu abstraction. Prinsip ini sendiri
berarti memungkinkam seorang developer memerintahkan suatu fungsi,
tanpa harus mengetahui bagaimana fungsi tersebut bekerja. Lebih lanjut,
abstraction berarti menyembunyikan detail latar belakang dan hanya
mewakili informasi yang diperlukan untuk dunia luar. Ini adalah proses
penyederhanaan konsep dunia nyata menjadi komponen yang mutlak
diperlukan. Seperti kala menggunakan handphone, kamu cukup
memberikan suatu perintah, tanpa tahu bagaimana proses terlaksananya
perintah tersebut.
c. Inheritance Inheritance dalam konsep OOP adalah kemampuan untuk
membentuk class baru yang memiliki fungsi turunan atau mirip dengan
fungsi yang ada sebelumnya. Konsep ini menggunakan sistem hierarki
atau bertingkat. Maksudnya, semakin jauh turunan atau subclass-nya,
maka semakin sedikit kemiripan fungsinya.
d. Polymorphism Prinsip terakhir dalam OOP adalah polymorphism. Pada
dasarnya polymorphism adalah kemampuan suatu pesan atau data
untuk diproses lebih dari satu bentuk. Salah satu ciri utama dari OOP
adalah adanya polymorphism. Tanpa hal ini, suatu pemrograman tidak
bisa dikatakan sebagai OOP. Polymorphism sendiri adalah konsep di
mana suatu objek yang berbeda-beda dapat diakses melalui interface
yang sama. Sebagai contoh, kamu memiliki fungsi untuk menghitung
luas suatu benda, sementara benda tersebut berbentuk segitiga,
lingkaran, dan persegi. Tentu, ketiga benda tersebut memiliki rumus
perhitungan tersendiri. Dengan polymorphism, kamu dapat memasukkan
fungsi perhitungan luas ke tiga benda tersebut, dengan tiap benda
memiliki metode perhitungannya sendiri. Ini tentu akan mempermudah
perintah yang sama untuk beberapa class atau subclass tertentu.

2. Tipe Data Dalam Java

3. Class
Class adalah model dari suatu obyek yang menjelaskan karakteristik (sifat) serta
fungsi yang dimiliki dari suatu obyek. Class merupakan wadah (tempat) yang
digunakan untuk menciptakan suatu obyek. Dengan kata lain sebuah Class
merupakan blueprint dari suatu obyek.

4. Atribut
Atribut adalah elemen data dari suatu class. Atribut menyimpan informasi
tentang class. Atribut dapat diartikan sebagai data, variabel, properti atau
sebuah field.

5. Method
Method adalah sebuah function atau fungsi yang ada dalam suatu class

6. Input dan Output dalam Java


a. Input Data Via Console
Selanjutnya buat beberapa kode di bawah ini pada class Gajikaryawan

b. Output Via Console


Secara umum perintah untuk menampilkan output ke layar console
adalah

Perbedaan keduanya adalah jika dengan println() setelah menampilkan


suatu string ke output console, maka terjadi perpindahan baris pada
pointernya. Sedangkan untuk System.output.print() tidak terjadi
perpindahan baris pointernya.
c. Input Data Via GUI (Graphics User Interface)
Selain via console, input data juga bisa dilakukan via GUI. Di dalam Java,
untuk membuat aplikasi berbasis GUI bisa menggunakan SWING sebagai
package nya, sehingga di dalam program perlu melakukan import dengan
perintah sebagai berikut

Contoh program Java untuk menjumlahkan dua buah bilangan integer


yang diinput melalui GUI kemudian menampilkan hasilnya via Message
Dialog.

Adapun tampilan program Java tersebut adalah sebagai berikut

7. Struktur Kontrol Proses


a. Struktur Kontrol Kondisional
b. Struktur Kontrol IF
c. Statement SWITCH

d. Struktur Kontrol Perulangan (Looping)


Struktur kontrol perulangan digunakan untuk mengatur proses yang
dijalankan secara berulang-ulang. Berikut ini beberapa statement yang
dapat digunakan untuk mengatur proses perulangan:
8. Constructor
Di dalam OOP, ada istilah ‘constructor’. ‘Constructor’ ini melekat pada suatu
class, sehingga bisa menset beberapa nilai atribut sekaligus dari suatu obyek
ketika proses instansiasi. Jika sebelumnya setiap ingin menset nilai atribut dari
sebuah obyek, maka prosesnya adalah instansiasi baru set nilai atribut, namun
dengan ‘constructor’ ini kedua langkah tersebut bisa dijadikan dalam satu
langkah saja

9. Larik (Array)
Seperti halnya bahasa pemrogaman yang lain, di dalam Java juga ada
penggunaan Array. Di dalam java nomor indeks suatu array dimulai dari 0.
Berikut ini cara mendeklarasikan sebuah array dengan n buah elemen

10. Pewarisan (Inheritance)


Di dalam Java, sifat suatu class dapat diturunkan atau diwariskan pada sebuah
class lain. Istilah sifat yang diwariskan ini adalah atribut atau method. Class
yang sifatnya diwariskan ini dinamakan superclass, dan class yang sifatnya
mewarisi class lain dinamakan subclass.

11. Exception Handling


Exception adalah peristiwa yang terjadi ketika proses running program yang
mengakibatkan program berhenti, ditandai dengan munculnya pesan error.

12. Error Handling


Error handling atau sering juga disebut exception handling merupakan
mekanisme yang paling diperlukan dalam menangani error yang terjadi pada
saat runtime (program berjalan) atau yang lebih dikenal dengan sebutan runtime
error. Secara umum, adanya kesalahan yang terjadi pada program pada saat
runtime dapat menyebabkan program berhenti atau hang. Untuk itulah
diperlukan mekanisme untuk memastikan bahwa program tetap dapat berjalan
meskipun terdapat kesalahan yang terjadi.

13. Try Dengan Banyak Catch


Try dengan banyak catch dapat digunakan beberapa blok catch untuk satu blok
try. Exception dalam satu program bisa mengatasi banyak exception.

14. Checked/Unchecked Exceptions


15. Melempar Exception ‐ Throw
Java memperbolehkan untuk melempar exception (generate exception) throw ;
Exception yang dilempar adalah sebuah object exception (object exception yang
sudah disediakan oleh java atau yang di create sendiri)
16. Exception Propagation
Exception dapat ditangani pada tingkat yang lebih tinggi, jika di tempat
terjadinya terjadinya exception exception tidak ditangani ditangani secara tepat.
Exception merambat naik (propagate up) melalui method calling hierarchy
sampai exception ditangkap atau sampai mencapai level method main
17. Object Exception
Object exception yang dihasilkan dihasilkan dapat dimanfaatkan untuk
mengetahui lebih lanjut mengenai error atau exception yang terjadi. Exception
merupakan subclass dari class Throwable

18. Overriding Method dan Exception


Overriding method hanya boleh melempar exception yang merupakan subclass
dari exeption yang dilempar oleh overriden method atau sama. Overriding
method boleh mendeklarasikan exception lebih sedikit dari jumlah exception
kepunyaan overridden method kepunyaan overridden method.

19. Koneksi Database Server Melalui Client-Server


Klien-server atau client-server merupakan sebuah paradigma dalam teknologi
informasi yang merujuk kepada cara untuk mendistribusikan aplikasi ke dalam
dua pihak: pihak klien dan pihak server.
Beberapa keuntungan menggunakan Client Server sebagai koneksi database,
berikut keuntungannya :
a. Memungkinkan akses basis data yang besar
Aplikasi menyelesaikan bagian operasi pada client dan mengirimkan
hanya bagian yang dibutuhkan untuk akses basis data melewati jaringan,
menghasilkan data yang sedikit yang akan dikirim melewati jaringan.
b. Jika client dan server diletakkan pada komputer yang berbeda kemudian
CPU yang berbeda dapat memproses aplikasi secara paralel. Hal ini
mempermudah merubah mesin server jika hanya memproses basis data.
c. Server dapat menangani pemeriksaan integrity sehingga batasan perlu
didefinisikan dan validasi hanya di satu tempat, aplikasi program
mengerjakan pemeriksaan sendiri. • Biaya untuk hardware dapat
dikurangi
d. Hanya server yang membutuhkan storage dan kekuatan proses yang
cukup untuk menyimpan dan mengatur basis data
e. Menaikkan kinerja
f. Biaya komunikasi berkurang
g. Meningkatkan kekonsistenan
h. Map ke arsitektur open-system dengan sangat alami

20. Cara Setting Koneksi Database secara Client Server


Untuk lebih jelasnya langsung saja ke tutorialnya sehingga anda akan mudah
mengerti dari pada penjelasan diatas. Maksudnya client-server adalah
databasenya di komputer server dan programnya di client. Dalam pembuatan
database dibutuhkan suatu software yang bisa menjalankan MySQL dan Apache.

21. Desain User Interface


17 Prinsip Desain User Interface
a. User compatibility, yang bisa berarti kesesuaian tampilan dengan tipikal
dari user. karena berbeda user bisa jadi kebutuhan tampilannya berbeda.
b. Product compatibility, istilah ini mengartikan bahwa produk aplikasi yang
dihasilkan juga harus sesuai. memiliki tampilan yang sama/serupa. baik
untuk user yang awam maupun yang ahli.
c. Task compatibility, berarti fungsional dari task/tugas yang ada harus
sesuai dengan tampilannya. misal untuk pilihan report, orang akan
langsung mengartikan akan ditampilkan laporan. sehingga tampilan yang
ada bukanlah tipe data (dari sisi pemrogram).
d. Work flow compatibility, aplikasi bisa dalam satu tampilan untuk
berbagai pekerjaan.
e. Consistency, contohnya, jika anda menggunakan istilah save yang berarti
simpan, maka gunakan terus istilah tersebut.
f. Familiarity, icon disket akan lebih familiar jika digunakan untuk perintah
menyimpan
g. Simplicity, aplikasi harus menyediakan pilihan default yang sederhana
untuk suatu pekerjaan.
h. Direct manipulation, manipulasi secara langsung. misalnya untuk
mempertebal huruf, cukup dengan ctrl+B.
i. Control, berikan kontrol penuh pada user, tipikal user biasanya tidak
mau terlalu banyak aturan
j. WYSIWYG, What You See Is What You Get, buatlah tampilan mirip seperti
kehidupan nyata user. dan pastikan fungsionalitas yang ada berjalan
sesuai tujuan.
k. Flexibility, tool/alat yang bisa digunakan user. jangan hanya terpaku pada keyboard atau
mouse saja.
l. Responsiveness, tampilan yang dibuat harus ada responnya. misal, yang
sering dilihat ketika ada tampilan please wait... 68%...
m. Invisible technology. user tidak penting mengetahui algoritma apa yang
digunakan. Contohnya untuk mengurutkan pengguna tidak perlu
mengetahui algoritma yang digunakan programmer (max sort, bubble
sort, quick sort, dsb)
n. Robustness, handal. Dapat mengakomodir kesalahan user. jangan malah
error, apalagi sampai crash.
o. Protection, melindungi user dari kesalahan yang umum dilakukan.
misalnya dengan memberikan fitur back atau undo.
p. Ease of learning. aplikasi. mudah dipelajari.
q. Ease of use, aplikasi harus mudah digunakan

22. Model View Controller (MVC)


Model View Controller atau MVC adalah sebuah metode untuk membuat sebuah
aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara
bagaimana memprosesnya (Controller).
Komponen MVC, terdiri atas:
a. Model, model mewakili struktur data. Biasanya model berisi fungsi-fungsi
yang membantu seseorang dalam pengelolaan basis data seperti
memasukkan data ke basis data, pembaruan data dan lain-lain.
b. Viewers, viewers adalah bagian yang mengatur tampilan ke pengguna.
Bisa dikatakan berupa halaman web.
c. Controller, controller merupakan bagian yang menjembatani model dan
view. Controller berisi perintah-perintah yang berfungsi untuk
memproses suatu data dan mengirimkannya ke halaman web.

2 Daftar materi 1. Konsep Pemrograman Berorientasi Objek


yang sulit 2. Input dan Output dalam Java
dipahami di
modul ini
3 Daftar materi 1. Struktur Kontrol Proses
yang sering
mengalami
miskonsepsi

Anda mungkin juga menyukai