השתתפתי היום במפגש של Weekend-testing, ובפרט של הסניף האירופאי שלהם WTEU. הנושא הפעם היה "יוריסטיקות בבדיקות". איזה קטע, בדיוק העברתי הרצאה על זה בעבודה, כך שיצא לי לחפור את החומר קצת. ועכשיו הזדמנות להשתמש ביוריסטיקות באופן מודע? עם בודקי תוכנה אחרים שעושים אותו דבר? אחלה!
נתחיל עם השורה התחתונה - נהניתי, גם למדתי קצת. יש כמה דברים שאולי אפשר היה לשפר.
אז מה היה לנו שם?
התחלנו עם הצגה קצרה של כל הנוכחים (סדר גודל של עשרים איש) ומשם ניגשנו לעניינים.
בילינו בסביבות ארבעים דקות בניסיון להגדיר מה הן יוריסטיקות, להציג כמה יוריסטיקות בהן משתמשים המשתתפים ולהשליך קישורים מעניינים מצד לצד. היו שני דברים שהפריעו לי בחלק הזה. הראשון היה שלמרות מגוון האנשים הרחב למדי שהיה וההבדלים המשמעותיים בתחומי העיסוק והניסיון, אפשר היה לשמוע שכולנו (כן, גם אני) מצטטים את אותו ספר לימוד. הדבר השני היה שלא הצלחתי להבין מה מטרת הדיון - בהתחלה היה נדמה לי שהמטרה היא ליישר קו בין המשתתפים, אבל זה נמשך יותר מדי זמן ולא היה מספיק ממוקד כדי לעשות את זה. למעשה, בתחילת הדרך נראה שמה שאנחנו עושים היה בעיקר להשליך נוטריקונים אקראיים זה על זה ולהסביר מה הן המילים שמיוצגות בנוטריקון הנ"ל. למה? כובע. כך עברנו על SFDIPOT ועל FEW HICCUPPS, ואז, כי נמאס לי מראשי תיבות, זרקתי פנימה גם את מבחן הדבורה המתה ומישהי אחרת הזכירה את Lévy flights, שזו דרך לומר "אני משוטט קצת באותה סביבה עד שנמאס לי, ואז מחליף כיוון לגמרי". שוב, גם הדוגמה שלי וגם הדוגמה שלה מגיעות (למיטב ידיעתי) מאותו מקור.
בשלב הזה קצת נמאס לי - לא הבנתי מה המטרה של השיחה הזו, והיא נמשכה יותר מאשר היה נראה לי סביר.
אבל, בדיוק כשתהיתי אם זה יהיה חצוף מצידי לשאול אם יש פואנטה לדיון הנוכחי, עברנו לחלק הבא - התחלקנו לקבוצות קטנות וניגשנו לתכנן בדיקות לאפליקציה שלא הכרנו בעזרת SFDIPOT.
בסופו של דבר מצאתי את עצמי בקבוצה של שלושה בודקים - דולורס (כרגע בוינה, במקור מספרד), קיריל(מרוסיה, למיטב ידיעתי) ואנוכי. בילינו קצת (יותר מדי) זמן בהקמת תשתיות תקשורת - פתיחת שיחה נפרדת בסקייפ, יצירת מפה משותפת בmindmup ואז - לעבודה. הקדשנו קצת זמן בחיטוט ראשוני באפליקציה ובעודי ממצמץ לרגע קיריל כבר הספיק להוסיף המון עלים חדשים למפה שלנו. רעיונות מצויינים, אבל המטרה שלנו הייתה לשתף פעולה בדרך זו או אחרת. לפחות, זה מה שאני רציתי לעשות. אחרי שקיריל הסביר מה הוא עושה (משוטט ומעלה רעיונות, אותם הוא יסדר אחר כך) הסכמנו להקדיש לעניין עוד חמש דקות ואז להתחיל לסדר דברים. תוך כדי שאנחנו מסדרים דברים שמתי לב שלא ממש השתמשנו בSFDIPOT אלא פעלנו באופן אקראי למדי.
האמת? לגמרי הגיוני. אני לא חושב שמישהו מאיתנו הקדיש הרבה מאמץ לעבודה עם היוריסטיקה הספציפית הזו בעבר, כך שלא ממש הכרנו אותה. בנוסף, זה שלא הכרנו אלה את אלה ותקשרנו בעזרת הודעות טקסט הוביל לכמה קשיים בתקשורת. נוסיף לזה אפליקציה חדשה שלא ראינו בעבר, וקיבלנו משימה קשה, במיוחד במסגרת הזמן הקצוב מאוד שהיה לנו.
לקראת הסוף התחלנו להתמקד קצת יותר ולארגן דברים מסביב לחלקים השונים של SFDIPOT, וכמובן - עד שהתחלתי להרגיש שאני מבין מה קורה, נגמר לנו הזמן.
בסך הכל - זו הייתה חוויה מעניינת.
כמה נקודות קטנות לשיפור -
- החלק התיאורטי היה ארוך למדי ולא ממוקד מספיק. דיברנו ודיברנו בלי לדעת באמת לאן אנחנו חותרים. לדעתי, יכולנו להסתפק בחצי מהזמן.
- בזמן תכנון הבדיקות, היינו צריכים להתמקד יותר במשימה הספציפית שקיבלנו - להתנסות בעבודה עם SFDIPOT. יכול להיות שניתן היה לחלק את המשימה למשימות קטנות יותר כמו "נסו למפות את מבנה התוכנה" או "מה הם סוגי המידע הרלוונטיים באפליקציה" ורק משם לעבור לכתוב בדיקה - הניסיון להתמצא באפליקציה חדשה מורכב מספיק גם בלי הצורך לנסות להבין איך עובדים עם יוריסטיקה חדשה.
- קצת זמן בסוף המפגש לסיכום פנימי והפקת לקחים היה יכול להועיל לגיבוש החוויה.
- לקראת סוף המפגש ציינה איימי שהיא ראתה אותי עושה משהו מעניין וביקשה פירוט - אני בטוח שלא הייתי היחיד שעשה דברים מעניינים, הייתי שמח לשמוע על מה עשו קבוצות אחרות. אולי זה יהיה בסיכום המפגש שיפורסם בעתיד.
- אני לא לחלוטין בטוח שנוח לי להשתמש ביוריסטיקה הספציפית הזו באפליקציה שאני לא מכיר בכלל. אולי בצורה מודרכת, אבל לא באופן בו זה נעשה. תחושת הבטן שלי אומרת שאוכל להפיק הרבה יותר תועלת מהיוריסטיקה הספציפית הזו עם אפליקציות שאני מכיר לפחות באופן שטחי.
ולסיכום - הצטרפו למפגש הבא, זה כיף.
------------------------------------------------------------------------
I participated in Weekend testing Europe today. The subject was "Heuristics in testing". By chance, I just gave a short introduction talk at work about the same subject, so I came prepared after reading a bit and thinking a lot. And now I get an opportunity to consciously use some of it and see other testers do the same? Super-green.
So, bottom-line first - I had a great time and I learned a bit. There are also some small things that could be improved.
Or, in more details:
We've started with a short presentation of the participants (somewhere around 20 people), and then we got to business. We've spent about 40 minutes in defining heuristics, presenting some heuristics that some of the participants work with, and toss around some interesting links.
I had two problems with this discussion -
First, despite having a very diverse group of people, it seemed that all of us (including me) were reading out of the same textbook.
Second - it felt very out of focus. I assume that the original purpose was to align everyone around the same concepts and terms, but it turned out too lengthy and erratic to do that effectively. In fact, it seemed that we spent some of the time throwing acronyms one at another and then breaking them to the words behind them. Why? just because. So we've discussed SFDIPOT and (F)EW HICCUPPS, and then, since I didn't like the fact that we were practically equating heuristics with fancy acronyms, I threw in the dead bee heuristic and someone else added the Lévy flights, which is a nice way to describe the strategy of "test until bored, then go test someplace else". But then again - both of those examples come (to the best of my knowledge) from the same source.
At this point, I started wondering if it would be too rude to ask publicly what are we trying to achieve by the current activity, but I was lucky - before I decided, we went to the next step: Testing an application. Which one? this. We broke into small teams and set out with the goal of trying to write a test plan using SFDIPOT.
Somehow, I did manage to find a team, and we were three - Dolores, a tester from Vienna (originally from Spain), Kirill, a tester from Russia (I think) and myself. We spent a little (too much) time on setting up a new Skype group for us and creating a shared mindmap which we then - off to work!
We invested some time looking at the application (which we were unfamiliar with) and then I blinked for a bit - and found that Kirill managed to add a ton of leafs to the map. He explained that he was writing things as he went by, to be organised later - which we agreed was a good strategy, so we gave it five more minutes before turning to organize what we've found. While we were sorting things I noticed it didn't seem as if we were using SFDIPOT, so I pushed a bit to fix this (after all, the whole purpose of this exercise wasn't to create a test plan, but to practice using heuristics). I must say - it's not surprising that we didn't use SFDIPOT. None of us had experience using it, we were facing a completely new application, we were communicating by chat and had zero experience of working with each other. With all of those around, and the very short time we had, we get a difficult task, so naturally we resorted to doing things the ways we knew and felt comfortable with. It took a conscious effort to shift the focus to the heuristic we tried using.
All in all - an interesting experience.
Some points that I think could be improved:
- The theoretical part was a bit too long to my taste. Clearly defining a goal and shortening the discussion in half would have made it that much better for me.
- During the mission we got, we should have focused more on the task of using the heuristic. Perhaps it would have been easier if we split it up to smaller bits such as "try to map the structure of the application" or "what types of data do you think there are?"
- I could have benefited from several minutes of reflection within the group, perhaps with a question or two from the moderator.
- Just before the end, Amy (the moderator) mentioned that she saw me doing something that interested her and we had a short chat about it. I'm sure I wasn't the only one doing interesting things, and would have loved hearing about some of the approaches used by others.
- I'm not entirely sure I am comfortable using this specific heuristic in this context. While working with it I got the feeling that I should know a bit more about the application before trying to use it. Perhaps it can be done in a more controlled environment with closer guidance, but in the current setup, I felt a bit too lost.
To sum it up - go and join the next event. It's fun.