search

Pengikut

Sabtu, Desember 07, 2013

Mitos Software Engineering

Mitos Software Engineering
Dalam Rekayasa Perangkat Lunak terdapat bermacam-macam pendapat mengenai proses-nya, tapi kebanyakan pendapat yang umum ada di masyarakat justru hanya sekedar mitos atau tidak berdasar sama sekali karena tidak dapat dibuktikan benar atau tidak. Tapi tenang, saya akan menjelaskan sedikit mengenai mitos dan kenyataan dalam Rekayasa Perangkat Lunak yang saya dapat waktu kuliah (wuih, kayak orang pinter aja). Berikut ini beberapa mitos yang umum mengenai Rekayasa Perangkat Lunak : 

Mitos dipihak manajemen

MITOS
KENYATAAN
Adanya panduan & prosedur, pasti lancar
Apakah: Disadari keberadaannya ? lengkap ? dipakai ? sesuai kebutuhan ?
Peralatan baru & modern
Penguasaan tool lebih penting dari hardware/ software
Bila terlambat, tambah programmer
Tambah programmer akan semakin lambat (karena harus menyesuaikan diri)

Mitos dipihak pemakai 

MITOS
KENYATAAN
Tujuan sistem secara umum cukup untuk   membuat software, rincian belakangan saja    saat program dikembangkan
Rincian kebutuhan sangat penting
  • Fungsi
  • Performance 
  • Antar-muka 
  • Batasan rancangan 
  • Kriteria validasi 
  • Dll 
Hanya bisa diperoleh dengan komunikasi yang intensif
Perubahan kebutuhan mudah diakomodasi oleh pengembang perangkat lunak 
Dampak sangat bergantung pada tahap mana perubahan terjadi

Mitos dipihak pengembang 

MITOS
KENYATAAN
Program selesai, pekerjaan selesai
50% - 70% usaha dihabiskan setelah program diserahkan ke user untuk pertama kalinya.
Kualitas hanya bisa diketahui setelah program berjalan (running)
Kualitas dapat dijaga sejak perangkat lunak dikembangkan
Yang diserahkan ke user adalah program
Yang diserahkan adalah konfigurasi perangkat lunak, Program ditambah dokumentasi

Referensi 
  1. Roger S. Pressman, Software Engineering, A Beginner’s Guide, McGraw Hill, 1998.
  2. Roger S. Pressman, Software Engineering, A PRACTITIONER’S APPROACH, McGraw Hill, 2001.
  3. Al Bahra Bin Ladjamudin, Rekayasa Perangkat lunak, Graha Ilmu, 2006.
Sabtu, November 23, 2013

Jenis-jenis Software

jenis-jenis software
Jenis-jenis Software (Perangkat Lunak) - Sebelumnya saya telah membahas mengenai rekayasa software, sekarang saya akan menjelaskan sedikit mengenai jenis-jenis software pada komputer. Flash back, dulu waktu smk saya tau-nya software hanya ada 4 yaitu:
  1. Software System (Sistem Operasi)
  2. Sofware Bahasa (Bahasa Pemrograman)
  3. Software Application (Program Apliaksi)
  4. Software Utility (Program Bantu)

Tapi berbeda saat ada dibangku kuliah, jenis software hanya dibagi menjadi 2 yaitu: berdasarkan fungsi dan aplikasi-nya. Berikut ini penjelasan lebih lengkap-nya

Jenis Software berdasarkan Fungsi-nya:

1. Perangkat lunak Sistem
Perangkat lunak yang kegunaannya lebih banyak ditujukan untuk operasional komputer:
  • Sistem operasi (Windows, linux, MacOS,dll).
  • Penerjemah bahasa pemrograman (compiler/interpreter). (C, Java, C++, C# compiler dll). 

2. Perangkat lunak Aplikasi
Perangkat lunak yang kegunaannya lebih banyak ditujukan untuk membantu menyelesaikan masalalah-masalah yang dihadapi oleh pemakai.
  • Program paket yang sudah jadi (word, exel, photoshop dll). 
  • Program aplikasi buatan sendiri.

Jenis Software berdasarkan Aplikasi-nya:

1. Perangkat Lunak Sistem (Sistem Software)
Sekumpulan program yang ditulis untuk kepentingan program lain
contoh : editor, driver dan lain-lain.

2. Perangkat Lunak Waktu Nyata (Real Time Software)
Suatu perangkat lunak yang berfungsi mengendalikan, memonitor atau menganalisis kejadian (event) yang terjadi pada keadaan nyata (seketika).

3. Perangkat Lunak Bisnis (Business Software)
Perangkat lunak yang memberikan fasilitas operasi untuk bisnis atau fasilitas pengambilan keputusan manajemen.
contoh : sistem akuntansi, inventory, payroll dan lain-lain.

4. Perangat Lunak Rekayasa dan Sains (Engineering and Scientific Software)
Perangkat lunak yang digunakan di dalam bidang aplikasi teknik dan kerekayasaan. Perangkat lunak jenis ini biasanya berhubungan dengan komputasi data numerik, CAD (Computer Aided Design), simulasi sistem, dan lain-lain.
contoh : AutoCAD.

5. Embedded Perangkat lunak yang ditanam pada suatu chip (EEPROM)
Perangkat lunak ini terintegrasi dengan perangkat keras dan berfungsi mengatur kinerja dari perangkat keras tersebut.
contoh : microwave oven, telpon genggam, pengaturan avionik pesawat udara, dan lain-lain.

6. Perangkat Lunak Komputer Pribadi (Personal Computer Software)
Banyak digunakan pada aplikasi yang bersifat perorangan
contoh : pengolah kata, spreadsheet, game, DBMS dan lain-lain.

7. Perangkat Lunak Intelegensia Buatan (Artificial Intelligent Software)
Dibuat dengan menggunakan teknik algoritma non-numerik untuk memecahkan masalah yang kompleks, digunakan dalam bidang aplikasi kecerdasan buatan
contoh : game, expert sistem, neural network, dan lain-lain.

Tambahan : 
Sebuah Software pasti memiliki copyrights atau hak pakai atau bahasa sederhana-nya adalah hak cipta/hak paten sebagai syarat bagi pengguna untuk memakai sebuah software. Berdasarkan cara mendapatkannya dan hak pemakaian, software dapat digolongkan: 
Shareware => Berbayar dan tanpa kode sumber
Freeware => Tidak berbayar (gratis) dan tanpa kode sumber
Free dan Open Source Software => Tidak berbayar dan disertai kode sumber
Jumat, November 22, 2013

Rekayasa Perangkat Lunak | Software

software

Definisi Perangkat Lunak (Software)

  1. Program komputer, prosedur, aturan, dan dokumentasi yang berkaitan serta data, dengan operasi suatu sistem komputer (IEEE, 1993).
  2. Instruksi (program komputer) yang bila dieksekusi dapat menjalankan fungsi tertentu, Struktur data yang dapat membuat program memanipulasi informasi, dan Dokumen yang menjelaskan operasi dan penggunaan program (Pressman, 1997).

Definisi Rekayasa Perangkat Lunak

rekayasa software
  1. Pembentukan dan penggunaan prinsip rekayasa (engineering) untuk mendapatkan perangkat lunak secara ekonomis namun andal dan dapat bekerja secara efesien pada komputer (Fritz Bauer, 1968) 
  2. Penerapan pendekatan yang sistematis, disiplin, dan terukur untuk pengembangan, operasi, dan pemeliharaan perangkat lunak (IEEE, 1993) 
  3. Suatu disiplin yang mengintegrasikan proses/prosedur, metode, dan perangkat tools untuk pembangunan perangkat lunak komputer (Pressman, 97)

Tujuan Rekayasa Perangkat Lunak 

perancangan model software
Dari gambar di atas dapat disimpulkan bahwa bidang rekayasa perangkat lunak akan selalu berusaha menghasilkan output yang kinerjanya tinggi, biaya rendah dan waktu penyelesaian yang tepat
Secara lebih khusus kita dapat menyatakan tujuan Rekayasa Perangkat Lunak adalah: 

  • Memperoleh biaya produksi perangkat lunak yang rendah 
  • Menghasilkan perangkat lunak yang kinerjanya tinggi, andal dan tepat waktu 
  • Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform  
  • Menghasilkan perangkat lunak yang biaya perawatannya rendah.

Referensi 
Roger S. Pressman, Software Engineering, A Beginner’s Guide, McGraw Hill, 1998. 
Roger S. Pressman, Software Engineering, A PRACTITIONER’S APPROACH, McGraw Hill, 2001. Al Bahra Bin Ladjamudin, Rekayasa Perangkat lunak, Graha Ilmu, 2006.