معمولا زمانی که یک برنامه یا یک نرم افزار در شرکتهای نرم افزاری طراحی و ساخته می شود از زمانی که ساخت برنامه در مرحله نهایی است تا زمانی که نسخه نهایی و کامل آن ارائه و در اختیار مشتری قرار گیرد باید مراحلی را جهت ارزیابی و بررسی و رفع اشکالات احتمالی طی کند. این ارزیابی ها با نسخه های مختلفی که از زمان به اتمام رسیدن ساخت برنامه تا زمان انتشار نهایی ارائه می شود انجام می پذیرد.
مراحل ارائه یک برنامه از زمان اتمام ساخت تا ارائه نهایی
۱- نسخه پیش آلفا(Pre- Alpha) :
نسخه پیش آلفا معمولا یک نسخه آزمایشی اولیه است که بمنظور تحلیل ، نیاز سنجی و بررسی موارد مورد نیاز یک برنامه یا نرم افزار برای برنامه نویسانی که آن را طراحی کرده اند ارائه می شود.
۲- نسخه آلفا alpha :
نسخه آلفا معمولا اولین نسخه یک برنامه یا نرم افزار است که جهت بررسی و اشکال زدائی برای افراد و برنامه نویسانی که در همان سازمانی که برنامه را طراحی شده ، فعالیت دارند ارائه می شود. در نسخه آلفا مشکلات امنیتی، باگها و مشکلات عمده برنامه تشخیص و رفع می شوند.
۳- نسخه بتا beta :
نسخه بتا نسخه رفع اشکال شده نسخه آلفا می باشد و معمولا تمامی ویژه گی های نسخه اصلی را دارد با این تفاوت که هنوز در مرحله توسعه، ارزیابی و اشکال زدایی است و این بررسی ارزیابی توسط همه و یا برخی از کاربران و یا مشتریان این نرم افزار انجام می شود. نسخه بتا معمولا بصورت رایگان و یا با قیمت بسیار اندک در اختیار مشتریان قرار میگیرد.
۴- نسخه نهایی:
همانطور که از نام آن مشخص است نسخه نهایی نیز جهت ارائه به کاربر یا مشتری می باشد اما در شرکته های بزرگ و معتبر خود نسخه نهایی نیز جهت ارائه شامل دو مرحله می شود.
مرحله اول Release candidate یا نسخه RC :
در مرحله Release candidate اشکلات خیلی ریز و جزئی و همچنین حفزه های امنیتی که در مرحله بتا توسط کاربران و مشتریان شناسایی و رفع شده مورد بررسی قرار میگیرد. در واقع این نسخه کاندیدایی برای نسخه نهایی و اصلی می باشد.
مرحله دوم Final یا stable :
در این مرحله نسخه نهایی و پایانی برنامه یا نرم افزار ارائه و منتشر می شود.