Orig­i­nal source pub­li­ca­tion: Brito, M. A. and F. de Sá-Soares (2014). Assess­ment Fre­quency in Intro­duc­tory Com­puter Pro­gram­ming Dis­ci­plines. Com­put­ers in Human Behav­ior 30, 623–628.
The final pub­li­ca­tion is avail­able here.

Assess­ment Fre­quency in Intro­duc­tory Com­puter Pro­gram­ming Dis­ci­plines

Miguel A. Brito and Fil­ipe de Sá-Soares

Depart­ment of Infor­ma­tion Sys­tems, Cen­tro Algo­ritmi, School of Engi­neer­ing, Uni­ver­sity of Minho, Guimarães, Por­tu­gal

Abstract

Intro­duc­tory com­puter pro­gram­ming dis­ci­plines com­monly show a sig­nif­i­cant fail­ure rate. Although sev­eral rea­sons have been advanced for this state of affairs, we argue that for a begin­ner stu­dent it is hard to under­stand the dif­fer­ence between know-about dis­ci­plines and know-how-to-do-it dis­ci­plines, such as com­puter pro­gram­ming. This leads to fail­ure because when stu­dents under­stand they are not able to solve a pro­gram­ming prob­lem it is usu­ally too late to catch all the time mean­while lost. In order to make stu­dents crit­i­cally analyse their progress, instruc­tors have to pro­vide them with real­is­tic indi­ca­tors of their per­for­mance. To achieve this aware­ness and to trig­ger cor­rec­tive actions in a timely man­ner there is a need to increase assess­ment fre­quency. This paper dis­cusses how this can be done, analy­ses ben­e­fits of the pro­posed approach and presents data on the effects of changes in assess­ment fre­quency for a uni­ver­sity first year course in fun­da­men­tals of com­puter pro­gram­ming.

Key­words: Assess­ment Fre­quency; Com­puter Pro­gram­ming; Con­struc­tivism; Learn­ing
Novice Stu­dents; Pro­gram­ming Edu­ca­tion

1. Introduction—Reasons for Failure

The lit­er­a­ture iden­ti­fies sev­eral rea­sons for stu­dents fail­ure when learn­ing to pro­gram [Robins et al. 2003], with some address­ing the cur­ricu­lum, oth­ers focus­ing on method­olo­gies [Cook 2008], on resources, or on the best first pro­gram­ming lan­guage to use [Duke et al. 2000]. The inher­ent dif­fi­culty of pro­gram­ming [Teague and Roe 2008; Winslow 1996] and con­trol­ling what kind of mis­takes stu­dents are more likely to make [Spohrer and Soloway 1986] are also addressed.

How­ever, a well-known empir­i­cal truth about teach­ing pro­gram­ming is that a moti­vated stu­dent needs lit­tle guid­ance so he will suc­ceed no mat­ter how bad are the over­all con­di­tions, teach­ers included. Sim­i­larly, a stu­dent not moti­vated to spend some weekly hours prac­tic­ing will fail no mat­ter what the teacher says or how well the teacher explains all about com­puter pro­gram­ming.

Our teach­ing prac­tice also led us to note that many stu­dents do not have a real­is­tic idea about their effec­tive study per­for­mance.

Papers about dif­fi­cul­ties in com­puter pro­gram­ming learn­ing can be found in the lit­er­a­ture [Jenk­ins 2002]. In [Gomes and Mendes 2007] dif­fi­cul­ties are divided into five cat­e­gories:

2. Constructivism in Education

Con­struc­tivism is a learn­ing the­ory in which Jean Piaget argues that peo­ple (and chil­dren in par­tic­u­lar) build their knowl­edge from their own expe­ri­ence rather than on some kind of infor­ma­tion trans­mis­sion.

Later, based on Piaget’s insights on the expe­ri­en­tial learn­ing par­a­digm, impor­tant works have been devel­oped, such as Kolb’s Expe­ri­en­tial Learn­ing Model [Kolb and Fry 1975] which rein­forces the role of per­sonal exper­i­ment in learn­ing and sys­tem­atizes iter­a­tions of reflec­tion, con­cep­tu­al­iza­tion, test­ing and back again to new expe­ri­ences. A rich set of works about con­struc­tivism in edu­ca­tion can be found in [Steffe and Gale 1995].

Mean­while, the dis­cus­sion was brought to the com­puter sci­ence edu­ca­tion field, with the claim that real under­stand­ing demands active learn­ing on a lab envi­ron­ment with teacher’s guid­ance for ensur­ing reflec­tion on the expe­ri­ence obtained from prob­lem solv­ing exer­cises. In other words, pas­sive com­puter pro­gram­ming learn­ing will likely be con­demned to fail­ure [Ben-Ari 1998; Had­jer­rouit 2005; Wulf 2005].

Indeed, effec­tive learn­ing accord­ing to the con­struc­tivist per­spec­tive demands the men­tal con­struc­tion of viable mod­els. As argued by [Lui et al. 2004], learn­ing to pro­gram is a dif­fi­cult endeav­our because the learn­ing process is sus­cep­ti­ble to sev­eral haz­ards. Although all stu­dents face these haz­ards [Lui et al. 2004] observe that weak stu­dents get stum­bled and stalled more eas­ily when they encounter such haz­ards. From our expe­ri­ence of teach­ing com­puter pro­gram­ming courses, we think that the char­ac­ter­is­tics of weak stu­dents that mag­nify the impacts of those learn­ing haz­ards are, to some extent, shared by
the aver­age novice stu­dent of com­puter pro­gram­ming—the stu­dent pop­u­la­tion tar­get of this paper. Those char­ac­ter­is­tics include lack in train­ing in abstrac­tion processes, lack of a prior foun­da­tion for anchor­ing the con­struc­tion of new knowl­edge, and low lev­els of con­fi­dence in them­selves, in the teach­ers, and in the study mate­ri­als or prac­tices.

The main rea­son for the authors’ con­cern with con­struc­tivism is the con­vic­tion that teach­ing must always be focused on the peo­ple learn­ing process. Even in orga­ni­za­tions in gen­eral, there is already the belief that the inte­gra­tion of knowl­edge has achieved lim­ited suc­cess pri­mar­ily because it has focused on treat­ing knowl­edge as a resource instead of focus­ing on the peo­ple learn­ing process [Grace and But­ler 2005].

3. Why Weekly Assessment

An inter­est­ing study that crosses stu­dents’ indi­vid­ual cog­ni­tive level with the types of errors made [Ran­jeeth and Naidoo 2007] sug­gests the need to adopt inno­v­a­tive strate­gies in order to counter the seem­ingly per­pet­ual rate of fail­ure and at the same time increase the inten­sity for stu­dents with bet­ter cog­ni­tive level.

What­ever the rea­son, the ulti­mate truth is that a lot of things can go wrong when learn­ing com­puter pro­gram­ming, espe­cially in under­grad­u­ate courses.

So it is vir­tu­ally impos­si­ble to pre­vent them all, mainly because stu­dents tend to over­es­ti­mate their own under­stand­ing [Lahti­nen et al. 2005] and usu­ally they are not very open to fol­low teacher’s good advices, espe­cially if fol­low­ing those advices means more work.

This leads to the only win­ning strat­egy we have found so far: fail fast to learn sooner. If fre­quent assess­ment oppor­tu­ni­ties are given to the stu­dent, no mat­ter the rea­son why he is even­tu­ally per­form­ing badly, two impor­tant goals are imme­di­ately achieved:

Even for stu­dents who do not need to fail to cor­rect even­tual study errors, we observe that weekly assess­ment is an extra moti­va­tion for not post­pon­ing study and con­se­quently they will also attend next class bet­ter pre­pared [Becker and Devine 2007].

Other medium term issues related with tun­ing the dis­ci­pline from year to year are also addressed by weekly assess­ment. The order­ing of dif­fer­ent con­cepts by dif­fi­culty [Milne and Rowe 2002] can be inferred from final exam­i­na­tions or by directly ask­ing stu­dents and teach­ers, but if we have auto­mated weekly assess­ments this kind of data is read­ily avail­able. So it is eas­ier tun­ing the classes’ dis­tri­bu­tion along the year, ded­i­cat­ing more time and exer­cises to those issues we know stu­dents need more time to assim­i­late and even­tu­ally to con­cen­trate eas­ier sub­jects in less classes.

4. How Weekly Assessment

Weekly assess­ment involves sev­eral dimen­sions. First we need a method­ol­ogy and then imple­men­ta­tion resources. For the method­ol­ogy we have a set of sup­pos­edly good advices and tuto­r­ial sup­port dur­ing classes but in this con­text it is enough to focus on the method the stu­dents need to fol­low each week (those imple­men­ta­tion resources, advices and tuto­r­ial sup­port will be addressed in future research reports).

In the roadmap pre­sented by Lytras in his man­i­festo for knowl­edge and learn­ing [Lytras and Sicilia 2005], knowl­edge and learn­ing issues were arranged into five crit­i­cal pil­lars, namely objects, processes, strate­gies, sys­tems, and per­for­mance. One of these pil­lars—knowl­edge and learn­ing processes’–is here addressed with a sys­tem­atic method for guid­ing stu­dents. The other pil­lars are also present, but they are not a core issue in this paper.

4.1 Our Method

Our learn­ing method­ol­ogy includes a method of weekly work com­posed of the fol­low­ing steps:

Besides the already men­tioned advan­tages from each step of the method, the whole set addresses main con­struc­tivism claims since it pro­vides sys­tem­atic pro­gres­sive inter­ac­tions with the same con­cepts and tech­niques under teacher’s guid­ance and con­se­quently facil­i­tat­ing stu­dents’ reflec­tion and appre­hen­sion.

4.2 Self Assessment

Stu­dents have a weekly project com­posed of exer­cises sim­i­lar to the ones in the weekly assess­ment. Once their weekly study is done, and only then, they try to solve all the ques­tions in order to self assess their knowl­edge.

In case of dif­fi­cul­ties they should go back to the book or ask teacher for guid­ance.

The res­o­lu­tion of the project is sub­mit­ted to teach­ers for con­trol pur­poses.

4.3 The Weekly Assessment

The weekly assess­ment is not just a weekly assess­ment—it is a weekly assess­ment with weekly feed­back, i.e., the main goal is not just to put some pres­sure on the stu­dents. It would not be the same if the stu­dents did weekly assess­ment but only obtain the grades at the end of the term. An impor­tant fea­ture is that each stu­dent gets imme­di­ate feed­back and can still cor­rect in time his study method­ol­ogy.

Unfor­tu­nately, it is incred­i­bly sim­ple for a very well inten­tioned stu­dent to diverge from the suc­cess path with­out notice.

We are deal­ing with novice first year under­grad­u­ate stu­dents and it is never too much to stress that we are deal­ing with novice first year under­grad­u­ate stu­dents... This means an extra charge of dis­trac­tions aside from the inher­ent adap­ta­tion issues.

Com­pletely out of that path of suc­cess is the temp­ta­tion to stop study­ing after under­stand­ing a prob­lem’s solu­tion, but before know­ing how to do it him­self. Even if the stu­dent gets to the solu­tion of a kind of prob­lem he must con­sider the time that was nec­es­sary to do it—usu­ally, it is still a long way between the points I-can-solve-it and I-can-solve-it-fast-enough.

It is also not rare that stu­dents study a lot and know very lit­tle, just because they are not doing it well. For instance, a stu­dent can spend daily hours study­ing syn­tax issues, solv­ing prob­lems and the­o­ret­i­cal ques­tions with­out really solv­ing any prob­lem him­self. This trans­lates into a defi­cient level of knowl­edge with the aggra­vat­ing cir­cum­stance of induc­ing the stu­dent in a pseudo state of accom­plish­ment.

Nev­er­the­less, if by any chance an already rare stu­dent per­ceives or sus­pects of flaws in his study method­ol­ogy the nor­mal ten­dency will be to post­pone even­tual cor­rec­tive mea­sures even if he knew one and gen­er­ally that is not the case.

But even worse than that is the sit­u­a­tion of a stu­dent that has the chance to have an atten­tive teacher that diag­no­sis one of those described issues and gives the stu­dent guid­ance and con­crete cor­rec­tive mea­sures... nev­er­the­less the stan­dard stu­dent will not trust the teacher’s diag­no­sis.

All these issues can be solved in time if one gives the stu­dent the oppor­tu­nity to fail fast if some­thing is going wrong. This oppor­tu­nity is called weekly assess­ment and in our view it con­sti­tutes the dif­fer­en­tial fac­tor that allows the stu­dent:

Weekly assess­ment will give the stu­dent the oppor­tu­nity to cor­rect what­ever may be wrong with­out hav­ing to wait till next (year or semes­ter) edi­tion of the course.

4.4 Implementation Resources

Some authors ([Costello 2007; Duke et al. 2000]) agree on the mer­its of fre­quent assess­ment but have a small enough num­ber of stu­dents or a big enough num­ber of teacher x hours.

We do not have such resources and have almost 200 stu­dents and only a lab ses­sions teacher. Nev­er­the­less, a third fac­tor in the equa­tion may be auto­mated test­ing of the prob­lems solved by stu­dents.

As dis­cussed fur­ther in this doc­u­ment, the use of an expanded learn­ing man­age­ment sys­tem (LMS) helped solv­ing the lack of resources issue, but also turned out to be a cen­tral point of infor­ma­tion that the stu­dents appre­ci­ate. As con­cluded in [Grace and But­ler 2005], LMS ben­e­fits are wide and include:

5. Our outcomes with weekly assessment

Since we intro­duced weekly assess­ment the num­ber of retained stu­dents was dra­mat­i­cally reduced.

How­ever, this is not pos­si­ble with­out some extra resources. In the case we choose to invest in auto­mated assess­ment.

5.1 Addressed Reasons for Failure

Weekly assess­ment proved to be a pow­er­ful tool in address­ing com­puter pro­gram­ming learn­ing dif­fi­cul­ties. Even when not directly involved, some­times facil­i­tates deal­ing with those issues.

Fol­low­ing the above iden­ti­fied five cat­e­gories of rea­sons for com­puter pro­gram­ming learn­ing fail­ure, weekly assess­ment virtues are here ana­lyzed:

5.2 Success Evolution

A first and strong indi­ca­tor of the weekly assess­ment suc­cess is the evo­lu­tion of the per­cent­age of stu­dents that stay till the end, i.e., that do not drop at the mid­dle of the semes­ter.

Table 1 shows this evo­lu­tion for the last eight years. The read­ing of this table is not com­pletely lin­ear because some other fac­tors changed mean­while, such as instruc­tors, pro­gram­ming lan­guage, and the redesign of the study plans due to the Bologna process. How­ever, the evo­lu­tion is quite clear and shows that the efforts in increas­ing the assess­ment fre­quency resulted in greater per­cent­age of stu­dents that stick till the end of semes­ter.

Table 1: Stu­dents that Stick Till the End of Semes­ter Per­cent­age Evo­lu­tion

Table 1

In 2004/2005 a small project was quar­terly assessed; i.e., there were two assess­ment points per semes­ter.

Dur­ing 2005/2006 small prob­lems res­o­lu­tion in com­put­ers’ lab were added to the assess­ment on a monthly basis.

In 2006/2007 a weekly auto­mated the­o­ret­i­cal-prac­ti­cal (TP) assess­ment was imple­mented and com­ple­mented with a quar­terly lab­o­ra­to­r­ial (L) assess­ment.

Dur­ing 2007/2008 the fre­quency of lab­o­ra­to­r­ial assess­ment was increased to monthly.

Finally, 2008/2009 was the year when the whole assess­ment was auto­mated and weekly per­formed.

The ratio of approval is also grow­ing—4% in 2005/2006, 2% the year after, 1% in 2007/2008 and finally a huge 13% jump on 2008/2009 with the weekly fully auto­mated assess­ment—a 20% total improve­ment in five years! Since then, the ratio has sta­bi­lized in the range 75–80%. It should be men­tioned that this evo­lu­tion was achieved nei­ther by shrink­ing the syl­labus nor by decreas­ing the level of rigor imposed to the course over the years.

Another impor­tant indi­ca­tor is the num­ber of stu­dents being able to suc­ceed the dis­ci­pline on first attempt or bet­ter said the num­ber of attempts a stu­dent needs in order to suc­ceed.

For Table 2 con­struc­tion we con­sid­ered the divi­sion suc­cess-before and suc­cess-after weekly assess­ment imple­men­ta­tion.

Table 2: Per­cent­age of Approvals in First, Sec­ond and Third Attempts
(each attempt takes place in a dif­fer­ent aca­d­e­mic year)

Table 2

Achiev­ing suc­cess in first attempt is very impor­tant for sev­eral rea­sons. There is an asso­ci­ated cost for the stu­dent which is both mon­e­tary and func­tional. For teach­ers and uni­ver­sity sec­ond attempts rep­re­sent an increased com­plex­ity in resources and man­age­ment.

Con­se­quently, a 21% incre­ment in first attempt suc­cess is a very pos­i­tive result.

5.3 Students’ Opinion

Weekly test­ing is a key fac­tor for suc­cess in our method­ol­ogy and it has proven results. Nev­er­the­less, results can still be rein­forced with the stu­dents’ per­cep­tions–after all they are a highly involved and inter­ested part in this process.

Our Farewell ques­tion­naire asks for the stu­dents’ opin­ion and they agree with us. When asked about, in the whole dis­ci­pline, what they con­sider to be the most pos­i­tive fac­tor, almost 25% of the stu­dents indi­cate weekly test­ing.

When directly asked about weekly test­ing, stu­dents are almost unan­i­mous in their answers as illus­trated in Table 3.

Table 3: Farewell Ques­tion—Impor­tance of Weekly Test­ing

Table 3

The grow­ing strength of favor­able opin­ions about weekly test­ing is prob­a­bly influ­enced by the yearly improve­ment in the auto­mated test­ing plat­form. In fact, our pro­gram­ming exten­sion began to be just a sub­mit-once-with­out-feed­back scheme which pro­voked many wrong answers due to very small errors, such as syn­tac­ti­cal ones. I 2008/009 we achieved a ver­sion that allows mul­ti­ple solu­tion sub­mis­sions of the same prob­lem dur­ing the avail­able time. Although the sys­tem does not tell the stu­dent where the errors are located, it informs the stu­dent that the pro­posed solu­tion is not cor­rect, pro­vid­ing him with the oppor­tu­nity to search for and cor­rect mis­takes in the pro­gram­ming code, before grad­ing the answer.

We find auto­mated tests not to be the ideal solu­tion but a needed one. Nev­er­the­less, stu­dents appear to like or at least not to dis­like this solu­tion. To eval­u­ate the pos­si­bil­ity of doing man­ual assess­ment by enlarg­ing the inter­val between assess­ments, i.e., doing fewer assess­ments, we were sur­prised by the fact that just a minor­ity of stu­dents was against auto­mated test­ing even in the case of being pos­si­ble to per­form weekly man­ual assess­ments. Obvi­ously, as sug­gested by Table 4, that presents aver­age results from 2008/2009 to 2011/2012, for a total of 480 responses, more stu­dents pre­fer auto­mated tests if the alter­na­tive is to decrease the num­ber of assess­ments, but even with a large num­ber of man­ual assess­ments they still pre­fer auto­mated assess­ment.

Table 4: Farewell Ques­tion—Weekly Auto­mated vs. Man­ual Assess­ment

Table 4

That is 64% of the stu­dents pre­fer a weekly auto­mated assess­ment than a man­ual one with a two weeks inter­val; only 15% pre­fer this man­ual assess­ment. When asked about a quar­terly man­ual assess­ment the per­cent­age of stu­dents pre­fer­ring auto­mated assess­ment grows to 70% and the per­cent­age against decreases to 12%.

These some­how unex­pected results led us to the intro­duc­tion of a new ques­tion in 2008/2009, to explic­itly ask stu­dents for their pre­fer­able way of assess­ment regard­less of any other con­sid­er­a­tions.

Using a Lik­ert scale with five posi­tions, from one (I totally dis­like) to five (It is my favourite assess­ment type) the stu­dents’ feed­back is resumed in Table 5 (data reports to last four years, for a total of 480 responses).

Table 5: Farewell Ques­tion—Favourite Assess­ment Type

Table 5

This con­firmed stu­dents’ pref­er­ence for auto­mated tests assess­ment type. Although we do not have pro­found answers for these pref­er­ence (for instance, one could argue that a man­ual assess­ment of their answers should be more accu­rate and fair than an auto­mated assess­ment) the infor­mal feed­back we have from stu­dents indi­cates that the instan­ta­neous grade which auto­mated tests give is prob­a­bly the main rea­son for these pref­er­ence when com­pared with a man­u­ally assessed writ­ten exam­i­na­tion.

6. Final Remarks and Future Work

We find weekly assess­ment one of the most effec­tive ways of lead­ing stu­dents by the suc­cess path in the realm of intro­duc­tory com­puter pro­gram­ming dis­ci­plines.

With a sub­stan­tial num­ber of stu­dents and a reduced num­ber of teach­ers the only way to get it done demands auto­mated assess­ment help.

Sur­pris­ingly, what we ini­tially thought to be the lesser of two evils turned out to be per­ceived by stu­dents as an addi­tional ben­e­fit (cf. Table 4 dis­cus­sion).

The fre­quency of assess­ment that we advo­cate in intro­duc­tory com­put­ing dis­ci­plines is the nodal fac­tor of our approach to com­puter pro­gram­ming learn­ing. Some of the ben­e­fits we found with the appli­ca­tion of this teach­ing method­ol­ogy where addressed in this paper and may be syn­the­sized as fol­low­ing. First, it cre­ates a method­i­cal study rhythm among stu­dents which puts in cen­tre stage the need for prac­tice in know-how-to-do-it dis­ci­plines such as com­puter pro­gram­ming. Sec­ond, it allows the stu­dents to explic­itly acknowl­edge that they are not able to solve a pro­gram­ming prob­lem fast enough and by them­selves. Third, it cre­ates the oppor­tu­nity for the stu­dents, assisted by the teacher, to crit­i­cally analyse their study method­ol­ogy and to adjust it in a time­frame that max­i­mizes the prob­a­bil­ity of recov­ery. Fourth, it assists in the build­ing of stu­dents’ com­puter pro­gram­ming knowl­edge from their own expe­ri­ence, con­sol­i­dat­ing knowl­edge when the assess­ment is pos­i­tive and launch­ing the stu­dent in a knowl­edge recon­struc­tion process when the assess­ment is neg­a­tive.

All the exper­i­ments reported in this doc­u­ment have been sup­ported by the multi-par­a­digm pro­gram­ming lan­guage that brings addi­tional pos­i­tive syn­er­gies to the whole process, not dis­cussed in this paper. Next steps include instan­ti­at­ing the appli­ca­tion of the method to more clas­sic par­a­digms using C, Java and other imper­a­tive lan­guages.

Acknowledgements

We would like to express our grat­i­tude to Miss Sónia Valente, sec­re­tary of the Infor­ma­tion Sys­tems and Tech­nol­ogy Sys­tems under­grad­u­ate pro­gram board for her kind sup­port in obtain­ing some extra data about pro­gram past edi­tions.

This work is financed with FEDER funds by the Pro­grama Opera­cional Fatores de Com­pet­i­tivi­dade—COM­PETE and by Fun­dos Nacionais via FCT—Fun­dação para a Ciên­cia e Tec­nolo­gia for the project: FCOMP-01-0124-FEDER-022674.

References