כל מה ששונה: תוכנה פתוחה לעומת קוד פתוח

עסקים משתמשים בשני המונחים הללו ללא מודעות להבדל ביניהם ● אך הוא טמון בערכים ובאמונות שמאחורי אופן יצירת התוכנה, המשפיע על רישיון השימוש ועלויות האחזקה

17/01/2018 13:30
אריה עמית, יועץ אסטרטגי וניהולי בכיר ב-I-amIT

עסקים משתמשים לעתים במונחים "תוכנה חופשית" ו-"קוד פתוח" ביחד, ללא מודעות להבדל ביניהם. ההבדל טמון בערכים ובאמונות שמאחורי אופן יצירת התוכנה, המשפיע על רישיון השימוש ועלויות האחזקה.

קוד פתוח הוא פרדיגמה לפיתוח תוכנה והפצתה, תוכנה פתוחה מבוססת על תנועה חברתית הדוגלת בחופש ולא בהכרח בעלות אפסית.

כדי שתוכנה תיחשב "פתוחה", יש לעמוד בארבעה עקרונות: לעשות שימוש בתוכנה לכל מטרה, לאפשר גישה לקוד המקור ולשנות אותו כרצוננו, להפיץ מחדש עותקים חופשיים של התוכנה, ולהפיץ באופן חופשי גרסאות של התוכנה שהשתנו.

התנועה החופשית סבורה שהעולם צריך להיפטר מתוכנות קנייניות, המשתמש צריך להיות משוחרר מהבקרה של המפתח התוכנה המקורי.

התנועה הפתוחה, לעומת זאת, מתמקדת בגישה פתוחה לקוד התוכנה. גישה לקוד המקור, כך שהמשתמש יכול לשנותו ולשתף אותו עם הקהילה. התנועה הפתוחה אינה תומכת ברישוי, אלא מקדמת גישה מעשית שבה אנשים יכולים להחליט על המתאים לצורכיהם – כולל אפשרויות קנייניות.

המאפיינים של תוכנת קוד פתוח

חלפו הימים שבהם ספקים מכרו פתרון חומרה ותוכנה מלא. חברות מבקשות לחדש את תשתיות החומרה והתוכנה שלהן, לצמצם עלויות ולא להיות "נעולות" בקניית פתרונות רק מספק אחד. חברות רוצות לשלב ולהתאים את הבחירה של פתרונות חומרה ותוכנה, ולכן המוצרים חייבים להיות תואמים.

המשתמש בתוכנת הקוד הפתוח רשאי להפיץ מחדש את התוכנה, גם כחלק מפתרון תוכנה אחר, מבלי לשלם כל תשלום או תמלוגים. לפיכך, תוכנת קוד פתוח מקדמת שיתוף פעולה, בניגוד למודלים סגורים של תוכנות מקור קנייניות, שאוסרים במפורש שימוש או ההפצה של התוכנה ללא אישור. הספק מחויב להפיץ את קוד המקור עם פתרון התוכנה והמשתמש רשאי להפיץ אותו מחדש. הרישיון מאפשר שינויים הניתנים לחלוקה באותם תנאים כמו רישיון התוכנה המקורית.

תוכנות קוד פתוח מועדפות לעתים בגלל:
● עלויות נמוכות יותר מפתרונות קנייניים חלופיים.
● היכולת לראות כיצד הפתרון עובד ולשנות אותו בהתאם לצרכיו.
● היכולת לתקן באגים מבלי להמתין לספק.
● התוכנה אינה נשלטת על ידי ספק אחד; היא נוצרת על ידי מגוון ספקים ותורמים עצמאיים.
● לתוכנות קוד פתוח אין End of Life – ניתן להמשיך לפתח ולתחזק על ידי כל אדם אחר אשר באופן חופשי מוריד את קוד המקור.

המאפיינים של תוכנה פתוחה

תוכנה פתוחה מוצעת עם ממשקי יישומים (API), המהווים דבק בין יישומים, מספקים נקודת גישה ומאפשרים חיבורים עם מקורות נתונים ושירותי נתונים מצד שלישי או יישומים אחרים.

ממשק API יכול לאפשר ליישום אחר לצרוך נתונים שיוצר פתרון אחר. לדוגמה, יישום פיננסי עשוי לכלול ממשק API המספק נתוני שוק פיננסיים גלובליים לשותפים שלהם, שצורכים את הנתונים על ידי כתיבת יישומים התואמים ל- API.

חברה קמעונאית גדולה יכולה לפרסם את ה- API שלה כך שיספק גישה לקטלוג המוצרים שלה, ובכך לאפשר למפיציה להרוויח הכנסות כמו של שותפים.

תוכנה לפתרון כל צורך עסקי

הצמיחה של שני סוגי התוכנה הללו במגזר העסקי נובעת מיכולתם לספק במהירות את החדשנות באמצעות הגישה המשותפת שלהם, חברות יכולות למצוא פתרונות פתוחים וקוד פתוח שימלאו את כל הצרכים העסקיים.

עבור חלק מהמשתמשים, היכולת לגשת לקוד המקור חשובה, שכן היא מאפשרת להם להיות חלק מקהילה פעילה, המבצעת באופן קבוע עדכונים לפרויקט הפיתוח.

כיוון שהתוכנה אינה בבעלות של חברה אחת, קיימת סבירות נמוכה לתלות מוחלטת בספק. היא גם מציעה שקיפות רבה יותר, מכיוון שהספק אינו מנסה להגן על ה-IP.

הרכישות הנוספות

ברוב המקרים, ארגונים עשויים להעדיף לבחור מוצר קוד פתוח ולא מוצר חינמי, שכן עם רכישת הרישיון ירכשו גם תמיכה. לעתים קרובות ארגון תומך יציע שירות בתשלום כדי לתמוך ולתחזק תוכנה חופשית כזו. למשתמש יש אפשרות להשתמש בגרסה חופשית (לא נתמכת) או בגרסה בתשלום (נתמכת); בחירה זו נקבעת לעתים קרובות על ידי רמת המיומנות של המשתמש.

לא כל הרישיונות שווים ולא כל הפרויקטים זהים. כאשר בוחנים תוכנה חדשה, חשוב להעריך את היכולת אל מול הצורך. במציאות, אם תוכנה חופשית או קוד פתוח לא צפויים להיות בעדיפות לעסקים, הם פשוט צריכים לבחור ולהתאים את הפתרון, הרישיון ואת רמת התמיכה לצרכים שלהם, ולהיות מודעים למה הם משתמשים על מנת לעמוד בתנאי הרישיונות הרלוונטיים.

מה שחשוב באמת הוא הבנת היתרונות של כל רישיון, כיבוד התנאים והנורמות בקהילת הפרויקט. מדובר בבחירת הרישיון הטוב ביותר שיתאים למטרות הפרויקט; מה שמתאים לעסק ולקהילה שנמצאים בה.

הבנת הרישוי

תוכנה חופשית או קוד פתוח משוחררת במסגרת רישיון אחד או יותר, אשר קובע את האופן שבו ניתן להשתמש בתוכנה, להתאים אותה או לשנות אותה על ידי בעל הרישיון.

חלק מהרישיונות הם פתוחים ומאפשרים לשנות את התוכנה לפי בקשת בעל הנכס במוצר החדש; עם זאת, חלק מהרישיונות מחייבים את בעל הרישיון לתרום את השינויים לקהילה כדי לשפר עוד יותר את המוצר לטובתה. לרישיונות כאלה יכולות להיות השלכות מנקודת מבט מסחרית.

יש רישיונות הדורשים שכל העבודות הנגזרות ימשיכו להיות מורשות תחת אותו רישיון קוד מקור כמו התוכנה המקורית, בעוד אחרים מאפשרים את הכללת תוכנה זו בתוכנה קניינית סגורה עם יכולות הפצה מוגבלות.

שיקולי אבטחה

לשאלה האם תוכנה חופשית או קוד פתוח בטוחים פחות או יותר מזו הקניינית – אין ראיות משכנעות. רבים עשויים לחשוב שתוכנה חינמית או פתרונות קוד פתוח מאובטחים פחות. אחוזי פרצות האבטחה דומים ללא קשר לאופן שבו התוכנה מיוצרת.

על פי הסקרים של Veracode בשנה האחרונה, יותר משניים מכל שלושה ארגונים אפילו לא יודעים בדיוק אילו רכיבים הם משתמשים. לכן, לא קשה להבין שרבים מהם נותרים חסרי ביטחון.

תגובות

(0)

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

אין לשלוח תגובות הכוללות דברי הסתה, דיבה, וסגנון החורג מהטעם הטוב

אירועים קרובים