layout | title | nav_order | parent |
---|---|---|---|
default |
SRS |
1 |
Project management |
{: .no_toc }
{: .no_toc .text-delta }
- TOC {:toc}
This SRS describes all specifications and use cases for Live-Poll. Live-Poll is a live-polling application which elevates your presentation and lets you interact with your audience while presenting. This document includes a detailed description of the expected application functionalities as well as non-functionality requirements.
This SRS applies to the entire Live-Poll project.
Actors:
- Polling Creator: Person who creates and presents a poll.
- Polling Participant: Person who participates in a poll.
Subsystems:
- Admin Dashboard
- My Polls
- Poll
- Poll Item
- Presentation Mode
- Q&A
- User live participating mode
Abbreviation | |
---|---|
SRS | Software Requirements Specification |
UCD | Use Case Diagram |
n/a | not applicable |
FAQ | Frequently Asked Questions |
Q&A | Question & Answers |
Definition | |
---|---|
Software Requirements Specification | Software Requirement Specification is a document, which captures the complete software requirements for the system, or a portion of the system. |
Use case | A Use case is a list of actions or event steps, typically defining the interactions between a role (known in the Unified Modeling Language as an actor) and a system, to achieve a goal. |
Title | Date | Publishing Organization |
---|---|---|
Live-Poll Blog | 2020-10-18 | Live-Poll |
Live-Poll GitHub | 2020-10-18 | Live-Poll |
UC Create multiple choice item | 2020-10-20 | Live-Poll |
UC Create new poll | 2020-10-20 | Live-Poll |
UC Create item | 2020-12-01 | Live-Poll |
UC Login/Logout | 2020-12-01 | Live-Poll |
UC Sign up | 2021-04-13 | Live-Poll |
UC Create open text question | 2021-04-13 | Live-Poll |
UC Answer open text question | 2021-04-13 | Live-Poll |
UC Edit custom URL slug | 2021-04-13 | Live-Poll |
UC Navigate to specific poll | 2021-04-13 | Live-Poll |
UC Open my polls | 2021-04-13 | Live-Poll |
UC Open poll items | 2021-04-13 | Live-Poll |
The following chapters are structured in the following way: In the next chapter Overall Description
our vision is described and the Use Case Diagram
gives an overview over the expected functionality. The third chapter provides more detailed information about the requirements. First, the expected features of the Live-Poll application are presented. After that, further requirements like usability, reliability or performance are listed. In the last chapter you can find supporting information.
Live-Poll embodies the vision of an open-source live-polling application that you can use totally free, no matter if you’re a private person, school, university, society, small or big business etc. Our idea arose from the lack of free live voting/polling software on the Internet that has a nice user flow and is easy to use.
Live Poll will elevate your presentation and let you stand out from the crowd. It is an online tool allowing your audience to live-interact with the presenters, e.g. to answer questions, quizzes, multiple choice questions, word clouds and so much more.
This section lists and explains every functional requirement. Every subsystem from the UCD is represented through its own subsection.
On the landing page, the user can log in to Live-Poll or create a new account (Sign up). Having logged in, the user lands on the admin dashboard, the entry point of our application. Account settings can be managed here and the user can switch to the "My Polls" page.
On this page all polls are listed. The user can navigate to specific polls and edit or delete them. Also, new polls can be created here.
On the Poll page a single poll can be edited and the user can start the presentation mode. In order to create and edit the poll, different poll items can be added. Furthermore, every poll owns a Q&A page which can be accessed from here too.
The user can choose between following item types:
- Quiz
- Multiple choice
- Rating
- Open text
- Word cloud
Depending on the type selected, different details can be entered. In order to see how the poll item looks in the presentation, the presentation mode for an item can be entered directly from it.
The poll items can be presented to the audience by entering the presentation mode. The presenter can switch between the prepared poll items and can show or hide their results. This mode also includes a view for Q&A questions. The questions to be shown are chosen by a moderator. The functionality for the moderation is explained in the next subsection.
The Q&A can be moderated on the Q&A page. Here, the moderator can select questions which should appear in the presentation and questions can be answered via text message.
This page can be accessed by participants via a customizable URL, QR code or an event ID that the user can enter on the landing page. The page shows the current poll item from the presentation and the user can enter his answer here.
Our goal is to build a modern and easy to use application. For participating users, a login won't be necessary, so that they don't need to register in order to take part of Live-Poll.
We will try to reduce the server downtime to a minimum. Updates or other changes will be applied during nighttime.
Especially the page for the live participants should load fast. Many simultaneous inquiries must not reduce the speed.
To be able to test and publish updates quickly, we use docker containers. This also allows for better scaling possibilities.
The Angular frontend should implement the MVC pattern. There should be a RESTful API for communication between client and server. We've chosen to use the Spring framework for our backend.
To make the application easy to understand, we will create a FAQ that is easily accessible on the landing page.
A server will be rent to run the application.
n/a
n/a
Our application will support all common browsers (Chrome, Opera, Firefox). The Internet Explorer will not be supported. We will offer an interface to communicate with applications included in the Microsoft Office suite.
For the communication between client and server, we will use the HTTPs protocol together with Web Sockets.
We will deploy our app under the MIT license.
The Live-Poll team will not take responsibility for incorrect or lost data. Our app will be compliant with all GDPR regulations.
The following code standards are going to be applied to the code as far as possible:
- Intuitive names of variables and methods (camel case)
- Use of comments to make code easy to understand
- Each method is responsible for one task
For more information visit our blog or contact us: contact@live-poll.de