دوشنبه, ۱۷ اردیبهشت, ۱۴۰۳ / 6 May, 2024
مجله ویستا
مدل توسعه نرمافزار متنباز و ضوابط توزیع آن
نرم افزارهای متنباز از نظر مدل توسعه به دو دسته مختلف طبفه بندی میشوند. در ادامه این دو دسته را بررسی میکنیم و به شرح ضوابط توزیع این نرمافزارها میپردازیم.
۱) مدل کلیسا (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
ترجمه: زهرا احمدی
منبع : طرح ملی نرمافزارهای آزاد
نمایندگی زیمنس ایران فروش PLC S71200/300/400/1500 | درایو …
دریافت خدمات پرستاری در منزل
pameranian.com
پیچ و مهره پارس سهند
تعمیر جک پارکینگ
خرید بلیط هواپیما
غزه ایران آمریکا شورای نگهبان مجلس شورای اسلامی انتخابات دولت حسین امیرعبداللهیان حجاب جنگ دولت سیزدهم حسن روحانی
سلامت هواشناسی اصفهان شهرداری تهران تهران قتل فضای مجازی سیلاب سامانه بارشی سازمان هواشناسی آموزش و پرورش باران
بانک مرکزی خودرو بنزین بازار خودرو قیمت دلار قیمت طلا قیمت خودرو دلار یارانه مسکن ایران خودرو حقوق بازنشستگان
تلویزیون نمایشگاه کتاب سینمای ایران صدا و سیما دفاع مقدس مسعود اسکویی موسیقی سریال مهران غفوریان
معماری
اسرائیل رژیم صهیونیستی حماس فلسطین جنگ غزه روسیه اوکراین امیرعبداللهیان طوفان الاقصی ایالات متحده آمریکا نوار غزه جنگ اوکراین
فوتبال پرسپولیس استقلال لیگ برتر جواد نکونام رئال مادرید سپاهان بارسلونا بازی لیگ برتر انگلیس باشگاه استقلال باشگاه پرسپولیس
باتری اپل گوگل اینستاگرام آیفون مایکروسافت ناسا عکاسی سامسونگ
کاهش وزن دیابت توت فرنگی سیگار فشار خون کبد چرب