Identifying Novice Difficulties in Object Oriented Design Benjy Thomasson Mark Ratcliffe Lynda Thomas Aberystwyth University, Wales, UK.

Slides:



Advertisements
Similar presentations
Chapter 7 System Models.
Advertisements

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 The Struggle for Network Control: How Can Distributed and Centralized Controls Effectively Collaborate?
Macroeconomic Impulses of Financial Crisis in Armenia King Banaian St. Cloud State University 9.VII.09 1K Banaian, St. Cloud State University.
Open Archive Forum ECDL2001, (c) Susanne Dobratz, Humboldt-University1 European Support for Open Archives Susanne Dobratz Humboldt-University.
Reasoning Breakout Session 7/20/01 Richard Fikes Mike Dean DAML PI Meeting Nashua, New Hampshire July 18-20, 2001.
2/12/01 Professor Richard Fikes Representing Time Computer Science Department Stanford University CS222 Winter 2001 Knowledge Systems Laboratory, Stanford.
1/31/01 Professor Richard Fikes Frame Representation of Electronic Circuit Example Computer Science Department Stanford University CS222 Winter 2001 Knowledge.
2/13/2014Bucknell University1 Health Care Issues BOF Cindy Bilger,
T. S. Eugene Ng Mellon University1 Towards Global Network Positioning T. S. Eugene Ng and Hui Zhang Department of Computer.
Opole University1 Jerzy Jendrośka Implementing the CCS Directive in Poland: key findings from the transposition process Implementing the EU CO2 Storage.
Chapter 12 Analysing quantitative data
Meta-Modelling in Graphically Extended BNF: Theoretical Foundations and Applications Hong Zhu Department of Computing and Electronics Oxford Brookes University.
Inverse You will learn: That addition is the inverse of subtraction.
Paper in progress The role of management accounting in supporting business transformation Ian Herbert 12 September 2002.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Internet architecture Slides used with permissions.
© 2012 Boise State University1 Click for Next Slide! Information Security on the Front Lines Created By OIT Information Security Services
Week 2 The Object-Oriented Approach to Requirements
© 2012 Boise State University1 Information Security for Your Office Created By OIT Information Security Services
© 2012 Boise State University1 Click for Next Slide! Information Security for Faculty and Researchers Created By OIT Information Security Services
Configuration management
Automatic Tuning of Scientific Applications Apan Qasem Ken Kennedy Rice University Houston, TX Apan Qasem Ken Kennedy Rice University Houston, TX.
Herodotos Herodotou Shivnath Babu Duke University.
Now…Public Access Redistricting Open Data Open Access Open Source Prepared for 2011 CGA Conference at Harvard University2.
Evacuation Clinic This presentation is excerpted from ROBINAIR'S library of air conditioning educational material. DESIGN AIR UNIVERSITY.
Presentation II #2 Graphic (Re)presentations.
Ningning HuCarnegie Mellon University1 Locating Internet Bottlenecks Ningning Hu (CMU) Li Erran Li (Bell Lab) Zhuoqing Morley Mao (U. Mich) Peter Steenkiste.
Ningning HuCarnegie Mellon University1 Towards Tunable Measurement Techniques for Available Bandwidth Ningning Hu, Peter Steenkiste Carnegie Mellon University.
Best PracticesUSCA Fall 2010: Baylor University3.
Report Writing & Referencing A lecture for Year 1 B.Ed students By Karen Dellar Study & Learning Centre RMIT University.
8th Sakai Conference4-7 December 2007 Newport Beach Podcasting Initiatives at Indiana University.
Teaching Computer Forensics at a Distance HE Academy Workshop on the Teaching of Computer Forensics University of Glamorgan, 27 November 2008 Blaine Price.
9th October 2003James Loken – Oxford University1 SCT X-ray Alignment Software A First Look.
Design and Perceptual Validation of Performance Measures for Salient Object Segmentation Vida Movahedi, James H. Elder Centre for Vision Research York.
Rob Walker, May 2008Student Learning Unit Victoria University1 Essay Writing A workshop for ASW 3102: Critical Social Work Theories.
RMIT University1 Southern United H.C. Coaching Workshop Nov 2007 Welcome Stop, Reflect and Grow.
Lecture 8: Testing, Verification and Validation
Johnny can’t Program (and neither can Johann) Lynda A. Thomas Department of Computer Science, University of Wales, Aberystwyth, Wales, UK.
An Introduction to eXtreme Programming Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
Tianjin Foreign Studies University1 Harmony or Antagonism, which is the Mainstream in the Library? A Comprehensive Study on E-Book and Print Book.
Spatial Views: Space-aware Programming for Networks of Embedded Systems Yang Ni, Ulrich Kremer, and Liviu Iftode Rutgers University This work has been.
BALANCED CACHE Ayşe BAKIR, Zeynep ZENGİN. Ayse Bakır,CMPE 511,Bogazici University2 Outline  Introduction  Motivation  The B-Cache Organization  Experimental.
Benoit Pigneur and Kartik Ariyur School of Mechanical Engineering Purdue University June 2013 Inexpensive Sensing For Full State Estimation of Spacecraft.
Intra-HE transition workshop A focus on expectations, disclosure, retention and progression 11/04/2015Transition at University1.
Direct Data Access, Data Binding. Content Direct Data Access Data Binding Muzaffer DOĞAN - Anadolu University2.
Software Failure: Reasons Incorrect, missing, impossible requirements * Requirement validation. Incorrect specification * Specification verification. Faulty.
1 Info 1409 Systems Analysis & Design Module Lecture 8 – Modelling tools and techniques HND Year /9 De Montfort University.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Basic Concept of Data Coding Codes, Variables, and File Structures.
 By the end of this, you should be able to state the difference between DATE and INFORMAITON.
Understand Application Lifecycle Management
DOMAIN MODE: ASSOCIATIONS, MULTIPLICITY AND ATTRIBUTE-TEXT NOTATION SYS466.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
Data and information. Information and data By the end of this, you should be able to state the difference between DATE and INFORMAITON.
Domain Model—Part 3: Associations, Multiplicity and Attribute- Text Notation.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Fault Tolerance Benchmarking. 2 Owerview What is Benchmarking? What is Dependability? What is Dependability Benchmarking? What is the relation between.
CPSC 873 John D. McGregor Session 9 Testing Vocabulary.
Software Engineering and Object-Oriented Design Topics: Solutions Modules Key Programming Issues Development Methods Object-Oriented Principles.
Number your paper from 1 through 25.. Multiplication Facts Ready Set Begin.
Multiplication Facts X 3 = 2. 8 x 4 = 3. 7 x 2 =
CPSC 871 John D. McGregor Module 8 Session 1 Testing.
Slide 12.1 Saunders, Lewis and Thornhill, Research Methods for Business Students, 5 th Edition, © Mark Saunders, Philip Lewis and Adrian Thornhill 2009.
CPSC 372 John D. McGregor Module 8 Session 1 Testing.
Identifying Novice Difficulties in Object Oriented Design Benjy Thomasson Mark Ratcliffe Lynda Thomas Aberystwyth University, Wales, UK.
COMPSCI 747 Historical Overview
John D. McGregor Session 9 Testing Vocabulary
Coupling and Cohesion 1.
John D. McGregor Session 9 Testing Vocabulary
John D. McGregor Session 9 Testing Vocabulary
Design and Programming
Presentation transcript:

Identifying Novice Difficulties in Object Oriented Design Benjy Thomasson Mark Ratcliffe Lynda Thomas Aberystwyth University, Wales, UK

Thomasson, Ratcliffe, Thomas Aberystwyth University2 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 University3 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 University4 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 University5 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 University6 Basic Possible Model Answer Classes: Paper Address Order Round Customer PaperCarrier Person Customer -String name -Address address -Order order -Round round

Thomasson, Ratcliffe, Thomas Aberystwyth University7 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 University8 Results (numeric) ExperienceNumber of classes identified Complete novice n= Some Experience n=

Thomasson, Ratcliffe, Thomas Aberystwyth University9 Results (faults) Non referenced class faults –Classes that were not used anywhere

Thomasson, Ratcliffe, Thomas Aberystwyth University10 Results (faults) References to non-existent classes –Classes used but not defined –These were ‘sanity checked’ for spellings, renamings etc.

Thomasson, Ratcliffe, Thomas Aberystwyth University11 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 University12 Results (faults) Multiple Attribute Misrepresentations –Two or more attributes should be bundled - name : String - houseNum : int - street : String - town : String - postCode : String - newspaper : Order Customer Customer from Design 16

Thomasson, Ratcliffe, Thomas Aberystwyth University13 Results (faults) Multiple Object Misrepresentations –Invalid ideas about collections

Thomasson, Ratcliffe, Thomas Aberystwyth University14 Results (fault statistics) Total classes647 Total designs180 Total Non-Referenced Class faults388 Designs exhibiting this fault97% Total References to Non-Existent Classes65 Designs exhibiting this fault28% Total Single Attribute Misrepresentation faults208 Designs exhibiting this fault73% Total Multiple Attribute Misrepresentation faults18 Designs exhibiting this fault9% Total Multiple Object Misrepresentation faults2

Thomasson, Ratcliffe, Thomas Aberystwyth University15 In fact, many faults per design

Thomasson, Ratcliffe, Thomas Aberystwyth University16

Thomasson, Ratcliffe, Thomas Aberystwyth University17 In Later Versions of the Study ……

Thomasson, Ratcliffe, Thomas Aberystwyth University18 Results were Verified Phase:123 Total classes Total designs Total Non-Referenced Class faults Designs exhibiting this fault97%86%83% Total References to Non-Existent Classes Designs exhibiting this fault28%36%30% Total Single Attribute Misrepresentation faults Designs exhibiting this fault73%41%36% Total Multiple Attribute Misrepres. faults1812 Designs exhibiting this fault9%19%17% Total Multiple Object Misrepresentation faults200

Thomasson, Ratcliffe, Thomas Aberystwyth University19 Groups Worked Better

Thomasson, Ratcliffe, Thomas Aberystwyth University20 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 University21 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 University22

Thomasson, Ratcliffe, Thomas Aberystwyth University23

Thomasson, Ratcliffe, Thomas Aberystwyth University24