Design Flashcards

1
Q

מהם ארבעת שלבי תכנון תוכנה

A

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

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

Software Components
תיאור הפנים של החלקים שהגדרנו בארכיטקטורה
כמו רכיבים של דירה - מה המטבח כולל? צריך חיבור למים, לגז וכ’ו

Data/Class Design
מבני הנתונים והמאפיינים שלהם

Software Components

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

מהם שני הDesign concepts שלמדנו?

A

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

Modularity
חלוקת הקוד למודולים קטנים ומסודרים, כך שכל מודול אחראי לתחום מסוים

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

מהן ארבע השכבות של תכנון תוכנה (לשים לב, לא להתבלבל עם ארבע שלבי התכנון)

A
מהחיצוני לפנימי:
ממשקים
אפליקציות
ממשקי גישה למסדי הנתונים
מסדי הנתונים

בפירוט:

ממשקים
ממשקי גישה לאפליקציות - ממשק בין המשתמש לאפליקציה או בין האפליקציה לאפליקציה אחרת.

אפליקציות
מבצעת את הלוגיקה והפונקציונליות

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

בשכבת האפליקציה, כיצד נתכנן כל מודול?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

מה ההבדל בין דיאגרמה סטטית לדיאגרמה דינמית?

A

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

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

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

A
ישנם 7 מאפיינים שיש לבדוק:
מודולריות
קלה ליישום ובדיקה
לפי החלוקה שהגדרנו (ארכיטקטורה, ייצוג מידע, ממשקים חיצוניים, רכיבי תוכנה)
משתמשת בdesign patterns ובמבני נתונים מוכרים
כל רכיב קיים עצמאית
ממשקים יפשטו את העבודה
התאמה ודיוק ע"ב הדרישות
How well did you know this?
1
Not at all
2
3
4
5
Perfectly