50 שאלות ותשובות לראיונות הנדסת תוכנה מובילים

הורד PDF

1) מהן הקטגוריות החשובות של התוכנה?

  • תוכנת מערכת
  • תוכנת יישום
  • תוכנה משובצת
  • יישומי אינטרנט
  • תוכנת בינה מלאכותית
  • תוכנה מדעית.

2) מה ההבדל העיקרי בין תוכנת מחשב לתוכנת מחשב?

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

3) מהי הנדסת תוכנה מחדש?

זהו תהליך של פיתוח תוכנה שנעשה כדי לשפר את התחזוקה של מערכת תוכנה.

4) תאר את תהליך פיתוח התוכנה בקצרה:

פיתוח התוכנה הוא מחזור חיים המורכב מהשלבים הבאים:

  • ניתוח דרישות
  • מִפרָט
  • אדריכלות תוכנה
  • יישום
  • בדיקה
  • תיעוד
  • הדרכה ותמיכה
  • תחזוקה

5) מהם דגמי SDLC הזמינים?

דגם מפל, דגם ספיראלי, דגם תיק גדול, דגם איטרטיבי ומודל V הם חלק מדגמי ה- SDLC המפורסמים.

6) מהו אימות ואימות?

אימות:

אימות הוא מונח המתייחס למכלול הפעילויות המבטיחות שתוכנה מיישמת פונקציה מסוימת.

מַתַן תוֹקֵף:

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

7) בתהליך פיתוח תוכנה מה המשמעות של ניפוי באגים?

איתור באגים הוא התהליך שמביא להסרת שגיאות. זהו חלק חשוב מאוד בבדיקה המוצלחת.

8) כיצד תוכל לוודא שהקוד שלך בטוח ומהיר?

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

9) ציין שני כלים המשמשים למעקב אחר דרישות התוכנה?

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

שני הנפוצים הם:

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

10) מה ההבדל העיקרי בין גושים, ללעג?

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

11) איזו שפה אתה אוהב לכתוב אלגוריתמי תכנות?

לכל מפתח יש את דעותיו בכל הנוגע לבחירות שפת התכנות. אם כי, יש להעדיף שפות ברמה גבוהה מכיוון שהן דינאמיות. כמו שפות C ו- C ++.

12) מהי תוכנת מחשב?

תוכנת מחשב היא חבילה הכוללת תוכנה, תיעוד שלה ומדריך למשתמש כיצד להשתמש בתוכנה.

13) לטענתך איזה דגם SDLC הוא הטוב ביותר?

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

14) מי מנהל פרויקט תוכנה? מה תפקידו?

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

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

15) מה הכוונה בהיקף תוכנה?

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

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

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

16) כיצד למצוא את גודל מוצר התוכנה?

ניתן לחשב את גודל מוצר התוכנה באמצעות שתי שיטות

  • ספירת שורות הקוד שנמסר
  • ספירת נקודות פונקציה שנמסרו

17) מהן נקודות פונקציה?

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

18) מהן טכניקות הערכת פרויקט תוכנה הזמינות?

טכניקות ההערכה הנפוצות ביותר הן:

  • טכניקת פירוק
  • טכניקה אמפירית

19) מהו ניהול תצורת תוכנה?

ניהול תצורת תוכנה הוא תהליך של מעקב ושליטה על שינויים שקורים בתוכנה.

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

20) כיצד תוכל למדוד את ביצוע הפרויקט?

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

21) ספר לי על כמה כלים לניהול פרויקטים.

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

22) מהן דרישות התוכנה?

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

23) מהו מחקר היתכנות?

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

  1. כַּלְכָּלִי: הוא כולל את עלות ההכשרה, עלות התוספת והכלים והערכה כוללת של העלויות והיתרונות של הפרויקט.

  2. טֶכנִי: הוא מעריך היבט טכני. האם אפשר לפתח מערכת כזו? הערכת התאמת המכונה (ים) ומערכת ההפעלה שעליה תבוצע התוכנה, הכרת פיתוח התוכנה והכלים הקיימים לפרויקט זה.

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

לאחר לימוד כל זה נוצר דו'ח ההיתכנות הסופי.

24) מהן דרישות תפקודיות ולא תפקודיות?

דרישות פונקציונאליות הן תכונות פונקציונליות הצפויות על ידי משתמשים ממוצר התוכנה המוצע.

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

25) מהו מדד תוכנה?

מדדי תוכנה מציעים אמצעים להיבטים שונים של תהליך תוכנה המחולקים ל:

  1. מדדי דרישה: דרישות אורך, שלמות
  2. מדדי מוצר: מספר קווי קידוד, מדדים מונחי אובייקטים, מדדי עיצוב ובדיקה.

26) מהו מודולריזציה?

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

27) מהי לכידות?

לכידות היא מדד המגדיר את התלות התוך-אישית בין מרכיבי המודול.

28) מזכיר כמה כלי תוכנה לניתוח ועיצוב?

כמה מהכלים החשובים ביותר לניתוח ועיצוב תוכנה הם:

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

29) מה הכוונה בתרשים זרימת נתונים ברמה 0?

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

30) מה ההבדל העיקרי בין אנגלית מובנית לקוד פסאודו?

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

31) מהו עיצוב מובנה?

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

32) מהי תכנות פונקציונאלי?

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

33) מהו אבטחת איכות מול בקרת איכות?

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

34) מהם כלי CASE?

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

35) איזה דגם תהליך מסיר פגמים לפני שהתוכנה מסתבכת?

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

36) פתור את הבעיה

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

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

37) כיצד תוכל לוודא שהקוד הכתוב שלך שיכול להתמודד עם סוגים שונים של מצב שגיאה?

אני יכול לכתוב בדיקות המגדירות את מצבי השגיאה הצפויים.

38) הסבר את ההבדלים בין חוט לתהליך?

תהליך הוא מופע של תוכנית המחשב. בתוכנית אחת אפשר להיות שרשור אחד או יותר.

39) ספר לי את ההבדל בין EXE ל- DLL?

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

40) מהו הקלדה חזקה והקלדה חלשה? מה עדיף? למה?

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

41) תאר את ההבדל בין תכנות מונחה ממשק, מונחה אובייקטים ותכנות היבטים.

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

42) מדוע שימוש בתפיסה (חריגה) הוא תמיד רעיון גרוע?

זה רעיון גרוע כי:

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

43) איזה סוג נתונים מועבר באמצעות כותרות HTTP?

סקריפט ומטא נתונים עברו דרך כותרות HTTP.

44) כיצד אתה מתעדף דרישות?

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

45) תן לי הבדלים בין עיצוב מונחה עצמים למרכיבים?

ניתן לעטוף בקלות עיצוב מונחה עצמים במידה מסוימת בעיצוב מבוסס רכיבים.

46) מתי אתה משתמש בפולימורפיזם?

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

47) מה ההבדל בין מחסנית לתור?

  • התור תמיד ראשון -ראשון -ראשון -יוצא
  • הערימה תמיד Last In, First Out

48) מה חיוני לבדיקת איכות הקוד?

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

49) האם אתה חושב שתחזוקת התוכנה יקרה?

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

50) תן לי הבדלים בין תגים לענפים?

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

51) היכן זמין משתנה מוגן ברמת המעמד?

משתנים ברמת מחלקה מוגנים זמינים לכל תת-סוג שמקורו במחלקת הבסיס.

52) האם ניתן לבצע מספר חסימות לתפוס משפט אחד?

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

53) מתי אתה צריך להכריז על מעמד כמופשט?

עלינו להכריז על מעמד כמופשט במצבים הבאים:

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

54) פיתח אלגוריתם שמפיק את המיקום הנוכחי שלך ורשימת מיקומי כספומטים באזור זה. קבל את כספומטים K הקרובים ביותר למיקום שלך.

צור שיטה getDistance (a, b) המחשבת את המרחק בין a ו- b.

קוד: | _+_ |