Sabtu, 20 Februari 2010

REKAYASA PERANGKAT LUNAK


PERANGKAT LUNAK
Perangkat lunak adalah perangkat yang menghubungkan atau mengkomunikasikan antara perangkat keras dengan pengguna.
Perangkat lunak dapat dikategorikan menjadi tiga, yaitu:
1.Perangkat lunak system
Perangkat lunak system adalah perangkat lunak yang mengelola perangkat keras dan perangkat lunak yang digunakan oleh komputer. Contoh perangkat lunak system yaitu sistemoperasi, seperti Windows,Linux,Leopard, dll.
2.Perangkat lunak aplikasi
Perangkat lunak aplikasi adalah perangkat lunak yang berfungsi untuk membantu melakukan berbagai tugas sehari-hari, misalnya Microsoft Office, Open Office, dll.
3.Bahasa pemrograman
Bahasa pemrograman merupakan perangkat lunak yang berfungsi mengkonversikan arsitektur dan algoritma yang dirancang manusia ke dalam format yang dapat dijalankan komputer. Contoh bahasa pemrograman yaitu VB, Pascal, Delphi,dll.
Karakteristik perangkat lunak:
1.Perangkat lunak merupakan produk yang lebih menekankan pada kegiatan rekayasa dibandingkan kegiatan manufacturing.
2.Perangkat lunak bukanlah produk yang dapat usan untuk kemudian dibuang seperti perangkat keras.
3.Kebanyakan perangkat lunak tidak dibangun dari perangkat lunak yang sudah ada.

REAKAYASA PERANGKAT LUNAK

Rekayasa perangkat lunak merupakan teknik pengembangan perangkat lunak yang telah ada untuk kemudian dihasilkan sebuah perangkat lunak yang lebih efektif, efisien, dan memudahkan penggunaannya.
rekayasa perangkat lunak dapat juga diartikan sebagai satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan sebagainya.

MITOS PERANGKAT LUNAK
Perangkat lunak kini merupakan suatu hal yang sudah tidak asing lagi dalam kehidupan manusia. Hampir tiap orang kini telah menggunakan teknologi komputer dan memanfaatkan bantuan berbagai perangkat lunak untuk membantu menyelesaikan berbagai aktivitas sehari-hari. Namun demikian, perangkat lunak tersebut tidak luput daru berbagai mitos-mitos atau isu-isu yang beredar, yaitu diantaranya:
1.Mitos : Kebutuhan proyek berubah terus, tapi perubahan tersebut bisa diakomodasi dengan mudah karena perangkat lunak bersifat fleksibel.
Fakta : ika ada perhatian serius pada definisi awal, perubahan dapat diakomodasi dengan mudah. Jika perubahan terjadi selama proses perancangan, biaya meningkat dengan cepat. Jika perubahan setelah launching, biayanya bisa lebih mahal daripada membuat baru.
2.Mitos : Tidak ada cara untuk menilai kualitas program, kecuali program itu berjalan (running).
Fakta : Salah satu mekanisme jaminan mutu PL yang paling efektif dapat diperkirakan di awal proyek (Formal Technical Review). Software review merupakan “filter mutu” yang lebih efektif daripada testing untuk menemukan kesalahan pada PL.
3.Mitos : Satu-satunya yang dapat disampaikan untuk sebuah proyek yang sukses adalah program yang berjalan.
Fakta : Program yang berjalan hanya merupakan salah satu bagian dari konfigurasi PL yang meliputi program, dokumen, dan data. Dokumentasi membentuk pondasi bagi perkembangan yang sukses dan memberikan tuntunan pada pemeliharaan PL.

Beberapa mitos diatas merupakan contoh mitos perangkat lunak yang sering beredar baik di kalangan user ataupun programmer. Namun masih banyak lagi mitos-mitos perangkat lunak lain yang beredar seiring dengan perkembangan perangkat lunak yang semakin maju.

EVOLUSI PERANGKAT LUNAK
1. Era Pioner
Pada era ini, perangkat lunak merupakan satu kesatuan dengan perangkat kerasnya. Penggunaan komputer oleh user dilakukan secara langsung. semua hasil proses yang dikerjakan oleh komputer diprint out.
2. Era Stabil
Pada era ini mulai di kenal sistem basis data, yang memisahkan antara program (pemroses) dengan data (yang di proses). Pada era ini sebuah perangkat lunak yang dijalankan oleh komputer sudah bisa menjalankan perintah multitasking dan mampu melayani multi user.
3. Era Mikro
pada era ini sudah mulai muncul perangkat lunak sistem, yang mampu menangani perangkat lunak aplikasi yang digunakan dalam komputer untuk membantu melakukan suatu pekerjaan tertentu dan dapat digunakan oleh user secara langsung. pada era ini, sudah mulai kelihatan tanda-tanda berkembangnya kecerdasan buatan.
4. Era Modern
Pada era ini, perangkat lunak sudah digunakan oleh banyak orang. Pembuatan perangkat lunak juga bukan hanya kegiatan yang khusus dilakukan oleh beberapa orang ahli saja, namun juga telah mulai banyak dipelajari dan dilakukan oleh banyak orang. Sehingga perkembangan dan kreatifitas di bidang perangkat lunak juga terus berkembang dengan cepat, diantaranya perangkat lunak telah mampu mengenali suara, gambar, gerak, dll.

MODEL-MODEL PERANGKAT LUNAK
1.Model konvensional
model konvensional diartikan sebagai sebuah pemodelan perangkat lunak yang telah ditemukan terdahulu. Namun demikian bukan berarti model-model konvensional ini tidak dapat digunakan lagi. Model-model konvensional ini tetap dapat digunakan, namun mungkin memiliki beberapa kekurangan dibandingkan model evolusioner yang telah diperbaharui.
Model-model konvensinal ini terdiri dari:
a. Model Waterfall
Model ini mengusulkan sebuah pendekatan kepada perkembangan software yang sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. Dimodelkan setelah siklus rekayasa konvensional, model waterfall melingkupi aktivitas-aktivitas sebagai berikut:rekayasa dan pemodelan sistem, analisis kebutuhan software, desain, generalisasi kode, pengujian, pemeliharaan.
b. Model Spiral
Model spiral adalah model proses software yang evolusioner yang merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek sistematis dari model waterfall. Model ini berpotensi untuk pengembangan versi pertambahan software secara cepat. Di dalam model spiral, software dikembangkan di dalam suatu deretan pertambahan. Selama awal iterasi, rilis inkremental bisa merupakan sebuah model atau prototipe kertas. Selama iterasi berikutnya, sedikit demi sedikit dihasilkan versi sistem rekayasa yang lebih lengkap. Model spiral dibagi menjadi sejumlah aktifitas kerangka kerja, disebut juga wilayah tugas, di antara tiga sampai enam wilayah tugas, yaitu:Komunikasi pelanggan,Perencanaan,Analisis Resiko,Perekayasaan,Konstruksi dan peluncuran,Evaluasi pelanggan.
c. Rapid Application Development
Rapid Application Development
Model RAD adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik increment (bertingkat). RAD menekankan pada siklus pembangunan pendek/singkat/cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Karena dipakai terutama pada aplikasi sistem konstruksi, pendekatan RAD melingkupi fase-fase sebagai berikut:Business modeling,Data modeling,Proses modeling,Application Generation,Testing dan turnover.

2.Model evolusioner
Model ini berdasarkan pada ide pengembangan pada implementasi awal yang akan menghasilkan komentar pemakai sehingga dapat dilakukan perbaikan melalui banyak versi sampai sistem yang mencukupi dapat dikembangan. Selain memiliki aktivitas-aktivitas yang terpisah model ini memberikan feedback dengan cepat dan serentak.
Tipe Model Evolusioner
a.Pemrograman Evolusioner
bekerjasama dengan user untuk menghasilkan kebutuhan-kebutuhan dan menyampaikan sistem akhir kepada user.
b.Pemodelan
Model/contoh difokuskan pada penelitian bagian-bagian kebutuhan user yang kurang dimengerti.
Kelebihan
Lebih efektif daripada pendekatan waterfall untuk hal pengembangan perangkat lunak yang harus dengan segera dapat memenuhi kebutuhan costumer.
Kekurangan (dari segi teknik) :
1. proses tidak visibel
2. sistem biasanya kurang terstruktur
3. ketrampilan khusus jarang dimiliki

Spiral Boehm
Pendekatan alternatif diusulkan oleh Boehm (1988). Boehm mengusulkan sebuah model yang secara eksplisit menjelaskan bahwa resiko yang disadari mungkin membentuk dasar model proses umum.Model Boehm bebrbentuk spiral. Setiap loop mewakili sebuah tahap dari proses perangkat lunak.
Tidak ada tahap yang tetap dalam model ini. Manajemen harus memutuskan bagaimana membentuk proyek kedalam tahap-tahap. Perusahaan biasanya bekerja dengan beberapa model umum dengan tahap tambahan untuk proyek khusus atau ketika masala-masalah ditemukan selama pembuatan proyek.
Setiap loop dibagi dalam 4 sektor,yaitu:Pembuatan tujuan,Perkiraan dan pengurangan resiko,Pengembangan dan validasi,Perencanaan.

Prototipe
Prototipe dimulai dengan pengumpulan kebutuhan. Pengembang dan pelanggan bertemu dan mendefinisikan objektif keseluruh dari software, mengidentifikasi segala kebutuhan yang diketahui, dan area garis besar dimana definisi lebih jauh merupakan keharusan kemudian dilakukan ”perancangan kilat”. Perancangan kilat berfokus pada penyajian dari aspek-aspek software tersebut yang akan nampak bagi pelanggan. Perancangan kilat membawa kepada konstruksi sebuah prototipe. Prototipe tersebut dievaluasi oleh pelanggan dan dipakai untuk menyaring kebutuhan pengembangan software. Iterasi terjadi pada saat prototipe disetel untuk memenuhi kebutuhan pelanggan, dan pada saat yang sama memungkinkan pengembang untuk secara lebih baik memahami apa yang harus dilakukannya.

0 komentar:

Posting Komentar

 

Rahma Bhie Copyright © 2009 Designed by Ipietoon Blogger Template In collaboration with fifa
Cake Illustration Copyrighted to Clarice