Project Requirements - mdo91/Swe-573 GitHub Wiki

  • This Requirement Document Represents functional requirements of the Learning platform, basically the system requirements elicited throughout the whole semester as discussions were taking place during class.
1. User requirements:
  1.1 the user should be able to signup and create an account.
  1.2 the user should be able to login with his/her previously Registered information
  1.3 the user should be able to create learning path (a description and a topic)
  1.4 the user should be able to search with wikidata integrated functionality to support his/her learning path 
  1.5 the user should be able to select wikidata that he/she found as a result of a search query
  1.6 the user should be able to submit the learning path title, description, wikidata
  1.7 the the user should be able to view all learning path info created so far
  1.8 the user should be able to edit/delete each learning path he/she created so far
  1.9 the user should be able to create a lesson for each learning path he/she created so far
  1.10 the user should be able to view all lessons he/she created
  1.11 the user should be able to edit/delete lessons he/she created
  1.12 the user should be able to create materials for each lessons he/she created
  1.13 the user should be able to submit information for each material such as (material title, content)
  1.14 the user should be able to edit each material he/she created so far
  1.15 the user should be able to delete each material he/she created so far
  1.16 the user should be able to create questions for each material he/she created so far
  1.17 the user should be able to choose the correct questions or select the correct answer while creating a question
  1.18 the user should be able to view all questions he created so far with detailed information
  1.19 the user should be able to track all learners that enrolled with his/her courses so far
  1.20 the user should be able to view learner info related to courses progress (completed lessons etc)

2. System Requirements:

 2.1 the System users can both create/be enrolled in any learning path
 2.2 each learning path has courses(lessons) lessons hierarchy implementation can be determined by the user(learning path owner)
 2.3 each course may not have questions but each question should have an answer (true or false) 
 2.4 viewing learning paths courses can be determined by users
 2.5 all learning paths titles should be distinguished

3. system non-functional Requirements:

  3.1 maintainability
  3.2 usability
  3.3 availability 
  3.4 security
  3.5 portability 
  3.6 efficiency   
  • The Platform should provide a space for its users that have experiences in some area and want to share it with others
⚠️ **GitHub.com Fallback** ⚠️