30 אוקטובר 2016 | רוני קרן
עוברים לאוטומט: מהפכת ה-DevOPS שמשפיעה על בדיקות התוכנה שלכם

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

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

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

במאמר זה נתאר את השינוי האמור ונציין את השלכותיו על עולם ה- QA. 
 

אופן ניהול פרויקטי תוכנה הופך להיות יותר ויותר Agile Based. החשיבות ב"אג'יליות" של הפרויקט היא יכולת לייצר תקשורת טובה ונהלי עבודה ברורים לטובת תהליכים מהירים של קבלת החלטות, ישום ומעקב. מדוע היכולת ליישם תהליכים במהירות כה קריטית? מכיוון שזהו אופי המוצרים – הם נוטים להתעדכן באופן אינטנסיבי. יש לכך הרבה סיבות:
 

- ריבוי משתמשים יוצר ריבוי דרישות – מתן מענה הולם

- הצורך להשאיר מוצר רלוונטי לאורך זמן ע"י שחרור גרסאות קטנות

- הגדלה והרחבה של קהל היעד

- שיפור השירות

- שילוב טכנולוגיות חדשות שצצות ללא הרף

- מתן מענה לטרנדים אחרונים בקרב קהל הלקוחות
 

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

אך זה לא מספיק. בעידן ה- Big Data ניהול הפרויקט בצורה "אג'ילית" אמיתית מצריך התמודדות עם כמויות גדולות של הכל מהכל – ישנן הרבה יותר פניות וחוות דעת מלקוחות (כמו פוסטים אינסופיים), ישנם הרבה יותר Features לפתח בפחות זמן, ניהול הגרסאות הופך לאינטנסיבי וקשה לניהול, ביצוע Test ולאחריו פעולות של Deploy וגם Integration הופכים למייגעים לא פחות – בעיקר משום שהם תכופים מאוד...
 

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

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

תהליכי ה-QA חייבים להיות יעילים ומוטמעים באופן אוטומטי בכלל תהליך הייצור. מרבית מוצרי האינטרנט, ה- Enterprise-IT וסביבות ה- Client (Mobile & IoT) מיוצרים לתוך עולם ה- Big-Data ולמעשה מאותגרים עוד מיום היוולדם ולפיכך יחלו או יעברו באופן הדרגתי ל-DevOps.
 

בשורה התחתונה, במבט מושכל על המגמות בשנים האחרונות ועל המאפיינים של פרויקטי תוכנה, מסתמן כי אחוזים ניכרים מאנשי ה-QA המסורתיים יאלצו לעבור בשנים הקרובות שדרוג משמעותי של הכישורים שלהם לכיוון פיתוח ובניית Automated Tests לצד היכרות עם כלים וסביבות המשמשים כיום בפרויקטי DevOps ונכללים תחת הכותרת Continuous Deployment ו-Continuous  Integration.
 

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

תגובות
הוסף תגובה

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