چرخه زندگی انتشار نرم‌افزار: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
Hamid Hassani (بحث | مشارکت‌ها)
Hamid Hassani (بحث | مشارکت‌ها)
ویرایش و ویکی‌سازی
خط ۱:
[[پرونده:Develstages.svg|بندانگشتی|Software release stages]]
'''چرخهٔ [[نرم‌افزار]]''' یا '''چرخهٔ ارائهٔ نرم‌افزار''' چه اختصاصی چه عمومی، یک توزیع از نسخهنسخهٔ اولیه یا بروزرسانی شدهبه‌روزرسانی‌شده از یک محصول [[نرم‌افزار]] [[رایانه]] است. زمانیکهزمانی که یک [[سیستم]] یا [[برنامه (رایانه)|برنامهبرنامهٔ]] نرم‌افزاری تغییر می‌یابد، [[مهندسی|مهندسینمهندسان]] و شرکت‌های نرم‌افزاری در مورددربارهٔ چگونگی گسترش برنامه یا [[سامانه]] یا تغییرات آن‌ها تصمیم می‌گیرند. [[بسته نرم‌افزاری|بسته‌های نرم‌افزاری]] یکی از روش‌های تغییرات است، بصورتبه‌صورت [[دانلود]] یا [[سی‌دی]].
 
چرخهٔ ارایهٔارائهٔ نرم‌افزار، از مراحل گوناگونی تشکیل یافته‌است که پایداری بخشی از نرم‌افزار و میزان بهبود مورد نیاز، قبل از ارایهارائهٔ نسخهنسخهٔ نهایی را توضیح می‌دهد. تمام نسخه‌های اصلی یک محصول معمولاً هنگامیکههنگامی که یک ویژگی جدید اضافه می‌گردد، یا در حین مرحله آلفا عرضه می‌گردد، مرحله‌ای که‌آن (نرم‌افزار) اشکال‌زدایی می‌گردد همان مرحله بتا(Beta) است، و در نهایت مرحله‌ای که همه‌اشکالاتهمهٔ اشکالات مهم برطرف گردیده‌استشده‌است مرحلهمرحلهٔ stable است. یک مرحله میانی نیز ممکن است وجود داشته باشد. مراحل ممکن‌استممکن است صریحاً توسط ارایه‌دهندگانارائه‌دهندگان پروژه تعدیل شوند یااعلام گردند، اما گاهی‌اوقاتگاهی اوقات مراحل تولید صریحاً توضیح داده نمی‌شوند. بر طبق قراردادقرارداد، اغلب code names قبل از ارایهارائهٔ محصول توسط تعدادی از شرکت‌ها مورد استفاده قرار می‌گیرند، هرچندکههرچند محصول واقعی و ویژگی‌هایش حقیقتاً محرمانه‌استمحرمانه است.
'''چرخهٔ [[نرم‌افزار]]''' چه اختصاصی چه عمومی، یک توزیع از نسخه اولیه یا بروزرسانی شده از یک محصول نرم‌افزار [[رایانه]] است. زمانیکه یک [[سیستم]] یا [[برنامه (رایانه)|برنامه]] نرم‌افزاری تغییر می‌یابد، [[مهندسی|مهندسین]] و شرکت‌های نرم‌افزاری در مورد چگونگی گسترش برنامه یا [[سامانه]] یا تغییرات آن‌ها تصمیم می‌گیرند. [[بسته‌های نرم‌افزاری]] یکی از روش‌های تغییرات است، بصورت [[دانلود]] یا [[سی‌دی]].
 
چرخهٔ ارایهٔ نرم‌افزار، از مراحل گوناگونی تشکیل یافته‌است که پایداری بخشی از نرم‌افزار و میزان بهبود مورد نیاز، قبل از ارایه نسخه نهایی را توضیح می‌دهد. تمام نسخه‌های اصلی یک محصول معمولاً هنگامیکه یک ویژگی جدید اضافه می‌گردد، یا در حین مرحله آلفا عرضه می‌گردد، مرحله‌ای که‌آن (نرم‌افزار) اشکال‌زدایی می‌گردد همان مرحله بتا(Beta) است، و در نهایت مرحله‌ای که همه‌اشکالات مهم برطرف گردیده‌است مرحله stable است. یک مرحله میانی نیز ممکن است وجود داشته باشد. مراحل ممکن‌است صریحاً توسط ارایه‌دهندگان پروژه تعدیل شوند یااعلام گردند، اما گاهی‌اوقات مراحل تولید صریحاً توضیح داده نمی‌شوند. بر طبق قرارداد اغلب code names قبل از ارایه محصول توسط تعدادی از شرکت‌ها مورد استفاده قرار می‌گیرند، هرچندکه محصول واقعی و ویژگی‌هایش حقیقتاً محرمانه‌است.
 
== مراحل ارائهٔ نرم‌افزار ==
سطر ۹ ⟵ ۸:
گاهی اوقات قبل از ارائه نسخه Alpha یا Beta یک محصول که بنام Pre- Alpha شناخته می‌شود، انتشار می‌یابد. به همان وضوحی که نسخه‌های آلفا یا بتا متفاوتند نسخه Pre- Alpha یک مرحله کامل نیست، که همه فعالیت‌هایی که در پیش از پروژه تا تست نرم‌افزار انجام می‌گیرد را شامل می‌شود. این فعالیت‌ها می‌تواند شامل: تحلیل نیاز، طراحی نرم‌افزار، گسترش نرم‌افزار و مرحله آزمایش باشد.
 
در دنیای Open Source تعداد زیادی از نسخه‌های Pre- Alphaوجود دارد. نسخه‌های Milestone شامل مجموعه‌های مشخصی از قابلیت‌هاست و هنگامی که این قابلیت‌ها تکمیل می‌گردند ارایهارائه می‌گردند. Nightly buildها نسخه‌هایی هستند که معمولاً به طور اتوماتیک توسط سیستمهای کنترل، مثلاً شبها، آزمایش می‌شوند؛ این نسخه‌ها به آزمایش‌کنندگان این اجازه را می‌دهند تا قابلیت‌های جدید پیاده‌سازی‌شده را سریعاً آزمایش نمایند، واشکالات جدید را بیابند.
 
=== آلفا (Alpha) ===
نسخه آلفای یک نرم‌افزار، برای آزمایش کنندگان نرم‌افزار -که اشخاصی غیر از مهندسین نرم‌افزار هستند- تهیه می‌گردد. این افراد معمولاً از داخل سازمان یا مجموعه‌ای هستند که نرم‌افزار در آن تهیه می‌شود. در مرحلهمرحلهٔ ارایهارائه به بازار، کمپانی‌های بیشتر و بیشتری تلاش می‌کنند تا در مرحله تست نسخه آلفا، توجه مشتریان خارجی بیشتری را جلب کنند؛ که این اجازه آزمایش کردن، قابلیت‌های گسترده‌ای را در حین مرحله آلفا می‌دهد. گسترش‌دهندگان در اولین مرحله معمولاً نرم‌افزار را با استفاده‌از تکنیک White Box آزمایش می‌کنند. تشخیص صحت بعدی معمولاً با استفاده از تکنیک‌های Black Box یا Grey Box به وسیله تیم آزمایش اختصاصی دیگری انجام می‌شود، گاهی هم، هم‌زمان.
در واقع، آزمایش Black Box در درون سازمان به عنوان آلفا (Alpha) شناخته می‌شود.
 
=== بتا (Beta) ===
نسخهنسخهٔ بتا اولین نسخهنسخهٔ ارایه شدهارائه‌شده در خارج از سازمان مجموعه تولیدمجموعهٔ کنندهتولیدکنندهٔ نرم‌افزار، به منظور ارزیابی واقعی آزمایش‌های Black / Grey-Box است. فرایند تحویل‌دادن نسخه بتا به استفاده‌کنندگان را، ارایهارائهٔ نسخه‌بتا گویند. نرم‌افزار سطح بتا معمولاً همه ویژگی‌های نسخهٔ اصلی را داراست، اما امکان دارد اشکالات و عملکردهای شناخته شده در حد بسیار کمی باشد.
کاربرانِ نسخه بتا را، آزمایش‌کنندگان بتا گویند. آن‌ها معمولاً مشتریان فعلی یا آینده سازمان هستند که از نرم‌افزارها استفاده می‌کنند. آن‌ها نرم‌افزار را به طور رایگان یا با قیمت کم دریافت می‌کنند، در حالیکه آزمایش‌کنندگانی رایگان هستند. نسخه‌های بتا پشتیبانی از محصولات را در مسیر راهیابی به بازار (درحالیکه مشتریان بتا در حال افزایشند) و فروش محصول‌ها، جریان‌ها و راه‌های دستیابی را آزمایش می‌کند.
 
سطر ۲۴ ⟵ ۲۳:
تهیه‌کنندگان هریک از دونسخه close beta یا open beta را ارائه می‌دهند؛ نسخه‌های close beta برای انتخاب کاربرهای آزمایشی فردی ارائه می‌گردند در حالی که نسخه‌های open beta برای گروه‌های اجتماعی بزرگتر و معمولاً گروه‌های اصلی. آزمایش‌کنندگان تعدادی از اشکالاتی را که می‌یابند و گاهی ویژگی‌های فرعی دیگری را که تمایل دارند در نسخه نهایی ببینند گزارش می‌دهند.
 
یک نمونه از نسخه آزمایش اصلی عمومی هنگامی بود که‌مایکروسافت ارائه community technology previews (CTP) ویندوز ویستا را به آزمایش‌کنندگان بتا در ژانویه ۲۰۰۵ آغار نمود، که اولین آنbuildآن ۵۲۱۹Build 5219 بود. متعاقباً CTPها بیشتر ویژگی‌های برنامه‌ریزی شده مانند تعدادی از تغییرات واسط کاربری را در مبنای بازخوردهای آزمایش‌کنندگان بتا ایجاد می‌کنند. ویندوز ویستا در ۲۲ فوریه ۲۰۰۶ به توسط buildBuild 5308 CTP نسخه کامل خود را ارائه داد، و بیشتر کارهای باقی‌مانده مابین buildBuild ۵۲۱۹6219 و نسخه نهایی بر روی پایداری، کارایی، تطابق، درایوها، برنامه‌ها و مستندسازی متمرکز شد.
 
هنگامی‌که نسخه بتا آماده ارائه عمومی‌است اغلب بطور گسترده‌ای توسط خبرگان تکنولوژی، و هم‌رده‌های نسخه‌های قبلی، قبل از ارائه نسخه نهایی استفاده می‌شود. معمولاً تهیه‌کنندگان نسخه‌های رایگان نرم‌افزار یا open source بتاها را ارائه می‌دهند در حالی که مالکان نسخه‌های بتا به گروه کوچکی از آزمایش‌کنندگان مرتبط تعلق دارند. دریافت‌کنندگان نسخه‌های بتای با مالکیت بالا باید یک توافق‌نامه غیر بازرگانی را امضاء کنند.
سطر ۴۹ ⟵ ۴۸:
نسخهٔ نامزد به نسخه‌ای که توانایی محصول نهایی شدن را داراست اشاره می‌کند، نسخه‌ای که آمادهٔ ارائه‌شدن بدون بروز اشتبهات بزرگ است. در این مرحله همه ویژگی‌های محصول به طور کاربردی طراحی شده‌اند. در این فاز محصول معمولاً code complete شرکت مایکروسافت اغلب از اصطلاح Release candidateاستفاده می‌کند
در دهه ۹۰، Apple Inc برای نسخه کاندیدای خود از اصطلاح golden master، و برای نسخهٔ دردسترس عموم از اصطلاح final golden master استفاده کرد.
دیگر واژه‌ها شامل gamma (و گهگاهی delta وشایدو شاید حتی سایر حروف یونانی (برای نسخه‌هایی که اساساً کامل هستند، اما هنوز در حال آزمایش‌اند و omega برای نسخه‌های‌نهایی‌آزمایشنسخه‌های شدهنهایی‌آزمایش‌شده که ادعای بدون اشکال بودن دارند و ممکن است هر زمانی تولید شوند) omega و delta و Gamma، به ترتیب سومین، چهارمین و آخرین حرف از حروف یونانی هستند). بعضی از کاربرانکاربران، به طور اهانت‌اوراهانت‌آمیز، نسخهنسخهٔ کاندید یا حتی نسخه‌های نهایی را به عنوانبه‌عنوان نرم‌افزار گیم نت (Game Net) می‌شناسند.
 
تولیدکنندگان مشتریان خود را برای تست نرم‌افزار به کار می‌گیرندمی‌گیرند، در حالیکهدرحالی‌که هنوز برای ارایهارائهٔ عمومی آماده نیستند. غالباً به ازمایش‌کننده‌های بتا که اختصاصاً انتخاب شده‌اند برای استفاده از نسخهنسخهٔ کاندید (نامزد) مبلغی پرداخت می‌گردد. وقتی که تیم موافقند کد منبع جدیدی به نسخه اضافه نخواهد شد آن نسخه (ارایهارائه) Code Complete نامیده می‌شود. ممکن است هنوز Source Code برای برطرف کردن ایراد تغییرداده شود؛ و هنوز ممکن است برای مستندسازی، و فایل‌های اطلاعاتی و کد برای حالت آزمایشی یا موارد مفید، نیاز به تغییرات باشد. ممکن است به نسخه‌های آینده کدهای جدید اضافه شود.
 
== انتهای چرخه ==
گاهی اوقات شرکت‌های نرم‌افزاری پشتیبانی از تولیدات نرم‌افزار جدید را متوقف می‌کنند (یا بسته‌های جدید را ارایهارائه نمی‌دهند). در این مرحله به این محصول گفته می‌شود که دروضعیت پایانی‌است یا در انتهای چرخه. به عنوان مثال در ۱۵ اوت ۲۰۰۷ اعلام کرد که Apple Works به انتهای راهش رسید.
 
== جستارهای وابسته ==