Feeds:
Pos
Komentar

Archive for the ‘Rekayasa Perangkat Lunak’ Category

Belajar OOP

Setiap setelah UTS saya selalu melakukan review terhadap materi kuliah yang saya sampaikan. Salah satu tujuannya adalah untuk mengingatkan mahasiswa supaya memahami kembali materi yang sudah dan akan disampaikan. Dengan demikian diharapkan mahasiswa bisa melakukan evaluasi diri terhadap pencapaian kompetensinya.

Review yang saya lakukan biasanya mengenai substansi dari mata kuliah. Sebagai contoh, untuk mata kuliah Pemrograman Berorientasi Objek atau Object-oriented Programming (OOP):

Pemahaman tentang OOP
OOP adalah teknik untuk membuat program objek, yaitu program yang tersusun dari kelas dan objek yang saling berhubungan. Hubungan antar kelas/objek ini dapat dilihat baik saat program ditulis maupun saat program dieksekusi.

Karena OOP merupakan teknik pembuatan program, maka ada pendekatan yang digunakan. Ada aturan yang harus diikuti saat menyusun programnya, dan ada tools yang digunakan untuk menuliskan programnya.

Belajar OOP
Belajar OOP adalah belajar pemrograman, oleh karena itu ruang lingkup pembahasannya mencakup:

  1. Belajar ide atau pendekatan yang menjadi konsep dasar OOP.
  2. Belajar bagaimana menerapkan konsep dasar itu menjadi berbagai bentuk OOP.
  3. Belajar bahasa pemrograman yang akan digunakan untuk membuat berbagai bentuk OOP, seperti struktur program, sintaks penulisan, atau mekanisme eksekusi program.
  4. Belajar menggunakan tools bahasa pemrograman untuk menulis program, kompilasi, dan eksekusi.
  5. Belajar menemukan dan mengartikan kesalahan program, dan memperbaikinya.
  6. Belajar bagaimana mengimplementasi 1 s.d. 5 untuk membuat sebuah aplikasi yang utuh.

Peta Materi OOP
Mengacu pada ruang lingkup belajar OOP diatas, peta materi OOP bisa seperti ini:

peta-materi-oop

(Klik disini untuk melihat gambar yang lebih besar)

Supaya semua materi dapat tersampaikan, ada strategi pembelajaran dan prioritas materi yang harus dirancang. Mana yang harus disampaikan di kelas, di laboratorium, saat asistensi, atau yang harus dipelajari dan dikerjakan sendiri oleh mahasiswa.

Semoga bermanfaat!

Read Full Post »

Perangkat lunak dibuat supaya bisa digunakan oleh pemakai untuk membantu menyelesaikan masalah/pekerjaannya. Oleh karena itu, hal pertama yang harus dilakukan saat membuat perangkat lunak adalah memahami masalah/pekerjaan yang akan dibantu penyelesaiannya tersebut.

The first step in solving any problem is to understand it. We often propose solutions to problems that we do not understand and then are surprised when the solutions fail to have the anticipated effect.

Perangkat lunak digunakan oleh pemakai di lingkungan operasional dengan teknologi tertentu sebagai bagian dari sistem yang lebih besar. Oleh karena itu, hal kedua yang harus dilakukan saat membuat perangkat lunak adalah memahami lingkungan operasional, teknologi dan sistem yang menjadi tempat dimana perangkat lunak digunakan.

Perangkat lunak yang dibuat harus memenuhi apa yang diinginkan oleh pemakai (bukan yang diinginkan developer), ekonomis (memberikan keuntungan bagi developer), dan andal (dapat digunakan dalam jangka waktu yang lama). Oleh karena itu, hal ketiga yang harus dilakukan saat membuat perangkat lunak adalah menerapkan konsep, prinsip atau best practices rekayasa perangkat lunak.

Ada yang mau menambahkan?

Read Full Post »

Beberapa waktu yang lalu, saya berdiskusi dengan pak Hendayun, penanggung jawab Program Magister Teknik Informatika Universitas Langlangbuana (Unla). Topik yang kami bicarakan saat itu adalah tentang tingkat pemahaman Rekayasa Perangkat Lunak (RPL) dari sisi dosen atau pengajarnya. Kami berdiskusi dengan mengacu pada isi slide presentasi yang sudah beliau buat.

Is software engineering real engineering?

(lebih…)

Read Full Post »

Untuk mengetahui apakah mahasiswa sudah mengerti subtansi materi dari mata kuliah yang berkaitan dengan pemrograman, biasanya saya lontarkan sebuah pertanyaan, “Apa artinya belajar pemrograman?”. Seperti biasa response yang saya terima sangat beragam. Ada yang menjawab dengan benar, ada yang menjawab sekedarnya, ada yang cuma berkomentar, ada juga yang tersenyum manis atau nyengir, berharap dosennya sendiri yang menjawab. 🙂

Secara harfiah, belajar pemrograman artinya belajar membuat program, belajar menyusun kumpulan instruksi yang mengikuti sistematika dan logika tertentu untuk mencapai tujuan yang sudah ditetapkan sebelumnya. Belajar pemrograman dapat juga diartikan sebagai belajar strategi dan cara pemecahan masalah, untuk kemudian dituangkan dalam suatu notasi yang disepakati bersama yaitu bahasa pemrograman. (lebih…)

Read Full Post »

Saat membahas materi object-oriented analysis (OOA) di kuliah Analisis Perangkat Lunak II, kesulitan yang sering dialami mahasiswa adalah saat harus mengidentifikasi kelas analisis dan menentukan interaksinya. Mungkin karena masih kurangnya jam terbang di object-oriented programming (OOP) yang menjadi prasyarat kuliah ini. (lebih…)

Read Full Post »

Dua minggu terakhir ini saya membahas dan mendiskusikan materi perancangan perangkat lunak dengan mahasiswa IT Telkom di kuliah Rekayasa Perangkat Lunak.

Karena ada handicap di jam terbang programming dan kesesuaian metode perancangan dengan tool implementasi yang mereka pilih, maka saya gunakan pendekatan bottom up berikut untuk menjelaskan teknis perancangan prosedural dan implementasinya dengan PHP. (lebih…)

Read Full Post »

Teknik konvensional maupun teknik terstruktur dua-duanya merupakan pendekatan atau cara untuk membuat perangkat lunak. Demikian juga dengan teknik berorientasi objek. Teknis pelaksanaan pembuatan perangkat lunak dengan teknik-teknik tersebut berbeda satu sama lainnya, karena sudut pandang (paradigma) yang digunakannya pun berbeda. (lebih…)

Read Full Post »

Teknik Terstruktur (Structured Technique) mulai dikenal sekitar tahun 1969 saat Niklaus Wirth mempopulerkan Pascal sebagai bahasa pemrograman untuk membuat program terstruktur. Konsep yang mendasari teknik ini adalah Pemrograman Terstruktur (Structured Programming) yang digagas oleh Edsgar W. Dijkstra. Pemrograman Terstruktur memungkinkan semua logika program tersusun dari kombinasi tiga struktur dasar, yaitu sekuensi (sequence), pemilihan (selection), dan pengulangan (repetition/looping). Dengan demikian program dapat ditulis dengan sedikit atau tanpa pernyataan GOTO. (lebih…)

Read Full Post »

Mencermati hasil tugas akhir/skripsi mahasiswa, materi kuliah yang diajarkan beberapa teman dosen, dan dokumentasi proyek yang dibuat beberapa partner kerja, masih sering ditemukan penggunaan metode/teknik dan alat bantu (tools) “gado-gado” untuk membuat perangkat lunak (software development). Sah-sah saja hal itu dilakukan asal ada penjelasan mengapa teknik dan alat bantu “gado-gado” tersebut digunakan. Juga penjelasan bagaimana penggunaan sebenarnya. (lebih…)

Read Full Post »