-
Notifications
You must be signed in to change notification settings - Fork 0
Software Requirements Specification
These requirements are gathered from requirement elicitation interview and refined through a design process:
FR-1 Users will authenticate with their username and passwords which they set during registration
FR-2 There are 4 types of users -looking from a community perspective-:
- non-members/ wanderers: these type of users will not have access to private communities. They will be shown popular content when visiting main landing page and community pages ().
- members: will have access to community -if the community is private, they should be invited and joined the community through invitation-, can create posts, can comment on posts
- Community moderators/ moderator: Builders of community, community creators and other moderators can add a user as a moderator. Can create new post-templates, ban users.
- Creator/ owner: The account who creates the community has the ownership. The ownership can be transferred. Owner is also a moderator. There can be multiple owners of a community. An owner cannot close community, only archive (read-only community) it.
FR-3 There should be a basic search and an advanced search where users can filter: communities, post types (post template types), post creator, and filter for specific data fields belonging to a post type.
FR-4 The main page of the application will display the following:
- For non users: Popular posts (recent, upward trending posts) in an order
- For registered users: Popular posts from subscribed communities, non-member communities with similar interest (similarity can be inferred by analyzing other users subscribed communities)
FR-5 Each post will be created by using a post template created by the moderators. A post template dictates the format of the post. It consists of any number of information fields set by the moderator (template creator). An information field consists of three elements:
- Field name
- Field data type
- Requirement of the field (is the field required or not)
FR-6 All XSD data types should be supported by the post templates
FR-7 Moderators can kick people if they have to.
FR-8 Moderators cannot kick other moderators, the owner(s) can.
FR-9 The data cannot be deleted unless it is found to be harmful. Such content requires can be deleted by a moderator.
FR-10 Communities, data inside communities cannot be deleted but archived.
FR-11 private communities will require an invitation process to get in.
FR-12 An owner cannot leave a community without transferring the ownership.
FR-13 Any type of user can put a profile picture/ avatar
FR-14 Users can edit or delete content but, it should be made clear to other users.
FR-15 There will be an upvote down-vote mechanism to promote dynamic participation
FR-16 There will be a reporting system for the usage statistics, trending communities etc.
FR-17 There will not be a direct messaging option for the system
FR-18 Users should be able to follow other users and see their activities