Best Practices of Basic Principles - שימוש בעקרונות היסוד מתורת המערכת להוראת IVV&T

סרגיי טוזיק
סרגיי טוזיק, אוניברסיטת תל-אביב, אוניברסיטת בן-גוריון בנגב

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

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

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

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

לצורך הקורס, אימצתי הגדרות תהליכיות (קלט-עיבוד-פלט) הכי פשוטות שיכולתי לנסח, שתמיד המיוחסות למערכת עניין (System of Systems) פיזיות שמצד אחד מורכבת מתת-מערכות (Subsystems) ומצד שני משמשת בעצמה כתת-מערכת במספר מערכות-על (Supersystems) או מערכים (Systems Arrays).

מושגי היסוד שבבסיס הקורס מגדירים ארבעה תהליכים הנדסיים בסיסיים:

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

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

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

שחזור התכן (Reverse System Design)
הנדסת אינטגרציה בפרויקטים בונה על דרישות ותכן הנדסי יחסית בשלים, ברמה של תכן מערכתי (System Design) שכולל דרישות מתוקפות וארכיטקטורה של מערכת העניין ושל סביבתה או אף ברמת תכן ראשוני (Preliminary Design) שכולל גם את הדרישות מתת-מערכות המרכיבות את מערכת העניין.
מתוך הניסיון והמחקר שלי למדתי כי בפרויקטים מעשיים דרישות ותכן ברמה נדרשת לא תמיד זמינים למהנדסי אינטגרציה, והם נאלצים להקדיש זמן ומאמץ ניכרים לאיסוף וארגון המידע. מהנדסי אינטגרציה מלקטים מידע על מערכות רלוונטיות ממקורות שונים ומארגנים אותו במבנים שמאפשרים "לספר סיפור" של המערכת ודרך פעולתה. "החורים בעלילה" מצביעים על נקודות תורפה של התכן המערכתי שכדאי להתמקד בהם בתהליכי אינטגרציה והבדיקות.
קורסי התכן המערכתי בתוכניות להנדסת מערכות בוחרים לעסוק במערכות ברמת מורכבות גבוהה ולהביא את התכן לרמה של תכן קונספטואלי שאינה מספקת להנדסת אינטגרציה, ולכן לא יכולתי בקורס שלי להמשיך עם הדוגמאות מקורסי הקדם.
כהתמודדות עם האילוצים הנ"ל, שילבתי בקורס פרק של "שחזור" תכן ודרישות למערכת קיימת ופשוטה יחסית (מכונת כביסה, מקרן, מזגן וכו') תוך שימוש בטכניקות השחזור התכן (Reverse System Design) שפיתחתי לשימוש עצמי כמהנדס אינטגרציה.

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

saa1.png

דוגמה טובה לאוצרות (curation) של שיטות וטכניקות מועילות היא מתודולוגיית ICDM שפותחה ע"י דר' עמי הרי ונלמדת בקורסי התכן בטכניון. בתחום הנדסת אינטגרציה ובדיקות, הספר של דר' אבנר אנגל "אימות ותיקוף ובדיקות מערכות הנדסיות" עושה עבודה טובה של איסוף וארגון של שיטות וטכניקות של בדיקות ומציג גם מתודולוגיה סדורה לתכנון אסטרטגיית בדיקות וניסויים.

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

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

saa2.png

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

עיקרון שילוב המערכות (System Integration Principle) קובע שמערכות נוצרות מתת-מערכות כשתת-המערכות נוגעות פיזית אחת בשנייה, יוצרות אזורי המגע (ממשקי מבנה), מעבירות דרכם זרימות חומר ואנרגיה (ממשקים תהליכיים). התהליכים של תת-המערכות מתמזגים לתהליכים של המערכת, הנפחים התלת-ממדיים של תת-מערכות מתאחדים לנפח אחד גדול בעל גבול החדש, והגבול החדש תוחם את המערכת החדשה שנוצרה.

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

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

·        כל מערכת עניין מורכבת מתת-מערכות וחלק ממספר מערכו-על (מערכים).

·        מבנה המערכות:·        התנהגות המערכות:·        דרישות: תהליך תכנון אינטגרציה, אימות ותיקוף

saa3.png

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

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