SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
Back to programming teaching tools…
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Surveyed Before
e.g. a survey from 2005 by Kirst Ala-Mutka
describes what features of programming
assignments are automatcally assessed.
Dynamic analysis is ofen used to assess
functonality, efciency, and testng skills.
Statc checks are used to provide feedback
from style, programming errors, sofware
metrics, and even design. In additon, there
are special features like plagiarism detecton.
Petri Ihantola, Koli Calling 2010
Our Method
Systematc literature review:
We collected the data by searching for phrases
('automatc' OR 'automated) AND ('assessment' OR
'grading’) AND 'programming' from the conference
proceedings and journals through ACM Digital Library
and IEEE Xplore published in between 2006 and 2010.
We then applied the inclusion criteria to the abstracts
(a paper must have presented an system providing
summatve, numerical, automatc feedback from
programming assignments or described results from
using such system.) and fnally read through the
remaining papers to do qualitatve data analysis.
Petri Ihantola, Koli Calling 2010
Our Method
Systematc literature review:
We collected the data by searching for phrases
('automatc' OR 'automated) AND ('assessment' OR
'grading’) AND 'programming' from the conference
proceedings and journals through ACM Digital Library
and IEEE Xplore published in between 2006 and 2010.
We then applied the inclusion criteria to the abstracts
(a paper must have presented an system providing
summatve, numerical, automatc feedback from
programming assignments or described results from
using such system.) and fnally read through the
remaining papers to do qualitatve data analysis.
Petri Ihantola, Koli Calling 2010
Our Method
Systematc literature review:
We collected the data by searching for phrases
('automatc' OR 'automated) AND ('assessment' OR
'grading’) AND 'programming' from the conference
proceedings and journals through ACM Digital Library
and IEEE Xplore published in between 2006 and 2010.
We then applied the inclusion criteria to the abstracts
(a paper must have presented an system providing
summatve, numerical, automatc feedback from
programming assignments or described results from
using such system.) and fnally read through the
remaining papers to do qualitatve data analysis.
Petri Ihantola, Koli Calling 2010
Our Method
Systematc literature review:
We collected the data by searching for phrases
('automatc' OR 'automated) AND ('assessment' OR
'grading’) AND 'programming' from the conference
proceedings and journals through ACM Digital Library
and IEEE Xplore published in between 2006 and 2010.
We then applied the inclusion criteria to the abstracts
(a paper must have presented an system providing
summatve, numerical, automatc feedback from
programming assignments or described results from
using such system.) and fnally read through the
remaining papers to do qualitatve data analysis.
Petri Ihantola, Koli Calling 2010
Languages
Petri Ihantola, Koli Calling 2010
LanguagesJava, Python, Pascal, C/C++,
assembler, shell scripts,
don’t care, ….
Petri Ihantola, Koli Calling 2010
Summary
• Programming languages
• Integraton into LMSs (e.g. Moodle)
• Diferent ways to defne tests
– Xunit, acceptance testng, web testng frameworks
– Something not widely applied in industry
• Manual assessment
• Resubmissions
– Limitng tme, feedback
– Customizaton
– Interestng hybrid
• Sandboxing
• Availability
• Specialtes
– GUIs, data bases, concurrency, web programming, students’ own testng skills
Petri Ihantola, Koli Calling 2010
Thanks to the authors of the images I used:
• htp://www.fickr.com/photos/smanography/3073414449
• htp://www.fickr.com/photos/stephenpof/2920198159/
• htp://www.fickr.com/photos/kaptainkobold/3203311346/
• htp://www.fickr.com/photos/superk8/3868056064/
• htp://www.fickr.com/photos/naomi_pincher/2691787431/
• htp://www.fickr.com/photos/secondtoughest/347049865/
• htp://www.fickr.com/photos/terrio/4920670944/
• htp://www.fickr.com/photos/pranavsingh/1946245078
• htp://www.fickr.com/photos/arteurbana/496777749/
• htp://www.fickr.com/photos/litle_lushie/28955776/
• htp://www.fickr.com/photos/12392252@N03/2037540230/
• htp://www.fickr.com/photos/markjsebastan/324425852
• htp://www.fickr.com/photos/benheine/5044969981/
• htp://www.fickr.com/photos/piblet/1053194618/
• htp://www.fickr.com/photos/ogil/1507585665/
• htp://www.fickr.com/photos/brandoncripps/2308741771/
• htp://www.fickr.com/photos/clydeorama/2442172268/
• htp://www.fickr.com/photos/imutoo/2631466945/
• htp://www.fickr.com/photos/beatkueng/1350250361/
• htp://www.fickr.com/photos/pagedooley/3227848591/
• htp://www.fickr.com/photos/levork/4509401065/
All these images are licensed under the creatve commons.
Petri Ihantola, Koli Calling 2010

Más contenido relacionado

Destacado

Why Software Process Improvement Is Not Enough
Why Software Process Improvement Is Not EnoughWhy Software Process Improvement Is Not Enough
Why Software Process Improvement Is Not EnoughAlly Gill
 
30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software EngineerSean Coates
 
Career building and skills development
Career building and skills developmentCareer building and skills development
Career building and skills developmentguestaf76a10
 
web design & web development
web design & web developmentweb design & web development
web design & web developmentHossam Mohamed
 
Exploring how technology caters to your students multiple intelligences
Exploring how technology caters to your students multiple intelligencesExploring how technology caters to your students multiple intelligences
Exploring how technology caters to your students multiple intelligencesKelly Walsh
 
Employee Recruitment System srs
Employee Recruitment System srsEmployee Recruitment System srs
Employee Recruitment System srskrupal shah
 
Employee Management System
Employee Management SystemEmployee Management System
Employee Management Systemvivek shah
 
Basics of c++ Programming Language
Basics of c++ Programming LanguageBasics of c++ Programming Language
Basics of c++ Programming LanguageAhmad Idrees
 

Destacado (11)

Why Software Process Improvement Is Not Enough
Why Software Process Improvement Is Not EnoughWhy Software Process Improvement Is Not Enough
Why Software Process Improvement Is Not Enough
 
30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer
 
Career building and skills development
Career building and skills developmentCareer building and skills development
Career building and skills development
 
web design & web development
web design & web developmentweb design & web development
web design & web development
 
Exploring how technology caters to your students multiple intelligences
Exploring how technology caters to your students multiple intelligencesExploring how technology caters to your students multiple intelligences
Exploring how technology caters to your students multiple intelligences
 
Career Options in Software Industry
Career Options in Software IndustryCareer Options in Software Industry
Career Options in Software Industry
 
Programing Fundamental
Programing FundamentalPrograming Fundamental
Programing Fundamental
 
Career Pathing
Career PathingCareer Pathing
Career Pathing
 
Employee Recruitment System srs
Employee Recruitment System srsEmployee Recruitment System srs
Employee Recruitment System srs
 
Employee Management System
Employee Management SystemEmployee Management System
Employee Management System
 
Basics of c++ Programming Language
Basics of c++ Programming LanguageBasics of c++ Programming Language
Basics of c++ Programming Language
 

Similar a Automatic Assessment of Programming Assignments

SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...Tao Xie
 
Resilience Engineering: A field of study, a community, and some perspective s...
Resilience Engineering: A field of study, a community, and some perspective s...Resilience Engineering: A field of study, a community, and some perspective s...
Resilience Engineering: A field of study, a community, and some perspective s...John Allspaw
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software EngineeringMiroslaw Staron
 
Testing the Intelligence of your AI
Testing the Intelligence of your AITesting the Intelligence of your AI
Testing the Intelligence of your AIIosif Itkin
 
Guidelines to Measuring Test Automation ROI
 Guidelines to Measuring Test Automation ROI Guidelines to Measuring Test Automation ROI
Guidelines to Measuring Test Automation ROIPerfecto by Perforce
 
Data and Business Team Collaboration
Data and Business Team CollaborationData and Business Team Collaboration
Data and Business Team CollaborationApple
 
Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...Tao Xie
 
Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019
Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019
Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019VMware Tanzu
 
Qualitative Content Analysis
Qualitative Content AnalysisQualitative Content Analysis
Qualitative Content AnalysisRicky Bilakhia
 
Automated Testing DITA Content and Customizations
Automated Testing DITA Content and CustomizationsAutomated Testing DITA Content and Customizations
Automated Testing DITA Content and CustomizationsSteve Anderson
 
Machine programming
Machine programmingMachine programming
Machine programmingDESMOND YUEN
 
Three Interviews About Static Code Analyzers
Three Interviews About Static Code AnalyzersThree Interviews About Static Code Analyzers
Three Interviews About Static Code AnalyzersAndrey Karpov
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTrivadis
 

Similar a Automatic Assessment of Programming Assignments (20)

SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
 
Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)
 
Se research update
Se research updateSe research update
Se research update
 
Resilience Engineering: A field of study, a community, and some perspective s...
Resilience Engineering: A field of study, a community, and some perspective s...Resilience Engineering: A field of study, a community, and some perspective s...
Resilience Engineering: A field of study, a community, and some perspective s...
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software Engineering
 
Testing the Intelligence of your AI
Testing the Intelligence of your AITesting the Intelligence of your AI
Testing the Intelligence of your AI
 
Guidelines to Measuring Test Automation ROI
 Guidelines to Measuring Test Automation ROI Guidelines to Measuring Test Automation ROI
Guidelines to Measuring Test Automation ROI
 
Data and Business Team Collaboration
Data and Business Team CollaborationData and Business Team Collaboration
Data and Business Team Collaboration
 
Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...
 
Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019
Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019
Agile Data Science on Greenplum Using Airflow - Greenplum Summit 2019
 
Omar Lahlou
Omar LahlouOmar Lahlou
Omar Lahlou
 
Qualitative Content Analysis
Qualitative Content AnalysisQualitative Content Analysis
Qualitative Content Analysis
 
Omar Lahlou
Omar LahlouOmar Lahlou
Omar Lahlou
 
Form and structure of test case MATTERS!
Form and structure of test case MATTERS!Form and structure of test case MATTERS!
Form and structure of test case MATTERS!
 
Automated Testing DITA Content and Customizations
Automated Testing DITA Content and CustomizationsAutomated Testing DITA Content and Customizations
Automated Testing DITA Content and Customizations
 
Machine programming
Machine programmingMachine programming
Machine programming
 
Portfolio_web-opt_Oct2015_pabloq
Portfolio_web-opt_Oct2015_pabloqPortfolio_web-opt_Oct2015_pabloq
Portfolio_web-opt_Oct2015_pabloq
 
Prakash resume
Prakash resumePrakash resume
Prakash resume
 
Three Interviews About Static Code Analyzers
Three Interviews About Static Code AnalyzersThree Interviews About Static Code Analyzers
Three Interviews About Static Code Analyzers
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
 

Último

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Último (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Automatic Assessment of Programming Assignments

  • 1. Back to programming teaching tools… Petri Ihantola, Koli Calling 2010
  • 2.
  • 3. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 4. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 5. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 6. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 7. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 8. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 9. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 10. Surveyed Before e.g. a survey from 2005 by Kirst Ala-Mutka describes what features of programming assignments are automatcally assessed. Dynamic analysis is ofen used to assess functonality, efciency, and testng skills. Statc checks are used to provide feedback from style, programming errors, sofware metrics, and even design. In additon, there are special features like plagiarism detecton. Petri Ihantola, Koli Calling 2010
  • 11. Our Method Systematc literature review: We collected the data by searching for phrases ('automatc' OR 'automated) AND ('assessment' OR 'grading’) AND 'programming' from the conference proceedings and journals through ACM Digital Library and IEEE Xplore published in between 2006 and 2010. We then applied the inclusion criteria to the abstracts (a paper must have presented an system providing summatve, numerical, automatc feedback from programming assignments or described results from using such system.) and fnally read through the remaining papers to do qualitatve data analysis. Petri Ihantola, Koli Calling 2010
  • 12. Our Method Systematc literature review: We collected the data by searching for phrases ('automatc' OR 'automated) AND ('assessment' OR 'grading’) AND 'programming' from the conference proceedings and journals through ACM Digital Library and IEEE Xplore published in between 2006 and 2010. We then applied the inclusion criteria to the abstracts (a paper must have presented an system providing summatve, numerical, automatc feedback from programming assignments or described results from using such system.) and fnally read through the remaining papers to do qualitatve data analysis. Petri Ihantola, Koli Calling 2010
  • 13. Our Method Systematc literature review: We collected the data by searching for phrases ('automatc' OR 'automated) AND ('assessment' OR 'grading’) AND 'programming' from the conference proceedings and journals through ACM Digital Library and IEEE Xplore published in between 2006 and 2010. We then applied the inclusion criteria to the abstracts (a paper must have presented an system providing summatve, numerical, automatc feedback from programming assignments or described results from using such system.) and fnally read through the remaining papers to do qualitatve data analysis. Petri Ihantola, Koli Calling 2010
  • 14. Our Method Systematc literature review: We collected the data by searching for phrases ('automatc' OR 'automated) AND ('assessment' OR 'grading’) AND 'programming' from the conference proceedings and journals through ACM Digital Library and IEEE Xplore published in between 2006 and 2010. We then applied the inclusion criteria to the abstracts (a paper must have presented an system providing summatve, numerical, automatc feedback from programming assignments or described results from using such system.) and fnally read through the remaining papers to do qualitatve data analysis. Petri Ihantola, Koli Calling 2010
  • 15.
  • 17. LanguagesJava, Python, Pascal, C/C++, assembler, shell scripts, don’t care, …. Petri Ihantola, Koli Calling 2010
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36. Summary • Programming languages • Integraton into LMSs (e.g. Moodle) • Diferent ways to defne tests – Xunit, acceptance testng, web testng frameworks – Something not widely applied in industry • Manual assessment • Resubmissions – Limitng tme, feedback – Customizaton – Interestng hybrid • Sandboxing • Availability • Specialtes – GUIs, data bases, concurrency, web programming, students’ own testng skills Petri Ihantola, Koli Calling 2010
  • 37.
  • 38. Thanks to the authors of the images I used: • htp://www.fickr.com/photos/smanography/3073414449 • htp://www.fickr.com/photos/stephenpof/2920198159/ • htp://www.fickr.com/photos/kaptainkobold/3203311346/ • htp://www.fickr.com/photos/superk8/3868056064/ • htp://www.fickr.com/photos/naomi_pincher/2691787431/ • htp://www.fickr.com/photos/secondtoughest/347049865/ • htp://www.fickr.com/photos/terrio/4920670944/ • htp://www.fickr.com/photos/pranavsingh/1946245078 • htp://www.fickr.com/photos/arteurbana/496777749/ • htp://www.fickr.com/photos/litle_lushie/28955776/ • htp://www.fickr.com/photos/12392252@N03/2037540230/ • htp://www.fickr.com/photos/markjsebastan/324425852 • htp://www.fickr.com/photos/benheine/5044969981/ • htp://www.fickr.com/photos/piblet/1053194618/ • htp://www.fickr.com/photos/ogil/1507585665/ • htp://www.fickr.com/photos/brandoncripps/2308741771/ • htp://www.fickr.com/photos/clydeorama/2442172268/ • htp://www.fickr.com/photos/imutoo/2631466945/ • htp://www.fickr.com/photos/beatkueng/1350250361/ • htp://www.fickr.com/photos/pagedooley/3227848591/ • htp://www.fickr.com/photos/levork/4509401065/ All these images are licensed under the creatve commons. Petri Ihantola, Koli Calling 2010