Pages

Jumat, 09 November 2012

Evolusi Perangkat Lunak


Definisi
Menurut Research Institute in Software Evolution:
The set of activities, both technical and managerial, that ensures that software continues to meet organizational and business objectives in a cost effective way.
Menurut Manny Lehman and Juan Ramil (2000):
All programming activity that is intended to generate a new software version from an earlier operational version.
Menurut Ned Chapin (1999):
The application of Software Maintenance activities and processes that generate a new operational software version with a changed customer-experienced functionality or properties from a prior operational version together with the associated quality assurance activities and processes, and with the management of the activities and processes.
Jadi, dapat disimpulkan bahwa evolusi perangkat lunak adalah seluruh aktivitas dan proses baik teknis maupun manajerial yang bertujuan untuk menghasilkan versi perangkat lunak yang baru dari versi operasional sebelumnya sehingga perangkat lunak tersebut tetap mampu memenuhi kebutuhan bisnis dengan biaya yang efektif.

Pentingnya Evolusi Perangkat Lunak
  • Perusahaan akan memberikan investasi yang besar pada sistem perangkat lunak mereka karena merupakan aset bisnis yang vital.
  • Untuk mempertahankan nilai aset tersebut untuk bisnis, sistem perangkat lunak harus diubah dan diperbaharui.
  • Mayoritas anggaran perangkat lunak dalam perusahaan besar dikhususkan untuk memperbarui perangkat lunak yang telah ada daripada mengembangkan perangkat lunak baru.
Alasan Perangkat Lunak Berevolusi
  • Kebutuhan cenderung berevolusi ketika sistem sedang dikembangkan karena lingkungannya berubah. Oleh karena itu, sistem yang dikirim tidak akan memenuhi harapan pengguna.
  • Sistem terkait erat dengan lingkungannya. Bila sistem dipasang di suatu lingkungan, sistem itu mengubah lingkungan nya sehingga perubahan juga terjadi pada kebutuhan sistem.
Pendorong Perangkat Lunak Berevolusi
  • Faktor Eksternal
    • Lingkungan Sistem, meliputi:
      • Inovasi Kompetitor
      • Ancaman Keamanan
      • Meningkatnya Bandwith
      • Mobilitas
      • Legislasi (pengaruh dari pemerintah)
    • Perubahan Ekspektasi Pengguna, meliputi:
      • Fungsionalitas
      • Usability
      • Keandalan
      • Waktu Respon
  • Faktor Internal
    • Kebutuhan Sistem yang Berubah-Ubah
      • Peraturan dan Prosedur Perusahaan
      • Proses Bisnis
      • Pergantian Sasaran Pengguna
    • Kondisi Operasional
      • Perbaikan bug
      • Perangkat Keras Baru
      • Pengingkatan Fitur Umum
    • Waktu Hidup
      • Degradasi Performa
      • Teknologi Kuno
      • Kompleksitas Berkembang di Luar Perkiraan
Respon terhadap Pendorong Perangkat Lunak Berevolusi
  • Korektif: Perubahan pada perangkat lunak untuk memperbaiki error.
  • Adaptif: Perubahan pada perangkat lunak untuk memenuhi kebutuhan baru dari implementasi awal.
  • Perfektif: Perubahan pada perangkat lunak untuk meningkatkan beberapa aspek dari sistem.
  • Preventif: Perubahan pada perangkat lunak untuk mencegah penurunan beberapa kualitas sistem pada level yang tidak dapat diterima.
Distribusi Usaha Perubahan
Model Spiral Evolusi


Usaha perubahan yang dilakukan terhadap perangkat lunak terdistribusi sebagai berikut: 65% untuk penambahan dan pemodifikasian fungsionalitas, 18% untuk adaptasi perangkat lunak, dan 17% untuk perbaikan kesalahan.
Setelah kita membahas rekayasa perangkat lunak, kita sedikit mundur, untuk membahas evolusi perangkat lunak.  Pengembangan perangkat lunak dapat dibagi menjadi 4 tahap, yaitu :
Tahap Pertama (1950 – 1960)
Evolusi perangkat lunak tahap pertama dimulai pada awal 1950-an sampai pertengahan 1960. Pengembangan perangkat lunak pada tahap pertama mempunyai ciri-ciri berorientasi batch, distribusi software terbatas untuk kalangan tertentu sehingga apabila ada perusahaan yang ingin dibuatkan software khusus harus memesan terlebih dahulu.
Tahap Kedua ( 1960 – 1970)
Evolusi Perangkat Lunak Tahap Kedua dimulai pertengahan tahun 1960-an sampai awal tahun 1970-an.  Pengembangan perangkat lunak mempunyai ciri-ciri multi user.  Pengguna dari software sudah banyak dan bisa saling berbagi.   Ciri ini menunjukkan ada perkembangan baru yaitu interkasi manusia dan komputer (Human Computer Interaction).
Selain itu, ciri dari tahap kedua ini adalah real time. Real Time disini adalah suatu kondisi dimana sistem dapat mengumpulkan, menganalisa dan mentransformasikan data dari banyak sumber kemudian mengatur proses serta menghasilkan output yang diinginkan.  Dalam tahap ini, sudah banyak juga paket perangkat lunak yang beredar di pasaran serta muncul istilah database dalam perangkat lunak.
Tahap Ketiga (1970 – 1990)
Evolusi Perangkat lUnak tahap ketiga, dimulai pertengahan tahun  1970 sampai awal tahun 1990.  Pengembangan perangkat lunak sudah maju sedemikian pesat.  Perangkat lunak sudah menggunakan sistem terdistribusi, sehingga penyampaian informasi dari komputer sumber ke komputer tujuan akan terasa sangat cepat. Dalam era ini, perangkat keras dari suatu komputer harganya sangat murah.  Selain itu, pesanan perangkat lunak sudah sangat mendominasi dari penyelesaian suatu masalah sehingga penggunaan software pada masa itu sudah sedemikian jauh.
Tahap Keempat (1990 – 2000)
Evolusi Perangkat Lunak Tahap Keempat dimulai tahun 1990 sampai tahun 2000. Pada tahap ini, perangkat lunak sudah mendominasi dari pengembangan perangkat keras, sehingga perangkat keras dalam hal ini komputer sangat dikendalikan oleh suatu sistem operasi.  TIngkat kecerdasan dari perangkat lunak semakin ditingkatkan sehingga perangkat lunak atau software dilatih mempunyai kecerdasan seperti yang dimilik manusia.  Terbukti dengan adanya penemuan kecerdasan buatan, jaringan syaraf tiruan, sistem pakar dan logika fuzzy. Jaringan komputer, pemrosesan komputer paralel sangat mendominasi pada era ini.  Dan, pada masa ini pula pemrograman sudah berorientasi obyek (OOP).
Sumber :
Kristianto, Adi, 2004, Rekayasa Perangkat Lunak : KOnsep Dasar, Gava Media Yogyakarta
Davis, William S, 1983, Systems Analysis And Design : A Structural Approach, Addision Wesley Publishing Company
PRessman, Roger S 1982, Software Engineering : A Practitioner’s Aprroach, New York : MacGraw Hill COmpanies Inc

0 komentar:

Posting Komentar