הסוד לפתרון מושלם לכל בעיה – הבנת קונטקסט
“מה הפתרון המומלץ?” – שאלה שנשמעת יום יום. מה היית עונה? אני עונה בשאלה (תשובה יהודית…) “מה הקונטקסט?” מכיון שאני חסיד גדול של גישת Context-Precision. המשך פוסט זה הינה הבנת סובייקטיבית שלי של הגישה.
לפי הגישה הפתרון המושלם הוא זה שנותן מענה לשחקן הכי חזק בקונטקסט, או לתהליך הכי משפיע בקונטקסט, או לטכנולוגיה הכי משפיע בקונטקסט. הטריק הוא לזהות את הגורם הכי משפיע בקונטקסט. דוגמה? בבקשה.
בפרויקט A זיהינו בעיה משמעותית של קוד שגרמה לבעית ביצועים קשה. מבחינת הנדסת תכנה זה היה אסון. הפתרון היה לשכתב קוד או… לקנות עוד שרתים. לפי Capacity Planning שהצוות ביצע, לכל 20 משתמשים הוקצה שרת שלם. הבעיה נעלמה כלא היתה. מבחינת הנדסה תכנה טהורה הפתרון נורא צרם לי אך במבחן התוצאה הוא נתן את המענה. במרכז הקונטקסט עמד איש חזק שהגן על הקוד.
עוד? בבקשה.
בפרויקט B זיהינו בעיה משמעותית שפוגעת בביצועים תוך כדי העסקת מעבד עד מאוד. זיהינו דרך לפתרון שלפיה הפרויקט הציע להקים שרת נפרד עם טכנולוגיה מתקדמת. כולם שמחו מכיוון שזה פתח דלת לעניין רב אצל המפתחים שהיו רעבים למשהו חדש. בעית ביצועים נפתרה ומוטיבציה עלתה. מבחינת הנדסה תכנה טהורה הפתרון היה לכתוב קוד שונה – לפי Best Practices של ביצועים. אך מכיוון שהקונטקסט היה לא רק הנדסי אלא כלל גם גורם האנושי הפתרון התקבל.
עוד אחד.
בפרויקט C זיהינו בעיה ביצועים קשה והמלצנו על הפתרון – שינוי קוד. שינוי קוד זה אופרציה שתמיד גורמת לאיחור בלו”ז. לפי הקונטקסט הלו”ז היה קשיח עד מאוד ולכן המערכת יצאה כפי שהיא. כולם היה מרוצים – הפרויקט יצא בזמן, יש תכנית עבודה לשיפור. רק המשתמשים לא היו נורא מרוצים מהביצועים אך הם לא היו בקונטקסט הפעם…
אחרון ודי.
בפרויקט D זיהינו מספר בעיות ביצועים קשות ברמת ארכיטקטורה, עיצוב, וקוד. בעל דעה החליט ללכת עד הסוף ולשפר את הממצאים המהותיים מכיוון שהיה לו חשוב שמשתמש קצה יקבל מערכת מהירה. מאוד אהבתי את הקונטקסט הזה ושמחתי להיות שותף פעיל בתהליך – תהליך פיתוח מונחה ביצועים.
“יש לי עקרונות – ואם אתה לא אוהב אותם אז… יש לי אחרים” – לפעמים אני בספק אם זה בכלל בדיחה.
אז מה הגבול בין עקרונות להתאמה לקונטקסט?
מה חשוב יותר – פתרון לפי ספר או פתרון קונטקסטואלי?
מה דעתך?
שמי אליק לוין ואני מתרכז ב- Security and Performance באפליקציות Net.
בזמני הפנוי אני בלוגר שרוף.