paint-brush
Даследчыкі думаюць, што гейміфікацыя можа вырашыць праблемы тэставання праграмнага забеспячэнняпа@gamifications
Новая гісторыя

Даследчыкі думаюць, што гейміфікацыя можа вырашыць праблемы тэставання праграмнага забеспячэння

Занадта доўга; Чытаць

Даследчыкі з Іспаніі выявілі, што гейміфікацыя лепш матывуе студэнтаў праграмнага забеспячэння да выканання заданняў кантролю якасці.
featured image - Даследчыкі думаюць, што гейміфікацыя можа вырашыць праблемы тэставання праграмнага забеспячэння
Gamifications FTW Publications HackerNoon profile picture
0-item

Аўтары:

(1) Ракель Бланка, даследчая група распрацоўкі праграмнага забеспячэння, Універсітэт Аўеда, Дэпартамент інфарматыкі, Хіхон, Іспанія ([email protected]);

(2) Мануэль Трынідад, Даследчая група па ўдасканаленні працэсаў праграмнага забеспячэння і фармальных метадаў Універсітэта Кадыса, Дэпартамент інфарматыкі і тэхнікі, Кадыс, Іспанія ([email protected]);

(3) Марыя Хасэ Суарэс-Кабаль, даследчая група распрацоўкі праграмнага забеспячэння, Універсітэт Аўеда, Дэпартамент інфарматыкі, Хіхон, Іспанія ([email protected]);

(4) Алехандра Кальдэрон, даследчая група па ўдасканаленні праграмнага забеспячэння і фармальных метадаў, Універсітэт Кадыса, Дэпартамент інфарматыкі і тэхнікі, Кадыс, Іспанія ([email protected]);

(5) Мэрсэдэс Руіс, Даследчая група па ўдасканаленні праграмнага забеспячэння і фармальных метадаў, Універсітэт Кадыса, Дэпартамент інфарматыкі і тэхнікі, Кадыс, Іспанія ([email protected]);

(6) Хаўер Туя, даследчая група распрацоўкі праграмнага забеспячэння, Універсітэт Аўеда, Дэпартамент інфарматыкі, Хіхон, Іспанія ([email protected]).

Заўвага рэдактара: гэта частка 1 з 7 даследавання, у якім падрабязна апісваюцца спробы даследчыкаў стварыць эфектыўныя тэсты з дапамогай гейміфікацыі. Астатняе чытайце ніжэй.

Табліца спасылак

Анатацыя

Тэставанне праграмнага забеспячэння - важная вобласць ведаў, неабходная індустрыі для інжынераў-праграмістаў. Аднак студэнты праграмнай інжынерыі часта лічаць тэставанне менш прывабным, чым праектаванне або кадаванне. Такім чынам, цяжка прыцягнуць студэнтаў да стварэння эфектыўных тэстаў. Каб заахвоціць студэнтаў, мы даследавалі выкарыстанне гейміфікацыі і даследавалі, ці можа гэтая тэхніка дапамагчы палепшыць узаемадзеянне і прадукцыйнасць студэнтаў, якія праходзяць тэсціраванне праграмнага забеспячэння. Мы правялі кантраляваны эксперымент, каб параўнаць узаемадзеянне і прадукцыйнасць дзвюх груп студэнтаў, якія прайшлі бакалаўрскі курс тэсціравання праграмнага забеспячэння ў розныя навучальныя гады. Эксперыментальную групу складаюць 135 студэнтаў гейміфікаванага курса, а кантрольную групу складаюць 100 студэнтаў негейміфікаванага курса. Сабраныя дадзеныя былі статыстычна прааналізаваны, каб адказаць на пытанні даследавання гэтага даследавання. Вынікі паказваюць, што студэнты, якія ўдзельнічалі ў гейміфікацыі, былі больш заангажаваныя і дасягнулі лепшай прадукцыйнасці. У якасці дадатковай высновы аналіз вынікаў паказвае, што ключавым аспектам для дасягнення поспеху з'яўляецца дызайн гейміфікацыі. Важна размеркаваць матывацыйны стымул, які дае гейміфікацыя, на працягу ўсяго вопыту, каб прыцягнуць студэнтаў да канца. Улічваючы гэтыя вынікі, мы плануем скарэктаваць дызайн вопыту гейміфікацыі, каб павялічыць уцягванне студэнтаў на апошнім этапе вопыту, а таксама правесці падоўжнае даследаванне для ацэнкі эфектаў гейміфікацыі.


Ключавыя словы


Гейміфікацыя, тэставанне праграмнага забеспячэння, узаемадзеянне, прадукцыйнасць, эфектыўнасць тэставання, эмпірычнае даследаванне

1 Уводзіны

У эпоху інфармацыйных тэхналогій праграмнае забеспячэнне прысутнічае амаль ва ўсіх аспектах нашага жыцця. Вельмі важна, каб праграмныя прадукты працавалі правільна і па прызначэнні, таму што іх няспраўнасць можа прывесці да фінансавых страт як для канчатковых карыстальнікаў, так і для кампаній, якія займаюцца праграмным забеспячэннем, да страты прэстыжу кампаній, якія займаюцца праграмным забеспячэннем, да выкрыцця асабістых дадзеных або нават да трагічных наступстваў для жыцця чалавека. Каб прадухіліць гэтыя негатыўныя наступствы, вельмі важна належным чынам і старанна тэставаць праграмныя прадукты з мэтай выяўлення і ліквідацыі іх дэфектаў (таксама званых няспраўнасцямі або памылкамі) і збояў, перш чым выпускаць іх для канчатковых карыстальнікаў. Для гэтай мэты прамысловасці патрабуюцца добра падрыхтаваныя тэстары, і адукацыя нясе адказнасць за гэта. Тым не менш, паміж прамысловасцю і адукацыяй існуе разрыў у тым, што тычыцца праверкі ведаў, неабходных у галіны, і таго, што выкладаюць у вышэйшых навучальных установах. З аднаго боку, тэсціраванне праграмнага забеспячэння не выкладаецца з дастатковай глыбінёй у праграмнай інжынерыі (Fraser et al., 2019; Jesus et al., 2020), і яно часта ўбудоўваецца ў іншыя курсы праграмнай інжынерыі, а не як спецыяльны курс ( Сільвіс-Чывіджыян, 2021). З іншага боку, цяжка прыцягнуць студэнтаў, паколькі яны, як правіла, лічаць тэставанне праграмнага забеспячэння сумнай і дэструктыўнай задачай, і яны аддаюць перавагу задачам распрацоўкі і ўкаранення (Fraser et al., 2020). У выніку студэнты не набываюць той практыкі, якой патрабуе галіна, і аддаюць перавагу працаваць у іншых галінах распрацоўкі праграмнага забеспячэння, а не ў тэсціраванні праграмнага забеспячэння; як сказана ў (Silvis-Cividjian, 2021), толькі да 20% студэнтаў разглядаюць магчымасць кар'еры ў тэсціраванні праграмнага забеспячэння.


Каб вырашыць праблему матывацыі студэнтаў, мы вывучылі выкарыстанне гейміфікацыі ў тэсціраванні праграмнага забеспячэння для студэнтаў. Гейміфікацыя была прынята ў апошняе дзесяцігоддзе як сродак прыцягнення студэнтаў да розных адукацыйных кантэкстаў (Bodnar et al., 2016; Dichev & Dicheva, 2017; Milosz & Milosz, 2020; Subhash & Cudney, 2018; Vos et al., 2020 ), і даў шматабяцаючыя вынікі ў праграмнай інжынерыі і навучанні тэсціраванню праграмнага забеспячэння (Alhammad & Moreno, 2018; Garousi et al., 2018; Pedreira et al., 2018).


У гэтай працы мы апісваем і ацэньваем вопыт гейміфікацыі, праведзены на семінарскіх занятках курса тэсціравання праграмнага забеспячэння, дзе студэнты павінны былі стварыць эфектыўныя тэставыя прыклады для некалькіх няспраўных праграм, каб выявіць іх дэфекты. Мы выказалі здагадку, што гейміфікацыя станоўча паўплывае на ўзаемадзеянне і паспяховасць студэнтаў. Студэнты ўдзельнічалі ў гейміфікацыі, заснаванай на апавяданні, дзе яны ўдзельнічалі ў легендарнай алімпійскай гонцы за неўміручасць, якую падтрымліваў інструмент гейміфікацыі GoRace. Эфектыўнасць іх тэстаў вызначала іх прагрэс у гонцы. Гэтая эфектыўнасць забяспечваецца інструментам пад назвай SQLTest, які інтэграваны з GoRace. Каб праверыць нашы гіпотэзы, мы вызначылі набор паказчыкаў для вымярэння актыўнасці і паспяховасці студэнтаў і статыстычна параўналі вынікі, дасягнутыя эксперыментальнай і кантрольнай групамі, каб адказаць на наступныя пытанні даследавання:


  • RQ1. Ці ўдзел студэнтаў, якія займаюцца тэсціраваннем праграмнага забеспячэння, якія займаюцца гейміфікаванай дзейнасцю, вышэй, чым тых, хто займаецца імі ў асяроддзі без гейміфікацыі? Каб вырашыць гэтае пытанне даследавання, мы вызначылі набор паказчыкаў, звязаных з удзелам студэнтаў у акадэмічнай дзейнасці.


  • RQ2. Ці вышэй прадукцыйнасць студэнтаў тэсціравання праграмнага забеспячэння, якія займаюцца гейміфікаванай дзейнасцю, чым тых, хто выконвае іх у негейміфікаваным асяроддзі? Каб адказаць на гэтае пытанне даследавання, мы вызначылі набор паказчыкаў, звязаных з эфектыўнасцю створаных тэстаў.


Асноўныя ўклады гэтай працы наступныя:


  • Дызайн вопыту гейміфікацыі для курса тэсціравання праграмнага забеспячэння для студэнтаў. Гэты вопыт быў праведзены на працягу поўнага навучальнага семестра (15 тыдняў).


  • Аналіз уплыву гейміфікацыі на паляпшэнне ўзаемадзеяння студэнтаў і іх прадукцыйнасці ў стварэнні эфектыўных тэстаў. Вынікі паказваюць, што гейміфікацыя станоўча ўплывае як на ўдзел студэнтаў, так і на прадукцыйнасць; акрамя таго, яны таксама паказваюць, што для дасягнення поспеху вельмі важна падтрымліваць стымул на працягу ўсяго вопыту.


Астатняя частка гэтага артыкула арганізавана наступным чынам: у раздзеле 2 даюцца даведкі аб гейміфікацыі і навучанні тэсціраванню праграмнага забеспячэння. У раздзеле 3 прадстаўлены курс, які ўдзельнічае ў гейміфікацыі, разам з удзельнікамі і матэрыяламі, якія выкарыстоўваюцца ў гэтым вопыце. У гэтым раздзеле таксама апісваецца працэдура, якой прытрымліваюцца вопыт і вызначаныя паказчыкі. У раздзеле 4 прадстаўлены вынікі статыстычнага аналізу, праведзенага для праверкі гіпотэз, якія дазваляюць адказаць на пытанні даследавання. Гэтыя вынікі абмяркоўваюцца ў раздзеле 5. У раздзеле 6 пералічаны пагрозы абгрунтаванасці абмеркаваных высноў. Нарэшце, мы робім высновы і апісваем наступствы нашых высноў у раздзеле 7.


Гэты дакумент даступны на arxiv пад ліцэнзіяй CC BY 4.0 DEED.