%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Beamer Presentation
% LaTeX Template
% Version 1.0 (10/11/12)
%
% This template has been downloaded from:
% http://www.LaTeXTemplates.com
%
% License:
% CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/)
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%----------------------------------------------------------------------------------------
%	PACKAGES AND THEMES
%----------------------------------------------------------------------------------------

\documentclass{beamer}

\usepackage{booktabs}% http://ctan.org/pkg/booktabs

%\usepackage{fontspec}% provides font selecting commands 			%loaded
%\usepackage{xunicode}% provides unicode character macros 			%loaded
\usepackage{xltxtra} % provides some fixes/extras 		laut console no
\defaultfontfeatures{Mapping=tex-text}
\setromanfont[Mapping=tex-text]{Liberation Serif}
\setsansfont[Mapping=tex-text]{Liberation Sans}
%\newfontfamily{\grk}[Scale=MatchLowercase]{} % pick a font for
\newfontfamily\greekfontsf[Scale=MatchLowercase]{Liberation Serif}
\newfontfamily\greekfonttt[Script=Greek,Scale=MatchLowercase]{Liberation Sans}

\newcommand{\tabitem}{~~\llap{\textbullet}~~}
%\usepackage{enumitem}
\usepackage{adjustbox}
\usepackage{anyfontsize}
%\usepackage{fontspec}
\usepackage[algoruled]{algorithm2e}
\usepackage{bytefield}

\usepackage{tikz}
%\setmainfont{CMU Serif}

\mode<presentation> {

\usepackage{changepage}
%\usetheme{Warsaw}
\usetheme{Madrid}
%\setbeamertemplate{footline} % To remove the footer line in all slides uncomment this line
%\setbeamertemplate{footline}[page number] % To replace the footer line in all slides with a simple slide count uncomment this line

\setbeamertemplate{navigation symbols}{} % To remove the navigation symbols from the bottom of all slides uncomment this line
}

\usepackage{graphicx} % Allows including images
\usepackage{booktabs} % Allows the use of \toprule, \midrule and \bottomrule in tables
\usepackage[keys]{cryptocode}
\usepackage{xcolor}
\usepackage{datetime}

%----------------------------------------------------------------------------------------
%	TITLE PAGE
%----------------------------------------------------------------------------------------

\title[Επέκταση Grader]{Σχεδίαση και Επέκταση ενός Συστήματος Αυτόματης Αξιολόγησης Προγραμματιστικών Ασκήσεων} % The short title appears at the bottom of every slide, the full title is only on the title page

\author[Αγγελάκης Αντώνιος]{~Αγγελάκης Αντώνιος\inst{1}} % Your name
\institute[ΕΜΠ] % Your institution as it will appear on the bottom of every slide, may be shorthand to save space
{
  \inst{1}
  Εθνικό Μετσόβιο Πολυτεχνείο \includegraphics[scale=0.1]{../Figures/Pyrforos.png} \\ % Your institution for the title page
  \textit{a.angelakis@protonmail.com} % Your email address
\medskip
}
\date{{\ddmmyyyydate\today}} % Date, can be changed to a custom date


\begin{document}

\begin{frame}
\titlepage % Print the title page as the first slide
\end{frame}

\begin{frame}
\frametitle{Επισκόπηση} % Table of contents slide, comment this block out to remove it
\tableofcontents % Throughout your presentation, if you choose to use \section{} and \subsection{} commands, these will automatically be printed on this slide as an overview of your presentation
\end{frame}

%----------------------------------------------------------------------------------------
%	PRESENTATION SLIDES
%----------------------------------------------------------------------------------------
\section{Εισαγωγή}

\begin{frame}
  \frametitle{Εισαγωγή}
  \centering
  Τι είναι σύστημα αυτόματης αξιολόγησης;
\end{frame}

\begin{frame}
  \frametitle{Συστήματα Αυτόματης Αξιολόγησης Προγραμματιστικών Ασκήσεων}
  Ένα σύστημα αυτόματης αξιολόγησης προγραμματιστικών ασκήσεων αποτελεί,
  συνήθως, μια πλατφόρμα στην οποία: \\

  \bigskip

  \begin{itemize}
      \item Δημιουργούνται διαγωνισμοί και προβλήματα
      \item Οι χρήστες υποβάλλουν τα προγράμματα - λύσεις τους για τα προβλήματα
      \item Τα προγράμματα μεταγλωττίζονται και εκτελούνται αυτόματα
      \item Αξιολογείται η ορθότητα τους με βάση την έξοδο που παράγουν
  \end{itemize}

  \bigskip

  Ονομάζονται και Contest Management Systems.
\end{frame}

\begin{frame}
  \frametitle{Χρήσεις}

  Τα συστήματα αυτόματης αξιολόγησης χρησιμοποιούνται:

  \bigskip

  \begin{itemize}
      \item Για τη διεξαγωγή προγραμματιστικών διαγωνισμών όπως είναι οι Διεθνείς
        Ολυμπιάδες Πληροφορικής (IOI) ή το ICPC
      \item Σε ακαδημαϊκό πλαίσιο, για αξιολόγηση σειρών ασκήσεων, εργαστηριακές
        εξετάσεις κ.α.
      \item Online, σαν πλατφόρμες εκμάθησης προγραμματισμού, προετοιμασίας για
        διαγωνισμούς αλλά και διεξαγωγή μεγάλων διοργανώσεων. Π.χ. Google Code Jam,
        SPOJ, TopCoder
  \end{itemize}
\end{frame}


\begin{frame}
  \frametitle{Παρούσα Εργασία}

  \begin{itemize}
      \item Συνοπτική παρουσίαση τριών FOSS συστημάτων διαχείρισης διαγωνισμών
        \bigskip
      \item Ανάλυση του συστήματος Grader που χρησιμοποιείται από το Softlab και το Hellenico
        \bigskip
      \item Παρουσίαση των επεκτάσεων που υλοποιήθηκαν στο Grader
  \end{itemize}
\end{frame}

\section{Γνωστά Συστήματα Αυτόματης Αξιολόγησης}
\begin{frame}
  \frametitle{Γνωστά Συστήματα Αυτόματης Αξιολόγησης}
  Θα παρουσιαστούν τα παρακάτω συστήματα:

  \bigskip

  \begin{itemize}
      \item CMS
      \item Mooshak
      \item CATS
  \end{itemize}
\end{frame}

\begin{frame}
  \frametitle{CMS}

  \begin{figure}[t]
    \includegraphics[scale=0.1]{../Figures/cms.png}
  \end{figure}

  \begin{itemize}
      \item Σύστημα με πρωταρχικό στόχο τη χρήση σε διοργανώσεις τύπου IOI
      \item Έμφαση στην ασφάλεια, τη σταθερότητα, την επεκτασιμότητα και την ευκολία
        χρήσης
      \item Modular αρχιτεκτονική, αποτελούμενη από πλήθος διαφορετικών services
  \end{itemize}
\end{frame}

\begin{frame}
  \frametitle{Αρχιτεκτονική CMS}
  \begin{figure}
    \includegraphics[scale=0.25]{../Figures/cmsarchitecture.png}
  \end{figure}
\end{frame}

\begin{frame}
  \frametitle{Mooshak}

  \begin{figure}
    \includegraphics[scale=0.5]{../Figures/mooshak.png}
  \end{figure}

  \begin{itemize}
      \item Σχεδίαση τόσο για διαγωνισμούς, όσο και σαν εργαλείο εκμάθησης
      \item Εύκολο deployment
      \item Υποστήριξη πολλών διαφορετικών τύπων διαγωνισμών, π.χ. code golf και
        εύκολη επέκταση για παραπάνω
  \end{itemize}
\end{frame}

\begin{frame}
  \frametitle{CATS}

  \begin{figure}
    \includegraphics[scale=0.7]{../Figures/cats.png}
  \end{figure}

  \begin{itemize}
      \item Υποστήριξη πλήθους γλωσσών και μεταγλωττιστών με modules για στατική
        ανάλυση των υποβολών, αυτόματη δημιουργία αρχείων ελέγχου κ.α.
      \item Έτοιμα scripts για το deployment
      \item Υποστήριξη ελέγχου λογοκλοπής στις υποβολές
  \end{itemize}
\end{frame}

\section{Το σύστημα Grader}
\begin{frame}
  Λαλαλα σαδλασδ αλδλςαδλςα
  \begin{itemize}
      \item asdas
      \item σδασδασ sadaw
  \end{itemize}
\end{frame}

\section{Επεκτάσεις: Testcase Groups}
\begin{frame}
  Λαλαλα σαδλασδ αλδλςαδλςα
  \begin{itemize}
      \item asdas
      \item σδασδασ sadaw
  \end{itemize}
\end{frame}

\section{Επεκτάσεις: Αλλαγή σχεδίασης προβλημάτων και διαγωνισμών}
\begin{frame}
  Λαλαλα σαδλασδ αλδλςαδλςα
  \begin{itemize}
      \item asdas
      \item σδασδασ sadaw
  \end{itemize}
\end{frame}

\section{Επεκτάσεις: Python, Mass Testcase Upload, Connector PDO}
\begin{frame}
  Λαλαλα σαδλασδ αλδλςαδλςα
  \begin{itemize}
      \item asdas
      \item σδασδασ sadaw
  \end{itemize}
\end{frame}


\section{Μελλοντική Εργασία}
\begin{frame}
  Λαλαλα σαδλασδ αλδλςαδλςα
  \begin{itemize}
      \item asdas
      \item σδασδασ sadaw
  \end{itemize}
\end{frame}

\end{document}
