RED CROWNINTERACTIVEצרו קשר
עב
תפריט

RED CROWN JOURNAL

האפליקציה באוויר. אילו טעויות בתחזוקת אפליקציה עולות ביוקר?

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

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

מי אחראי על תחזוקת האפליקציה ביום שאחרי ההשקה?

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

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

איך יודעים על קריסה לפני שמשתמש כותב ביקורת?

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

באנדרואיד יש לזה גם מחיר בחנות. גוגל קובעת ספי "התנהגות גרועה" לקריסות באפליקציה ולמצבים שבהם היא מפסיקה להגיב (ANR): שיעור קריסות של 1.09% ושיעור חוסר תגובה של 0.47% מהמשתמשים הפעילים היומיים על פני כל המכשירים, ו-8% בדגם טלפון בודד. לפי גוגל, אפליקציה שעוברת את הספים האלה עלולה לקבל פחות חשיפה ב-Google Play ואזהרה בדף שלה בחנות, וההערכה נעשית על 28 הימים האחרונים (Android Developers - מדדי יציבות (Android vitals)).

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

האפליקציה לא השתנתה. למה היא מפסיקה להגיע למשתמשים חדשים?

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

דוגמה מגוגל, נכון לאוקטובר 2026: מ-31 באוגוסט 2026, אפליקציה חדשה או עדכון לאפליקציה קיימת ב-Google Play צריכים לכוון ל-Android 16 (רמת API 36) לפחות. אפליקציה קיימת שמכוונת ל-Android 14 או נמוך יותר זמינה למשתמשים חדשים רק במכשירים שמריצים גרסה שאינה חדשה מזו שהיא מכוונת אליה. גוגל אפשרה לבקש הארכה עד 1 בנובמבר 2026 (Android Developers - דרישת רמת API יעד ב-Google Play). כלומר, אפליקציה שאף אחד לא עדכן נעלמת בהדרגה דווקא מהלקוחות החדשים עם הטלפונים החדשים.

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

מוסיפים הרשמה בגרסה 1.3. מה עוד נכנס איתה?

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

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

קריסה בדגם אחד או פיצ'ר שכולם מבקשים: מה קודם?

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

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

למה התקציב נגמר ביום המסירה?

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

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

בנק שעות, ריטיינר או צוות פנימי: איזה מודל תחזוקה מתאים?

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

שאלות נפוצות

כל כמה זמן צריך לעדכן אפליקציה?

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

אפשר להעביר את התחזוקה לספק אחר?

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

מה ההבדל בין תחזוקה לפיתוח פיצ'רים חדשים?

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

מקורות טכניים

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