SlideShare une entreprise Scribd logo
1  sur  30
Source code validation and plagiarism detection:
             technology-rich course experiences



                                          Ivana Bosnić
                                     Branko Mihaljević
                                            Marin Orlić
                                           Mario Žagar
                          University of Zagreb, Croatia
Who we are?

              University of Zagreb (UniZG)

              Faculty of Electrical Engineering
                and Computing (FER)

              Computer Systems
                and Processes Group (RASIP)
What do we do?




      Open systems         Web technologies




   Software engineering   Enhancing education
 Open
   Systems

   Technologies

   Standards

   Culture

   Licences
Motivation
Open Computing

  50  - 100 students
  3rd year
    Undergraduate   study of Computing
  Topics:
    Open  systems, client-side technologies
    Server-side (open) technologies

    Integration
On a practical side...

  6   course assignments
     Quickhands-on experience
     Loosely defined tasks
        • Final result: web application with search capabilites
     Versions:
        • DVD store, library, phone book...
     Various    open technologies
        • Integration!
On a practical side...

          Open technologies used
      1.     HTML, CSS
      2.     XML, XSL, DTD/XSD
      3.     PHP, DOM
      4.     Java, XML
      5.     Java Servlets
      6.     JavaScript, AJAX
          Upload & discuss...
The challenges

     Students                          Staff
       Lack of student                   Answering beginners’
        experience in OOP                  questions
       Fast-changing                     Preventing invalid
        technologies                       submission files
          • information dispersion        Ensuring solution
       Detailed configuration             structure and standard
        instructions missing              Reducing plagiarism
       Unexperienced:
        not enough time
ORVViS
ORVViS - implementation

   Assignment validation system
   Web application in PHP
     Validation core & plugins
     Plagiarism detection – Sherlock, BOSS

     Integration with Moodle LMS
Validators used

     HTML:               PHP:
         HTML Tidy           internal
     CSS:                JavaScript:
         Cssutils            JavaScript Lint
     XML, DTD, XSL:      Java:
         DOM, Matra          PMD
ORVViS use case




    Setup         Validation   Plagiarism
Results & experiences
Plagiarism detection

   2006/07
     Pilot   period for system testing
   2007/08
     113 students enrolled
     Informed students about our intentions 
Plagiarism detection

   1st   assignment
    1    pair of similar solutions – almost the same
   3rd   assignment
    1    pair of similar solutions – 80% similarity




                0%                    80%
Plagiarism detection

   4th   assignment – Java
    6    cases altogether – 17 students 
   Steps taken 
   Later years:
     No   significant similarities
Plagiarism detection - experiences

   Inform    students in advance
     it   is somehow “fair”
   Show     the technology and results
     to   show you’re serious
   Perservere    in analysis and decisions
     as   some iterations are needed
Offtopic: Structure validation

   2007/08
     52% - incorrectly named archives
     10% - packaged as RAR instead of ZIP

     25% - incorrect file structure

     4% - incorrectly named files



   Yes,   the structure IS important
Assignment validation

   2009/10
     70   students
   2010/11
     53   students
   Comparison    of
     number   of submission instances
     validation results
Total/final submission instances




     submitting  the solution multiple times allowed
     similarity between years
Submission instances

   First   2 assignments
     high    number of submissions:
          • ~5 per student
   3rd   assignment (PHP)
     straightforward,       one technology
          • ratio drops: ~2,4 per student
   4th   assignment (Java)
     steeplearning curve
     submsissions increase again
Validation
results
   2009/10




   2010/11
Validation results


   Relates    to the Submissions
     first   3 assignments:
       • fully correct submissions increase
       • total number of submission decreases
     4th   and 5th assisgnments (Java, servlets)
       • fully correct submissions – big decrease
     6th   assingment
       • back to “normal”
ORVViS experiences

  Easier   to analyze the assignments
    validation   chart + error logs
  Detailed   report on each submission
    before   the discussions
  Help   to ensure the real code was submitted
    no   “pancake” recipes 
  Number     of simple forum questions reduced
    better   focus on more serious stuff
ORVViS experiences

  Integrated    validators in LMS
    easier   to use, due to a number of technologies
  Indirect   help of validators
    to   configure the environmnent (XML)
  Level   of validator sensitivity
    good  hints with warnings, when using
     the different servers and environments
Future - ORVViS

   Full   LMS integration
       no   need for external administration
             2.x APIs
   Plugins for verifying semantic properties

   Increase the students’ awareness on testing
       Reflection-in-action
www.fer.hr/predmet/or




                        ivana . bosnic @ fer . hr

Contenu connexe

Similaire à CSEDU 2012: Source code validation and plagiarism detection: technology-rich course experiences

Software Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software EngineeringSoftware Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software EngineeringTao Xie
 
Formal, Executable Semantics of Web Languages: JavaScript and PHP
Formal, Executable Semantics of Web Languages: JavaScript and PHPFormal, Executable Semantics of Web Languages: JavaScript and PHP
Formal, Executable Semantics of Web Languages: JavaScript and PHPFACE
 
Teaching Bioinformatics
Teaching BioinformaticsTeaching Bioinformatics
Teaching Bioinformaticsguest705f7e
 
An Open Source Framework for Teaching BIoinformatics
An Open Source Framework for Teaching BIoinformaticsAn Open Source Framework for Teaching BIoinformatics
An Open Source Framework for Teaching BIoinformaticsbosc
 
BYOD for digital exams
BYOD for digital examsBYOD for digital exams
BYOD for digital examsIngrid Melve
 
Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...Jose Emilio Labra Gayo
 
PHP Courses in Chandigarh
PHP Courses in ChandigarhPHP Courses in Chandigarh
PHP Courses in ChandigarhDaksha Academy
 
Mjr Net Ppt Portfolio Template
Mjr Net Ppt Portfolio TemplateMjr Net Ppt Portfolio Template
Mjr Net Ppt Portfolio TemplateMichaelRady
 
N3XAsec CPTE plan de estudios detallado
N3XAsec CPTE plan de estudios detalladoN3XAsec CPTE plan de estudios detallado
N3XAsec CPTE plan de estudios detalladoRafael Seg
 
Selenium Online Training in India
Selenium Online Training in IndiaSelenium Online Training in India
Selenium Online Training in Indiaunited global soft
 
Selenium Testing Online Training in Hyderabad
Selenium Testing Online Training in HyderabadSelenium Testing Online Training in Hyderabad
Selenium Testing Online Training in Hyderabadunited global soft
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesTao Xie
 
Application Performance Monitoring
Application Performance MonitoringApplication Performance Monitoring
Application Performance MonitoringOlivier Gérardin
 
Selenium online training in India
Selenium online training in IndiaSelenium online training in India
Selenium online training in Indiaunited global soft
 
ProspectusPresentationPrinterFriendly
ProspectusPresentationPrinterFriendlyProspectusPresentationPrinterFriendly
ProspectusPresentationPrinterFriendlymartijnetje
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools TrainingQEdge Tech
 
Selenium online training in india
Selenium online training in indiaSelenium online training in india
Selenium online training in indiaunited global soft
 
Selenium online training
Selenium online trainingSelenium online training
Selenium online trainingDivya Shree
 

Similaire à CSEDU 2012: Source code validation and plagiarism detection: technology-rich course experiences (20)

Learning to Code in an Online Word
Learning to Code in an Online WordLearning to Code in an Online Word
Learning to Code in an Online Word
 
Software Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software EngineeringSoftware Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software Engineering
 
Formal, Executable Semantics of Web Languages: JavaScript and PHP
Formal, Executable Semantics of Web Languages: JavaScript and PHPFormal, Executable Semantics of Web Languages: JavaScript and PHP
Formal, Executable Semantics of Web Languages: JavaScript and PHP
 
Teaching Bioinformatics
Teaching BioinformaticsTeaching Bioinformatics
Teaching Bioinformatics
 
An Open Source Framework for Teaching BIoinformatics
An Open Source Framework for Teaching BIoinformaticsAn Open Source Framework for Teaching BIoinformatics
An Open Source Framework for Teaching BIoinformatics
 
BYOD for digital exams
BYOD for digital examsBYOD for digital exams
BYOD for digital exams
 
Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...
 
PHP Courses in Chandigarh
PHP Courses in ChandigarhPHP Courses in Chandigarh
PHP Courses in Chandigarh
 
Mjr Net Ppt Portfolio Template
Mjr Net Ppt Portfolio TemplateMjr Net Ppt Portfolio Template
Mjr Net Ppt Portfolio Template
 
N3XAsec CPTE plan de estudios detallado
N3XAsec CPTE plan de estudios detalladoN3XAsec CPTE plan de estudios detallado
N3XAsec CPTE plan de estudios detallado
 
Selenium Online Training in India
Selenium Online Training in IndiaSelenium Online Training in India
Selenium Online Training in India
 
Selenium Testing Online Training in Hyderabad
Selenium Testing Online Training in HyderabadSelenium Testing Online Training in Hyderabad
Selenium Testing Online Training in Hyderabad
 
Cser13.ppt
Cser13.pptCser13.ppt
Cser13.ppt
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and Challenges
 
Application Performance Monitoring
Application Performance MonitoringApplication Performance Monitoring
Application Performance Monitoring
 
Selenium online training in India
Selenium online training in IndiaSelenium online training in India
Selenium online training in India
 
ProspectusPresentationPrinterFriendly
ProspectusPresentationPrinterFriendlyProspectusPresentationPrinterFriendly
ProspectusPresentationPrinterFriendly
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools Training
 
Selenium online training in india
Selenium online training in indiaSelenium online training in india
Selenium online training in india
 
Selenium online training
Selenium online trainingSelenium online training
Selenium online training
 

Plus de Ivana Bosnic

WeB MoodleMoot 2023: H5P i sitnice koje zivot znace
WeB MoodleMoot 2023: H5P i sitnice koje zivot znaceWeB MoodleMoot 2023: H5P i sitnice koje zivot znace
WeB MoodleMoot 2023: H5P i sitnice koje zivot znaceIvana Bosnic
 
What is OER and why should I (re)use it
What is OER and why should I (re)use itWhat is OER and why should I (re)use it
What is OER and why should I (re)use itIvana Bosnic
 
Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?
Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?
Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?Ivana Bosnic
 
WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?
WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?
WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?Ivana Bosnic
 
WeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu Moodle
WeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu MoodleWeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu Moodle
WeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu MoodleIvana Bosnic
 
MoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuiz
MoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuizMoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuiz
MoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuizIvana Bosnic
 
WeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirića
WeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirićaWeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirića
WeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirićaIvana Bosnic
 
Kako i gdje programeri (ne) uče
Kako i gdje programeri (ne) učeKako i gdje programeri (ne) uče
Kako i gdje programeri (ne) učeIvana Bosnic
 
WeB MoodleMoot 2016: Tura po Moodle User Touru
WeB MoodleMoot 2016: Tura po Moodle User TouruWeB MoodleMoot 2016: Tura po Moodle User Touru
WeB MoodleMoot 2016: Tura po Moodle User TouruIvana Bosnic
 
Otvorenost u nastavi informatike
Otvorenost u nastavi informatikeOtvorenost u nastavi informatike
Otvorenost u nastavi informatikeIvana Bosnic
 
IEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženju
IEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženjuIEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženju
IEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženjuIvana Bosnic
 
MoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajednici
MoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajedniciMoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajednici
MoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajedniciIvana Bosnic
 
Eunis 2014: Technology in Real-life Teaching of Distributed Software Development
Eunis 2014: Technology in Real-life Teaching of Distributed Software DevelopmentEunis 2014: Technology in Real-life Teaching of Distributed Software Development
Eunis 2014: Technology in Real-life Teaching of Distributed Software DevelopmentIvana Bosnic
 
WeB MoodleMoot 2013: Napredno korištenje testova
WeB MoodleMoot 2013: Napredno korištenje testovaWeB MoodleMoot 2013: Napredno korištenje testova
WeB MoodleMoot 2013: Napredno korištenje testovaIvana Bosnic
 
WeB MoodleMoot 2013: Save as PDF - može li to drugačije?
WeB MoodleMoot 2013: Save as PDF - može li to drugačije?WeB MoodleMoot 2013: Save as PDF - može li to drugačije?
WeB MoodleMoot 2013: Save as PDF - može li to drugačije?Ivana Bosnic
 
MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)
MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)
MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)Ivana Bosnic
 
WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)
WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)
WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)Ivana Bosnic
 
ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...
ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...
ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...Ivana Bosnic
 
MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?
MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?
MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?Ivana Bosnic
 
Info@Edu 2012: Moodle 2.x - novosti
Info@Edu 2012: Moodle 2.x - novostiInfo@Edu 2012: Moodle 2.x - novosti
Info@Edu 2012: Moodle 2.x - novostiIvana Bosnic
 

Plus de Ivana Bosnic (20)

WeB MoodleMoot 2023: H5P i sitnice koje zivot znace
WeB MoodleMoot 2023: H5P i sitnice koje zivot znaceWeB MoodleMoot 2023: H5P i sitnice koje zivot znace
WeB MoodleMoot 2023: H5P i sitnice koje zivot znace
 
What is OER and why should I (re)use it
What is OER and why should I (re)use itWhat is OER and why should I (re)use it
What is OER and why should I (re)use it
 
Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?
Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?
Moodle i otvoreni obrazovni sadržaji - idu li "ruku pod ruku"?
 
WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?
WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?
WeB MoodleMoot 2020: Od nule do kolegija - može li to jednostavnije?
 
WeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu Moodle
WeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu MoodleWeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu Moodle
WeB MoodleMoot 2021: "Na mene ste zaboravili?" - Pristupačnost u sustavu Moodle
 
MoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuiz
MoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuizMoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuiz
MoodleMoot Hrvatska 2020: Interaktivna improvizacija uz dodatak JazzQuiz
 
WeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirića
WeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirićaWeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirića
WeB MoodleMoot 2019: Moodle na predavanju - kako se riješiti šarenih papirića
 
Kako i gdje programeri (ne) uče
Kako i gdje programeri (ne) učeKako i gdje programeri (ne) uče
Kako i gdje programeri (ne) uče
 
WeB MoodleMoot 2016: Tura po Moodle User Touru
WeB MoodleMoot 2016: Tura po Moodle User TouruWeB MoodleMoot 2016: Tura po Moodle User Touru
WeB MoodleMoot 2016: Tura po Moodle User Touru
 
Otvorenost u nastavi informatike
Otvorenost u nastavi informatikeOtvorenost u nastavi informatike
Otvorenost u nastavi informatike
 
IEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženju
IEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženjuIEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženju
IEEE: U očekivanju pingvina - nastava u raspodijeljenom okruženju
 
MoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajednici
MoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajedniciMoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajednici
MoodleMootHR 2015: "Moodle i ja" - moje mjesto u Moodle zajednici
 
Eunis 2014: Technology in Real-life Teaching of Distributed Software Development
Eunis 2014: Technology in Real-life Teaching of Distributed Software DevelopmentEunis 2014: Technology in Real-life Teaching of Distributed Software Development
Eunis 2014: Technology in Real-life Teaching of Distributed Software Development
 
WeB MoodleMoot 2013: Napredno korištenje testova
WeB MoodleMoot 2013: Napredno korištenje testovaWeB MoodleMoot 2013: Napredno korištenje testova
WeB MoodleMoot 2013: Napredno korištenje testova
 
WeB MoodleMoot 2013: Save as PDF - može li to drugačije?
WeB MoodleMoot 2013: Save as PDF - može li to drugačije?WeB MoodleMoot 2013: Save as PDF - može li to drugačije?
WeB MoodleMoot 2013: Save as PDF - može li to drugačije?
 
MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)
MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)
MoodleMootHR 2013: Moodle Mobile: prvih 5 minuta (i sljedećih 7 mjeseci)
 
WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)
WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)
WeB & Serbia MoodleMoot 2012: Pitanja o pitanjima (u Moodle 2.3)
 
ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...
ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...
ICSE 2012 - CGTDSD: Distributed Software Development Course: Students’ and Te...
 
MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?
MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?
MoodleMootHR 2012: Moodle 2.3: Kamo idu zadaće?
 
Info@Edu 2012: Moodle 2.x - novosti
Info@Edu 2012: Moodle 2.x - novostiInfo@Edu 2012: Moodle 2.x - novosti
Info@Edu 2012: Moodle 2.x - novosti
 

Dernier

Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)cama23
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxPoojaSen20
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinojohnmickonozaleda
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 

Dernier (20)

Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipino
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 

CSEDU 2012: Source code validation and plagiarism detection: technology-rich course experiences

  • 1. Source code validation and plagiarism detection: technology-rich course experiences Ivana Bosnić Branko Mihaljević Marin Orlić Mario Žagar University of Zagreb, Croatia
  • 2. Who we are? University of Zagreb (UniZG) Faculty of Electrical Engineering and Computing (FER) Computer Systems and Processes Group (RASIP)
  • 3. What do we do? Open systems Web technologies Software engineering Enhancing education
  • 4.  Open  Systems  Technologies  Standards  Culture  Licences
  • 6. Open Computing  50 - 100 students  3rd year  Undergraduate study of Computing  Topics:  Open systems, client-side technologies  Server-side (open) technologies  Integration
  • 7.
  • 8. On a practical side... 6 course assignments  Quickhands-on experience  Loosely defined tasks • Final result: web application with search capabilites  Versions: • DVD store, library, phone book...  Various open technologies • Integration!
  • 9. On a practical side...  Open technologies used 1. HTML, CSS 2. XML, XSL, DTD/XSD 3. PHP, DOM 4. Java, XML 5. Java Servlets 6. JavaScript, AJAX  Upload & discuss...
  • 10. The challenges  Students  Staff  Lack of student  Answering beginners’ experience in OOP questions  Fast-changing  Preventing invalid technologies submission files • information dispersion  Ensuring solution  Detailed configuration structure and standard instructions missing  Reducing plagiarism  Unexperienced: not enough time
  • 12. ORVViS - implementation  Assignment validation system  Web application in PHP  Validation core & plugins  Plagiarism detection – Sherlock, BOSS  Integration with Moodle LMS
  • 13. Validators used  HTML:  PHP:  HTML Tidy  internal  CSS:  JavaScript:  Cssutils  JavaScript Lint  XML, DTD, XSL:  Java:  DOM, Matra  PMD
  • 14. ORVViS use case Setup Validation Plagiarism
  • 15.
  • 17. Plagiarism detection  2006/07  Pilot period for system testing  2007/08  113 students enrolled  Informed students about our intentions 
  • 18. Plagiarism detection  1st assignment 1 pair of similar solutions – almost the same  3rd assignment 1 pair of similar solutions – 80% similarity 0% 80%
  • 19. Plagiarism detection  4th assignment – Java 6 cases altogether – 17 students   Steps taken   Later years:  No significant similarities
  • 20. Plagiarism detection - experiences  Inform students in advance  it is somehow “fair”  Show the technology and results  to show you’re serious  Perservere in analysis and decisions  as some iterations are needed
  • 21. Offtopic: Structure validation  2007/08  52% - incorrectly named archives  10% - packaged as RAR instead of ZIP  25% - incorrect file structure  4% - incorrectly named files  Yes, the structure IS important
  • 22. Assignment validation  2009/10  70 students  2010/11  53 students  Comparison of  number of submission instances  validation results
  • 23. Total/final submission instances  submitting the solution multiple times allowed  similarity between years
  • 24. Submission instances  First 2 assignments  high number of submissions: • ~5 per student  3rd assignment (PHP)  straightforward, one technology • ratio drops: ~2,4 per student  4th assignment (Java)  steeplearning curve  submsissions increase again
  • 25. Validation results  2009/10  2010/11
  • 26. Validation results  Relates to the Submissions  first 3 assignments: • fully correct submissions increase • total number of submission decreases  4th and 5th assisgnments (Java, servlets) • fully correct submissions – big decrease  6th assingment • back to “normal”
  • 27. ORVViS experiences  Easier to analyze the assignments  validation chart + error logs  Detailed report on each submission  before the discussions  Help to ensure the real code was submitted  no “pancake” recipes   Number of simple forum questions reduced  better focus on more serious stuff
  • 28. ORVViS experiences  Integrated validators in LMS  easier to use, due to a number of technologies  Indirect help of validators  to configure the environmnent (XML)  Level of validator sensitivity  good hints with warnings, when using the different servers and environments
  • 29. Future - ORVViS  Full LMS integration  no need for external administration  2.x APIs  Plugins for verifying semantic properties  Increase the students’ awareness on testing  Reflection-in-action
  • 30. www.fer.hr/predmet/or ivana . bosnic @ fer . hr