-
Notifications
You must be signed in to change notification settings - Fork 6
Requirements
Bülent Rahim Kazancı edited this page Oct 15, 2017
·
3 revisions
-
User Account Operations
- 1.1. User shall be able to provide their username, email and password while creating a new account.
- 1.2. User shall be able to login to their account using username and password.
- 1.3. User shall be able to update their username and password.
- 1.4. User shall be able to reset their password by using their email address.
-
Creating Content
- 2.1. User shall be able to upload new content (image or text) by providing title, description, tag, date, location and resource itself.
-
Displaying Content
- 3.1. User shall be able to display content in the home page.
- 3.2. User shall be able to have a portfolio page where he can see all the content and annotations he has created.
- 3.3. The system shall be able to display the contents with their attributes and annotations that have been created.
-
Searching Content
- 4.1. User shall be able to search content by title, description, user, tag.
-
Displaying Annotations
- 5.1. User shall be able to see the existing annotations of content.
- 5.2. Annotations shall be listed by their rate. The annotation having more than x dislike shall not be displayed.
- 5.3. User shall be able to like or unlike annotations added by other users.
-
Creating Annotations
- 6.1. User shall be able to add annotations to the content that he has created or the content created by other users.
- 6.2. Annotations shall be in the format of text, image.
-
Deleting Annotations
- 7.1. User shall be able to delete his own annotations.
-
Editing Annotations
- 8.1. User shall be able to edit his own annotations.
- System shall be able to provide Android and iOS mobile applications for client usage.
- The system shall use open source libraries and tools.
- The system shall expose a Rest API allowing interaction with other systems.
- Contents shall be annotated regarding to W3 Web Annotation Standards through a text or image.
- Web service side of application shall be implemented using Java Spring.
- Presentation side of application shall be implemented using React Native.
- Data tier of application shall be implemented using MongoDB.