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

20
1 ללללל ללללללל ללללללל לל ללללל ללללל, ללללללל לללל ללללללל לללללללHYBRID TEAM-BASED ROLE PLAY AS A VEHICLE FOR IMPROVING SOFTWARE DOCUMENTATION Aharon Yadin and Ilana Lavy

Upload: sagira

Post on 20-Mar-2016

59 views

Category:

Documents


7 download

DESCRIPTION

העלאת המודעות לחשיבות של תיעוד תוכנה, באמצעות משחק תפקידים היברידי Hybrid Team-Based Role Play as a Vehicle for Improving Software Documentation Aharon Yadin and Ilana Lavy. הקדמה. הגדרת הבעיה הסדנה בהנדסת תוכנה הערכת תהליך הלמידה תוצאות מסקנות. הגדרת הבעיה. - PowerPoint PPT Presentation

TRANSCRIPT

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

1

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

היברידי

HYBRID TEAM-BASED ROLE PLAY AS A VEHICLE FOR IMPROVING SOFTWARE

DOCUMENTATION

Aharon Yadin and Ilana Lavy

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

2010ידין ולביא 2

הגדרת הבעיההסדנה בהנדסת תוכנההערכת תהליך הלמידהתוצאותמסקנות

הקדמה

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

2010ידין ולביא 3

הנדסת תוכנה היא דיסציפלינה חדשה יחסית[Naur and Randell, 1968]

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

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

רבות, סטודנטים נוטים להתרכז בעיקר בקידוד

הגדרת הבעיה

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

2010ידין ולביא 4

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

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

אפשרייםתיקון של שגיאות שמתגלות הוספת שיפורים אפשריים לתוכנה )עקב שינויים בסביבה

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

תחזוקתיות התוכנה

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

2010ידין ולביא 5

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

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

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

הסדנה בהנדסת תוכנה

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

2010ידין ולביא 6

סטודנטים26בסדנה השתתפו -צוותים.7הסטודנטים התחלקו ל

חברי צוות4חמישה צוותים בני חברי צוות3שני צוותים בני

( בשלב זה הסטודנטים למדו מהו מודל תוכנה(UML

אודות המשתתפים

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

2010ידין ולביא 7

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

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

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

מבנה הסדנה

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

2010ידין ולביא 8

שלוש המשימות בפרויקט הן: הגדרה ותכנון הפרויקט, פיתוח)קידוד( הפרויקט ובדיקות

:לכל משימה הוקצו ארבעה שבועות שבהן התבצעהעבודה עצמית)עבודת צוות )פנים אל פנים או ישיבות וירטואליותבקשת עזרה/ייעוץ מהמרצהתיעוד הרעיונות והפעילויות

פעילויות תוך-צוותיות

שלבי העבודה במהלך הסדנה

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

2010ידין ולביא 9

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

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

שני ושלב הבדיקות בוצע על ידי צוות שלישיפעילויות בין-צוותיות

שלבי הסדנה

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

2010ידין ולביא 10

Team 1 Team 2 Team 3Project 1

Team 2 Team 3 Team 5Project 2

Team 3 Team 4 Team 6Project 3

Team 4 Team 5 Team 1

Team 5 Team 6 Team 7

Team 6 Team 7 Team 2

Team 7 Team 1 Team 4

Project 4

Project 5

Project 6

Project 7

ProjectDefinition

ProjectDevelopment

ProjectTesting

שלבי הסדנה )פרויקטים(

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

2010ידין ולביא 11

Project 1

Project 2

Team 3

Team 3

Team 3Project 3

Team 2

Team 2

Team 2

Team 1

Team 1

Team 1

Team 5

Team 4 Team 6

Team 4 Team 5

Team 5 Team 6 Team 7

Team 6 Team 7

Team 7 Team 4

Project 4

Project 5

Project 6

Project 7

ProjectDefinition

ProjectDevelopment

ProjectTesting

שלבי הסדנה )צוותים(

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

2010ידין ולביא 12

תיאור הפרויקט ופעילויות התכנוןלימוד פתרונות אפשריים שניתן להשתמש בהם בפרויקט 5הגדרת( תרחישי שימוש Use cases ותרשימי הרצף )

((Sequence Diagramsהדרושים ( ביצוע תכן עלSystem Architecture and Class Diagrams)( ביצוע תכן מפורטActivity Diagrams, PDL )

שלב תכנון הפרויקט

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

2010ידין ולביא 13

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

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

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

שלב פיתוח )קידוד( הפרויקט

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

2010ידין ולביא 14

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

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

שלב בדיקת הפרויקט

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

2010ידין ולביא 15

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

השאלון הראשון הועבר בשיעור הראשון של הסדנההשאלון השני הועבר בשיעור האחרון של הסדנה

הערכת תהליך הלמידה

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

2010ידין ולביא 16

Documentation Development Testing0%

10%

20%

30%

40%

50%

60%

70%

80%

Relative Impor-tance %

השאלון הראשון

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

2010ידין ולביא 17

Documentation Development Testing0%

10%

20%

30%

40%

50%

60%

70%

80%

Relative Impor-tance %

השאלון השני

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

2010ידין ולביא 18

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

בין חברי הצוות. יש לשים דגש על תיעוד טוב" עבודה בצוות חשפה אותי להרבה רעיונות חדשים"

ולאפשרויות אחרות לפתרון הבעיה" עבודת צוות יכולה להיות ברכה, אך לעיתים היא יכולה"

להיות קללה..." זה היה קורס קשה. לנסות להבין דרישות רק על ידי"

הסתכלות בקוד – זה לא קל. אני לא חושב שאני יכול להצליח בעבודת תחזוקה..."

תוצאות נוספות

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

2010ידין ולביא 19

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

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

לקוי, או חסר, הפכו להיות משמעותיים וברורים

מסקנות

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

2010ידין ולביא 20

תודה רבה

[email protected]@yvc.ac.il