המחיר הגבוה של Downtime במערכות קריטיות

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

חידוש עקרונות למינימום את זמן השבת

(הופנה מהדף [[1924]]]], [[1924]]]]]], [[1924]]]]]], [[1924]]]]]]]], [[1924]]]]]], [[1924]]]]]]]]]]]]]]]]]], [[1924]]]]]]]]]], [[1924]]]]]]]]]]]]]], [[1924]]]]]]]]]]]]]]]]]]]], [[1924]]]]]]]]]]]]]]]]]]]]]]]]]]]], [[1924]]]]]]]]]]]]]]]]]], [[1924]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]], [[1924]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]], [[1924]]]]]]]], [[1924]], [[1924]]]]]], [[1924]]]]]]]], [[1924]]]]]], [[1924]]]]]]]]]]]]]]]]]]]], [[1924]]]]]], [[1924]]]]]]]], [[[[1924]]]]]]]] [[[[1924]]]]]]

אסטרטגיות מפתח להבטחת בטיחות

המונחים: shadow shape

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

תגית: toggles

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

שחרורים Canary

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

כחול ירוק - עומק

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

תחזוקה מתוכננת Windows

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

בניית קו בדיקת רובוסט

מבחן יחידה ואינטגרציה

(הופנה מהדף מבחנים מקיפים) אינם ניתנים להשגה עבור מערכות קריטיות (יחידות) בודקים פונקציות אינדיבידואליות, בעוד שבדיקות אינטגרציה מאשרות כי מודולים מספקים אינטראקציה נכונה עם רכיבים קיימים:0 כלי כיסוי מעידים על קידוד 1:1 כדי לזהות נתיבים קודים בלתי-מנוסים.עבור תוכנה ביקורתית-ביקורתית: FLT:2formal אימות FLT 3-3 אוLT:4, בדיקות מבוססות מודל:

בדיקה אחרונה ב-Regression Testing and Continuousאינטגרציה

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

הנדסת הכאוס לחוסנות

הנדסת הכאוס מזרקת באופן מכוון את הכישלונות במערכת כדי להתבונן כיצד היא מתנהגת תחת לחץ. Applied כדי ליצור מחדש רכיבים, היא יכולה לחשוף הנחות ששינויים או מצבי כשל חדשים שהוצגו על ידי ארגון מחדש של כלים כמו FLT:0Chaos EngineeringFLT:1 יכול לדמות מחיצות רשת, תשישות משאבים, או התפרצויות פתאומיות של תנועה.

יישום צעדים עבור מערכות קריטיות

הערכה ותכנון

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

בקרת גרסאות ו-Relback

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

בסביבה הקרובה של Staging Environment

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

מעקב ושקיפות

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

טכניקות לקוד קריטי

לא כל טכניקות הפחתת הטכניקות הן בטוחות באותה מידה.לעבוד אלה שהם מכניים וניתנים:

  • (ב) [ה]ה' [ה']: [ה'], [ה'], [ה'], [ה'], [ה']'[ה']'[דרוש]]]], [ה']'[דרוש] את ה''''''''[ה']''''''''''']''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  • (ב) ,0) שם משתנה או פונקציונליות (FLT:1), שיפור בהירות מבלי לשנות את ביצועו. השתמש בשם IDE תומך מחדש כדי לתפוס את כל ההפניות.
  • [01:0] מספר הקסם של החלפת מספר עם קונסטנטין סמלי 1 [ה] – לנטרל ליטרים קודים שקשה לגרום לבלבול במהלך תחזוקה.
  • (ב) ,0) לפשט ביטויים מותניים (FLT:1) - נניח מורכבים אם חלים על לוחות משמר או מתג הצהרות, אך רק לאחר בדיקות ממצה של כל הענפים.
  • (ב) [15] ,ההסברים של פרדוקס פרדוקס: [13] ,הפרמטרים הקשורים לקבוצה לאובייקט יחיד כדי להפחית את מורכבות החתימה של השיטה.

כל טכניקה חייבת להיות מיושמת בבידוד, נבדקה, מחויבת לפני הבא.ה-FLT:0Software שיפור הלבן של הקבוצה על אספקת מערכות קריטיות בטיחותיות:FLT:1 מספק הדרכה מעשית על בחירת הגישה הנכונה לסביבות אמינות גבוהה.

סיכון לחיקוי וממשל

קוד ביקורות ו-Pair Programming

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

המונחים

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

שינוי מועצות

עבור תוכנה שהיא חלק ממערכת מוסמכת גדולה יותר (למשל, איורים, בקרת כור גרעיני), כל שינוי קוד עשוי לדרוש אישור מדירקטוריון בקרת שינוי.הדירקטוריון סוקר את התוכנית המחודשת, הערכת סיכונים, אסטרטגיית רולבק וראיות לאימות. Documenting the refactoring רציונליe and test Results in a comppliant with Industry Standards (למשל, DO-17C, IEC, 61508).

מסקנה

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