Litcius/Paper detail

Online Judge System: Requirements, Architecture, and Experiences

Yutaka Watanobe, Md. Mostafizer Rahman, Taku Matsumoto, Uday Kiran Rage, Penugonda Ravikumar

2022International Journal of Software Engineering and Knowledge Engineering42 citationsDOI

Abstract

The development and operation of Online Judge System (OJS), which is used to evaluate the correctness of programs, is a nontrivial and difficult task due to the various functional and non-functional requirements. However, although many OJSs have been developed and operated, and their usefulness reported, the theory for constructing OJSs has not been sufficiently discussed. In this paper, we present the functional and nonfunctional requirements oriented to OJS as well as demonstrate the internal components and software architecture of an OJS, which has been in operation for over a decade and has evaluated over six million solutions. We also present real-world experiences and challenges encountered during this long journey of our OJS.

Topics & Concepts

Non-functional requirementCorrectnessFunctional requirementComputer scienceSoftware engineeringArchitectureTask (project management)Software architectureSystems engineeringSoftwareSoftware developmentEngineeringProgramming languageSoftware constructionVisual artsArtSoftware Testing and Debugging TechniquesSoftware Engineering ResearchAdvanced Malware Detection Techniques