Functional Requirements - Anniegavr/Collab-Buddy GitHub Wiki

## Requirement Issue
01 As a student, I want to be able to add my own skills to my profile, so that teachers and peers would know what I am good at and what interests I have. Frontend-Backend-02 Frontend-Backend-03
02 As a teacher, I want to be able to add, see, edit and delete groups and students I teach. Frontend-Backend-02 Frontend-Backend-04
03 As a teacher, I want to be able to negotiate deadlines with other teachers when my deadline overlaps with theirs, so as to be able to release my assignment if I think that the application wrongly restricts me in my work and my assignment is more important and urgent. Frontend-Backend-02
04 As a teacher, I want to be able to save assignments as drafts when I don't want to publish them right away, so as to be able to plan in advance and adjust the assignments. Frontend-Backend-02 Frontend-Backend-05
05 As a teacher, I want to be able to see the free days for the targeted group I want to release an assignment and the number of free hours per day in the calendar widget, so as to see everything that is related to that period in the same activity. Frontend-Backend-02
06 As a student, I want to be able to keep my timetracker report private - only I should be able to see the number of hours and the tasks I've recorded so that teachers wouldn't scold me during the days I didn't work on their assignments. Frontend-Backend-02
07 As a teacher, I want to be able to see my students' progress on my assignments, so as to help them finish in time when I see them spending too much time on some tasks. Frontend-Backend-02
08 As an administrator, I want to be able to create, delete and configure assignment types, skill types, schedules (free time, work time, course time), students and their groups, teachers and groups they teach (to which they should have access), as well as user's roles (some teachers can be admins, too, for example). Frontend-Backend-02
09 As a developer, I want to receive a clear report on the user's activity and recorded exceptions, so as to solve reported issues as quickly as possible. This could represent a special folder in which logs from the program are stored. The app shall be meticulously logged. Frontend-Backend-02
10 As an admin, I want to be able to solve conflicts between overlapping assignments as a superior user, so as to override the rights of the conflicting parts that couldn't reach an agreement. Frontend-Backend-02
11 As a teacher, I want to be able to add skills to my students after the semester is over, so as to acknowledge what they got from my course.