مقدمه
در دنیای توسعه نرمافزار، نوشتن کد تنها بخشی از مسیر تولید یک محصول است. یکی از مهمترین تصمیماتی که هر برنامهنویس، شرکت نرمافزاری یا استارتاپ باید اتخاذ کند، انتخاب لایسنس (Software License) مناسب برای محصول خود است.
لایسنس مشخص میکند کاربران چه حقوقی در استفاده از نرمافزار دارند، آیا اجازه تغییر کد را خواهند داشت، امکان فروش مجدد وجود دارد یا خیر، مسئولیتهای حقوقی توسعهدهنده چیست و در چه شرایطی میتوان نرمافزار را توزیع کرد.
انتخاب اشتباه لایسنس میتواند باعث بروز مشکلات حقوقی، از دست رفتن مالکیت معنوی، یا حتی جلوگیری از انتشار نرمافزار در برخی مارکتها شود. به همین دلیل آشنایی کامل با انواع مجوزهای نرمافزاری برای هر توسعهدهنده ضروری است.
لایسنس نرمافزار چیست؟
لایسنس نرمافزار یک قرارداد حقوقی میان تولیدکننده نرمافزار و کاربر است که نحوه استفاده، کپی، ویرایش، انتشار و فروش نرمافزار را مشخص میکند.
به بیان ساده، لایسنس پاسخ این سؤال را میدهد:
- آیا کاربر میتواند نرمافزار را نصب کند؟
- آیا اجازه تغییر سورس کد را دارد؟
- آیا امکان فروش نسخه تغییر یافته وجود دارد؟
- آیا استفاده تجاری مجاز است؟
- مسئولیت خرابی یا خسارت بر عهده چه کسی است؟
دستهبندی کلی لایسنسهای نرمافزاری
تقریباً تمام مجوزهای نرمافزاری در دو گروه اصلی قرار میگیرند:
- لایسنسهای متنباز (Open Source)
- لایسنسهای اختصاصی (Proprietary)
در ادامه هر کدام را بررسی میکنیم.
۱. لایسنس Proprietary (اختصاصی)
این نوع لایسنس رایجترین مدل در نرمافزارهای تجاری است.
در این مدل:
- سورس کد منتشر نمیشود.
- مالکیت کامل متعلق به شرکت سازنده است.
- کاربر فقط حق استفاده دارد.
- تغییر یا مهندسی معکوس معمولاً ممنوع است.
- کپی غیرمجاز تخلف محسوب میشود.
نمونهها:
- Microsoft Office
- Adobe Photoshop
- AutoCAD
- Windows
مزایا
- حفظ کامل مالکیت فکری
- درآمدزایی مستقیم
- کنترل کامل روی نسخهها
- امنیت بیشتر برای منطق کسبوکار
معایب
- توسعه توسط جامعه امکانپذیر نیست.
- کاربران وابسته به شرکت هستند.
- هزینه توسعه کاملاً بر عهده مالک است.
۲. Freeware
در Freeware استفاده از نرمافزار رایگان است اما سورس کد منتشر نمیشود.
کاربر:
- رایگان استفاده میکند.
- امکان تغییر نرمافزار را ندارد.
- معمولاً اجازه فروش ندارد.
نمونهها:
- Adobe Acrobat Reader
- Google Chrome (نسخه نهایی)
۳. Shareware
در این مدل، نرمافزار برای مدت محدود یا با امکانات محدود در اختیار کاربر قرار میگیرد.
نمونهها:
- نسخه آزمایشی ۳۰ روزه
- محدودیت ذخیره فایل
- واترمارک
هدف اصلی این مدل، ترغیب کاربر به خرید نسخه کامل است.
۴. Trial License
شباهت زیادی به Shareware دارد.
معمولاً دارای:
- محدودیت زمانی
- محدودیت امکانات
- غیرفعال شدن پس از پایان دوره
این مدل امروزه در اکثر نرمافزارهای تجاری استفاده میشود.
۵. Freemium
یکی از محبوبترین مدلهای کسب درآمد نرمافزارهای آنلاین است.
نسخه پایه رایگان است اما امکانات حرفهای پولی هستند.
نمونهها:
- Spotify
- Canva
- Trello
- Dropbox
۶. Open Source License
در این مدل سورس کد منتشر میشود.
کاربران میتوانند:
- مشاهده کد
- تغییر کد
- توسعه
- توزیع مجدد
اما بسته به نوع لایسنس محدودیتهایی وجود دارد.
محبوبترین لایسنسهای متنباز
MIT License
محبوبترین لایسنس متنباز دنیا.
اجازه میدهد:
- استفاده شخصی
- استفاده تجاری
- ویرایش
- فروش
- انتشار
تنها شرط:
حفظ متن لایسنس اصلی.
مناسب برای
- کتابخانهها
- پکیجهای NuGet
- پروژههای GitHub
Apache License 2.0
تقریباً مشابه MIT است اما حمایت حقوقی بیشتری دارد.
ویژگی مهم:
دارای بند Patent Grant است.
یعنی اگر توسعهدهنده پتنتی روی فناوری داشته باشد، کاربران نیز مجاز به استفاده خواهند بود.
BSD License
یکی از سادهترین مجوزهای متنباز است.
نسخههای مختلف:
- BSD 2-Clause
- BSD 3-Clause
محدودیت بسیار کمی دارد.
GPL (GNU General Public License)
یکی از سختگیرانهترین لایسنسهای متنباز.
اگر نرمافزار شما از کد GPL استفاده کند:
تمام پروژه مشتقشده نیز باید GPL باشد.
این ویژگی را Copyleft مینامند.
مزایا:
- جلوگیری از بسته شدن سورس
- حفظ آزادی نرمافزار
معایب:
- مناسب پروژههای تجاری نیست.
LGPL
نسخه سبکتر GPL است.
کتابخانه میتواند در نرمافزارهای تجاری استفاده شود بدون اینکه کل پروژه GPL شود.
MPL (Mozilla Public License)
بین MIT و GPL قرار میگیرد.
فقط فایلهای تغییر یافته باید متنباز باقی بمانند.
AGPL
نسخه توسعهیافته GPL برای نرمافزارهای تحت وب.
اگر نرمافزار روی سرور اجرا شود نیز باید سورس منتشر گردد.
Public Domain
در این حالت سازنده تقریباً تمام حقوق خود را واگذار میکند.
هر فردی میتواند:
- استفاده
- تغییر
- فروش
- انتشار
بدون محدودیت.
SaaS License
در سرویسهای ابری معمولاً نرمافزار اصلاً به کاربر فروخته نمیشود.
کاربر فقط اشتراک استفاده دریافت میکند.
نمونهها:
- Salesforce
- Microsoft 365
- Google Workspace
Subscription License
کاربر به جای خرید دائمی، اشتراک ماهانه یا سالانه پرداخت میکند.
مزایا:
- درآمد پایدار
- بروزرسانی دائمی
- پشتیبانی مستمر
Perpetual License
کاربر یک بار هزینه پرداخت میکند و همیشه مجاز به استفاده است.
نمونه قدیمی:
Microsoft Office 2019
Floating License
در شرکتها استفاده میشود.
مثلاً:
۱۰ لایسنس خریداری میشود.
اما بین ۵۰ کارمند به صورت شناور استفاده خواهد شد.
Node Locked License
لایسنس فقط روی یک دستگاه فعال میشود.
تعویض سیستم معمولاً نیازمند انتقال لایسنس است.
Concurrent License
تعداد کاربران همزمان محدود است.
مثلاً:
۲۰۰ کاربر
اما فقط ۳۰ نفر همزمان میتوانند وارد شوند.
OEM License
همراه سختافزار فروخته میشود.
نمونه:
ویندوز نصب شده روی لپتاپ.
Enterprise License
برای سازمانها طراحی شده است.
امکانات:
- مدیریت متمرکز
- تعداد زیاد کاربران
- قرارداد اختصاصی
- پشتیبانی ویژه
تفاوت Open Source و Proprietary
| ویژگی | متنباز | اختصاصی |
|---|---|---|
| مشاهده سورس | دارد | ندارد |
| تغییر کد | مجاز | ممنوع |
| فروش | بسته به لایسنس | فقط مالک |
| توسعه توسط جامعه | بله | خیر |
| مالکیت فکری | اشتراکی | اختصاصی |
چگونه بهترین لایسنس را انتخاب کنیم؟
اگر قصد دارید کتابخانه یا ابزار توسعه منتشر کنید، معمولاً MIT یا Apache 2.0 انتخاب مناسبی است. اگر میخواهید تمامی نسخههای مشتقشده نیز متنباز باقی بمانند، GPL یا AGPL گزینههای بهتری هستند. برای نرمافزارهای تجاری مانند ERP، CRM یا حسابداری که منطق کسبوکار و دارایی فکری آنها ارزش بالایی دارد، استفاده از لایسنس اختصاصی (Proprietary) به همراه قرارداد استفاده (EULA) رایجترین و مناسبترین انتخاب است. همچنین اگر محصول شما به صورت سرویس ابری ارائه میشود، مدل اشتراکی (Subscription) یا SaaS معمولاً بیشترین انعطاف و درآمد پایدار را فراهم میکند.
جمعبندی
انتخاب لایسنس نرمافزار تنها یک تصمیم فنی نیست، بلکه یک تصمیم تجاری و حقوقی نیز محسوب میشود. نوع لایسنس مشخص میکند کاربران چگونه میتوانند از محصول استفاده کنند، توسعهدهندگان چه حقوقی دارند و مالک نرمافزار تا چه اندازه بر انتشار و توزیع آن کنترل خواهد داشت.
در پروژههای متنباز، مجوزهایی مانند MIT، Apache 2.0 و GPL هر کدام فلسفه و محدودیتهای متفاوتی دارند. در مقابل، شرکتهای تولیدکننده نرمافزارهای تجاری معمولاً از لایسنس اختصاصی همراه با قرارداد EULA استفاده میکنند تا از مالکیت معنوی و مدل درآمدی خود محافظت کنند.
پیش از انتشار هر نرمافزار، بررسی دقیق نیازهای پروژه، مدل کسبوکار و الزامات حقوقی، به شما کمک میکند مناسبترین نوع لایسنس را انتخاب کرده و از بروز مشکلات احتمالی در آینده جلوگیری کنید.
منابع معتبر
- Open Source Initiative (OSI) – فهرست و توضیحات مجوزهای متنباز: https://opensource.org/licenses
- Free Software Foundation (FSF) – راهنمای مجوزهای نرمافزار آزاد: https://www.gnu.org/licenses
- Choose a License – راهنمای انتخاب لایسنس برای پروژهها: https://choosealicense.com
- SPDX License List – فهرست استاندارد شناسههای لایسنس: https://spdx.org/licenses
- The Linux Foundation – مستندات مرتبط با مجوزهای متنباز: https://www.linuxfoundation.org
- WIPO (World Intellectual Property Organization) – مالکیت فکری نرمافزار: https://www.wipo.int
ثبت دیدگاه
0 دیدگاه