Labs
Students must form teams of three members at the latest during the first lab session. It is a good idea for students to form teams upfront and then register for the same lab group. During the course, each team will have to complete seven homework tasks. Each lab group has a dedicated lab assistant and specific lab times every week. Each homework can give max 10 points.
Each homework assignment should be submitted before the deadline. If submission is delayed penalties apply as follows:
- up to 24h - 10% penalty
- up to 7x24h - 50% penalty
- more than 7x24h - 100% penalty
Members of a team will - as much as possible - be treated equally. That implies that each member of a team will get the same grades. If you encounter problems within a team (e.g., lack of communication or active participation of a team member) try to solve the problems first internally. If that doesn't work, notify your lab supervisor and ask him for help to get the team back on track. Important: Don't wait too long with involving the lab supervisor, if the problem cannot be solved internally!
Important: In order to avoid free riders the lab supervisors will check who is present during the assessment labs. In total, we have 7 such labs. These labs are mandatory. A student must be present in at least 4 out of 7 labs to not get an individual penalty on the total number of marks at gained by a team during the course. The penalty on the overall amount of marks of a team is calculated as follows:
- Student is present in only 3 assessment labs: -10% penalty
- Student is present in only 2 assessment labs: -20% penalty
- Student is present in only 1 assessment lab: -30% penalty
- Student is never present during assessment labs: -40% penalty
For example, if the team has achieved the maximum of 70 marks for their lab work and one team member is never present during the assessment labs, this team member will get an individual penalty of 28 marks.
Schedule
During the labs students will be introduced to the new homework tasks (sometimes with demonstrations), consulted regarding ongoing tasks and evaluated according to the following pattern:
- Lab 1: Assignment 1 is introduced and students start working on it.
- Lab 2: Students present intermediate results regarding Assignment 1. If too little or no intermediate results are presented, the lab supervisors will apply a penalty of up to 30% on the total marks achieved for Assignment 1 after submission. If none of the team members shows up during the assessment session, the team will get 0 marks for the assignment - no matter what they finally submit.
- At the end of day before Lab 3, students submit the final solution of Assignment 1. The lab supervisors will try to mark the submitted assignments within one week. There will be also some brief feedback given to the students in writing. If students submit late, they might also receive their marks and feedback late.
- Lab 3: Assignment 2 is introduced and students start working on it.
- etc.
Each lab group will have a dedicated web page with dates and info about teams (see link at end of this page).
General
Teams must deliver their solutions to their lab assistant using course development environment via repository on Bitbucket.
Important: During the assessment session, teams have to be present with ALL their team members. The purpose of the assessment sessions is to present partial solutions which correspond to at least 30% of the total (final) solution. If teams cannot show enough progress, they will get a penalty on the final solution of up to 30% - even if the final, submitted solution is fully correct. If none of the team members shows up during the assessment session, the team will get 0 marks for the assignment - no matter what they finally submit.
- Each team must complete all tasks independently. This does not mean that you are not allowed to talk to other teams and discuss solutions. Communication is a good thing and we welcome it. However, copying the work of others, i.e., copying of code, is considered plagiarism and strongly prohibited (we have special software for automatic checks). According to University rules, if we find evidence of plagiarism, we must inform the head of Institute and a formal steps will be taken.
- If something in a homework task assignment is not clear to you, then you should ask for clarifications from your lab assistant (during consulting sessions).
- If you detect that a task is unclear only at the night before the deadline (when your lab assistant is not available for you) then you should stick to as close to a real world solution as possible: the solution/result should be such that you (and your customer) get maximum benefit from it in the real world.
Lab Descriptions
- Requirements Gathering (weeks 2 & 3)
- Requirements Specification, Modeling, Planning (weeks 4 & 5)
- Development Environment (weeks 6 & 7)
- Development - Phase I (weeks 8 & 9)
- Development - Phase II (weeks 10 & 11)
- Automatic Unit Tests, Refactoring & Functional Test Planning (weeks 12 & 13)
- Functional and Non-Functional Testing (weeks 14 & 15)
Timetable
Labs are taking place in Liivi 2, rooms 004, 203, 205, 207 and 403. Please go to the room of the lab group for which you registered!
- Monday 12:15 room 205 (Group 5) Lab supervisor Andri Jasinski (andri [dot] jasinski [at] gmail [dot] com)
- Monday 12:15 room 203 (Group 6) Lab supervisor Mario Ezequiel Scott (ezequielscott [at] gmail [dot] com)
- Tuesday 14:15 room 203 (Group 1) Lab supervisor Margus Luik (mar6luik [at] gmail [dot] com)
- Tuesday 14:15 room 205 (Group 2) Lab supervisor Hina Anwar (hina [dot] anwar2003 [at] gmail [dot] com)
- Wednesday 14:15 room 004 (Group 3) Lab supervisor Mario Ezequiel Scott (ezequielscott [at] gmail [dot] com)
- Wednesday 14:15 room 205 (Group 4) Lab supervisor Margus Luik (mar6luik [at] gmail [dot] com)
- Friday 08:15 room 403 (Group 7) Lab supervisor Oleksandra Tkalich (oleksandratk [at] gmail [dot] com)
- Friday 08:15 room 207 (Group 8) Lab supervisor Hanna Tagen (hanna [dot] tagen [at] ut [dot] ee)