Pengertian Handshaking, Protokol, dan SDLC Protokol
A. Handshaking
Handshaking adalah suatu proses
otomatis yang terjadi ketika computer adalah untuk berkomunikasi dengan
perangkat asing untuk menetapkan peraturan untuk komunikasi. ketika computer
berkomunikasi dengan perangkat lain seperti printer, modem, atau server jaringan,
perlu jabat tangan dengan itu untuk membuat sambungan. Salah satu contoh klasik
adalah handshaking modem, yang biasanya bernegosiasi parameter komunikasi untuk
periode singkat bila sambungan pertama kali didirikan, dan setelah itu gunakan
parameter untuk memberikan mentransfer informasi yang optimal melalui saluran
sebagai fungsi dari kualitas dan kapasitas.
Handshaking memungkinkan untuk
menghubungkan system yang relative heterogen atau peralatan melalui saluran
komunikasi tanpa membutuhkan intervensi manusia untuk mengatur parameter.
Didalam proses Handshaking antara DMA
controller dan device controller dilakukan melalui Sepasang kabel yang disebut
DMS-request dan DMA-acknowledge. Device controller mengirimkan sinyal yang
melalui DMA-request ketika akan mentransfer data sebanyak satu word. Dan hal
ini kemudian akan mengakibatkan DMA controller memasukan alamat-alamat yang
diinginkan ke kabel alamat memori, dan juga mengirimkan sinyal melalui kabel
DMA-acknowledge. Setelah sinyal melalui kabel DMA-acknowledge diterima,device
controller mengirimkan data yang dimaksud dan mamatikan sinyal pada
DMA-request itu sendiri.
Tiga langkah dalam transfer DMA:
§
Processor untuk menyiapkan DMA transfer dengan menyediakan data-data dari
semua perangkat, operasi yang akan ditampilkan, alamat memori yang menjadi
sumber dan tujuan data, dan banyaknya byteyang ditransfer.
§
Pengendali DMA ini memulai operasi (menyiapkan bus, menyediakan alamat,menulis dan membaca data)
samapai seluruh blok sudah ditransfer.
§
Pengendali DMA menginterupsi processor, dimana
selanjutnya akan ditentukan tindakan selanjutnya.
§
HandshakingPolling
Adanya software prioritas yang di-poll pertama mendapatkan prioritas tertinggi. Bila processor itu ingin mengakses perangkat, dalam salah satu pendekatannya adalah dengan membiarkan processor melakukan semua pekerjaan. Processor berinteraksi dengan controller melalui protokol yang rumit tetapi dasar Handshaking-nya cukup sederhana.
Adanya software prioritas yang di-poll pertama mendapatkan prioritas tertinggi. Bila processor itu ingin mengakses perangkat, dalam salah satu pendekatannya adalah dengan membiarkan processor melakukan semua pekerjaan. Processor berinteraksi dengan controller melalui protokol yang rumit tetapi dasar Handshaking-nya cukup sederhana.
§
HandshakingInterupsi
Pada interupsi terjadilah bila suatu perangkat M/K ingin memberitahu processor bahwa ia telah siap menerima perintah, output sudah dihasilkan, atau terjadi error.
Pada interupsi terjadilah bila suatu perangkat M/K ingin memberitahu processor bahwa ia telah siap menerima perintah, output sudah dihasilkan, atau terjadi error.
§
Interrupt Request Line Padahal itu kebanyakan CPU, dan ada
dua interrupt request line.
§
Vektor Interupsi dan Vector Chaining bagaimanaada sebuah sinyal
interupsi pada interrupt request line, bagaimana sebuah interrupt
handler mengetahui sumber dari interupsi itu? Apakah harus menelusuri
semua sumber interupsi satu-persatu? Tidak perlu, karenadisetiap interrupt
handler mempunyai alamat memori masing-masing. Alamat ini
adalah offset pada sebuah tabel yang disebut dengan vektor interupsi.
1. Socket Lokal
Socket Lokal adalah socket yang
melakukan komunikasi dengan adanya perantaraan sebuah file yang biasanya
diletakkan pada direktori /tmp atau /usr/tmp ataupun /var/tmp. Didalam socket
ini digunakan umumnya terbatas untuk komunikasi antar aplikasi dalam satu
mesin.
2. Socket Networking
Socket Networking untuk komunikasi antar
aplikasi antar mesin dalam lingkungan jaringan TCP/IP. Dilakukan dengan
sebuah service identifier yaitu berupa nomor port TCP/IP
yang dapat di sambungkan oleh client.
3. Socket Stream
Socket Stream adalah socket
komunikasi full-duplex berbasis aliran (stream) data. Ini dapat dianalogikan seperti komunikasi
telepon. Jika sambungan telepon di salah satu titik putus,
maka komunikasi inilah tidak dapat terjadi. Koneksi model seperti
ini akan menjamin data dapat dipertukarkan dengan baik, dengan memiliki
kelemahan dalam hal penggunaan jalur data yang relatif besar dan tidak boleh
terputus.
4. Socket Datagram
Socket Datagram berkomunikasi dengan
cara yang berbeda. Socket ini tidak membutuhkan koneksi yang tersambung dengan
benar untuk mengirimkan dan menerima data. Model koneksi semacam ini tidak
dapat menjamin data dapat dipertukarkan dengan baik, namun memiliki keunggulan
dalam hal penggunaan jalur data yang minimal.
5. TCP Header
Ukuran dari header TCP ini adalah
bervariasi, ukuran TCP header paling kecil (ketika tidak ada tambahan opsi TCP)
adalah 20 byte.
Adanya mekanisme yang terkait
dengan interupsi tidak hanya digunakan untuk menangani operasi yang
berhubungan dengan perangkat M/K. Sistem operasi juga
bisa menggunakan mekanisme interupsi untuk beberapa
hal, yang diantaranya:
1. Menangani exception
Exception adalah suatu
kondisi yang dimana terjadi sesuatu, atau dari sebuah
operasi yang didapatkan oleh hasil tertentu yang
dianggap dengan khusus sehingga harus mendapatkan perhatian
lebih, contohnya: pembagian dengan nol, pengaksesan alamat memori
yang restricted atau tidak valid, dll.
2. Mengatur virtual memory paging.
3. Menangani perangkat lunak
interupsi.
4. Menangani alur kontrol kernel.
Jika interupsi ini yang terjadi
merupakan permintaan untuk transfer data yang besar, maka penggunaan yang ada
interupsinya menjadi tidak efisien, untuk mengatasinya digunakanlah sebuah DMA.
Protokol adalah sebuah aturan atau
standar yang mengatur atau mengizinkan terjadinya hubungan, komunikasi, dan
perpindahan data antara dua komputer atau lebih. Protokol dapat diterapkan pada
perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan
yang terendah, protocol mendefinisikan koneksi perangkat keras.
·
Protokol secara umum digunakan pada komunikasi real-time dimana standar
digunakan untuk mengatur struktur dari informasi untuk penyimpanan jangka
panjang.
·
Protokol memiliki banyak variasi didalam tujuan penggunaanya. Kebanyakan
protokol memiliki salah satu atau beberapa dari hal berikut:
·
Melakukan deteksi adanya koneksi fisik atau ada tidaknya komputer atau
mesin lainnya.
·
Melakukan metode ”jabat tangan” / (handshaking).
·
Negosiasi berbagai macam karakteristik hubungan.
·
Bagaimana mengawali dan mengakhiri suatu pesan.
·
Bagaimana format pesan yang digunakan.
·
Yang harus dilakukan saat terjadi kerusakan pesan atau pesan yang tidak
sempurna.
·
Mendeteksi rugi-rugi pada hubungan jaringan dan langkah-langkah yang
dilakukan selanjutnya.
·
Mengakhiri suatu koneksi.
·
Efektivitas
·
Kehandalan
·
Kemampuan dalam kondisi gagal dalam neatwork.
Interface adalah menghubungkan dua atau
lebih benda pada suatu titik atau batasan yang terbagi, atau untuk menyiapkan
kedua benda untuk tujuan tersebut.
·
USB
·
RS232
·
RJ-45
·
PS/2
·
PCMCIA
·
VGA Port
·
DVI Port
·
Serial Port
·
Port Paralel
Pengertian SDLC
(Systems Development Life
Cycle ) merupakan siklus hidup pengembangan system.
Dalam rekayasa system dan rekayasa perangkat lunak, SDLC berupa suatu
proses pembuatan dan pengubahan sistem serta model
dan metodologi yang digunakan untuk mengembangkan sistem-sistem
tersebut.
Dalam rekayasa perangkat lunak, konsep
SDLC mendasari berbagai jenis metodologi pengembangan perangkat lunak.
Metodologi-metodologi ini membentuk suatu kerangka kerja untuk perencanaan dan
pengendalian pembuatan sistem informasi, yaitu proses pengembangan
perangkat lunak.
Pengembangan SDLC adalah proses yang
digunakan oleh analis system untuk mengembangkan sistem informasi, termasuk
persyaratan, validasi, pelatihan, dan pengguna (stakeholder)
kepemilikan. Setiap SDLC harus menghasilkan sistem berkualitas tinggi yang
memenuhi atau melampaui harapan pelanggan, mencapai penyelesaian dalam waktu
dan perkiraan biaya, bekerja secara efektif dan efisien di saat ini dan
direncanakan Teknologi Informasi infrastruktur, dan murah untuk
mempertahankan dan biaya efektif.
System Development Life Cycle Adalah
tahapan-tahapan pekerjaan yang dilakukan oleh analis sistem dan programmer
dalam membangun sistem informasi. Langkah yang digunakan meliputi:
1.
Melakukan survei dan menilai kelayakan proyek pengembangan sistem
informasi.
2.
Mempelajari dan menganalisis sistem informasi yang sedang berjalan.
3.
Menentukan permintaan pemakai sistem informasi.
4.
Memilih solusi atau pemecahan masalah yang paling baik.
5.
Menentukan perangkat keras (hardware) dan perangkat lunak (software).
6.
Merancang sistem informasi baru.
7.
Membangun sistem informasi baru.
8.
Mengkomunikasikan dan mengimplementasikan sistem informasi baru.
9.
Memelihara dan melakukan perbaikan/peningkatan sistem informasi baru bila
diperlukan.
Dalam sebuah siklus SDLC, terdapat enam
langkah. Jumlah langkah SDLC pada referensi lain mungkin berbeda, namun secara
umum adalah sama. Langkah tersebut adalah :
1. Analisis sistem, yaitu membuat
analisis aliran kerja manajemen yang sedang berjalan.
2. Spesifikasi kebutuhan sistem,
yaitu melakukan perincian mengenai apa saja yang dibutuhkan dalam pengembangan
sistem dan membuat perencanaan yang berkaitan dengan proyek system.
3. Perancangan sistem, yaitu membuat
desain aliran kerja manajemen dan desain pemrograman yang diperlukan untuk
pengembangan sistem informasi.
4. Pengembangan sistem, yaitu tahap
pengembangan sistem informasi dengan menulis program yang diperlukan.
5. Pengujian sistem, yaitu melakukan
pengujian terhadap sistem yang telah dibuat.
6. Implementasi dan pemeliharaan
sistem, yaitu menerapkan dan memelihara sistem yang telah dibuat.
SDLC memiliki bebrapa model yang cukup
populer dan banyak digunakan contohnya :
·
Waterfall
·
Iterasi
·
RAD (Rapid Application Development)
·
Model Prototyping
Waterfall Development Methodology
Waterfall Development Methodology
merupakan suatu cara pengembangan software yang fase – fasenya berurutan.
Sebuah fase tidak bisa dikerjakan sebelum fase sebelumnya telah selesai
dikerjakan.
Kelebihan dari Waterfall Development
Methodology adalah :
1. Proses pengidentifikasian sistem
memerlukan waktu yang lama sebelum fase programming dimulai
2. Meminimalisasi pengubahan sistem
pada saat proses pengembangan perangkat lunak. Kekurangan dari Waterfall
Development Methodology adalah :
3. Fase perencanaan / design harus
dilakukan pada paper yang khusus sebelum fase programming dimulai.
4. Terjadi selisih waktu yang cukup
lama antara pengajuan sistem dan pembaharuan system
Parallel Development Methodology
merupakan suatu cara pada SDLC yang melakukan fase design dan implementation
secara paralel.
Kelebihan dari Parallel Development
Methodology adalah :
1. Meminimalisasi waktu penjadwalan
2. Meminimalisasi kesempatan untuk
dikerjakan ulang
Kekurangan dari Parallel Development
Methodology adalah :
1. Masih menggunakan dokument di
kertas
2. Menggabungkan subproyek memerlukan
suatu keahlian yang khusus. Biasanya banyak terjadi kegagalan pada saat proses
penggabungannya
Rapid Application Development merupakan
suatu cara penerapan SDLC dengan membuat suatu software
prototype terlebih dahulu dan kemudian dipresentasikan ke costumer. Jika
costumer menyetujuinya, maka software akan dikembangkan lebih lanjut.
Kelebihan Rapid Application Development
adalah :
1. Pengguna dapat memperoleh /
menggunakan sistem lebih awal
2. Pengguna dapat merencanakan
beberpa tambahan untuk versi setelahnya
Kekurangan Rapid Application Development
adalah :
1. Pengguna bekerja dengan sistem
yang sebenarnya belum selesai secara keseluruhan
Agile Development: Extreme Programming
merupakan suatu pengerjaan perangkat lunak secara cepat. Metode ini sangat
cocok untuk proyek perangkat lunak yang membutuhkan waktu lebih instan dalam
pengembangannya.
Kelebihan dari Agile
Development: Extreme Programming adalah :
1. Hasil bisa didapat dalam waktu
yang sangat cepat
2. Bekerja lebih baik dalam projek
dengan tidak ada perubahan yang tak tentu
Kekurangan dari Agile Development:
Extreme Programming adalah :
1. Membutuhkan kedisiplinan tinggi
2. Tepat hanya jika dilakukan di
projek kecil
3. Membutuhkan lebih banyak inputan
dari pengguna
Untuk menentukan metode mana yang lebih
cocok diterapkan dalam pengembangan proyek perangkat lunak, maka harus
memperhatikan hal berikut :
§
Clear user requirements
§
Familiarity with technology
§
Complexity of system
§
Reliability of system
§
Time schedule
§
Schedule visibility
Previous
« Prev Post
« Prev Post
Next
Next Post »
Next Post »
Tidak ada komentar:
Posting Komentar