מחזור החיים של פיתוח תוכנה (SDLC) עובר שלבים שונים כמו תכנון, הערכת דרישות, ניתוח, תכנון, ביצוע, תיעוד, בדיקות וכו'. כל שלב מחולק בהמשך למשימות עם יעדים ותוצאות מוגדרות כהלכה.
ניתוח ועיצוב הם שלבים שבהם נקבעים הארכיטקטורה, מודל העבודה ותהליך הביצוע בפועל של בניית מוצר תוכנה.
שני שלבים מכריעים בשלבים אלה הם עיצוב מערכת ברמה גבוהה ועיצוב מערכת ברמה נמוכה.
מהו עיצוב מערכת ברמה גבוהה?
עיצוב ברמה גבוהה (HLD) מספק סקירה מקיפה של תהליך פיתוח התוכנה יחד עם ארכיטקטורת המערכת, יישומים, ניהול מסדי נתונים ותרשים זרימה מלא של המערכת ו ניווט. זהו מתווה שמאחד את השלבים והמודולים השונים, היעדים שלהם, הרכיבים המשתנים, התוצאות, הארכיטקטורה וציר הזמן לפיתוח התוכנה. HLD מתרגמת תוכנית עסקית למוצר או שירות תוכנה.
דוגמאות ל-HLD בפיתוח תוכנה כוללות מסמכי ארכיטקטורת מערכת, תרשימי זרימה לפיתוח אפליקציות וכו'.
מהו עיצוב מערכת ברמה נמוכה?
עיצוב ברמה נמוכה (LLD) עוסק בתכנון, קידוד וביצוע של הרכיבים, המודולים והשלבים השונים ב-HLD, ברמה אינדיבידואלית. לכל מודול ב-HLD יש מסמך LLD ייחודי המספק פרטים מקיפים על אופן קידוד, ביצוע, בדיקת איכות ושילוב של המודול בתוכנית הגדולה יותר. LLD מספקת תוכניות ניתנות לפעולה על ידי פירוק רכיבי HLD לפתרונות עבודה.
דוגמאות ל-LLD בפיתוח תוכנה כוללות שילוב עגלות, בדיקות אבטחה, עיצוב ממשק משתמש וכו'.
הבדלים בין HLD ל-LLD
HLD ו-LLD משרתים גם פונקציות ומטרות שונות כמו שפות תכנות ברמה גבוהה ושפות תכנות ברמה נמוכה.
מאקרו לעומת מיקרו אדריכלות ועיצוב
HLD הוא עיצוב ברמת מאקרו המספק מבט ממעוף הציפור של תהליך פיתוח התוכנה. הוא כולל דיאגרמות, תרשימי זרימה, פרטי ניווט ודרישות טכניות אחרות שיהוו את עיקר תהליך הפיתוח.
בנוסף לתרשימי זרימה, דיאגרמות, מידע ניווט ודרישות טכניות, ל-LLD יש גם מידע מקיף על ביצוע שלב אחר שלב של כל רכיב של ה-HLD. הוא עוסק בפיתוח תוכנה ברמת המיקרו.
לכל רכיב של HLD יש מסמך LLD ייחודי.
כרונולוגיה של פיתוח
HLD קודם לשלב LLD. לאחר שה-HLD נמצא במקום ומאושר לביצוע, ניתן להתחיל את העבודה על ה-LLD הבודדים.
HLD מתחיל לאחר טיפול בשלבי התכנון והדרישות ואין לו תלות אחרת.
מצד שני, LLD צריך להתבצע בסדר מסוים. חלק מהמודולים חייבים להמתין לביצוע עד שאחרים יושלמו.
LLD נופל תחת שלב התכנון של ה-SDLC, ואילו ה-HLD נופל תחת שלב הניתוח של ה-SDLC.
מַטָרָה
- מטרת HLD היא לרשום את ההיבטים הפונקציונליים של המודולים השונים יחד עם התוצאה הסופית.
- המטרה של LLD היא לפרט את ההיגיון והביצוע של כל מודול ב-HLD.
בעלי עניין
אדריכלי פתרונות אחראים ליצירת מסמך HLD. יכולים להיות לו בעלי עניין פנימיים וחיצוניים כמו צוות הביקורת שלוקח תשומת לב ל מדדי תוכנה, צוות העיצוב, הלקוחות והמנהלים.
LLD מטופל על ידי מפתחי תוכנה, מנהלי אינטרנט, מהנדסי אבטחה וכו', שהם חלק מצוותי החברה או הספקים. LLDs מוגבלים בדרך כלל לבעלי עניין פנימיים.
קהל יעד
למסמכי HLD יש את קהל היעד של מנהלים, לקוחות וצוותי פיתוח תוכנה.
מהנדסי תוכנה, קודנים, בודקים ומפתחים העובדים על הפרויקט הם קהל היעד של מסמכי LLD.
תוצאה צפויה
- התוצאה של HLD היא מוצר או שירות תוכנה שמוכנים למשלוח למשתמש הקצה.
- התוצאה של LLD היא השלמת מודול יחיד של ה-HLD, כמו שלבי הקידוד או הבדיקה.
הבנת מסמכי עיצוב תוכנה
מסמכי עיצוב תוכנה מתארים את ההיבטים המבניים, הפונקציונליים והלוגיים של פיתוח א מוצר או שירות תוכנה בנוסף לדרישות הטכניות ויישום אחר פרטים. בין אם התכנון עוסק בביצוע ברמת מאקרו או ברמת מיקרו, מתכנתים ובעלי עניין אחרים צריכים לדעת ולהבין את ההיקף והשלבים השונים של תהליך פיתוח התוכנה.