Tuesday, September 29, 2009

Filled Under:

Software . . .

Tuesday, September 29, 2009

Halo halo, wah lama ga posting nih, padahal banyak banget yang pengen diceritain, tapi berhubung saya baru pulang mudik jadi baru sempet ONLINE via Laptop lagi nih. Oh ya, btw, karena masih dalam suasanan lebaran, Saya mau mengucapkan . . .

Selamat Hari Raya Idul Fitri 1430 Hijriah
Taqabbalallahu Minna Wa Minkum
Mohon Maaf Lahir Bathin atas Segala Kesalahan
Semoga Kita Bisa Menjadi Orang yang Lebih Baik :)

Lanjut, hmm sebenernya sih pengen cerita banyak, tapi berhubung kalau saya cerita terlalu panjang dan memakan waktu yang lama (tau kan), kali ini di-pending dulu ceritanya, karena ada tugas yang harus diselesaikan dulu nih, OK ?!
Sip sip :D

---
Software Engineering

Software-software yang ada saat ini, sebelumnya telah melalui beberapa tahap proses sebelum akhirnya dapat digunakan oleh user. Tahapan tersebut adalah Pre-Alpha, Alpha, Beta, RC (Release Candidate, RTM, dan General Availability. Secara sederhana, dapat dijelaskan sebagai berikut.

Software Development

Pre-Alpha
Pada tahap inilah software dibangun. Biasanya (karena masih tahap awal) Pre-Alpha memiliki fitur yang amat minim. Sehingga software pada tahapan pre-alpha bisa dikatakan masih mentah, belum bisa digunakan. Pada tahap ini dilakukan persiapan-persiapan sebelum diadakan pengujian software pada tahap selanjutnya.

Alpha
Pada level ini, software telah siap untuk diuji, biasanya yang menguji adalah ahli software dari perusahaan lain. Namun terkadang, software juga diujikan kepada publik (tetapi masih dalam lingkup yang terbatas, biasanya perusahaan pembuat software) yang memungkinkan penggunaan lebih luas untuk feedback yang lebih banyak.

Beta
Beta adalah sebutan untuk software yang telah lolos tes Alpha dan telah dirilis kepada publik (yang lebih luas) untuk dilakukan pengujian software sebeleum software tersebut resmi dirilis. Beta adalah prototip dari software yang akan dirilis. Pengujian pada tahap Beta oleh para pengguna memungkinkan pengguna untuk memberikan umpan balik jika terjadi malfungsi kepada pengembang software. Beta masih tidak stabil dan dapat menyebabkan crash atau kehilangan data.

Release Candidate
Release candidate adalah versi software yang telah diuji melalui Beta testing berulangkali sampai akhirnya siap untuk dirilis. Namun, pengujian masih dilakukan, dengan cara menggunakan software tersebut seolah-olah adalah produk jadi yang telah ‘matang’. Ketika ditemukan error, maka dilakukanlah perbaikan lagi.

Software Release

RTM (Release To Manufacturing atau Release To Marketing – Going Gold)
RTM digunakan sebagai indikasi bahwa software telah memenuhi tingkat kualitas yang diharapkan dan siap untuk didistribusikan secara massa baik melalui media elektronik maupun media fisik. RTM tidak sebenarnya berarti bahwa software telah dirilis kepada publik, tetapi ‘dirilis’ kepada produsen untuk persiapan pra-instalasi atau penyesuaian software terhadap hardware serta penyesuaian pengaturan. Pengiriman software dari perusahaan software biasanya menggunakan master cakram (CD) emas yang kemudian akan digunakan untuk menduplikasikan software.
GA (General Availability)
Adalah saat dimana segala kegiatan komersialisasi yang dibutuhkan telah selesai dilakukan dan software telah siap untuk dipasarkan kepada publik melalui media fisik maupun elektronik.

Software Versioning
Kita tahu bahwa setiap waktu selalu ada perkembangan-perkembangan software, seperti penambahan fitur, koreksi error, dsb.

Untuk membedakan antara software yang lama dengan yang telah diperbaharui, perlu adanya software versioning atau penomoran software. Angka-angka seperti 1.2.5 atau 10.3.5 adalah contoh dari software versioning.



Agar lebih mudah, saya akan gunakan : X.Y.Z. [A | B] untuk menjelaskan tentang aturan penomoran software.


X: Rilis Mayor- lengkap, aplikasi mandiri pada tingkat fungsionalitas & kualitas sebagaimana didefinisikan dalam specification requirement; semua dokumentasi pengguna yang tersedia

Y: Upgrade - Sedikit tambahan untuk set fitur yang ada Rilis ke #; mungkin juga mengandung pembaruan; biaya atau gratis sebagai bagian dari perjanjian pendukung (Upgrade dapat menjadi titik penjualan penting untuk menjamin perjanjian / tambahan pendapatan)

Z: Update - Memperbaiki cacat yang tidak dapat menunggu untuk rilis berikutnya atau upgrade; isyarat niat baik yang penting; gratis


[A | B]: Alpha atau Beta - Alpha langkah-langkah penanggulangan set fitur, yang masih dapat diubah; Beta adalah untuk mendapatkan jika diketahui adanya cacat.

*dari berbagai sumber