שימוש באסטרטגיית shift left מקצר את מחזור החיים של פיתוח התוכנה ומגדיל היכולת להספקת שירותים בזמן קצר יותר
למנהלי המיחשוב ברור שכדי לשגשג בשווקים תחרותיים עליהם לקדם את החדשנות ולהבטיח את שביעות רצון הלקוחות – כדי לא להישאר מאחור.
אולם, המשימות הכרוכות בפיתוח של גרסאות תוכנה ושל יישומים חדשים שפונים ללקוחות הופכות למאתגרות מאי פעם – במיוחד בארגונים גדולים שחייבים להתמודד עם טכנולוגיות מודרניות. בארגונים אלו חייבים להתמודד גם מול חברות הזנק מהירות שפועלות בענן, ואשר המגבלות היחידות שלהן מוגדרות על ידי מסגרת כרטיס האשראי.
מה ניתן לעשות, אם כן, כדי לשפר את האיכות ולהאיץ את מחזורי הגרסאות כדי לסייע לחברות להשיק שירותים חדשים בקצב מהיר יותר, לקדם הצמיחה ולשמור על היתרון התחרותי?
הפתרון בתחום פיתוח התוכנה מתאר אסטרטגיה של Shifting Left – צוותי פיתוח התוכנה והבדיקות מבצעים את הבדיקות בשלבים מוקדמים יותר במחזור החיים של פיתוח התוכנה.
כיום, מרבית הבדיקות מתבצעות לאחר שפיתוח השירות הושלם. קשה יותר לתקן שגיאות שמאותרות בתום מחזור הפיתוח, והתוצאה השבתה מיותרת וירידה משמעותית בתפוקה. לבאגים בסביבת הייצור עלולות להיות, השלכות חמורות יותר: פגיעה במותג ואובדן לקוחות.
למרות שמתודולוגיות Agile, המתייחסות לפיתוח במקביל, נותנות מענה מסוים לסוגיות אלה, הרי שבשל מורכבות הסביבות והיישומים, נאלצים צוותי Agile לעתים קרובות להמתין עד שניתן יהיה להרכיב את כל החלקים לקראת בחינת הביצועים והמסירה ללקוח. מתודולוגיות Agile סייעו לצוותי הפיתוח לפעול בקצב מהיר יותר, אך לעיתים הם סבלו מאילוצים כשהגיעה העת להטמעה – בדיוק כמו בשיטות המסורתיות של פיתוח.
במחלקות הפיתוח צריכים, אם כן, לגשת למגוון רחב של סביבות וירטואליות שנראות ופועלות בדיוק כמו סביבות האמת – וצריכים לגשת למשאבים, בכל אחד מהשלבים במחזור החיים של הפיתוח, ברמת הרכיב וללא אילוצים. בנוסף, צריכים במחלקות הפיתוח וירטואליזציה של שירותים – שהופכת במהירות לאמצעי החשוב ביותר במחלקות מיחשוב שמיישמות את אסטרטגיית Shifting Left, כך ניתן לבחון כל רכיב בנפרד, בהקשר של הסביבה שלו, במקום להמתין להרכבה, שלאחריה פתרון הבעיות הופך יקר ומורכב.
את הדוגמאות הראשונות להצלחה אפשר למצוא בשירותים הפיננסיים, בין חברות הטלקום וברשתות שיווק.
היישום של אסטרטגיית Shifting Left באמצעות וירטואליזציה של שירותים אפשר לחברת Sprint-Nextel להשיק את המוצרים החשובים ביותר שלה בקצב מהיר ובמועד מוקדם יותר. הם הקימו 300 שירותים וירטואליים בשנה, הודות לקיצור בזמן מחזור הגרסאות ושיפור האיכות של הקוד בשלבים מוקדמים יותר של מחזור החיים. בחברה הצליחו להיפטר מהתופעה שאנשיה מכנים "מחסום בחינת המערכת" (‘system test gridlock’), כאשר כל יישום ממתין שתסתיים הבחינה של קודמו – תופעה שיוצרת צווארי בקבוק. בעקבות ההשקה של יישום פיילוט לחנויות, הוקמו 80 שירותים וירטואליים בשבועיים הראשונים לפרויקט. לראשונה ,ניתן היה לבחון את היישום בצורה עצמאית.
באחת החברות לשירותים פיננסיים עשו שימוש בשיטה זו כדי לפתח שירות חדשני, במכשירים ניידים, אשר יאפשר לבעלי חשבונות להשתמש במצלמת הטלפון החכם להפקדת המחאות. הודות לווירטואליזצית שירותים, הצליחה החברה להשיק שירות איכותי ובקצב מהיר מזה של המתחרים.
לבסוף, צוותי הפיתוח של חברת שילוח בינלאומית נעזרו בסביבות וירטואליות ליישם את אסטרטגיית Shifting Left, ולהעביר את פעילויות הבחינת התוכנה לצידו השמאלי של ציר הזמן האופקי. הם הצליחו להשיק יישום חדש חודש לפני תאריך היעד, וליהנות מהכנסות נוספות בהיקף כולל של מיליוני דולרים.
מאת: שרידר מיטל, מנהל כללי להספקת יישומים CA Technologies, ראש צוות התמודדות עם האתגרים הקריטיים ביישום מתודולוגיות DevOps