פרק זה מוקדש לזכרה של חברת SIM Technologies Ltd ז"ל (1992-1996) אשר הוקמה על ידי חיים (צ'יבי) שפירא ויופי הרצמן כדי לממש טכנולוגיה חדשנית של Object Oriented Documentation בסביבת Dos (עוד לפני עידן ה-Windows). ת.נ.צ.ב.ה.
MIL-STD-490
תקן אמריקאי לאפיון ציוד צבאי, שהיה מקובל
בשנות השמונים של המאה העשרים.
*Word Perfect
באמצע שנות ה-90 התחרתה Word בעיקר במעבד התמלילים Word Perfect. אחרי יציאת חלונות 95, גברה ידו של Word בתחרות, והוא הפך למעבד התמלילים הפופולרי ביותר עבור PC.
עוד בטרם חזר לכיסאו, החריד צלצול הטלפון את החדר. "אהלן" נשמע קולו המוכר של דּוּדוּ. "נו, איך זה נראה לך?"
"מה?" תמה ירון.
"האפיון. קראת את האפיון?" שאל בקול ניחר.
"אני מצטער, לא היה לי זמן לנשום" התנצל ירון משחש במתיחות שבקולו. "סיימתי את פרק שלוש. עוד לא נגעתי באפיון הבדיקות".
"הזמן רץ, ירון. תעשה מאמץ!".
"מתי אתה צריך להגיש את זה?"
"עוד ארבעה ימים, אבל אני רוצה להשאיר זמן לתיקונים. תעשה לי טובה, תעיף מבט, בסדר?"
"מאה אחוז" הבטיח ירון. "אני מיד מתפנה".
לאחר שהצליח לפנות את השולחן העמוס, הניח לפניו את המסמך עב הכרס, שבהכנתו לקחו חלק מזה ששה שבועות צוות של כשלושים אנשים בתוכם חמישה מהנדסים בכירים, כתבניות, ועוד רבים שעסקו במלאכת ההגהה. "לא רע" ציין לעצמו והביט בערמת הדפים הענקית שמולו.
335 עמודים מלאים וגדושים, כתובים על פי הגדרת התקן הצבאי MIL-STD-490*.
במתינות לגם מספל הקפה שהניח על השולחן והחל לעיין בכתוב. מדי פעם סימן בעיפרון הערות הבהרה קצרות על הדפים. ככל שהעמיק בכתוב, גברה סערת רוחו. הוא דפדף הלוך וחזור בין דפי המסמך המונחים לפניו ולבסוף הרים את שפופרת הטלפון וחייג.
"את דּוּדוּ בבקשה" מלמל.
"הוא איננו כרגע" השיב מישהו מעבר לקו.
"נסה להשיג אותו" הרים מעט ירון את קולו.
מקץ המתנה קצרה, חזר הקול מעבר לקו "דּוּדוּ ביקש שתשאיר הודעה. הוא יתקשר אליך ברגע שיוכל".
"תגיד לו" זרק בחוסר סבלנות בלתי מוסווה, "תגיד לו שירון ביקש להודיע שההערות על המסמך מוכנות ושיתקשר מה שיותר מהר".
עוד בטרם הספיק ללגום לגימה נוספת, נשמע צלצול הטלפון.
"שלום דּוּדוּ" אמר.
"איך ידעת שזה אני?"
"סתם ניחוש פראי" גיחך. "אם המסמך חשוב לך, בוא עכשיו. יש לי כמה שאלות".
"כמו למשל?" ניסה דּוּדוּ.
"לא בטלפון" ביקש ירון. "אני מחכה לך כאן".
הדלת נפתחה בחריקה. "אתה באמת זריז" אמר ירון מבלי להפנות את מבטו.
"גם אתה" השיב והתיישב על הכיסא מול ירון, כשהוא נושם ונושף. "אני בלחץ אימים" הבהיר. "סיימת?"
"איך הכנתם את האפיון?" שאל ירון, מנסה אך בקושי להסתיר את השפעת האדרנלין על תגובותיו.
"למה? מה קרה?" שאל דּוּדוּ.
"נסה לענות לי על השאלה" ביקש ירון בקול מתון.
"כרגיל" השיב דּוּדוּ. "נידבנו חמישה מהנדסים מכמה פרויקטים, חילקנו משימות... והתחלנו לעבוד במקביל כדי לזרז את התהליך... כל אחד קיבל אחריות על חלק אחר של המסמך. מדי פעם נפגשים, עורכים דיון קצר כדי לתאום עמדות וממשיכים בריצה".
"אמרת שכתבתם לפי MIL-STD-490, נכון?"
דּוּדוּ הניד ראשו.
"התחלתם לכתוב ממש מההתחלה?" המשיך לחקור.
"לא צריך להגזים" השיב דּוּדוּ כשהבעת שביעות רצון מכסה את פניו. "לקחנו מסמכים דומים, ערבבנו ביניהם מעט, לקחנו סעיף מפה סעיף משם, הוספנו דברים המיוחדים למסמך החדש, זרקנו דברים מיותרים וזהו..."
"אתם רוצים למסור ללקוח הזה את יחידת הגלאי האופטי?" היתמם.
"חס וחלילה" אמר דּוּדוּ. "האפיון לא מזכיר גלאי אופטי".
"אבל המסמך שממנו העתקתם חלק מהאפיון, מתייחס לגלאי" קבע.
"איך ידעת?" שאל דּוּדוּ בתימהון.
"לפי הבדיקות שמוגדרות בפרק ארבע" השיב ירון. כמעט בכעס פתח בעמוד המתאים והצביע על הכתוב. "אתה רואה? בבדיקה הזו אתה משתף את הגלאי האופטי, על פי ההגדרה של סעיף 3.15.7.12 אבל אין סעיף כזה בכלל. אני בטוח שהיה סעיף כזה במסמך המקורי".
"בחייך, מה אתה עושה מזה עניין?" השיב דּוּדוּ בזילזול.
"בגלל טעות כזו, הלקוח עלול לדעת שאתם יכולים לשלב גלאי אופטי במערכת... האם אתה מעוניין להציע לו גלאי כזה?".
"בסדר, נו... לכן בקשתי ממך שתקרא ותעיר הערות".
"אילו היה כלי חכם שמזהה טעויות מהסוג הזה, הייתם מקבלים התראות אוטומטיות מהמחשב, כבר בשלב כתיבת האפיון" צחק ירון, "ואז הכתיבה וההגהה היו מהירים ויעילים יותר, לא?"
"אילו לסבתא היו גלגלים" מלמל דּוּדוּ בעויינות מסוימת.
"זה לא היפותטי" חייך ירון, "אבל יש לי שאלה נוספת אליך. רגישות הכניסה של מגבר ה - RF מוגדרת בכמה מקומות במסמך הזה..."
"מה רע בזה?" קטע דּוּדוּ את דבריו.
"לרגישות המערכת יש ערכים שונים במקומות שונים במסמך וזה אבסורד".
"איפוא?" שאל דּוּדוּ.
ירון הצביע על המקומות המסומנים בדפים שונים.
"נו, בסדר" הסביר דּוּדוּ. "שינו באיזה שהוא שלב את הגדרת הרגישות, אבל משום שהיא כתובה בכמה מקומות, לא הצליחו לעדכן את ההגדרה בכל המקומות במסמך. מה אתה רוצה שנעשה? אתה הרי יודע שעבודת התאום בהכנת מסמך כזה היא ענקית... מדובר בתהליך לא פשוט ולכן עוד צפויות טעויות בדרך... זו בדיוק הסיבה להגהות החוזרות ונשנות".
"אל תנסה להתגונן" ניסה ירון להרגיעו. "זו בעיה מוכרת. אבל תאר לעצמך שהרגישות הייתה מוגדרת במקום אחד בלבד במסמך כפרמטר, למשל, ובכל המקומות האחרים היו מציבים את הפרמטר הזה במקום לרשום את הערך המספרי של הרגישות. זה אומר שבמקום לשנות את הרגישות בכל מיני מקומות במסמך, די היה לשנות במקום אחד בלבד והופס, כל חלקי המסמך האחרים מתעדכנים באופן אוטומטי... ממש כמו
ב - לוטוס*".
"שוב פנטזיה... חזון אחרית הימים" לחש דּוּדוּ מבלי להביט לעברו והוסיף בחוסר סבלנות. "טוב, אני חייב לזוז. סיימת לקרוא? אני יכול לקחת את ההערות שלך?"
"אתם מכירים את הנושא שאתם מאפיינים?" שאל ירון והציץ בעיניו של דּוּדוּ.
"איזו שאלה זו?" נפגע דּוּדוּ. "ודאי שאנחנו מכירים".
"אם כך, למה לוקח לכם כל כך הרבה זמן לאפיין? צוות של מהנדסים מוכשרים מנסים לנסח מזה כמה שבועות, דברים מוכרים. אתה יכול להסביר לי את התופעה המוזרה הזו?"
"למה זה רלוונטי עכשיו?" שאל דּוּדוּ והתרומם מכיסאו בכעס. "מתעוררות בעיות טכניות וצריך להתמודד אתן. אתה יודע שלוקח זמן לנסח, בצורה מקצועית, רעיונות שנראים בשלים לחלוטין. אתה גם יודע שתוך כדי כתיבה מגלים פתאום שצריך להוסיף פרטים או מסתבר שבחירת המילים מטעה. כל זה גוזל זמן... ואל תשכח שאנחנו לא בדיוק כתבים טכניים, אנחנו מהנדסים. תראה, ירון, הזמן בורח לי מבין האצבעות משום שכל עוד המהנדסים האלה עובדים על האפיון המחורבן הזה, הם לא מקדמים את הפרוייקטים שלהם ולכן הם חייבים לסיים במהירות את האפיון שתקוע להם כמו עצם בגרון כדי לחזור לפרוייקטים שעבורם הם מקבלים שכר..." בחייך, תעיר את ההערות שלך ואל תקשה עלי".
"לא התכוונתי לשאול כדי להכעיס אלא כדי לפתור בעיה. הרי הכנה של הצעות טכניות אינה תופעה חד פעמית חריגה. זה מפריע וגורם לחריגות בלוחות הזמנים. ובכן, למרות שהכנת הצעות כאלה צפוייה, לא התייחסתם לפעילות מהסוג הזה בתכנון העבודה שלכם... נכון?"
"מה צפוי?" רתח דּוּדוּ. "מי יכול לדעת מראש שיצוץ לנו פתאום איזה לקוח פוטנציאלי חדש? אתה לא מבין שקפיצה מנושא לנושא זה חלק מההווי המקומי?"
"אולי אפשר לשנות מעט את אופן הכתיבה?" ניסה ירון לעורר את התעניינותו. "יש לכם, למשל, טעויות רבות שקשורות לסעיפים".
"כן, זו אחת מהבעיות הטכניות שהזכרתי" ציין דּוּדוּ. "מה אתה חושב שכל כך פשוט לארגן מסמך גדול כזה? כבר אמרתי לך, אבל אתה לא מבין. מלאכת התאום חייבת להיות מאוד מדוייקת. צוות לא קטן של אנשים לחוצים, עם עיניים אדומות, יושבים בחדרים כאן במפעל כמעט עשרים וארבע שעות ביממה, שבעה ימים בשבוע ותאמין לי, זה גיהינום ממש. אני מסכים אתך שסגנון העבודה חייב להשתנות כי עובדים בצורה מטומטמת, בזבזנית, חסרת אחריות וחובבנית".
"אחרי כתיבת ההצעה הקודמת, לפני פחות מחצי שנה" נזכר ירון, "השתמשת כמעט באותן מלים".
"טוב, חשבנו שנצליח להתפנות מעט כדי לערוך ניתוח בראש צלול, בלי לחץ, אבל לא מצאנו זמן כדי לבחון את הנושא בצורה מעמיקה בגלל המרוץ המסורתי אחרי הזנב".
"עכשיו אתם 'אוכלים אותה' שוב" גיחך ירון במרירות. "אני מזהה את אותן טעויות. אני מבחין בדיוק באותם קשיים שנתקלתם בהם אז ואם גם הפעם נדחה את הניתוח, נאכל אותה גם בפעם הבאה".
"אני חוזר ואומר" אמר דּוּדוּ, "לכאורה זה נראה מאוד פשוט אבל למעשה עבודת התאום היא פעילות מורכבת מאין כמוה. אנחנו נעזרים בכתבניות מעולות... עובדות קבלן... הן נשלחו אלינו מאיזו חברת השמה והאמת היא שהן ממש מצילות אותנו... אבל לא לגמרי כי מקור הקשיים הוא לא רק בהקלדה. ישנן הרבה מאוד בעיות טכניות שלא קשורות כלל לתוכן ההצעה כי, למעשה, אנחנו יודעים בדיוק מה שאנחנו רוצים".
ירון הניד ראשו בספקנות ודּוּדוּ המשיך. "על ה - VAX, למשל, כותבים בעזרת תמלילית בשם Glyph. בנוסף, כותבים בכמה תחנות WANG בתמלילית מיוחדת שלהם וכמובן על מחשבי IBM-PC בתמליליות אחרות כמו, Word Perfect* או Word, למשל.
"בקיצור" העיר ירון, "הצלחתם לבנות שוב את 'מגדל בבל', אלא שהפעם בעזרת מחשבים, תמליליות, סגנונות כתיבה ואנשים עם כל מיני שגעונות. הרי לכל אחד יש דעה... והצעות שאין חולקים על חוכמתן...".
"נכון" ענה דּוּדוּ. "זו בדיוק הסיבה לקאטאסטרופות. אנרגיה אדירה מושקעת במלאכת התאום שבין קטעי המסמך הרבים. בין האנשים, כמובן. בסדר, תאום מספרי העמודים זה לא סוף העולם... אבל מעבודת התאום בין מִספוּרי הסעיפים לא תוכל להתעלם... וכל הצרות והקשיים שנגזרים מכתיבה על ידי אנשים שונים במסמכים שונים ובעזרת מעבדי תמלילים שונים... וזה רק חלק מהקשיים שיוצרים מסמך אפיון משובש...".
ירון הניד ראשו בהבנה.
"על ה - VAX, למשל" המשיך דּוּדוּ בהתלהבות, "כתבו בעשרות מקומות הפניות לסעיפים שהיו כתובים במחשבים האחרים. אתה מכיר את הנוסח, נכון? 'ראה להלן סעיף 4.7.3' כי זה נוסח מחייב בהצעות משום שכשאתה מאפיין תכוּנה מסוימת של המערכת, אתה גם חייב להגדיר איך תבדוק אותה והבדיקה מתוארת בפרק אחר... על ידי אנשים אחרים... ואולי אפילו במעבד תמלילים אחר... לכן חייבים לכתוב מאות הפניות בין הסעיפים השונים. כל שינוי הכי זעיר, מתורגם מייד למהפכה בתוכן הקבצים. מהפכה שבעטיה מתגלים מאבקי כוחות אם להכניס את השינוי, היכן ועל ידי מי... ומתי... כי תאר לך שיש פרק עם עשרים סעיפים ופתאום הסתבר ששכחו משהו וצריך להוסיף באמצע, באיזה שהוא מקום, עוד קטע. את סעיף תשע. זה אומר שצריך לשנות את מיספור כל אחד עשרה הסעיפים הבאים. זה לא כל כך נורא, אני יודע. אבל זה הופך להיות נורא כשצריך לשנות גם את ההפניות לכל אחד עשר הסעיפים שמספריהם שונו. הַפְנָיוֹת שנכתבו מכל חלקי המסמך האחרים. הַפְנָיוֹת שנכתבו בתמליליות שונות על ידי אנשים שונים. אנשים שהם לפעמים צהובים זה לזה. עכשיו צריך לחפש איפוא בדיוק כתבת 'ראה סעיף 4.7.3' ולנסות לנחש אם מה שכתוב שם זה לפני השינוי האחרון או שזה כבר מעודכן?"
"הבעיה היא" העיר ירון בחיוך סלחני, "שאתם עובדים בשיטות וטכניקות של המאה הקודמת בעוד המתחרים שלנו, עובדים כבר אחרת, ביעילות יותר גבוהה. זה מה שמתסכל... איך נִזכה במכרזים כשאנחנו לא יודעים להתמודד אפילו עם בעיות מהסוג הזה? במקום להתמודד עם האתגרים של תכני האפיון, עם האתגרים ההנדסיים האמיתיים, אתם מתמודדים עם בעיות טכניות שלא שייכות לעניין".
"אתה רוצה להגיד שאני עובד לא נכון?" התחמם דּוּדוּ. "אתה יודע מה? תמצא מעבד תמלילים שיודע לטפל בבעיות הסיעוף וכל הבעיות הטכניות האלה תיפתרנה".
"שוב אני חוזר על אותה טעות" חשב ירון. "אסור לי להציג את המצב כאילו הם טועים ואני 'המבין הגדול' שבא ללמד אותם איך לעבוד. זה מתסיס ומדכא את הפתיחות".
"תרגיע" המשיך ירון בקול שלו. "לא התכוונתי לסגנון העבודה שלך. אתה עובד מצוין. אין לך ברירה אחרת בתנאים הקיימים. לא פעם שאלתי את עצמי מדוע, לכל הרוחות, תמיד נקלעים לאותו סוג של בעיות? ברור שקיים מכנה משותף לכל הקשיים האלה. סתם תמלילית טובה יותר לא תפתור את בעיות הפיתוח. יש תמליליות עם סיעוף אוטומטי ובעיית התאום לא נפתרה. המעקב אחרי השינו..."
"אתה רואה?" קפץ דּוּדוּ. "מי מדבר על בעיות פיתוח? בקשתי ממך בסך הכל להעיר הערות למסמך האפיון המצ'וקמק הזה. לא יותר..."
"תרשה לי לסיים את המשפט" המשיך ירון בקולו הרגוע. "שים לב שהבעיות מתעוררות בתהליך האפיון. התאום בין האנשים שעוסקים באפיון. הרי האפיון הוא בסך הכל אמצעי העברה של דרישות הלקוח לשפת מעשה. בשלב הבא צריכים המתכננים, לתרגם את מה שכתוב במסמכי האפיון שוב ללשון אחרת. לשפת תכנון שבה מגדירים את מבנה הנתונים, את מבנה התוכנה... בשלב הזה מכינים תרשימי זרימה, תרשימי בועות, Data Flow Diagrams הכ..."
"מה אתה מבלבל לי את השכל" שאג דּוּדוּ ופניו להטו בצבע ארגמן. "זה לא הזמן המתאים לתיאוריות. אני לחוץ עכשיו. כשהלחץ יֵרֵד, תסביר לי את התורה שלך, בסדר? בינתיים תוכל להמשיך לעבור על המסמך?"
"לא נמצא זמן טוב יותר ללבן את הנושא" השיב ירון וחש בסנטרו הרועד מהתרגשות. "תמיד תהיה לחוץ בזמן. תרשה לי להכין לך קפה טוב. שנינו נרגע מעט ונוכל לדבר ברצינות ב..."
"למה דווקא עכשיו?" שאל דּוּדוּ.
"כי עכשיו זה רלוונטי" השיב ירון. "כי עכשיו אתה עוסק באפיון. הנושא הזה יהיה שייך להיסטוריה אחר כך... אחר כך, שלב אחר במחזור החיים יטריד את מנוחתך ואז יעמדו על הפרק בעיות אחרות".
"בוא נקבע מסגרת של זמן" התרצה דּוּדוּ.
"לא יותר משעה" אמר ירון.
"סיכמנו" ענה דּוּדוּ והתקרב בצעד מהיר לכוון הדלת. "חצי שעה, אחרי ארוחת הצהרים" עוד הספיק לפלוט מעבר לכתפו.
"התופעה הזו חוזרת על עצמה, שוב ושוב" הרהר ירון בזעם וחש כיצד רגשות התסכול חוזרות ומשתלטות עליו. "איך אפשר לשנות מוסכמות, לכל הרוחות? איך אפשר להסביר לאנשים האלה שמדובר בתהליך אפיון לקוי ולא בבעיות טכניות שאפשר לפתור באמצעים טכניים? איך אפשר להסביר להם שאפיון הוא חלק בלתי נפרד מתהליך הפיתוח. מתי הם יבינו שזו לא הדרך וכי חייבים לחפש דרכים אחרות, באמצעות מתודולוגיה שונה... שפשוט תייעל את העבודה".
...
"דּוּדוּ?" זרק ירון אל שפופרת הטלפון. "כבר אחת, אתה בא?"
"מצטער" נשמע קולו הטרוד של דּוּדוּ מהעבר השני של הקו. "אני פשוט לא יכול... אולי בהזדמנות אחרת..."
המשך בפרק 25 - חריגות בתקציב... בזמן... ובכלל...