Monday, March 13, 2017

Pengantar Rekayasa Perangkat Lunak (Software Engineering)

Pengantar Rekayasa Perangkat Lunak (Software Engineering) - Definisi rekayasa (engineering) adalah pemakaian ‘science’ untuk menyelesaikan ‘masalah praktis’.
Ada beberapa definisi perangkat lunak (software) yang pernah dikemukakan antara lain :
  1. Perangkat lunak adalah kumpulan program komputer dengan fungsi tertentu
  2. Perangkat lunak adalah dokumen yang menjelaskan operasi dan penggunaan program (Pressman, 1997).
  3. Perangkat lunak adalah program komputer, prosedur, aturan, dan dokumentasi yang berkaitan serta data, yang bertalian dengan operasi suatu sistem komputer (IEEE, 1993).
Definisi rekayasa perangkat lunak (software engineering) adalah  :
  1. Suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal requirement capturing (analisa kebutuhan pengguna), specification (menentukan spesifikasi dari kebutuhan pengguna), desain, coding, testing sampai pemeliharaan sistem setelah digunakan.
  2. Suatu disiplin yang mengintegrasikan proses/prosedur, metode, dan perangkat tools untuk pembangunan perangkat lunak komputer (Pressman, 1997).
Rekayasa perangkat lunak merupakan serangkaian proses yang amat panjang untuk membuat atau menciptakan suatu perangkat lunak bukan merupakan cabang ilmu komputer  yang mempelajari tentang technical coding.

Tujuan dari rekayasa perangkat lunak (software engineering) adalah  :
  1. Menghasilkan sebuah perangkat lunak yang berkualitas. Yang dimaksud dengan berkualitas dapat dilihat dari tiga sisi :
    1. sisi pengguna/user (individu atau organisasi yang telah mengeluarkan biaya dalam pembangunan perangkat lunak), perangkat lunak yang dibuat harus handal, fleksibel dan efisien. Selain itu biaya dari pemeliharaan, modifikasi dan peningkatan dari system tersebut harus serendah mungkin.
    2. sisi pemakai / user (siapapun yang menggunakan perangkat lunak tersebut), perangkat lunak harus menyediakan fungsi-fungsi yang dibutuhkan oleh pemakai, mudah untuk dipelajari dan mudah digunakan sehingga dapat membantu menyelesaikan tugas tugasnya.
    3. sisi maintainer / modifier (yang memelihara dan memodifikasi perangkat lunak tersebut), perangkat lunak tersebut memiliki sangat sedikit error pada saat penginstallan pertama, source code juga harus terdokumentasi dengan baik, mudah dibaca, terstruktur dan dirancang dengan baik dan bersifat modular.
  2. Tujuan kedua dari RPL adalah menghasilkan perangkat lunak dengan biaya yang efisien.
  3. Sedangkan tujuan ketiga dari RPL adalah menghasilkan perangkat lunak tepat pada waktunya.
Perangkat Lunak dapat diaplikasikan ke berbagai situasi dimana serangkaian langkah prosedural telah didefinisikan. Area Perangkat Lunak berikut menunjukkan luasnya aplikasi potensial :
1. Perangkat Lunak Sistem.
Merupakan sekumpulan program yang ditulis untuk melayani program-program yang lain. Di dalam setiap kasus, area perangkat lunak sistem ditandai dengan eratnya interaksi dengan perangkat keras komputer; penggunaan oleh banyak pemakai; operasi konkuren yang membutuhkan penjadwalan-tukar-menukar sumber-dan pengaturan proses yang canggih; struktur-struktur data yang kompleks; serta interface eksternal ganda.
2. Perangkat Lunak Real-Time.
Program-program yang memonitori/menganalisa/mengontrol kejadian dunia nyata pada saat terjadinya disebut perangkat lunak real-rime. Elemen-elemen perangkat lunak real-time mencakup komponen pengumpul data yang mengumpulkan dan memformat informasi dari lingkungan eksternal, sebuah komponen analisa yang mentransformasi informasi pada saat dibutuhkan oleh aplikasi. Real-time berbeda dengan interaksi atau timesharing. Sistem real-time harus merespon di dalam suatu rentang waktu yang tetap. Waktu respon sebuah sistem interaktif (atau timesharing) secara normal dapat diperpanjang tanpa memberikan resiko kerusakan pada hasil.
3. Perangkat Lunak Bisnis.
Pemrosesan informasi bisnis merupakan area aplikasi perangkat lunak yang paling luas. Sistem diskrit (contohnya payroll, account payable, inventory, dll) telah mengembangkan perangkat lunak sistem informasi manajemen (SIM) yang mengakses satu atau lebih database besar yang berisi informasi bisnis.
4. Perangkat Lunak Teknik dan Ilmu Pengetahuan.
Perangkat lunak teknik dan ilmu pengetahuan ditandai dengan algoritma number crunching. Perangkat lunak ini memiliki jangkauan aplikasi mulai dari aplikasi mulai dari astronomi sampai vulkanologi, dari analisa otomotif sampai dinamika orbit pesawat ruang angkasa, dan dari biologi molekuler sampai pabrik yang sudah diotomatisasi. Computer-aided design, simulasi sistem, dan aplikasi interaktif yang lain, sudah mulai memakai ciri-ciri perangkat lunak sistem genap dan real-time.
5. Embedded Software.
Produk pintar telah menjadi bagian yang umum bagi hampir semua konsumen dan pasar industri. Embedded software dapat memberikan fungsi yang terbatas serta fungsi esoteric (miasl keypad control untuk microwave) atau memberikan kemampuan control dan fungsi yang penting (contohnya fungsi digital dalam sebuah automobile seperti control bahan baker, penampilan dashboard, system rem, dll)
6. Perangkat Lunak Komputer Personal.
Pasar perangkat lunak komputer personal telah berkembang selama decade terkahir. Program pengolah kata, spreadsheet, multimedia, manajemen database, aplikasi keuangan bisnis dan personal, jaringan eksternal atau akses database hanya merupakan beberapa saja dari ratusan aplikasi yang ada.
7. Perangkat Lunak Kecerdasan Buatan.
Perangkat lunak kecerdasan buatan (Artificial Intelligent (AI)) menggunakan algoritma non-numeris untuk memcahkan masalah kompleks yang tidak sesuai utnuk perhitungan atau analisa secara langsung. Area kecerdasan buatan yang aktif adalah sistem pakar, disebut juga sistem berbasis pengetahuan. Sistem yang lain adalah Jaringan Syaraf Tiruan, Voice and Image Recognition, game playing dsb.

Daftar Pustaka :

Fatta, H. 2007. Analisis dan Perancangan Sistem Informasi. Penerbit Andi. Yogyakarta.
Jogiyanto, HM. 2009. Analisis dan Desain Sistem Informasi. Penerbit Andi. Yogyakarta.
O’Brien, James. A. (2005). Pengantar Sistem Informasi Perseptif Bisnis dan Manajerial. Salemba.
Pressman, Roger S. 1997. Software Engineering. New York : Mc Graw Hill.

No comments:

Post a Comment