PERKEMBANGAN DAN PENGEMBANGAN SOFTWARE
Bukan hanya manusia dan peradaban saja yang mengalami evolusi atau perubahan, ternyata perangkat lunak sekalipun mengalami transisi dari masa ke masa sejalan dengan perkembangan industry dan teknologi, perangkat lunak juga mengalami transformasi.
1. Sejarah Perkembangan Software
a. Era Pioner
Bentuk perangkat lunak pada awalnya adalah sambungan-sambungan kabel ke antar bagian dalam komputer. Cara lain dalam mengakses komputer adalah menggunakan punched card yaitu kartu yang dilubangi. Penggunaan komputer saat itu masih dilakukan secara langsung, sebuah program untuk sebuah mesin untuk tujuan tertentu.
b. Era Stabil
Pada era stabil penggunaan komputer sudah banyak digunakan, tidak hanya oleh kalangan peneliti dan akademi saja, tetapi juga oleh kalangan industri/perusahaan. Perusahaan perangkat lunak bermunculan, dan sebuah perangkat lunak dapat menjalankan beberapa fungsi.
c. Era Mikro
Sejalan dengan semakin luasnya PC dan jaringan komputer di era ini, perangkat lunak juga berkembang untuk memenuhi kebutuhan perorangan. Perangkat lunak dapat di bedakan menjadi perangkat lunak sistem yang bertugas menangani internal dan perangkat lunak aplikasi yang di gunakan secara langsung oleh penggunannya untuk keperluan tertentu.
d. Era Modern
Tingkat kecerdasan yang ditunjukkan oleh perangkat lunak pada era modern semakin meningkat. Selain permasalahan teknis, perangkat lunak sekarang mulai bisa mengenal suara, gambar, dan lain-lain.
2. Software Prosess
Proses perangkat lunak adalah serangkaian aktivitas dan hasil terkait yang menghasilkan produk perangkat lunak. Insinyur perangkat lunak sebagian besar melakukan aktivitas ini. Ini adalah empat aktivitas proses utama.
a. Dokumentasi
Dokumentasi terdiri dari berbagai jenis manual. Contoh manual dokumentasi adalah : Data Flow Diagram, Flow Chart, ER diagram, dll.
b. Prosedur Pengoperasian
Prosedur Pengoperasian terdiri dari instruksi untuk mengatur dan menggunakan sistem perangkat lunak dan instruksi tentang bagaimana bereaksi terhadap kegagalan sistem. Contoh manual prosedur sistem operasi adalah: panduan instalasi, panduan Pemula, panduan referensi, panduan administrasi sistem, dll.
3. Jenis Pengembangan Software
a. Metodologi Pengembangan Agile (Agile Development Methodology)
Agile methodology merupakan salah satu jenis metode pengembangan software yang paling populer dan banyak digunakan oleh software house.
Kelebihan:
- Minimalnya muncul kecacatan pada software yang dibuat
- Adanya kejelasan komunikasi antara tim pengembang software dan pelanggan
- Kemudahan mengubah persyaratan proyek yang hanya akan berdampak sedikit pada waktu pengembangan
- Software yang dihasilkan merupakan software berkualitas yang sesuai dengan kebutuhan penggunanya
Kekurangan:
- Tim pengembang terkadang dapat kehilangan fokus karena banyaknya permintaan perubahan
- Dokumentasi bukan salah satu fokus utama sehingga dapat menjadi masalah nantinya di kemudian hari
- Diskusi dan komunikasi dalam metode ini dapat memakan waktu terlalu lama
b. Metodologi Pengembangan Waterfall (Waterfall Development Methodology)
Jenis metode pengembangan software yang kedua yaitu Waterfall Development Methodology atau metode air terjun. Metode ini merupakan metode linier sederhana di mana tahap-tahap pengembangan software diatur ke dalam proses berurutan dan berjenjang.
Kelebihan:
- Linearitas metode ini mudah dipahami oleh pengembang software baru
- Semua spesifikasi dan kebutuhan sudah lebih dulu dijabarkan sebelum kegiatan pengembangan dimulai
- Tidak adanya miskomunikasi informasi karena semuanya sudah dijelaskan di setiap tahap
Kekurangan:
- Tingginya risiko penyimpangan proyek dari target karena tidak adanya feedback dari pelanggan pada fase awal
- Muncul banyak masalah yang lebih sulit untuk diperbaiki pada tahap selanjutnya karena pengujian hanya dilakukan pada akhir pengembangan
- Metode ini cenderung kaku sehingga tidak ada ruang untuk perubahan dan tidak cocok untuk proyek pengembangan software yang kompleks
c. Metode Spiral
Kelebihan
Ideal untuk proyek berisiko tinggi dengan persyaratan yang berubah-ubah
Memungkinkan umpan balik awal dari pengguna dan pemangku kepentingan
Kekurangan :
Lebih rumit untuk dikelola dibandingkan model Waterfall
Keterlambatan dapat terjadi jika persyaratan tidak jelas
c. V-Model: Terstruktur dan Dapat Diprediksi

- Kelebihan :
- 1. Mudah untuk melacak kemajuan dan memastikan bahwa proyek tetap sesuai anggaran
- 2. Mendorong ketertelusuran dan akuntabilitas
Tidak ada komentar:
Posting Komentar