item(s)

Jumat, 12 September 2014

REKAYASA PERANGKAT LUNAK


Saat ini, perangkat lunak memiliki dua peran. Di satu sisi berfungsi sebagai sebuah produk, dan di sisi lain sebagai kendaraan yang mengantarkan sebuah produk. Sebagai produk, perangkat lunak mengantarkan potensi penghitungan yang dibangun oleh perangkat lunak komputer.
Sebagai kendaraan yang dipakai untuk mengantarkan produk perangkat lunak berlaku sebagai dasar untuk kontrol komputer (sistem operasi), komunikasi informasi (jaringan) dan penciptaan serta kontrol dari program-program lain (peranti dan lingkungan perangkat lunak).


Definisi Perangkat Lunak (PL)
IEEE-Standar Glossary of Software Engineering Terminology, 1990:
“Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system.”
Maksudnya :
Perangkat lunak merupakan kumpulan dari program, prosedur, dan dokumen data lain yang saling berhubungan yang merepresentasikan masalah di dunia nyata yang
dikonfigurasikan dalam sebuah bentuk aplikasi yang harus dikerjakan komputer.


Definisi Rekayasa Perangkat Lunak (RPL)
RPL atau Software Engineering (SE) _ Disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Perangkat Lunak yang dibuat harus mampu:
  1. Tepat waktu
  2. Tepat anggaran
  3. Meningkatkan kinerja
  4. Mengoperasikan prosedur sistem dengan benar

Karakteristik Perangkat Lunak
Perangkat lunak lebih merupakan elemen logika dan bukan merupakan elemen sistem fisik. Dengan demikian, perangkat lunak memiliki ciri yang berbeda dari perangkat keras :
  1. Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk yang klasik (pabrikasi). Biaya untuk perangkat lunak dikonsentrasikan kepada pengembangan. Hal ini berarti proyek perangkat lunak tidak dapat diatur seperti pengaturan proyek-proyek pemanufakturan.
  2. Perangkat lunak tidak pernah usang. Perangkat lunak tidak rentan terhadap pengaruh lingkungan yang merusak yang menyebabkan perangkat keras menjadi usang. Selama hidupnya, perangkat lunak mengalami perubahan (pemeliharaan). Aspek lain dari keusangan menggambarkan perbedaan antara perangkat keras dan perangkat lunak. Bila komponen suatu perangkat keras telah usang, komponen dapat diganti dengan suku cadangnya. Namun tidak ada suku cadang bagi perangkat lunak. Setiap kegagalan perangkat lunak menggambarkan kesalahan dalam perancangan atau proses di mana rancangan diterjemahkan ke dalam kode mesin yang dapat dieksekusi.
  3. Sebagian besar perangkat lunak dibuat secara custom-built, serta tidak dapat dirakit dari komponen yang sudah ada. Perhatikan bagaimana perangkat keras untuk produksi berbasis mikroprosesor dirancang dan dibuat. Setelah masing-masing komponen diseleksi, perangkat keras dapat dipesan secara terpisah. Sementara pada perangkat lunak, tidak katalog komponen perangkat lunak. Memang memungkinkan untuk memesan perangkat lunak secara terpisah, tetapi tetap merupakan satu kesatuan yang lengkap, bukan sebagai komponen yang dapat dipasangkan ke dalam program-program yang baru.


Bentuk produk perangkat lunak:
1. Produk Generik (Umum)
Sistem stand-alone standar yang diproduksi oleh organisasi pengembang dan dijual ke pasar terbuka ke siapapun yg membelinya. Biasa disebut sebagai software shrink-wrapped.
Contoh : pengolah kata (word processor).
2. Produk pesanan (yang disesuaikan)
Sistem yang dipesan oleh pelanggan tertentu. Dikembangkan khusus bagi pelanggan oleh kontraktor perangkat lunak. Contoh : Sistem untuk mendukung proses bisnis tertentu dan sistem kontrol lalu lintas udara.

Perbedaan PENTING antara 2 bentuk perangkat lunak :
  •  Pada produk generik, organisasi yang mengembangkan perangkat lunak mengontrol spesifikasi perangkat lunak.
  •  Pada produk pesanan, spesifikasi biasanya dikembangkan dan dikontrol oleh organisasi yang membeli perangkat lunak tersebut.

Karakteristik perangkat lunak yang baik:
  •  Mempunyai daya guna yang tinggi (usability)
  •  Mempunyai kinerja sesuai fungsi yang dibutuhkan pemakai
  •  Mampu diandalkan (be reliable)
  •  Mudah dirawat/diperbaiki (maintenability)
  •  Lebih efisien
  •  Mempunyai antarmuka yg menarik (eye cathcing user interface)
  •  Mempunyai siklus hidup yang cukup lama (long life time)


Aplikasi Perangkat Lunak
Perangkat lunak dapat diaplikasikan ke berbagai situasi di mana serangkaian langkah prosedural (seperti algoritma) telah didefinisikan.

Perangkat Lunak Sistem. Perangkat lunak sistem merupakan sekumpulan program yang ditulis untuk melayani program-program yang lain. Banyak perangkat lunak sistem (misal kompiler, editor, dan utilitas pengatur file) memproses struktur-struktur informasi yang lengkap namun tetap. Perangkat lunak sistem ditandai dengan eratnya interaksi dengan perangkat keras komputer.

Perangkat Lunak Real-Time. Program-program yang memonitor/menganalisis kejadian dunia nyata pada saat terjadinya disebut perangkat lunak real-time. Elemen-elemen perangkat lunak real-time mencakup komponen pengumpul data yang mengumpulkan dan memformat informasi dari lingkungan eksternal, sebuah komponen analisis yang mentransformasi informasi pada saat dibutuhkan oleh aplikasi, sebuah komponen kontrol/output yang memberi respon kepada lingkungan eksternal, serta sebuah komponen monitor yang mengkoordinasi semua komponen lain agar respon real-timenya (I milidetik sampai 1 menit) dapat tetap terjaga. Perlu dicatat di sini bahwa real-time berbeda dengan interaksi atau timesharing. Sistem real-time harus merespon di dalam suatu rentang waktu yang tetap. Waktu respon sebuah sistem interaktif (timesharing) secara normal dapat diperpanjang tanpa memberikan risiko kerusakan pada hasil.

Perangkat Lunak Bisnis. Sistem diskrit (contohnya payroll, account receivable/payable, inventory) telah mengembangkan perangkat lunak sistem informasi manajemen (MIS) yang mengakses satu atau lebih database besar yang berisi informasi bisnis. Aplikasi perangkat lunak bisnis juga meliputi penghitungan klien/server serta penghitungan interaktif (misal pemrosesan transaksi point-of-sale).

 Perangkat Lunak Teknik dan Ilmu Pengetahuan. Perangkat lunak teknik dan ilmu pengetahuan ditandai algoritma number crunching. Perangkat lunak ini memiliki jangkauan aplikasi mulai dari astronomi sampai vulkanologi, dari analisis 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.

Embedded Software. Embedded software ada dalam read-only memory dan dipakai untuk mengontrol hasil serta sistem untuk keperluan konsumen dan pasar industri. Embedded software dapat melakukan fungsi yang terbatas serta fungsi esoterik (misal key pad control untuk microwave) atau memberikan kemampuan kontrol dan fungsi yang penting (contohnya fungsi dijital dalam sebuah automobil seperti kontrol bahan bakar, penampilan dash-board, sistem rem, dll).

Perangkat Lunak Komputer Personal. Pengolah kata, spreadsheet, grafik komputer, multimedia, hiburan, manajemen database, aplikasi keuangan, bisnis dan personal, jaringan eksternal atau akses database hanya merupakan beberapa saja dari ratusan aplikasi yang ada.

Perangkat Lunak Kecerdasan Buatan. Perangkat lunak kecerdasan buatan (Artificial Inteligent /AI) menggunakan algoritma non-numeris untuk memecahkan masalah kompleks yang tidak sesuai untuk perhitungan atau analisis secara langsung. Perangkat lunak kecerdasan buatan adalah pengenalan pola (image dan voice), pembuktian teorema, dan permainan game. Di tahun-tahun terakhir, cabang perangkat lunak kecerdasan buatan yang baru, yang disebut artificial neural network, telah berkembang. Jaringan syaraf mensimulasi struktur proses-proses otak dan kemudian membawanya kepada perangkat lunak kelas baru yang dapat mengenali pola-pola yang kompleks serta belajar dari pengalaman-pengalaman masa lalu.


Krisis Perangkat Lunak
  •    Masalah yang muncul:
  1. Estimasi jadwal dan biaya yang seringkali tidak tepat
  2. Produktivitas orang-orang software yang tidak dapat mengimbangi permintaan software
  3. Kualitas software yang kurang baik.
  •    Kurangnya pengetahuan tentang:
  1.   Bagaimana mengembangkan software
  2.   Bagaimana memelihara software yang ada, yang berkembang dalam jumlah besar
  3.   Bagaimana mengimbangi permintaan software yang makin besar.

Mitos Perangkat Lunak
  • Mitos manajemen. Manajer yang bertanggung-jawab terhadap masalah perangkat lunak, seperti juga manajer pada kebanyakan disimplin, sering mengalami tekanan karena masalah pengaturan keuangan, menjaga jadwal agar tidak kacau, dan peningkatan kualitas.
  • Mitos Pelanggan. Pelanggan mempercayai mitos tentang perangkat lunak karena manajer dan para pelaksana yang bertanggung-jawab atas masalah perangkat lunak hanya bekerja sedikit saja untuk memperbaiki kesalahan informasi. Mitos ini membawa ke arah pengharapan yang salah (oleh pelanggan) dan ketidak-puasan pengembang.
  • Mitos Para Praktisi. Seperti yang ditulis sebelumnya, selama masa awal perangkat lunak, pemrograman dilihat sebagai sebuah karya seni. Cara dan kebiasaan lama tetap sukar lenyap.
Quantity : Add to Cart

Tidak ada komentar:

Posting Komentar

Blogroll

About

Blogger templates