סיכום סדנת מתודולוגיות  - כנס מורי מדעי המחשב – דצמבר 2002

 

בחלק הראשון של הסדנא שנמשך כשעה, התנסו המשתתפים בפיתוח תוכנה תוך יישום מתודולוגית פיתוח התוכנה eXtreme Programming (XP). בחלק השני של הסדנא, שנמשך כחצי שעה, הוצג סיכום קצר של המתודולוגיה XP (מצגת שקפים מצורפת), והתפתח דיון בנושא שימוש במתודולוגית פיתוח תוכנה במסגרת היחידה השלישית לבגרות.

 

חלק ראשון:

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

שלב Planning - Customer Stories- הוצג נושא התוכנה - ניהול הזמנות לטיסה. המורים היוו גוף הנהלה ולקוחות והוסיפו סיפורי לקוח משלהם.  המורים חילקו את סיפורי הלקוח ל 3 ערימות – "הכרחי לכלול בגרסה ראשונה" שתפותח בסדנה, "ניתן לדחות לפיתוח בגרסאות הבאות", "nice to have".

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

שלב Planning – Development Tasks – הוצעו על ידי המורים 14 משימות פיתוח (פונקציות) בהתאמה לסיפורי הלקוח, שחולקו למשתתפים באופן רנדומלי לצורך הערכת זמנים לכל משימה בדקות. דובר על 'כוח פיתוח' של 14 זוגות למשך 10 דקות (זוג למשימה), כלומר 140 דקות פיתוח. לאחר סיכום הערכות הזמנים הגענו ל 150 דקות, והוסבר שבשלב זה הלקוח היה אמור להוריד משימות/סיפורים בתיאום עם צוות הפיתוח. כמו כן הודגש הצורך לבצע בשלב זה load balancing כדי לעמוד בזמן הכולל ולחלק את העבודה שווה בשווה בין המשתתפים בפיתוח.

שלב Testing + Coding – המורים ביצעו את משימות הפיתוח על גבי שקפים, ובנוסף נכתבה תוכנית בדיקה לכל משימה. המורים התבקשו לכתוב קוד קריא תוך שימוש בהזחה.

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

שלב code review – נציגת אחת הקבוצות הציגה את ה- test + code שכתבה עבור מסננת הקלט למספר המושבים בהזמנה. דובר על חשיבות הצגת קוד לצוות הפיתוח ושיחה עליו, תוך ניסיון לבצע refactoring (ייצור מחדש) שמשמעו תכנון מחדש ושיפור התוכנה.

 

חלק שני:

הוצגה מתודולוגית פיתוח התוכנה XP והוצגו מיומנויותיה השונות (מצגת מצורפת). התפתח דיון בנושא שימוש במתודולוגית פיתוח תוכנה לפרויקט ביחידת הבגרות השלישית. חולק הדף שבאמצעותו מתבצעת הערכה לפרויקט מסוג זה (עמוד 8 בקובץ), פרויקט 'מבוא לתכנות בסביבת אינטרנט'.

בין השאר הועלו הנקודות הבאות:

-        ניתן לשלב מתודולוגיות פיתוח התוכנה בכל היחידות.

-        מתודולוגיות פיתוח תוכנה מתאימות במיוחד ביחידות מתקדמות יותר.

-        מיומנות ה testing חשובה מאוד ביחידה הרביעית.

-        חשובה עבודת צוות בפיתוח תוכנה לפני עבודה יחידנית.

-        חשוב לקחת בחשבון כי אין סטנדרט בהעברת היחידה השלישית: חלק מתחילים בכיתה ט' וממשיכים עד סוף י', חלק מלמדים יחידה זו בכיתה י' במקביל לשתי היחידות הראשונות, וחלק מלמדים זאת בכיתה י"א במקביל לשתי היחידות האחרונות.

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

 

חזרה לאתר הכנס