האוניברסיטה הפתוחה

תיאורי הקורסים

20937 תכנות מערכות דפנסיבי

20937 תכנות מערכות דפנסיבי‏1

4 נקודות זכות ברמה מתקדמת ללא אפשרות לכתיבת עבודה סמינריונית

שיוך: מדעים / מדעי המחשב

שיוך נוסף: הנדסה / הנדסת תוכנה

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

פיתוח הקורס: ד"ר לאוניד ברנבוים

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

חומר הלימוד

ספר הקורס:

The Art of Software Security Assessment: Identifying and Avoiding Software Vulnerabilities. By Mark Dowd, John McDonald, Justin Schuh. Addison-Wesley, 2006

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

נושאי הלימוד

תרגול

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


1 להשלכות על צבירת נ"ז בשל חפיפה עם קורס(‏ים‎)‏ אחר(‏ים‎)‏, ראו פירוט החפיפה.