09-28-2011، 02:31 PM
Pre-Alpha: در اين مرحله پروژه تعريف شده و تمامي نيازمنديهاي آن مشخص ميشود و پيادهسازي بخشهاي مختلف برنامه زمانبندي ميشود، اين مرحله شامل 4 بخش است:
1- مهندسي نيازمنديها
2- طراحي نرمافزار
3- پيادهسازي نرمافزار
4- آزمايش برنامه پيادهسازي شده.
آزمايشي که در اين مرحل صورت ميگيرد در اصطلاح جعبه سفيد 1* ناميده ميشود. در اين روش تيم برنامهنويسي با استفاده از آزمونهاي يکسان بخشهاي مختلف برنامه را ميآزمايند. در اين مرحله برنامه تمام شده است ولي نه براي نسخه نهايي
Alpha :هنگامی که مراحل ساخت و تولید یک نرم افزار تمام می شود، اولین نسخه ای از نرم افزار که ارائه می شود نسخه ی آلفا alpha می باشد. این نسخه برای تست توسط دیگر متخصصین که در روند تولید نرم افزار نبوده اند ارائه می شود و معمولا مشکلات زیادی دارد، این نسخه معمولا دارای باگهای ناشناخته، مشکلات امنیتی و در مواردی الگوریتمی و اشکالات عدیده ی دیگر است ولی معمولا خط سیر نرم افزار که عبارت از سیاست گذاری اصلی و الگوریتم تولید برنامه است، پس از ارائه ی این نسخه تغییر نمی کند. ضمنا این نسخه معمولا عمومی نمی شود و کاربران عادی تمایلی به نصب و استفاده از آن ندارند.
( البته این نسخه معمولا در نرم افزار هایی که به صورت سفارشی برای یک سازمان خاص نوشته می شود کاربرد دارد ) این نسخه شامل تمام فعالیت هایی هستش که در حین پروژه برای تست اون صورت میگیره که شامل تحلیل نیازمندی ها - طراحی نرم افزار - توسعه نرم افزار و آزمایش در واحد مربوطه است و اینو هم بگم اگه برنامه به صورت سفارشی نباشه یا به صورت open source باشه، برای اطمینان از فروش نرم افزار در بازار ( به اصطلاح خودمون مزه مزه کردن یا محک زدن ) چند نسخه Pre-alpha منتشر میشه که در اون ها یه سری علامت و نشانه های قدرت طراحی شرکت به عنوان Milestones قرار داده میشه تا ببینن بازار از کدوم از این علامت ها خوشش می آید بعد اونو در نسخه های بعدی گسترش میدن که اصطلاحا بهش میگیم features برنامه که قابل کم و زیاد شدن هستن تو این مرحله.
در اين مرحله نسخه آماده شده از مرحله Pre-Alpha در اختيار کارکنان شرکت قرار ميگيرد (البته در شرکتهاي کوچک نسخه آلفا در اختيار عموم قرار ميگيرد). کاربراني که برنامه را در اين مرحله تست ميکنند، اغلب آزماينده نرمافزار هستند و به اين آزمايش اصطلاحا جعبه سياه گفته ميشود. در اين آزمايش کد منبع برنامه در اختيار افرادي که قرار است برنامه را تست کنند قرار نميگيرد و تنها نگارش اجرايي را به عرضه ميگذارند. بعضي ويژگيها که در نسخه Pre-Alpha پياده سازي نشدهاند در نسخه آلفا پياده سازي خواهند شد.
Beta : پس از برطرف شدن اشکالهای نسخه ی الفا نسخه ی دیگری ارائه می شود که به نسخه ی بتا معروف است. این نسخه در دسترس کلیه کاربران قرار می گیرد و قابل استفاده می باشد ولی به صورت معمول دارای باگهای ناشناخته یا حفره های امنیتی می باشد در این نسخه با توجه به ارائه ی آن به صورت گسترده بررسی عمومی تری توسط کاربران مختلف صورت می گیرد و مجموعه ی کاملی از اشکالات ناشناخته ی نرم افزرا کشف می شود. در حقیقت پس از کشف و بر طرف نمودن اشکالات نسخه ی بتا، نسخه اصلی نرم افزار تهیه می گردد.
در اين نگارش تمامي ويژگيهاي مدنظر توليدکننده آماده ميشود. يک نسخه در اختيار کاربران عمومي قرار ميگيرد. کاربران عمومي برنامه را آزمايش ميکنند و بازخوردهاي خودشان و ليست اشکالات کشف شده را به تيم توسعه گزارش ميدهند. در اين زمان تيم توسعه مشغول رفع مشکلاتي ميشود که کاربران به آنها اطلاع دادهاند. و يکسري ويژگيهايي که تا قبل از اين به آنها توجه نکرده بودند، به اين نسخه اضافه ميشود.
Rc : با این حال شرکتهای نرم افزاری معتبر قبل از اینکه نسخه ای از برنامه را به عنوان نسخه ی نهایی ارائه نمایند نسخه ی دیگری با نام RC (مخفف Release Candidate به معنی کاندیدای انتشار) پخش می نمایند. با توجه به اینکه در این نسخه هیچ گونه مشکل عمده ای وجود ندارد و مشکلات کوچک مانند وجود حفره های امنیتی (که این مشکل همیشه و برای همه ی نسخه های برنامه ها قابل ایجاد و بر طرف کردن کامل آن غیر ممکن است) این نسخه در اختیار شرکتهای معتبر سخت افزاری و نرم افزاری قرار می گیرد تا آنها بدون نگرانی آن را روی سیستم های خود نصب کنند و از آن بازخورد بگیرند. با این حال گاهی نسخه ی Rc نسبت به نسخه ی نهایی تغییرات جزئی (معمولا از نظر برطرف نمودن حفره های امنیتی) دارد.
برخی شرکتها از جمله مایکروسافت به دلیل اینکه به اعتبارشان خدشه ای وارد نشود در ارائه ی نسخه rc فوق العاده دقت می کند چون این نسخه از نظر شرکت به عنوان کاندیدایی برای ارائه ی نهایی می باشد، با این وجود گاهی بیش از یک نسخه ی rc ارائه می شود مانند rc2, rc3 و ... به همین دلیل گاه فاصله یزمانی بین نسخه ی rc و نهایی (Final Release) از شش ماه تجاوز می کند.
RC*2 : در اين مرحله تمامي اشکالاتي که کابران اطلاع دادهاند رفع شده است و همينطور ويژگيهايي که تيم توسعه در مرحله بتا به آن رسيدهاند در اين نسخه آماده شده است. در واقع نسخه RC مطابق با نسخه نهايي برنامه است و در اين مرحله ويژگي جديدي به برنامه اضافه نخواهد شد. در اين مرحله ويژگيهايي که در نسخه بتا به آن رسيدهاند مورد آزمايش قرار ميگيرد و باگهايي که در مورد اين ويژگي ها گزارش شده نيز رفع خواهد شد.
RTM*3 : اين واژه اصطلاحي است که بيشتر از طرف مايکروسافت استفاده ميشود و عموميت ندارد. نسخه RTM نسخهاي تجاري است و در واقع نسخه نهايي برنامه است و در اختيار شرکاي تجاري قرار ميگيرد. بهطور مثال نسخه ويندوزي که برروي لپتاپها نصب ميشود پيش از عرضه ويندوز در اختيار سازندگان لپتاپها قرار ميگيرد تا آنها نيز سختافزارهاي خود را با سيستم عامل جديد آزمايش کنند. اين نسخه همان نسخه RTM است که از طرف شرکت مايکروسافت به سازندگان لپتاپها داده ميشود.
Final : این مرحله آخر تولید نرم افزار است که به طور رسمی به بازار عرضه می شود
نسخه فاينال نسخه نهايي از برنامه است که وارد بازار تجاري ميشود در اين مرحله همه افراد ميتوانند از برنامه استفاده کنند.بعد از عرضه نسخه نهايي برنامه به فاز نگهداري ميرود.
اين فاز بسته به تعهد و ديدگاه شرکت، از چند ماه تا چند سال بهطول ميانجامد. در اين فاز ممکن است بعضي ويژگيها از ديد تيم توسعه پنهان مانده باشد و يا برنامه داراي اشکالهايي باشد. در اين مرحله شرکت سازنده يکسري بسته ارائه ميدهد که مشکلات نرمافزار را برطرف ميکند و در هر بازه زماني يک Service Pack براي نرمافزار ارائه ميشود. اين سرويسپک شامل يکسري ويژگيهاي جديد و رفع مشکلات قبلي است. واژه سرويسپك بيشتر از طرف مايکروسافت مطرح ميشود.
Plus : این نسخه از نرم افزار معمولا همراه با نسخه نهایی عرضه میشود و علاوه بر نرم افزار قبلی دارای برخی از نرم افزار اضافه در ارتباط با نرم افزار اصلی. مانند jet audio Plus که همراه با خود تبدیل کننده فرمت های ویدئو و موزیک را دارا میباشد
1- مهندسي نيازمنديها
2- طراحي نرمافزار
3- پيادهسازي نرمافزار
4- آزمايش برنامه پيادهسازي شده.
آزمايشي که در اين مرحل صورت ميگيرد در اصطلاح جعبه سفيد 1* ناميده ميشود. در اين روش تيم برنامهنويسي با استفاده از آزمونهاي يکسان بخشهاي مختلف برنامه را ميآزمايند. در اين مرحله برنامه تمام شده است ولي نه براي نسخه نهايي
Alpha :هنگامی که مراحل ساخت و تولید یک نرم افزار تمام می شود، اولین نسخه ای از نرم افزار که ارائه می شود نسخه ی آلفا alpha می باشد. این نسخه برای تست توسط دیگر متخصصین که در روند تولید نرم افزار نبوده اند ارائه می شود و معمولا مشکلات زیادی دارد، این نسخه معمولا دارای باگهای ناشناخته، مشکلات امنیتی و در مواردی الگوریتمی و اشکالات عدیده ی دیگر است ولی معمولا خط سیر نرم افزار که عبارت از سیاست گذاری اصلی و الگوریتم تولید برنامه است، پس از ارائه ی این نسخه تغییر نمی کند. ضمنا این نسخه معمولا عمومی نمی شود و کاربران عادی تمایلی به نصب و استفاده از آن ندارند.
( البته این نسخه معمولا در نرم افزار هایی که به صورت سفارشی برای یک سازمان خاص نوشته می شود کاربرد دارد ) این نسخه شامل تمام فعالیت هایی هستش که در حین پروژه برای تست اون صورت میگیره که شامل تحلیل نیازمندی ها - طراحی نرم افزار - توسعه نرم افزار و آزمایش در واحد مربوطه است و اینو هم بگم اگه برنامه به صورت سفارشی نباشه یا به صورت open source باشه، برای اطمینان از فروش نرم افزار در بازار ( به اصطلاح خودمون مزه مزه کردن یا محک زدن ) چند نسخه Pre-alpha منتشر میشه که در اون ها یه سری علامت و نشانه های قدرت طراحی شرکت به عنوان Milestones قرار داده میشه تا ببینن بازار از کدوم از این علامت ها خوشش می آید بعد اونو در نسخه های بعدی گسترش میدن که اصطلاحا بهش میگیم features برنامه که قابل کم و زیاد شدن هستن تو این مرحله.
در اين مرحله نسخه آماده شده از مرحله Pre-Alpha در اختيار کارکنان شرکت قرار ميگيرد (البته در شرکتهاي کوچک نسخه آلفا در اختيار عموم قرار ميگيرد). کاربراني که برنامه را در اين مرحله تست ميکنند، اغلب آزماينده نرمافزار هستند و به اين آزمايش اصطلاحا جعبه سياه گفته ميشود. در اين آزمايش کد منبع برنامه در اختيار افرادي که قرار است برنامه را تست کنند قرار نميگيرد و تنها نگارش اجرايي را به عرضه ميگذارند. بعضي ويژگيها که در نسخه Pre-Alpha پياده سازي نشدهاند در نسخه آلفا پياده سازي خواهند شد.
Beta : پس از برطرف شدن اشکالهای نسخه ی الفا نسخه ی دیگری ارائه می شود که به نسخه ی بتا معروف است. این نسخه در دسترس کلیه کاربران قرار می گیرد و قابل استفاده می باشد ولی به صورت معمول دارای باگهای ناشناخته یا حفره های امنیتی می باشد در این نسخه با توجه به ارائه ی آن به صورت گسترده بررسی عمومی تری توسط کاربران مختلف صورت می گیرد و مجموعه ی کاملی از اشکالات ناشناخته ی نرم افزرا کشف می شود. در حقیقت پس از کشف و بر طرف نمودن اشکالات نسخه ی بتا، نسخه اصلی نرم افزار تهیه می گردد.
در اين نگارش تمامي ويژگيهاي مدنظر توليدکننده آماده ميشود. يک نسخه در اختيار کاربران عمومي قرار ميگيرد. کاربران عمومي برنامه را آزمايش ميکنند و بازخوردهاي خودشان و ليست اشکالات کشف شده را به تيم توسعه گزارش ميدهند. در اين زمان تيم توسعه مشغول رفع مشکلاتي ميشود که کاربران به آنها اطلاع دادهاند. و يکسري ويژگيهايي که تا قبل از اين به آنها توجه نکرده بودند، به اين نسخه اضافه ميشود.
Rc : با این حال شرکتهای نرم افزاری معتبر قبل از اینکه نسخه ای از برنامه را به عنوان نسخه ی نهایی ارائه نمایند نسخه ی دیگری با نام RC (مخفف Release Candidate به معنی کاندیدای انتشار) پخش می نمایند. با توجه به اینکه در این نسخه هیچ گونه مشکل عمده ای وجود ندارد و مشکلات کوچک مانند وجود حفره های امنیتی (که این مشکل همیشه و برای همه ی نسخه های برنامه ها قابل ایجاد و بر طرف کردن کامل آن غیر ممکن است) این نسخه در اختیار شرکتهای معتبر سخت افزاری و نرم افزاری قرار می گیرد تا آنها بدون نگرانی آن را روی سیستم های خود نصب کنند و از آن بازخورد بگیرند. با این حال گاهی نسخه ی Rc نسبت به نسخه ی نهایی تغییرات جزئی (معمولا از نظر برطرف نمودن حفره های امنیتی) دارد.
برخی شرکتها از جمله مایکروسافت به دلیل اینکه به اعتبارشان خدشه ای وارد نشود در ارائه ی نسخه rc فوق العاده دقت می کند چون این نسخه از نظر شرکت به عنوان کاندیدایی برای ارائه ی نهایی می باشد، با این وجود گاهی بیش از یک نسخه ی rc ارائه می شود مانند rc2, rc3 و ... به همین دلیل گاه فاصله یزمانی بین نسخه ی rc و نهایی (Final Release) از شش ماه تجاوز می کند.
RC*2 : در اين مرحله تمامي اشکالاتي که کابران اطلاع دادهاند رفع شده است و همينطور ويژگيهايي که تيم توسعه در مرحله بتا به آن رسيدهاند در اين نسخه آماده شده است. در واقع نسخه RC مطابق با نسخه نهايي برنامه است و در اين مرحله ويژگي جديدي به برنامه اضافه نخواهد شد. در اين مرحله ويژگيهايي که در نسخه بتا به آن رسيدهاند مورد آزمايش قرار ميگيرد و باگهايي که در مورد اين ويژگي ها گزارش شده نيز رفع خواهد شد.
RTM*3 : اين واژه اصطلاحي است که بيشتر از طرف مايکروسافت استفاده ميشود و عموميت ندارد. نسخه RTM نسخهاي تجاري است و در واقع نسخه نهايي برنامه است و در اختيار شرکاي تجاري قرار ميگيرد. بهطور مثال نسخه ويندوزي که برروي لپتاپها نصب ميشود پيش از عرضه ويندوز در اختيار سازندگان لپتاپها قرار ميگيرد تا آنها نيز سختافزارهاي خود را با سيستم عامل جديد آزمايش کنند. اين نسخه همان نسخه RTM است که از طرف شرکت مايکروسافت به سازندگان لپتاپها داده ميشود.
Final : این مرحله آخر تولید نرم افزار است که به طور رسمی به بازار عرضه می شود
نسخه فاينال نسخه نهايي از برنامه است که وارد بازار تجاري ميشود در اين مرحله همه افراد ميتوانند از برنامه استفاده کنند.بعد از عرضه نسخه نهايي برنامه به فاز نگهداري ميرود.
اين فاز بسته به تعهد و ديدگاه شرکت، از چند ماه تا چند سال بهطول ميانجامد. در اين فاز ممکن است بعضي ويژگيها از ديد تيم توسعه پنهان مانده باشد و يا برنامه داراي اشکالهايي باشد. در اين مرحله شرکت سازنده يکسري بسته ارائه ميدهد که مشکلات نرمافزار را برطرف ميکند و در هر بازه زماني يک Service Pack براي نرمافزار ارائه ميشود. اين سرويسپک شامل يکسري ويژگيهاي جديد و رفع مشکلات قبلي است. واژه سرويسپك بيشتر از طرف مايکروسافت مطرح ميشود.
Plus : این نسخه از نرم افزار معمولا همراه با نسخه نهایی عرضه میشود و علاوه بر نرم افزار قبلی دارای برخی از نرم افزار اضافه در ارتباط با نرم افزار اصلی. مانند jet audio Plus که همراه با خود تبدیل کننده فرمت های ویدئو و موزیک را دارا میباشد