ספגטי לכוח חילוץ

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

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

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



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

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

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

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