MARS is a client-server Audience Response System dedicated to e.g. teachers, moderators to support their courses to evaluate knowledge, assess opinions or illustrate concepts, or just for fun!
MARS is published under the GNU GPLv3 open source licence and is free. Polls remain completely under your control and can be shared if, and only if, you choose to do so.
MARS puts the control on the poll material back into your own hands, as opposed to many online commercial products that take away from you the ownership as well as the control over your intellectual property.
The UI design of MARS is inspired by contemporary flat looks. It uses the w3.css kit, font awesome icons and a number of customizations.
- fig. 1: the poll list -
- fig. 2: the poll editor -
- fig. 3: the question editor -
- fig. 4: session in group mode as cast on videoprojector; remaining time is seen on the live progress bar on the bottom -
- fig. 5: the client app during registration, on a smartphone -
MARS uses following concepts:
The poll is a set of questions. A poll can be created and edited in the system and can furthermore be exported/imported (easy JSON files) and shared e.g. via simple email.
Polls have a type that is determined at creation time depending on the intention of the poll author. Two types are defined:
The quiz type of poll is preferred for evaluation purposes. Results will display falsy/truthy answers and scores that can be directly used for rating purposes.
The poll type of poll (sorry for redundancy) is preferred for opinion assessment or situations where evaluation and scores are not relevant. Results will just display choices without scoring.
The session is the live execution of a poll. Sessions consist of question display and score/result evaluation. Sessions are stored and can be retrieved and displayed later for testimony purposes. Moreover, sessions can be re-played, providing cumulative result recording among multiple student groups.
Sessions can have one of two play modes determined at session start time :
Polls are managed via the Polls top menu bar option. The screen will display a list of all available polls in your local system. The action icons associated to any given poll will determine following activities :
To create a new poll, click on the green button labelled "create a new poll" at the top of the list. A pop-up will appear where you can fill in the title of the new poll, as well as choose (mandatory) the poll type (see definition above : quiz or poll type). This will initialize a new, empty poll that will be listed in the poll list. To create questions for this new poll, simply click on its "edit" icon to launch the poll editor (see below).
The poll editor allows, much like a slide sorter in presentation software, to add questions, to modify question ordering and to delete questions. Each question composing the poll is depicted along with a number of action buttons :
- the poll editor -
To add a new question, click on the "add question" button on the top of the poll editor. This will lauch the question editor with a new question (see below).
To move questions use the "move-up/down" buttons as seen on the screenshot above. Their effect is to move the related question one slot up or down in the list of questions.
The DELETE button will remove the related question from the list. Be careful as there is no coming back.
The EDIT button will lauch the question editor with the related question (see below).
The question editor allows to completely define all aspects of a question, including all texts, optionally an image illustration etc. All actions on the editor are immediately reflected in a live preview.
Any question can have one of two available layouts: one column and two columns. The two-colum layout allows to fit in additional text and/or an image. Images are hosted externally (e.g. by image hosting sites). More multimedia contents may be available in future versions (sound, video).
The different options and actions are best explained by a picture as well as personal experiments:
- the question editor -
Reminder: polls can be played (i.e. run in front of a student group) in one of two modes explained above: the group mode and the normal mode. The process of poll play is called a session.
To start a new session with a given poll, see fig. 1 above : two buttons allow to start a session in one of the two modes.
A session goes through following states:
- the session in waiting state (here, in normal mode) -
Any type of session in any mode is stored and can be viewed later, but also can be restarted by means of the Session management interface (see below). This allows to conduct a given poll among differents student groups, cumulating the results.
Sessions are managed by means of the Session list interface, attained by the "Sessions" button on the top menu bar.
The following picture summarizes actions related to the Session list:
Session results are available a) after a normal run in normal or group mode, the screen shows already available results as calculated by the server; b) when selected in the Session list through the "view" icon.
Session results have three parts from top to bottom:
The following picture shows a portion of the charts part in a real case:
As of writing (v. 0.87) user management is simplified. Two user roles exist:
In all cases the system can only be used by persons having been through the above approval process (and by the admin himself, of course) and authenticate locally. This strategy isolates MARS from the many possible external authentification methods (LDAP etc.).
Due to the particular http interface between clients and server in the MARS system, man-in-the-middle attacks must be avoided by installing the system on a HTTPS server.
MARS never sends out passwords in cleartext.
MARS is a client-server application based on Angular (client side) and PHP (server side). The database is PostGresql. The editor is Atom.