شنبه, ۱۳ بهمن, ۱۴۰۳ / 1 February, 2025
مجله ویستا
مدل توسعه نرمافزار متنباز و ضوابط توزیع آن
نرم افزارهای متنباز از نظر مدل توسعه به دو دسته مختلف طبفه بندی میشوند. در ادامه این دو دسته را بررسی میکنیم و به شرح ضوابط توزیع این نرمافزارها میپردازیم.
۱) مدل کلیسا (Cathedral)
۲) مدل غالب دنیاهای تجاری است.
۳) توسط گروههای کوچک و افراد با تجربه و نیز با دقت زیاد تولید میشوند.
۴) انتشار نگارشهای جدید نرمافزارهای این مدل معمولاً با سرعت بسیار پایینتری نسبت به مدل "بازار"- که در ادامه توضیح داده شده است- انجام میگیرد.
۵) دارای حمایت مالی هستند.
بازار (Bazaar)
۶) مدل دنیایLinux است.
۷) "زود خروجی بده و همیشه خروجی بده"( Release early! Release often) یک اصل مهم در این مدل است..
۸) هر کاری که فردی میتواند انجام دهد به او محول میشود.
۹) قید و شرط خاصی برای کاربر ندارد.
۱۰) انتشار نگارشهای جدید نرمافزارهای این مدل اغلب تا جایی که ممکن است انجام میگیرد.
۱۱) بدون هیچگونه حمایت مالی تولید میشوند.
پس با تقریب خوبی میتوان پروژههای Cathedral متنباز را تا حد زیادی شبیه پروژههای کدبسته فرض کرد.
● ضوابط توزیع نرمافزار متنباز
متنباز بودن صرفاً به معنای دسترسی به کد منبع نیست. در توزیع نرمافزارهای متنباز باید ضوابطی را رعایت کرد. در زیر این موارد ذکر شدهاند. در واقع ۹ موردی که در بند ۱-۴ گفته شد، در این بند به مفصل توضیح داده میشوند:
۱) تکثیر رایگان: اجازهنامهای که به این نرمافزارها داده میشود، باعث نمیشود که هیچیک از موارد مربوط به فروش یا پخش و توزیع نرمافزار محدود شود. اجازه نامه به حق امتیاز یا هرگونه پرداختی به خاطر فروش، نیاز ندارد. با اعمال تکثیر رایگان روی اجازهنامه، دیگر وسوسهی حذف خیلی از قسمتهای طولانی ولی سودمند برنامه را، به منظور داشتن فروش اندکی از قسمتهای کوتاه، از بین میبریم. اگر این اجبار را برداریم، فشارهای زیادی روی همکاران پروژه به خاطر نقص و کاستی در پروژه خواهد بود.
۲) کد منبع: برنامه باید شامل کد منبع باشد و امکان توزیع این کد نیز مثل فرم کامپایل شده برنامه وجود داشته باشد. اگر بخشهایی از محصول به همراه کد منبع توزیع نمیشوند، باید اطلاعرسانی خوبی از نحوه بدستآمدن کد و امکان download آن از اینترنت، بدون هیچ هزینهای وجود داشته باشد.
آوردن هر نوع نکته مبهم و گیجکنندهای در کد، ممنوع است. کدهای میانی مثل خروجی پیشپردازندهها یا مترجمها در توزیع نرمافزار گنجانده نمیشوند. ما نیاز داریم که به یک کد غیرمبهم و واضح دسترسی داشته باشیم؛ در غیر این صورت نمیتوان به تکامل برنامه، بدون اعمال تغییراتی در آن، کمک کرد. بنابراین تغییرات ما باید به سهولت اعمال شود.
۳) کارهای مشتقشده: مجوز باید اجازهی تغییرات، در دیگر کارهایی که در همین زمینه انجام شدهاند، را بدهد و آنها نیز مثل نرمافزار اولیه امکان توزیع داشته باشند. برای سرعت بخشیدن به تکامل نرمافزار، افراد به تجربیات کاری و تکثیر تغییرات نیاز دارند.
۴) جامعیت کد نویسنده: مجوز نرمافزار ممکن است توزیع کد برنامه را پس از تغییرات اعمال شده توسط دیگران محدود کند و امکان این کار را فقط به صورت فایلهای وصلهای بدهد. این امر به منظور امکان تغییر در برنامه در زمان ساخت آن است. مجوز باید صریحاً اجازه توزیع نرمافزاری را که از کد تغییریافته ساخته شده، بدهد. برای این کار نیز ممکن است به کارهای از قبل انجامشده، تحت یک عنوان جدید، یا یک شماره نگارش جدید از نرمافزار اولیه نیاز باشد.
انگیزه دادن برای بهبود برنامهها امری مفید است، اما کاربران این حق را دارند که بدانند چه کسی مسوؤل نرمافزاری است که آنها از آن استفاده میکنند. نویسندگان و پشتیبانان نرمافزار نیز متقابلاً این حق را دارند که بدانند اعتبارشان را صرف چه چیزی کردهاند.
از اینرو، یک مجوز متنباز باید دردسترس بودن کد را تضمین کند، اما ممکن است، برای توزیع، نیاز به ضمیمه کردن کدهای پایه و دستنخورده اولیه به فایلهای وصلهای باشد. به این ترتیب، تغییرات غیررسمی و غیرمستند در دسترس همه قرار میگیرند، اما از نظر قابلیت خواندن کد با کد اولیه متمایزند.
۵) هرگونه تمایزی در برابر افراد و گروهها ممنوع: به منظور داشتن حداکثر بهره از فرآیند جاری، شرایط شرکت و همکاری افراد و گروهها در برنامه متنباز باید یکسان باشد. بنابراین نباید به هیچ فردی، جهت فیلتر کردن بخشی از فرآیند، مجوزی داده شود.
۶) هرگونه تمایزی در زمینههای مختلف تحقیقی ممنوع: مجوز نباید افراد را در استفادهی برنامه، در یک رشتهی خاص، محدود کند. برای مثال چه در زمینهی تجارت و چه در تحقیقات ژنتیکی(!) نباید محدودیتی برای استفاده از برنامه وضع کند. اجازهنامههای غیر حقیقی ممکن است مانع از استفادههای تجاری برنامه شوند. در صورتیکه هدف این است که کاربران تجاری نیز به این گروه نرمافزاری ملحق شوند و در بهرهگیری از امکانات آن مستثنی نباشند.
۷) تکثیر مجوز: حقوقی که به برنامه الصاق میشود، باید به همه برنامههایی که تکثیر میشوند نیز تعلق بگیرد، بدون اینکه مجوز جدیدی برای این قسمتها اضافه شود.
۸) مجوز نباید مختص به یک محصول خاص باشد: حقوقی که به یک برنامه تعلق میگیرد نباید وابسته به یک نرمافزار توزیعشده باشد. همهی نرمافزارها و برنامههایی که از برنامهی اولیه منشعب و توزیع شدهاند، باید همان حقوقی را که به نرمافزار اصلی و اولیه تعلق دارد، داشته باشند. خوشبختانه این موضوع عرصه را بر گروههای مجوزدهنده غیرحقیقی تنگ کرده است.
۹) مجوز نباید محدودیتی برای دیگر نرمافزارها ایجاد کند: مجوز نباید برای دیگر نرمافزارها که همزمان و در طول تولید نرمافزار ثبتشده، توزیع شدهاند، محدودیتی ایجاد کند. مثلا نباید اصرار داشته باشد که همه برنامههای توزیعشده روی یک رسانه حتماً متنباز باشند. توزیعکنندگان نرمافزارهای متنباز این حق را دارند که سلایق شخصی خود را روی نرمافزار خود اعمال کنند.
۱۰) مجوز باید تکنولوژی بیطرف داشته باشد: هیچ بند و مادهای از اجازهنامه نباید به تکنولوژیهای شخصی یا سبک واسط خاصی استناد دهد. این بند بیشتر به این منظور خاص است که برای انعقاد قرارداد بین مجوزدهنده و گیرندهی مجوز، نیاز به توافقی صریح میباشد.
منابع:
http://www.opensource.org/docs/definition.php
http://gnuwin.epfl.ch/articles/en/cathedralbazaar/cathedral-bazaar.pdf
ترجمه: زهرا احمدی
http://www.opensource.org/docs/definition.php
http://gnuwin.epfl.ch/articles/en/cathedralbazaar/cathedral-bazaar.pdf
ترجمه: زهرا احمدی
منبع : طرح ملی نرمافزارهای آزاد
ایران مسعود پزشکیان دولت چهاردهم پزشکیان مجلس شورای اسلامی محمدرضا عارف دولت مجلس کابینه دولت چهاردهم اسماعیل هنیه کابینه پزشکیان محمدجواد ظریف
پیاده روی اربعین تهران عراق پلیس تصادف هواشناسی شهرداری تهران سرقت بازنشستگان قتل آموزش و پرورش دستگیری
ایران خودرو خودرو وام قیمت طلا قیمت دلار قیمت خودرو بانک مرکزی برق بازار خودرو بورس بازار سرمایه قیمت سکه
میراث فرهنگی میدان آزادی سینما رهبر انقلاب بیتا فرهی وزارت فرهنگ و ارشاد اسلامی سینمای ایران تلویزیون کتاب تئاتر موسیقی
وزارت علوم تحقیقات و فناوری آزمون
رژیم صهیونیستی غزه روسیه حماس آمریکا فلسطین جنگ غزه اوکراین حزب الله لبنان دونالد ترامپ طوفان الاقصی ترکیه
پرسپولیس فوتبال ذوب آهن لیگ برتر استقلال لیگ برتر ایران المپیک المپیک 2024 پاریس رئال مادرید لیگ برتر فوتبال ایران مهدی تاج باشگاه پرسپولیس
هوش مصنوعی فناوری سامسونگ ایلان ماسک گوگل تلگرام گوشی ستار هاشمی مریخ روزنامه
فشار خون آلزایمر رژیم غذایی مغز دیابت چاقی افسردگی سلامت پوست