Rabu, 13 November 2013

Refleksi: Metode Pembelajaran RPL



Dari awal perkuliahan, yang saya rasakan sama seperti mata kuliah lainnya. Selalu ada rasa jenuh dalam proses pembelajaran. Terlebih lagi apabila proses perkuliahan yang selalu sama dan monoton. Yang ada dipikiran bukan materi perkuliahan akan tetapi pertanyaan-pertanyaan seperti “Kapan dosennya selesai?”, “Kapan dosennya keluar?”, dan masih banyak yang lain. Hal ini membuat kebanyakan mahasiswa menjadi malas, yang pada akhirnya membuat mahasiswa tersebut gagal pada mata kuliah itu. Namun, setelah mengikuti perkuliahan ini saya melihat ada sesuatu yang cukup berbeda. Perbedaan ini terdapat pada proses pembelajaran kelompok.

"Kenapa bisa?" "Bukannya pembelajaran kelompok sama saja dengan pembelajaran kelompok pada mata kuliah lain?" Materi diberikan kepada kelompok, lalu dibahas dalam kelompok, dipresentasikan, kemudian didiskusikan bersama-sama. Nah, ini juga yang awalnya terlintas dalam pemikiran saya. Namun, kenyataan yang terjadi berbeda. Kalau dikatakan seperti demikian, pasti yang paling pertama ditanyakan adalah “Dimana Perbedaannya?” Pemahaman ini juga baru saya dapatkan. Oleh karena itu saya akan jelaskan secara detail dari awal.

Nyaris hampir semua dosen menggunakan tipe seperti ini. Saya tidak bermaksud menentang pemikiran dari kebanyakan dosen ataupun mau menilai buruk dari pemikiran tersebut. Namun, kebanyakan dosen apabila ada pembelajaran kelompok, sikap kepedulian terhadap mahasiswanya seakan tidak ada. Maksudnya adalah ketika suatu kelompok disuruh mempertanggung jawabkan materi yang telah diberikan, dosen tersebut menilai secara pribadi. Sehingga apabila ada anggota kelompok yang tidak mengerti atau tidak mengetahui sama sekali tentang materi yang diberikan, maka nilai mahasiswa tersebut secara pribadi akan rendah. Terkadang kelompok tersebut hanya diminta perwakilan satu orang untuk mempertanggung jawabkan materi. Hal ini membuat sebuah pemikian atau mind set bahwa apabila ada satu anggota kelompok yang pintar atau yang mampu memahami materi, maka kelompok tersebut akan memiliki nilai yang bagus.

Pemikiran seperti ini sudah mendarah daging dikalangan mahasiswa. Namun setelah melihat pembelajaran kelompok pada mata kuliah ini, pemikiran itu sudah lenyap total. "Kenapa demikian?" Pemikiran tersebut lenyap sebab pada saat penilaian, Nilai dari suatu kelompok adalah satu. Selain itu, orang yang akan mempertanggung jawabkan materi dipilih secara acak. Hal ini menyebabkan kelompok tersebut secara keseluruhan harus memahami materi yang ada. Setiap anggota kelompok harus saling bekerja sama selama pembelajaran. Yang pintar berusaha mengajarkan kepada yang kurang mampu dan yang kurang mampu berusaha agar bisa cepat memahami materi yang diberikan. Proses inilah yang bisa dikatakan sebagai proses belajar. Kelompok belajar berarti mahasiswa berada dalam satu kesatuan yang saling membantu sebab “Kekuatan dari Suatu Kelompok Terletak pada Orang yang Paling Lemah Pada Kelompok Tersebut

Perbedaan RAD dengan Linear Sequential Model



Seperti yang kita ketahui, Linear Sequential Model dan RAD sama-sama menggunakan prinsip pengerjaan secara terstruktur dan bertahap. Namun, kenyataan menunjukkan bahwa dalam pengerjaannya baik Linear Sequential Model maupun RAD saling bertolak belakang. Berikut penjelasan lebih lanjut mengenai perbedaan kedua model proses tersebut.

Tujuan pengerjaan suatu proyek
Pada Linear Sequential Model bertujuan untuk menghasilkan suatu sistem yang sesuai dengan keinginan dan kebutuhan dari pelanggan. Sedangkan RAD bertujuan untuk menhasilkan suatu sistem yang cepat yang dapat memenuhi semua kebutuhan dari pelanggan. Disini terlihat bahwa pada RAD, terdapat sebuah penekanan yaitu waktu pengerjaan sistem yang cepat. Hal ini menyebabkan terjadinya perbedaan besar dengan Linear Sequential Model. Mengapa demikian? Sebab ketika suatu sistem dikerjakan dengan patokan pengerjaan yang cepat maka yang terjadi adalah sistem yang akan dihasilkan tidak maksimal dan hanya memenuhi kebutuhan pelanggan secara garis besar saja. Selain itu, biaya yang akan dikeluarkan tidak dapat dikontrol. Sedangkan pada Linear Sequential Model, sistem yang akan dihasilkan dapat maksimal baik dalam memenuhi kebutuhan pelanggan secara keseluruhan maupun dari segi biaya yang akan dikeluarkan.


Waktu penyelesaian suatu proyek
Seperti yang telah dijelaskan di atas, pada Linear Sequential Model sistem yang akan dihasilkan maksimal. Hal ini berdampak pada waktu penyelesaiannya. Karena sistem yang ingin dihasilkan maksimal, maka sudah jelas akan membutuhkan waktu yang cukup lama dalam pengerjaannya. Sedangkan pada RAD, sudah ditekankan dari awal bahwa sistem akan dihasilkan dengan cepat. Hal ini menyebabkan proyek-proyek yang dikerjakan dengan menggunakan RAD akan selesai dalam kurung waktu yang relatif lebih cepat jika dibandingkan dengan Linear Sequential Model.

Cara Kerja
Pada Linear Sequential Model, pengerjaan suatu proyek selalu dimulai dari awal atau bisa kita katakan pengerjaannya selalu mulai dari nol. Sedangkan pada RAD, ketika kebutuhan pelanggan sudah diketahui secara jelas, tim-tim yang bekerja tidak memulai dari awal. Tetapi mengambil bahan-bahan yang sudah ada yang konsep dasarnya sama dengan permintaan dari pelanggan. Sehingga yang dikerjakan oleh tim-tim tersebut menjadi sedikit ringan karena tidak perlu memulai lagi dari awal. Cukup mengembangkan yang sudah ada.

RAD? Apakah RAD itu?


RAD? Apa sih RAD itu? Berbicara tentang RAD atau Rapid Application Development berarti kita sedang membicarakan salah satu dari beberapa model proses yang ada. Rapid Application Development atau yang biasa kita sebut dengan RAD merupakan salah satu model proses hasil perkembangan dari model proses sebelumnya yaitu Model air terjun (Waterfall Model) atau yang terkenal dengan sebutan Linear Sequential Model. Maksudnya adalah RAD menerapkan model dari Linear Sequential Model namun menekankan kepada siklus yang relatif pendek serta pembangunan yang cepat. "Kenapa bisa dikatakan pembangunan yang cepat?" Hal ini terjadi karena dalam pengerjaannya, model RAD menerapkan sistem pembagian kerja secara tim. Pembagian kerja tersebut berdasarkan pada pembagian fungsi dari proyek yang akan dikerjakan. Selain itu, tim-tim tersebut mulai bekerja dalam kurung waktu yang relatif sama atau biasanya tim-tim tersebut lansung bekerja secara serentak. Untuk lebih jelasnya, mari kita lihat salah satu contoh gambar di bawah ini.



Seperti yang terlihat pada gambar di atas, terdapat 3 tim yang bekerja dalam sebuah proyek. Seperti yang telah dijelaskan di atas, 3 tim tersebut melakukan tahapan-tahapan yang sama namun setiap tim mengerjakan fungsi dari suatu proyek yang berbeda-beda. Berikut adalah penjelasan tahapan-tahapan di atas :

  • Bussiness Modeling
Pada tahap ini, kebutuhan-kebutuhan dari pelanggan dijelaskan secara detail dalam bentuk fungsi-fungsi yang akan dikerjakan. Kata Bussiness Modeling bukan berarti mewakili kebutuhan-kebutuhan dari pelanggan yang bersifat bisnis saja. Nama tersebut hanya mewakili sebagian kecil dari kebutuhan-kebutuhan yang ada.

  • Data Modeling
Pada tahapan ini, data-data yang ada pada fungsi-fungsi tersebut (fungsi yang telah dijelaskan pada tahap Bussiness Modeling) akan dijelaskan. Kemudian akan diproses lebih lanjut pada tahapan selanjutnya yaitu Process Modeling.

  • Process Modeling
Seluruh data-data dan juga bahan-bahan yang lainnya akan diproses dan diolah pada tahapan ini. Hasil proses tersebut berupa informasi-informasi yang dapat berguna bagi pelanggan dan juga dapat berguna untuk tahapan selanjutnya.

  • Application Modeling
Pada tahapan ini, program mulai dibuat. Informasi-informasi yang telah didapatkan dari tahapan-tahapan sebelumnya digunakan oleh programmer selama pembuatan program. Seluruh konsep yang sudah didapatkan juga dijadikan sebagai acuan  oleh programmer dalama pembuatan program.

  • Testing & Turnover 
Pada tahapan ini, program yang telah jadi akan diuji coba satu per satu dari masing-masing tim. Apabila ada salah satu tim tidak lulus dalam pengujian, maka tim tersebut harus menyelesaikannya dengan cepat. Setelah program dari seluruh tim lulus dalam pengujian,  maka program-program tersebut akan disatukan menjadi satu program utuh yang sesuai dengan permintaan pelanggan.



Setelah kita melihat tahapan-tahapan dari RAD yang tersusun rapi, serta pengerjaan yang cepat. Tentu kita berpikir bahwa model RAD ini sudah cukup ideal untuk dipakai. Namun, pada kenyataannya tidak demikian. "Kenapa bisa?"  Kita tidak bisa melawan kenyataan bahwa setiap model proses pasti memiliki kelebihan tersendiri dan juga memiliki kendala atau kekurangan masing-masing. Oleh karena itu, RAD juga memiliki kelebihan dan juga kekurangan. Berikut ini adalah penjelasan Kelebihan dan Kekurangan dari RAD.

Kelebihan RAD: 


  • Adanya pembagian tugas secara tim, membuat model RAD menjadi sangat ideal dalam mengerjakan proyek yang membutuhkan waktu singkat sebab waktu yang dibutuhkan dalam menyelesaikan sebuah proyek relatif singkat. Hanya sekitar 60 – 90 hari waktu yang dibutuhkan sedangkan secara umum, penyelesaian sebuah proyek memakan waktu sekitar 180 hari. Nominal angka tersebut hanyalah sebagian contoh yang menunjukkan bahwa dengan menggunakan model RAD maka sebuah proyek akan jauh lebih cepat selesai, bahkan bisa mengurangi setengah dari waktu normal.

  • Proses pengembangan ulang tidak memakan waktu yang lama, sebab fungsi-fungsi sudah terbagi secara merata untuk setiap tim sehingga pengembangan dari fungsi-fungsi tersebut tidak membutuhkan waktu yang banyak. Apabila fungsi pada tim 1 yang akan dikembangkan misalnya, maka hanya pada tim 1 saja yang akan melakukan proses pengembangan ulang. Sedangkan tim 2, tim 3, ... tidak perlu melakukan pengembangan ulang.



Kekurangan RAD:

  • Memerlukan banyak sumber daya dalam mengerjakan sebuah proyek. Karena adanya pembagian secara tim berarti membutuhkan orang yang cukup banyak. Misalnya dalam 1 tim berisi 5 orang, apabila sebuah proyek terbagi atas 4 tim maka dibutuhkan paling sedikit 20 orang untuk mengerjakan proyek tersebut. Selain itu, juga diperlukan banyak sumber daya yang lain yang akan diperlukan untuk setiap tim. 

  • Tidak cocok untuk proyek berskala besar. Pengerjaan proyek berskala besar tentunya akan cepat selesai. Namun, semakin besar proyek maka tim yang akan terbagi semakin banyak. Dengan kata lain, sumber daya yang diperlukan akan semakin banyak baik dari segi sumber daya manusianya (jumlah orang yang diperlukan) maupun sumber daya lainnya. Hal ini dapat menyebabkan biaya pengerjaan proyek menjadi membengkak. 

  • Adanya keterbatasan dalam mengambil sebuah proyek. Selain proyek-proyek berskala besar yang sebaiknya tidak diambil, proyek-proyek yang tidak dapat dipecah ( dimodularisasi ) secara fungsi tidak dapat dikerjakan pada model ini. 

  • Penggabungan hasil dari setiap tim sangat memerlukan kerja keras. Sebab setiap tim mungkin memiliki konsep yang berbeda selama pengerjaan. Sehingga apabila hasilnya mau digabungkan, maka seluruh tim harus berkumpul dan saling bekerja sama dalam menggabungkan hasil agar menjadi satu program yang utuh.