ארכיטקטורת תוכנה

מתוך ויקיפדיה, האנציקלופדיה החופשית
הנדסת תוכנה
ערך זה שייך לקטגוריית הנדסת תוכנה
פעילויות ושלבים
דרישותניתוחאפיוןארכיטקטורהעיצובתכנותדיבוגבדיקהאימותבנייהפריסהתפעולתחזוקה
מתודולוגיות
זריזותמפל המיםתכנת ותקןCrystal ClearScrumUnified ProcessExtreme Programmingאינטגרציה רציפהDevOps
תחומים תומכים
ניהול פרויקטיםניהול תצורהתיעודהבטחת איכותProfiling
כלים
מהדרמקשרמפרשIDEניהול גרסאותאוטומציית בנייה

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

חשיבותה של ארכיטקטורה[עריכת קוד מקור | עריכה]

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

דיסצפלינות הארכיטקטורה[עריכת קוד מקור | עריכה]

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

סגנונות בארכיטקטורה[עריכת קוד מקור | עריכה]

הסמכה[עריכת קוד מקור | עריכה]

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

ראו גם[עריכת קוד מקור | עריכה]

קישורים חיצוניים[עריכת קוד מקור | עריכה]

ויקישיתוף מדיה וקבצים בנושא ארכיטקטורת תוכנה בוויקישיתוף