פינת רגע של היסטוריה | דצמבר 2023
ערך: אריה עמית
בימים בהם המבט מופנה קדימה בחיפוש דרך מתמיד, טוב נעשה אם מידי פעם בפעם נביט לאחור, נכיר את הנסיבות שהובילו ליצירת המציאות המוכרת לנו ונבחן את תקפותן של המערכות המשרתות אותנו תוך הבנה אמיתית של היכולות הטמונות בהן.
רקע
מערכת ממ"ש1 (מערכת מחוללת שכר) שפותחה בממכ"א – מרכז המיכון של אגף כוח אדם בצה"ל (יחידת שחר בימינו) בסוף שנות השבעים של המאה הקודמת אחראית לחישוב שכרם של כל המשרתים בצה"ל (חובה, קבע, אזרחים עובדי צה"ל, גמלאים, שארים, תשלומי משפחה בחירום ועוד - סדר גודל של מאות אלפי משכורות!) מדי חודש בחודשו. המערכת עמדה בכל התהפוכות הכלכליות ובמבנה השכר בארבעים וארבע השנים !! האחרונות בהצלחה מלאה. והיא המערכת ה"מבצעית" האחרונה שפועלת על מחשבי ה Main Frame במרכז המחשבים בממר"מ. עד שנת 2000 שימשה הפלטפורמה של המחוללל לחישוב השכר של עובדי משרד הביטחון על כל שלוחותיו הביטחוניות שהופק ע"י ענף מערכות ייעודיות בממר"מ.
המערכת נותנת פתרון ייחודי לחישוב שכר נכון ובזמן עם יכולת חישוב רטרואקטיבי מלא על בסיס נתוני משאבי אנוש שלישותיים שבבסיסו עומדת חוקת שכר חיצונית המוזנת למערכת בשפה קרובה ככל האפשר לשפה הטבעית של חשב שכר ובעברית כמובן - היא "שפת הפסקאות" – לכל נתון מחושב בבסיס הנתונים חייבת להיות פסקה אחת ורק אחת שמחשבת אותו וכוללת את כל הכללים לגבי הזכאות לתשלום, אופן החישוב, אופן התשלום ואופן התקצוב וכן את קשריה לנתונים המושפעים והמשפיעים. מנגנון חישוב השכר קושר את כל הפסקאות בגרף חישוב מכוון שמקבל שירותים מממשקים תפעוליים.
חוקת התשלומים כוללת כיום בסביבות 2 מיליון שורות קוד המהווים תיעוד היסטורי, עדכני ומדויק של חוקת השכר של כל מקבלי השכר בצה"ל (קבע, גמלאים, אע"צ, חובה, שארים ותשמ"ש חירום) . במערכת מאות נתוני פרט ונתונים אירגוניים המשמשים בסיס לחישוב. במערכת מוגדרים מאות מרכיבי תשלום וניכוי. בקובץ תוצאות החישוב ("קובץ הסכומים") ישנם מיליונים רבים של תוצאות חישוב.
למה הצלחנו?
הגורמים הניהוליים שאינם טכנולוגיים, שייחדו את פרויקט ההקמה של המערכת, אפשרו לה לעמוד במשימות מורכבות בזמן, בתקציב, ובהתאם לאפיון.
בראש ובראשונה תמיכה ומחויבות של ההנהלה מראש אכ"א בדרגת אלוף, דרך יו"ר ועדת ההיגוי, סגן ראש אכ"א בדרגת תא"ל, ראש מת"ש בדרגת אל"מ, ראש ממר"ם בדרגת אל"מ וקברניטים נוספים שהעמידו את כל המשאבים לטובת המשימה; משאבי מחשב לפיתוח ומשאבי מחשב לריצות ניסוי והפעלה ומשאבי אנוש לטיוב הנתונים, הסבה, בדיקות ועוד – כל הצמרת האכא"ית, השלישות הראשית ומת"ש היו מגוייסים.
הפרויקט נוהל בקפידה לפי מתודולוגיות ניהול פרויקטים מודרניות שמנהל הפרויקט ייבא מארה"ב שכלל את התכנון והמעקב אחרי לוחות הזמנים, אבני הדרך לביצוע, ניהול השינויים וניהול הסיכונים.
מהן הסיבות הטכנולוגיות המיוחדות במבנה ובארכיטקטורה של מערכת השכר שאפשרו לה להתקיים במשך למעלה 4 עשורים מאז הקמתה, למרות השינויים שחלו בכלכלה הישראלית ובטכנולוגיה עצמה?
חלק מהסיבות שמרכיבות את התשובה הן:
1. סיבה אפליקטיבית
נהוג להגיד "שבמקום לתת למישהו דג, תלמד אותו לדוג". הנמשל הוא, במקום לבנות מערכת שעונה למפרט דרישות נתון, כדאי לבנות כלי שמסוגל "לייצר" מערכות מהסוג הדרוש, באופן דינמי, על פי דרישות שמשתנות עם הזמן. כשם שבעזרת מחולל דוחות ניתן לייצר מגוון גדול של דוחות, בעזרת מחולל השכר ניתן לבנות מערכות שכר שונות.
2. סיבה ארכיטקטונית
הווירטואליזציה של הנתונים, מצד אחד, והעובדה שהתכנית מארגנת את עצמה על פי חוקי השכר, מצד שני, הפכה את התחזוקה ואת האפשרות להרחבות לקלה ופשוטה. כתוצאה מכך, שינויי ארכיטקטורה טכנולוגית שהמערכת עברה מאז הקמתה היו מעטים מאד, ורק בשוליים.
הרכיב שעבר את מירב השינויים ועמד ב"שיני הזמן" הוא "חוקת השכר" שהשתנתה דרמטית, אך היכולת להציגה באמצעות פסקאות הכתובות בשפה העברית ע"י מומחי השכר אפשרה לה לשרוד את השינויים בכללי חישוב השכר לאורך התקופה הארוכה. זה התאפשר מאחר והייתה הפרדה מוחלטת בין הסביבה החישובית והלוגיקה העסקית.
3. סיבה טכנולוגית
המערכת נכתבה על מחשבי IBM שהיוו את תשתית המחשוב של ה Data Center הצה"לי באותה התקופה. זו לא הייתה בחירה אלא אילוץ, מצד אחד, ומזל גדול ("יותר מזל משכל"), מצד שני. שום חברת מחשבים לא מקפידה לשמור על תאימות לאחור כמו IBM. מדיניות זו של חברת IBM מאפשרת לחברות עסקיות לשמור על ההשקעה בתוכנה באופן חסר תקדים, כאשר אף חברה לא מתקרבת לרמה כזו של מחויבות לתאימות. לשם השוואה, אם המערכת הייתה נכתבת על פלטפורמת "חלונות", היה צורך במאמץ תחזוקתי להסב את התוכנה מגרסה, לגרסה, לגרסה..., כבר לאחר שנים בודדות.
4. סיבה הנדסית
המערכת נכתבה כהלכה, תוך הקפדה יתרה על כללי הנדסת תוכנה, ומכילה יכולת גבוהה של בדיקות פנימיות תוך כדי ביצוע. (Testability)
הייחודיות של ממ"ש
1.בסיס הנתונים
לצורך חישוב השכר, המערכת שואבת נתונים מ-3 מקורות: נתונים אישיים של הפרט ("נתונים גולמיים"), נתונים אירגוניים, נתונים לגבי שכר שחושב בעבר.
כל נתון מתוארך בשתי רמות: תאריך תוקף (ממתי הנתון נכון), תאריך רישום (ממתי הנתון נרשם במערכת). הנתונים נשלפים באמצעות ממשק שהופך את מקור הנתונים לשקוף כלפי המערכת. חשוב לציין שרק ארגון זה של תיארוך מאפשר חישוב רטרואקטיבי מדויק.
2. חוקת התשלומים
חוקת התשלומים מורכבת מאוסף של חוקי חישוב ("פסקאות") שמתארות כיצד לחשב מרכיב שכר או נתון מופשט כמו "דרגת שכר", הפסקה מגדירה את המרכיב, מי זכאי למרכיב, כיצד לחשב את המרכיב, נתון מחושב ונתון לתשלום וכיצד לתקצב אותו.
הפסקאות כתובות בעברית, בשפה מיוחדת, פשוטה, אינטואיטיבית וקלה ללימוד ויישום ופותחה במיוחד לצורך חישוב שכר. מאז הפעלת המערכת, הפסקאות נכתבות ומתוחזקות ע"י המשתמש.
כמו כל נתון אחר במערכת, לכל פסקה תאריך תוקף ותאריך רישום.
3. חישובי רטרואקטיביות
לממ"ש יכולת חישוב רטרואקטיבית מובנית, הן ברמת החוקה והן ברמת הנתונים. במהלך החישוב נוצרות שתי תמונות: תמונת השכר על פי הנתונים העדכניים מול תמונת השכר על פי הנתונים שהיו ידועים בזמן החישוב הקודם. ההפרש בין שתי התמונות הוא השכר המשולם. מאחר שהיכולת הרטרואקטיבית קיימת גם ברמת החוקה, טעויות בחישוב מתוקנות באופן אוטומטי כאשר מוזנת החוקה הנכונה.
יבואו על הברכה
לסיכום, זה מקום להודות שוב ולהעלות על נס את צוות הפיתוח וההטמעה הראשוני על טהרת בוגרי ממכ"א ו ממר"מ: ד"ר יעקב (קובי) בן צבי (מנהל פרויקט ההקמה), שבתאי גרצ'ק, ארנסט שוורץ, אריה עמית, אייל לבדינסקי, שלום פסי, שמעי קרני, אבי ביבס, דוד ברטה, אמיר באן, רמי ברטה, פטר זאב, אליזה כ"ץ ואת דורות הצוותים שתחזקו את המערכת במשך עשרות השנים.
זו הזדמנות להזכיר את ה"שותפים" להצלחה ממינהל התשלומים (מת"ש - יחידת מופ"ת של היום): רמי שפינר, אברהם ברוש (בבס), שמיל גינזברג, אמנון מדר ורמזי חלבי.
המערכת זיכתה את ממכ"א בפרס איל"א (האיגוד הישראלי לעיבוד אינפורמציה) היוקרתי לשנת 1979.
Comentarios