236371-2009.ppt

526 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
526
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

236371-2009.ppt

  1. 1. מעבדה למערכות מבוזרות סמסטר אביב , תשס " ט
  2. 2. אדמיניסטרציה <ul><li>סגל הקורס : </li></ul><ul><ul><li>פרופ / ח ' רועי פרידמן , טאוב 605, [email_address] </li></ul></ul><ul><ul><li>אלכס קוגן , טאוב 315, [email_address] </li></ul></ul><ul><li>אתר הבית : http://webcourse.cs.technion.ac.il/236371 </li></ul>
  3. 3. שלב ראשון : בחירת הפרויקט <ul><li>1-2 פרויקטים מועדפים + אנשי צוות - בדוא&quot;ל לאלכס </li></ul><ul><li>תאריך יעד: שבוע מתחילת סמסטר </li></ul><ul><li>שיבוץ צוותים לפרויקטים לפי עדיפויות </li></ul><ul><ul><li>על בסיס מקום פנוי </li></ul></ul>
  4. 4. שלב שני : Functional Specification <ul><li>כתיבת מסמך functional specification לפרויקט </li></ul><ul><ul><li>איך הבנתם את דרישות הפרויקט ? </li></ul></ul><ul><ul><li>אילו כלים דרושים למימושו ? </li></ul></ul><ul><ul><li>על אילו פלטפורמות הוא יעבוד ( התקן , מ &quot; ה וכו ')? </li></ul></ul><ul><li>אורך המסמך - עמוד אחד </li></ul><ul><li>תאריך יעד : שבועיים מתחילת סמסטר </li></ul>
  5. 5. שלב שלישי : מסמך ארכיטקטורה <ul><li>רשימת מודולים ויחסי גומלין ביניהם . לכל מודול : </li></ul><ul><ul><li>האם מפותח מ - scratch או מבוסס על מימוש קיים ? </li></ul></ul><ul><ul><li>מה הפונקציונאליות שלו ? </li></ul></ul><ul><ul><li>על איזו פלטפורמה ירוץ ? </li></ul></ul><ul><li>תיאור Use-Case - ים נפוצים </li></ul><ul><li>תאור UI ( אם קיים ) </li></ul><ul><li>אורך המסמך - 2 עמודים </li></ul><ul><li>תאריך יעד : 3 שבועות אחרי סיום שלב שני </li></ul>
  6. 6. שלב רביעי : קדם מצגת <ul><li>הצגת גרסת alpha של המערכת </li></ul><ul><li>הדגמת יכולות בסיסיות </li></ul><ul><ul><li>ללא טיפול במקרי קצה </li></ul></ul><ul><li>המטרה : לקבל משוב לפני הגשה סופית </li></ul><ul><li>תאריך יעד : 3 שבועות לפני סוף סמסטר </li></ul>
  7. 7. שלב חמישי : הגשה סופית <ul><li>הדגמת פרוייקט </li></ul><ul><li>מצגת קצרה </li></ul><ul><li>מדריך משתמש ( Word / HTML ) </li></ul><ul><li>מסמך ארכיטקטורה ( Word / HTML ) </li></ul><ul><ul><li>מתוקן לפי המימוש הסופי </li></ul></ul><ul><li>כל קוד הפרויקט ( כולל כלים קיימים ) </li></ul><ul><li>תאריך יעד : סוף סמסטר </li></ul><ul><ul><li>נשתדל להיות גמישים ... </li></ul></ul>מסודר בתוך אתר
  8. 8. דרישות כלליות <ul><li>קוד קריא , מתועד היטב ... </li></ul><ul><li>שפת תכנות - לפי בחירת הצוות </li></ul><ul><ul><li>מלבד פרויקטים בהם נדרש פיתוח בשפה מסוימת </li></ul></ul><ul><li>דגש על מימוש power-aware </li></ul><ul><ul><li>ניתוח מספר הודעות נשלחות </li></ul></ul><ul><ul><li>הימנעות מחישובים מיותרים </li></ul></ul><ul><li>תצוגה מותאמת לסוג מכשיר </li></ul><ul><ul><li>לא מצופה GUI מתוחכם , אך חשוב שיהיה נוח </li></ul></ul>
  9. 9. מה אם נתקענו ? <ul><li>סגל הקורס זמין לשאלות לאורך כל הסמסטר </li></ul><ul><li>אתם מוזמנים להגיע ולדון בכל פרט הקשור לתכנון ומימוש הפרויקט </li></ul><ul><li>אל תחכו לרגע אחרון !! </li></ul>
  10. 10. פרוייקטים מבוססי Asus Eee
  11. 11. 1# : אפליקצית P2P ל - video streaming <ul><li>פיתוח אפליקצית P2P להזרמת וידאו ( streaming ) בין מחשבים ניידים ברשת אלחוטית </li></ul><ul><li>כל מחשב יוכל להזרים ערוץ וידאו ו / או לקבל ערוצים המשודרים על ידי מחשבים אחרים </li></ul><ul><li>דוגמה לשימוש : מרצה בכיתה מציג סרטון לסטודנטים על גבי המחשבים שלהם </li></ul><ul><li>לצורך המימוש , נשתמש בשתי טכנולוגיות הבאות : </li></ul><ul><ul><li>Bonjour - מימוש פשוט של מנגנון לגילוי שירותים ( service discovery ) של התקנים המחוברים לרשת </li></ul></ul><ul><ul><li>ספריית open source לעבודה עם וידאו VideoLan) ) </li></ul></ul>
  12. 12. <ul><li>צוות – עד 3 סטודנטים </li></ul><ul><li>מכשיר Asus לכל חברי צוות למשך כל הסמסטר </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות </li></ul></ul><ul><ul><li>פיתוח תוכנה peer-to-peer שימושית </li></ul></ul><ul><ul><li>עבודה עם ספריית וידאו </li></ul></ul>1# : אפליקצית P2P ל - video streaming
  13. 13. 2# : אפליקצית P2P להעברת קול <ul><li>תוכנה פשוטה לביצוע שיחות voice בין אנשים עם מחשבים המחוברים ברשת אלחוטית ( דוגמת Skype ) </li></ul><ul><li>שימוש בשתי טכנולוגיות מתקדמות Bonjour ו - XMPP </li></ul><ul><ul><li>Bonjour - מימוש פשוט של מנגנון לגילוי שירותים ( service discovery ) של התקנים המחוברים לרשת </li></ul></ul><ul><ul><li>XMPP ( Extensible Messaging and Presence Protocol ) - טכנולוגית client-server לניהול נוכחות ותקשורת בזמן אמת </li></ul></ul><ul><ul><ul><li>סטנדרט פתוח , עם מספר מימושים עבור צד של שרת ועבור צד של לקוח </li></ul></ul></ul><ul><ul><ul><ul><li>המפורסם שבהם - GoogleTalk </li></ul></ul></ul></ul><ul><li>שימוש במימוש קיים של תוכנה המשתמשת ב - XMPP ו - Bonjour והוספת יכולת לביצוע voice chat </li></ul>
  14. 14. <ul><li>צוות – עד 3 סטודנטים </li></ul><ul><li>מכשיר Asus לכל חברי צוות למשך כל הסמסטר </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות </li></ul></ul><ul><ul><li>פיתוח תוכנה peer-to-peer שימושית </li></ul></ul>2# : אפליקצית P2P להעברת קול
  15. 15. 3# : משחק P 2 P <ul><li>פיתוח משחק P2P מרובה משתתפים ברשת אלחוטית </li></ul><ul><li>שימוש בטכנולוגיית Bonjour </li></ul><ul><ul><li>מימוש פשוט של מנגנון לגילוי שירותים ( service discovery ) של התקנים המחוברים לרשת </li></ul></ul><ul><li>הצוות יוכל לבחור את המשחק כרצונו </li></ul><ul><ul><li>יש להיות מקוריים ! </li></ul></ul>
  16. 16. 3# : משחק P2P <ul><li>צוות – עד 3 סטודנטים </li></ul><ul><li>מכשיר Asus לכל חברי צוות למשך כל הסמסטר </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות </li></ul></ul><ul><ul><li>פיתוח תוכנה peer-to-peer שימושית </li></ul></ul>
  17. 17. 4# : Wireless-to-Wired proxy <ul><li>תכנון ומימוש מערכת לשיתוף חיבור אינטרנט קווי בין מחשבים ניידים עם כרטיס WiFi </li></ul><ul><li>המערכת הבסיסית המורכבת משני חלקים : </li></ul><ul><ul><li>צד של שרת אשר ירוץ על מחשב אישי עם חיבור קווי לאינטרנט וישמש כ - proxy עבור מחשבים ניידים לצורך גישה לאינטרנט </li></ul></ul><ul><ul><li>צד של לקוח אשר ירוץ על מחשב נייד בעל כרטיס WiFi ויאפשר חיבור לשרת ה - proxy </li></ul></ul><ul><li>המערכת תחליף את הצורך בנתב אלחוטי בכרטיס אלחוטי </li></ul>
  18. 18. 4# : Wireless-to-Wired proxy <ul><li>צוות – 2-4 סטודנטים </li></ul><ul><ul><li>בהתאם למספר הסטודנטים בקבוצה , נבחר לממש גם : </li></ul></ul><ul><ul><ul><li>תמיכה בחיבור multi-hop </li></ul></ul></ul><ul><ul><ul><ul><li>חיבור ממחשב נייד לשרת שעובר דרך מספר מחשבים ניידים </li></ul></ul></ul></ul><ul><ul><ul><li>תמיכה בתזוזה של מחשבים ניידים </li></ul></ul></ul><ul><ul><ul><ul><li>ניתוב חבילות דרך מסלולים חלופיים </li></ul></ul></ul></ul><ul><li>מכשיר Asus לכל חברי צוות למשך כל הסמסטר </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות </li></ul></ul><ul><ul><li>פיתוח תוכנה peer-to-peer שימושית </li></ul></ul><ul><ul><li>מימוש אלגוריתם ניתוב ברשת ניידת </li></ul></ul>
  19. 19. פרוייקטים מבוססי Android
  20. 20. 5# : Stocks Ticker <ul><li>פיתוח תוכנה ל - Android למעקב בזמן אמת אחר רשימה של ניירות ערך שהמשתמש הגדיר </li></ul><ul><ul><li>בעזרת חיבור אינטרנט לאתר פיננסי </li></ul></ul><ul><li>התוכנה תרוץ ברקע ותתריע למשתמש על </li></ul><ul><ul><li>שינויים קיצוניים במחיר נייר ערך </li></ul></ul><ul><ul><li>פרסום חדשות הקשורות לנייר </li></ul></ul>
  21. 21. 5# : Stocks Ticker <ul><li>צוות - 2-3 סטודנטים </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>פיתוח תוכנה לפלטפורמה ניידת עתידית </li></ul></ul><ul><ul><li>עבודה עם אמולטור מתקדם </li></ul></ul><ul><ul><li>הכרות תכנות GUI ב - Java </li></ul></ul>
  22. 22. 6# : יצירת ערוץ מאובטח עם XMPP <ul><li>שימוש בפרוטוקול XMPP ליצירת ערוץ מאובטח בין שני מכשירי Android </li></ul><ul><li>בעזרת ערוץ זה , נייצר shell מרוחק - אפליקציה שבעזרתה נוכל להריץ פקודות על מכשיר מרוחק ולקבל תוצאות על מכשיר מקומי </li></ul>
  23. 23. 6# : יצירת ערוץ מאובטח עם XMPP <ul><li>צוות - 2 סטודנטים </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>פיתוח תוכנה לפלטפורמה ניידת עתידית </li></ul></ul><ul><ul><li>עבודה עם אמולטור מתקדם </li></ul></ul><ul><ul><li>הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות </li></ul></ul>
  24. 24. פרוייקט מבוסס PC
  25. 25. 7# : ערוץ &quot; חודר Firewall &quot; עם XMPP <ul><li>בארגונים רבים , מדיניות אבטחה מונעת תוכנות רבות מלהתחבר לאינטרנט </li></ul><ul><li>לעתים , שימוש בפרוטוקול XMPP כן אפשרי </li></ul><ul><ul><li>GoogleTalk עובד ... </li></ul></ul><ul><li>ננסה להראות כי בעזרת XMPP ושימוש במחשב Proxy ( שיכול להיות ממוקם בבית ), ניתן להפעיל תוכנות &quot; אסורות &quot; בארגון </li></ul><ul><li>נעשה זאת ע &quot; י יצירת tunnel בין שני מחשבים </li></ul>
  26. 26. 7# : ערוץ &quot; חודר Firewall &quot; עם XMPP <ul><li>צוות - 2 סטודנטים </li></ul><ul><li>מיומנויות נרכשות : </li></ul><ul><ul><li>הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות </li></ul></ul><ul><ul><li>ישום עקרונות ומושגים הנלמדים בקורס מערכות הפעלה , תקשורת נתונים ותכנות מקבילי ומבוזר </li></ul></ul>
  27. 27. פרויקטים מחקריים
  28. 28. פרויקטים מחקריים <ul><li>השנה מוצעים מספר פרויקטים מחקריים בעלי אופי תאורטי </li></ul><ul><ul><li>אך משלבים לא מעט פיתוח ! </li></ul></ul><ul><li>השתתפות באחד הפרויקטים האלה עשויה לשמש נקודת התחלה מצוינת למחקר בתחום מערכות מבוזרות </li></ul><ul><ul><li>על כן , מומלצת במיוחד לסטודנטים בשלבי סיום של לתואר ראשון או לסטודנטים מוסמכים </li></ul></ul><ul><li>בונוס נוסף הוא האפשרות לפרסום תוצאות הפרויקט באחד הכנסים המובילים בתחום מערכות מבוזרות </li></ul><ul><li>לפרטים , נא לפנות לצוות הקורס </li></ul>

×