Requirements - mirayiyidogan/swe_573 GitHub Wiki
Elicitation Questions
- What will be the main purpose of this Web Application?
- Is there any similiar project currently?
- What will be the main differences amoung similiar applications?
- On which platforms will this project be used?
- How app should save the information?
- How long will the content be kept on the site?
- Will the content have an expiration date?
- What to do about inaccessible content?
- What information will be given about the content?
- How will we display the contents?
- Will we be able to filter the recorded content?
- How will we label the contents?
- Will the user be able to create their own tags?
- If the url is private or needs a token to open, what should we do?
- Will we create another library/collection from the saved content?
- Will the recorded contents be erasable?
- Will we be able to edit the recorded content?
- How do we catch the same content?
- Will we delete the same/similar content automatically, in consultation with the user?
- May we ask to take personal notes on their content?
- Will we have any other purpose other than viewing the recorded content?
- Will we support any direct integration with 3rd party software?
User Stories
- As a user, I want to
add a content to my personal area
so that I can be able to reach my contents which I have saved intentinally. - As a user, I want to
register to the system
so that I can manage my contents. - As a user, I want to
tag my contents
so that I can easily find the contents. - As a user, I want to
delete the saved contents
so that I can get rid of unwanted contents. - As a user, I want to
filter my content
so that I can find a specific content. - As a user, I want to
search a content
so that I can find the content that I wanted. - As a user, I want to
create a collection
so that I can categorize the contents as I wanted. - As a user, I want to
share my content collection publicy
so that I can share my personal interests with others. - As a user, I want to
bring my contents to one place
so that I can easily find what I wanted. - As a user, I want to
see only unique contents
so that I do not lost amoung the contents. - As a user, I want to
see recent contents added at the top of the page
so that I can go back to the past.
Requirements
User should be able login with its username or mail and password.
User should be able to register to system with its name, surname, username and password.
User should be able to reset its password.
User should be able to change its user informations.
User should be able to change its profile picture.
User should be able to add profile picture.
User should be able to change its registered mail address.
User should be able to save the contents.
User should be able to add tags when saving a content.
User should be able to add note while saving a content.
User should be able to name a content.
User should be able to see the saved contents.
User should be able to delete saved contents.
User should be able the sort the contents.
User should be able to filter the contents with tags, date, keyword, content's platform.
User should be able to see public content without loged in.
User should be able to save contents with their URLs.
User should be able to comment the contents.
User should be able to edit saved contents.
User should be able to search contents.
User should be able to delete contents.
User should be able to delete comments.
User should be to edit their comments.
User should be able to publicly share its contents.
User should be able to save its contents privately.
User should be able to tag its content.
User sould be able to remove the tag from its content.
The system should have a web application.
The system should keep passwords, encrypted in the database.
The system should be written with Python and Django Framework.
The system should be used PostgreSQL.
The system should be dockerize.
Open Questions:
- How should the users interact with the posts?
- Is there an admin role? What admin can do and can't?
- How will the users interact with each other?
- If the link is gone, are we going to handle it? How?
- How we are going to use Wikidata in this project?