Dalam Rekayasa perangkat lunak, ada istilah yang disebut Software Development Cycle (atau dalam beberapa kamus/ensiklopedi, ditulis Software Release Life Cycle). Istilah ini mengacu pada tahapan-tahapan munculnya sebuah perangkat lunak mulai dari prototip hingga bentuk jadi. Istilah ini digunakan untuk menandai suatu perjalanan proyek yang biasa disebut “milestone“. Proses pengembangan perangkat lunak pun dibagi menjadi beberapa bagian. Saya akan menjelaskan satu per satu tahapan tersebut.
Pre-Alpha
Tahap awal ini biasanya adalah tahap analisa, desain sistem, dan testing fungsi-fungsi awal yang akan digunakan. Tahap ini biasanya tidak di-release ke publik dan hanya beberapa (sedikit) orang saja yang mengetahuinya. Biasanya tim pengembang perangkat lunak tersebut dan beberapa orang atau tim lain yang terkait dengannya. Tahap ini seperti seorang arsitek yang mempresentasikan gambar desainnya dan seorang kontraktor yang memperkirakan biayanya.
Alpha
Tahap Alpha dari sebuah perangkat lunak biasanya sudah siap dasar-dasarnya (seperti Anda membangun rumah, versi Alpha ini adalah kerangka dari rumah yang Anda buat, seperti pondasi, tiang, atap, dsb.). Versi ini kadang di release ke publik, tapi kebanyakan di release ke internal terlebih dahulu, dengan cakupan tester yang lebih luas dari versi sebelumnya, Pre-Alpha. Versi ini seperti Anda memiliki rumah yang telah jadi, namun apa adanya. Belum ada hiasan, lukisan, AC, asesoris, dan sebagainya. Polos. Tahap ini, para alpha-tester mencoba mengetes sejauh mana perangkat lunak tersebut stabil dan dapat berjalan sebagaimana mestinya (tahap ini juga menguji kemampuan error-handling dari software yang bersangkutan).
Pada tahap ini dikenal istilah white box techniques dan black box techniques. Jika sebuah aplikasi perangkat lunak telah memasuki tahap black box, itu artinya aplikasi tersebut berada dalam tahap alpha-release.
Beta
Aplikasi yang telah memasuki tahap Beta, berarti aplikasi tersebut telah lolos dari tahap Alpha dan tinggal satu tahap lagi untuk dilempar dan di tes ke pasaran (dalam bentuk terbatas). Aplikasi tahap Beta biasanya merupakan prototip aplikasi yang sudah jadi yang nantinya akan dilempar ke pasaran/end user. Versi Beta ini pun biasanya sudah tersedia secara publik dan dapat di download. Secara umum, tidak ada perbedaan yang terlalu mencolok antara versi Beta dengan versi penuh (full release). Perbedaannya biasanya hanya terletak pada bug-bug yang ada di dalamnya.
Programmer, developer, atau pengguna yang menggunakan versi Beta lalu memberikan umpan balik (feedback) terhadap aplikasi tersebut disebut beta testers. Mereka, orang-orang itu, sangat berjasa dalam membuat sebuah aplikasi menjadi stabil dan bebas error. Itulah mengapa nama-nama beta-testers ini selalu disertakan dalam tempat khusus pada aplikasi (biasanya bagian About) untuk menghargai jasa besar mereka.
Release Candidate (RC)
Dahulu, biasanya aplikasi akan langsung diterjunkan ke pasaran dan digunakan oleh semua pengguna (end user) sebagai produk versi penuh (full version) jika telah melewati tahap Beta. Saat ini, semakin pesatnya perkembangan teknologi dan semakin terkoneksinya seluruh developer di seluruh dunia, pengembang aplikasi perangkat lunak menambahkan satu lagi tahapan akhir sebelum sebuah aplikasi benar-benar dilepas ke pasaran: Release Candidate.
Anda pasti sudah bisa menebak makna dari tahap ini. Aplikasi yang telah mengantongi embel-embel ini (RC, seperti Windows 7 di awal), biasanya sama persis dengan versi penuh yang akan di release di kemudian hari. Dua hal yang menjadi fokus utama dari RC ini adalah kestabilan dan masalah keamanan. Setiap pengembang berbeda-beda dalam penomorannya. Satu pengembang mungkin hanya butuh sekali RC saja (misal Microsoft), sedangkan beberapa pengembang lain membutuhkan tiga sampai empat tahap RC (seperti Mozilla).
Final Release
Inilah tahap akhir dari pengembangan aplikasi perangkat lunak. Semua orang menikmati kestabilannya dan keamanannya. Windows yang Anda gunakan sekarang, browser, aplikasi perkantoran (office), mail client, pengolah citra (foto/gambar), dan sebagainya. Anda jarang, atau bahkan tak pernah, dipusingkan dengan error sana-sini. Semua fungsi serta menu berjalan dengan baik dan sebagaimana mestinya. Kehidupan Anda menjadi semakin mudah karena aplikasi release ini.
Pengembangan sistem informasi manajemen dilakukan melalui beberapa tahap, dimana masing-masing langkah menghasilkan suatu yang lebih rinci dari tahap sebelumnya. Tahap awal dari pengembangan sistem umumnya dimulai dengan mendeskripsikan kebutuhan pengguna dari sisi pendekatan sistem rencana stratejik yang bersifat makro, diikuti dengan penjabaran rencana stratejik dan kebutuhan organisasi jangka menengah dan jangka panjang, lazimnya untuk periode 3 sampai 5 tahun. Masukan (input) utama yang dibutuhkan dalam tahap ini mencakup:
• Kebutuhan stratejik organisasi
• Aspek legal pendukung organisasi
• Masukan kebutuhan dari pengguna
Sistem strategik dijabarkan dalam:
1. Visi dan Misi; Strategi pengembangan sistem membutuhkan keputusan politis dari pimpinan tertinggi yang telah dijabarkan dalam strategi aktivitas organisasi.
2. Analisis Tugas Pokok dan Fungsi Organisasi dan kompetensi yang dimiliki. Analisis Tupoksi akan mengarah pada seberapa jauh pencapaian kinerja organisasi dapat dicapai, dengan menggunakan trend-trend penting, risiko-risiko yang harus dihadapi dan potensi peluang yang dimiliki (menggunakan analisis SWOT).
Analisa kompetensi akan memberikan gambaran yang lengkap mengenai efektivitas organisasi yang dapat dilihat dari 4 hal yaitu: sumberdaya, infrastruktur, produk layanan/jasa dan kepuasan pelanggan/ masyarakat yang dilayani.
Untuk proses implementasi perangkat lunak yaitu : Coding, Testing, Installation, Documentation, Training, Support.
-Proses Coding, testing, Installation
Coding merupakan kegiatan pemindahan hasil fisikal design ke dalam baris kode komputer.
Testing merupakan kegiatan pengujian terhadap kinerja program
Installation merupakan proses pemindahan sistem yang baru kedalam sistem yang sudah ada
· Proses documentation, training, support
Documentation dibuat untuk 2 kepentingan user yang berbeda yaitu :
Dokumentasi bagi pengembang sistem yang dipergunakan untuk kegiatan perawatan sistem selama siklus produktif
Dokumentasi bagi user yang akan menggunakan sistem yang menjadi bagian kegiatan sehari-hari.
Dokumen yang dihasilkan :
Dokumentasi berupa :
Dokumen sistem
Dokumen user
Perencanaan pelatihan user
Dalam bentuk kelas
Dalam bentuk tutorial
Modul pelatihan user :
Training materials / handout
Computer-based training aids
User support plan
Help desk
On-line helpBulletin boards and other support mechanisms
"Selamat Menunaikan Ibadah Puasa"
1434 H/2013
Pre-Alpha
Tahap awal ini biasanya adalah tahap analisa, desain sistem, dan testing fungsi-fungsi awal yang akan digunakan. Tahap ini biasanya tidak di-release ke publik dan hanya beberapa (sedikit) orang saja yang mengetahuinya. Biasanya tim pengembang perangkat lunak tersebut dan beberapa orang atau tim lain yang terkait dengannya. Tahap ini seperti seorang arsitek yang mempresentasikan gambar desainnya dan seorang kontraktor yang memperkirakan biayanya.
Alpha
Tahap Alpha dari sebuah perangkat lunak biasanya sudah siap dasar-dasarnya (seperti Anda membangun rumah, versi Alpha ini adalah kerangka dari rumah yang Anda buat, seperti pondasi, tiang, atap, dsb.). Versi ini kadang di release ke publik, tapi kebanyakan di release ke internal terlebih dahulu, dengan cakupan tester yang lebih luas dari versi sebelumnya, Pre-Alpha. Versi ini seperti Anda memiliki rumah yang telah jadi, namun apa adanya. Belum ada hiasan, lukisan, AC, asesoris, dan sebagainya. Polos. Tahap ini, para alpha-tester mencoba mengetes sejauh mana perangkat lunak tersebut stabil dan dapat berjalan sebagaimana mestinya (tahap ini juga menguji kemampuan error-handling dari software yang bersangkutan).
Pada tahap ini dikenal istilah white box techniques dan black box techniques. Jika sebuah aplikasi perangkat lunak telah memasuki tahap black box, itu artinya aplikasi tersebut berada dalam tahap alpha-release.
Beta
Aplikasi yang telah memasuki tahap Beta, berarti aplikasi tersebut telah lolos dari tahap Alpha dan tinggal satu tahap lagi untuk dilempar dan di tes ke pasaran (dalam bentuk terbatas). Aplikasi tahap Beta biasanya merupakan prototip aplikasi yang sudah jadi yang nantinya akan dilempar ke pasaran/end user. Versi Beta ini pun biasanya sudah tersedia secara publik dan dapat di download. Secara umum, tidak ada perbedaan yang terlalu mencolok antara versi Beta dengan versi penuh (full release). Perbedaannya biasanya hanya terletak pada bug-bug yang ada di dalamnya.
Programmer, developer, atau pengguna yang menggunakan versi Beta lalu memberikan umpan balik (feedback) terhadap aplikasi tersebut disebut beta testers. Mereka, orang-orang itu, sangat berjasa dalam membuat sebuah aplikasi menjadi stabil dan bebas error. Itulah mengapa nama-nama beta-testers ini selalu disertakan dalam tempat khusus pada aplikasi (biasanya bagian About) untuk menghargai jasa besar mereka.
Release Candidate (RC)
Dahulu, biasanya aplikasi akan langsung diterjunkan ke pasaran dan digunakan oleh semua pengguna (end user) sebagai produk versi penuh (full version) jika telah melewati tahap Beta. Saat ini, semakin pesatnya perkembangan teknologi dan semakin terkoneksinya seluruh developer di seluruh dunia, pengembang aplikasi perangkat lunak menambahkan satu lagi tahapan akhir sebelum sebuah aplikasi benar-benar dilepas ke pasaran: Release Candidate.
Anda pasti sudah bisa menebak makna dari tahap ini. Aplikasi yang telah mengantongi embel-embel ini (RC, seperti Windows 7 di awal), biasanya sama persis dengan versi penuh yang akan di release di kemudian hari. Dua hal yang menjadi fokus utama dari RC ini adalah kestabilan dan masalah keamanan. Setiap pengembang berbeda-beda dalam penomorannya. Satu pengembang mungkin hanya butuh sekali RC saja (misal Microsoft), sedangkan beberapa pengembang lain membutuhkan tiga sampai empat tahap RC (seperti Mozilla).
Final Release
Inilah tahap akhir dari pengembangan aplikasi perangkat lunak. Semua orang menikmati kestabilannya dan keamanannya. Windows yang Anda gunakan sekarang, browser, aplikasi perkantoran (office), mail client, pengolah citra (foto/gambar), dan sebagainya. Anda jarang, atau bahkan tak pernah, dipusingkan dengan error sana-sini. Semua fungsi serta menu berjalan dengan baik dan sebagaimana mestinya. Kehidupan Anda menjadi semakin mudah karena aplikasi release ini.
Pengembangan sistem informasi manajemen dilakukan melalui beberapa tahap, dimana masing-masing langkah menghasilkan suatu yang lebih rinci dari tahap sebelumnya. Tahap awal dari pengembangan sistem umumnya dimulai dengan mendeskripsikan kebutuhan pengguna dari sisi pendekatan sistem rencana stratejik yang bersifat makro, diikuti dengan penjabaran rencana stratejik dan kebutuhan organisasi jangka menengah dan jangka panjang, lazimnya untuk periode 3 sampai 5 tahun. Masukan (input) utama yang dibutuhkan dalam tahap ini mencakup:
• Kebutuhan stratejik organisasi
• Aspek legal pendukung organisasi
• Masukan kebutuhan dari pengguna
Sistem strategik dijabarkan dalam:
1. Visi dan Misi; Strategi pengembangan sistem membutuhkan keputusan politis dari pimpinan tertinggi yang telah dijabarkan dalam strategi aktivitas organisasi.
2. Analisis Tugas Pokok dan Fungsi Organisasi dan kompetensi yang dimiliki. Analisis Tupoksi akan mengarah pada seberapa jauh pencapaian kinerja organisasi dapat dicapai, dengan menggunakan trend-trend penting, risiko-risiko yang harus dihadapi dan potensi peluang yang dimiliki (menggunakan analisis SWOT).
Analisa kompetensi akan memberikan gambaran yang lengkap mengenai efektivitas organisasi yang dapat dilihat dari 4 hal yaitu: sumberdaya, infrastruktur, produk layanan/jasa dan kepuasan pelanggan/ masyarakat yang dilayani.
Untuk proses implementasi perangkat lunak yaitu : Coding, Testing, Installation, Documentation, Training, Support.
-Proses Coding, testing, Installation
Coding merupakan kegiatan pemindahan hasil fisikal design ke dalam baris kode komputer.
Testing merupakan kegiatan pengujian terhadap kinerja program
Installation merupakan proses pemindahan sistem yang baru kedalam sistem yang sudah ada
· Proses documentation, training, support
Documentation dibuat untuk 2 kepentingan user yang berbeda yaitu :
Dokumentasi bagi pengembang sistem yang dipergunakan untuk kegiatan perawatan sistem selama siklus produktif
Dokumentasi bagi user yang akan menggunakan sistem yang menjadi bagian kegiatan sehari-hari.
Dokumen yang dihasilkan :
Dokumentasi berupa :
Dokumen sistem
Dokumen user
Perencanaan pelatihan user
Dalam bentuk kelas
Dalam bentuk tutorial
Modul pelatihan user :
Training materials / handout
Computer-based training aids
User support plan
Help desk
On-line helpBulletin boards and other support mechanisms
"Selamat Menunaikan Ibadah Puasa"
1434 H/2013