240 likes | 318 Views
Identifying Novice Difficulties in Object Oriented Design. Benjy Thomasson Mark Ratcliffe Lynda Thomas Aberystwyth University, Wales, UK. How are our students doing?. McCracken – complete software development task Lister – tracing code How about design?
E N D
Identifying Novice Difficulties in Object Oriented Design Benjy Thomasson Mark Ratcliffe Lynda Thomas Aberystwyth University, Wales, UK
How are our students doing? • McCracken – complete software development task • Lister – tracing code • How about design? • Garner et al. second most frequent problem was ‘stuck on program design’ • Eckerdal et al. only 9% of graduating seniors produced a ‘reasonable’ design Thomasson, Ratcliffe, Thomas Aberystwyth University
Previous Work • Spohrer and Soloway – putting the pieces together is the hardest • Or-Bach and Lavy – third year students miss necessary classes, place irrelevant attributes within classes • Holland et al. misconceptions lead to errors, for example: • object/variable conflation • object/class conflation • identity/attribute conflation Thomasson, Ratcliffe, Thomas Aberystwyth University
This experiment • Collected beginning students’ designs as simple UML class diagrams • Initially analysed paper designs • Later used designs that were input to Vortex Teaching IDE (more later) • Here we will concentrate on the designs used to perform the categorisation Thomasson, Ratcliffe, Thomas Aberystwyth University
The Problem Model classes for a paperround system identifying the classes required, their attributes (and their methods). An individual paperround consists of a paperboy/papergirl delivering orders to various customers. round = route Thomasson, Ratcliffe, Thomas Aberystwyth University
Basic Possible Model Answer Customer -String name -Address address -Order order -Round round Classes: • Paper • Address • Order • Round • Customer • PaperCarrier Person Thomasson, Ratcliffe, Thomas Aberystwyth University
What kind of students? • 180 students (115 novices, 65 some with experience) working alone • Later studies included some group work and different problems Thomasson, Ratcliffe, Thomas Aberystwyth University
Results (numeric) Thomasson, Ratcliffe, Thomas Aberystwyth University
Results (faults) • Non referenced class faults • Classes that were not used anywhere Thomasson, Ratcliffe, Thomas Aberystwyth University
Results (faults) • References to non-existent classes • Classes used but not defined • These were ‘sanity checked’ for spellings, renamings etc. Thomasson, Ratcliffe, Thomas Aberystwyth University
Results (faults) • Single Attribute Misrepresentations • Class includes single attribute that would be better elsewhere, or • Resorting to String for an attribute Order -paper: String -price: int -date: String -address: String Thomasson, Ratcliffe, Thomas Aberystwyth University
Customer from Design 16 Customer - name : String - houseNum : int - street : String - town : String - postCode : String - newspaper : Order Results (faults) • Multiple Attribute Misrepresentations • Two or more attributes should be bundled Thomasson, Ratcliffe, Thomas Aberystwyth University
Results (faults) • Multiple Object Misrepresentations • Invalid ideas about collections Thomasson, Ratcliffe, Thomas Aberystwyth University
Results (fault statistics) Thomasson, Ratcliffe, Thomas Aberystwyth University
In fact, many faults per design Thomasson, Ratcliffe, Thomas Aberystwyth University
Thomasson, Ratcliffe, Thomas Aberystwyth University
In Later Versions of the Study …… Thomasson, Ratcliffe, Thomas Aberystwyth University
Results were Verified Thomasson, Ratcliffe, Thomas Aberystwyth University
Groups Worked Better Thomasson, Ratcliffe, Thomas Aberystwyth University
Conclusions • Biggest problem is non-referenced classes • Students know they need a class but can’t figure out how to integrate it into design • Next biggest problem – Misrepresentations • Failure to achieve high cohesion • Not exhibited: • Problems identified by Holland: object/variable conflation, object/class conflation, identity/attribute conflation • Collection problems Thomasson, Ratcliffe, Thomas Aberystwyth University
Next Piece of Work • Interactive Case-Based tutoring tool to catch these faults and warn students about them • Next Page Vortex Thomasson, Ratcliffe, Thomas Aberystwyth University
Thomasson, Ratcliffe, Thomas Aberystwyth University
Thomasson, Ratcliffe, Thomas Aberystwyth University
Thomasson, Ratcliffe, Thomas Aberystwyth University