This site is from a past semester! The current version will be here when the new semester starts.
CS2113/T 2020 Aug-Dec
  • Full Timeline
  • Week 1 [Mon, Aug 10th]
  • Week 2 [Fri, Aug 14th]
  • Week 3 [Fri, Aug 21st]
  • Week 4 [Fri, Aug 28th]
  • Week 5 [Fri, Sep 4th]
  • Week 6 [Fri, Sep 11th]
  • Week 7 [Fri, Sep 18th]
  • Week 8 [Fri, Oct 2nd]
  • Week 9 [Fri, Oct 9th]
  • Week 10 [Fri, Oct 16th]
  • Week 11 [Fri, Oct 23rd]
  • Week 12 [Fri, Oct 30th]
  • Week 13 [Fri, Nov 6th]
  • Textbook
  • Admin Info
  • Report Bugs
  • Forum
  • Gitter (Chat)
  • Instructors
  • Announcements
  • Files
  • Tutorial Schedule
  • repl.it link
  • repl.it link (duplicated)
  • Java Coding Standard
  • Git Conventions
  • Forum Activities Dashboard
  • Participation Dashboard

  •  Individual Project (iP):
  • Individual Project Info
  • iP Upstream Repo
  • iP Code Dashboard
  • iP Progress Dashboard

  •  Team Project (tP):
  • Reference AB3
  • Team Project Info
  • Team List
  • tP Code Dashboard
  • tP Progress Dashboard
  • Week 6 [Fri, Sep 11th] - Admin Info

    1. Submit coding exercises on repl.it counted for participation
    2. Submit post-lecture quiz before the lecture counted for participation
    3. [optional] Submit mid-term feedback for the module Sat, Sep 19th 2359

    1 Submit coding exercises on repl.it counted for participation

    • As before, submit the coding exercises allocated for the current week, and any pending exercises from previous weeks.

    2 Submit post-lecture quiz before the lecture counted for participation

    • Post-lecture quiz: Read weekly topics allocated for this week and submit the post-lecture quiz before the following lecture.

    3 [optional] Submit mid-term feedback for the module Sat, Sep 19th 2359

    • An anonymous survey to submit feedback about the module and the teaching team will open on LumiNUS by Monday. Please take a few minutes to give feedback to your tutors.

    + Other info relevant to this week:

    Admin Exams

    There is no midterm exam. Information about the final exam is given below.

    • The final exam will be as per the normal exam schedule, and will count for 30% of the final grade.
    • The exam will be done online.
    • We will be following the SoC's E-Exam SOP, combined with the deviations/refinements given in the section below. Please read the SOP carefully and ensure you follow all instructions.

    SOP deviations/refinements

    1. Tools: LumiNUS, Zoom, Microsoft Teams (MST), PDF scanner, PDF reader.

    2. The webcam view should capture all three of these: your upper body (side view), the entire screen area of your monitor, the working area of the table. Here is an example:

    3. Recording of your PC screen is not required.

    4. Only one computer screen is allowed.

    5. You may not use a second laptop/computer as the web cam. Use either an external webcam or a mobile phone instead. Reason: the screen of that second computer will not be captured in the video feed.

    6. Not allowed to use the printer or other devices during the exam.

    7. Soft copies of notes: only PDF format is allowed. Other formats (e.g., MS Word, .txt, html) are not allowed. No limitation on what the PDF file contains or the number of PDF files to be used.
      You may use any hard copies or written materials too.

    8. The Browser should only be used to access LumiNUS. Accessing other websites (including the module website) is not allowed.
      It turns out that the textbook PDF file plays better with browsers than PDF viewers. Therefore, viewing the textbook PDF in the browser is allowed. But other PDFs should be opened in a PDF viewer.
      The reason for restricting the use of the browser to view PDF files is that allowing it makes it harder for invigilators to detect students accessing unauthorized websites.

    9. Use Microsoft Teams or Zoom private messages to communicate with the invigilator.

    10. The quiz will not appear on LumiNUS until a few minutes before we release the password. Wait until we announce that the quiz is available to see.

    11. When the invigilator asks you to do an identity check, turn your face towards the camera, move closer to the camera, remove face mask (if any), and hold the pose until the invigilator tells you to go back to your working position.

    12. If you have a doubt/query about a question, or want to make an assumption about a question, please write it down in the 'justification' text box. Do not try to communicate those with the invigilator during the exam. We'll take your doubt/query/assumption into account when grading. For example, if many had queries about a specific question, we can conclude that the question is unclear and omit it from grading.

    13. If you encounter a serious problem that prevents you from proceeding with the exam (e.g., the password to open the quiz doesn't work), PM the invigilator using MS Teams (failing that, use Zoom chat).

    14. If your computer crashed/restarted during the exam, try to get it up again and resume the exam. LumiNUS will allow you to resume from where you stopped earlier. However, note that there is a deadline to finish the quiz and you will overrun that deadline if you lose more than 5 minutes due to the computer outage.

    Format

    • The exam will be divided into 2 sections.
    • Each section is worth 15 marks. There are no negative marks in the exam.
    • Both sections should be completed in one sitting. Duration: 1 hour

    Final exam - Section 1

    • The first section will contain 30 True/False questions.
    • Questions will appear in random order.
    • You will not be able to go back to previous questions.
      Reasons:
      1. to minimize opportunities for collusion
      2. not unreasonable for the materials tested and the proficiency level expected -- i.e., when using this knowledge in a real life SE project discussion, it will be rare for you to go back to revise what you said earlier in the discussion
    • Recommended duration: 23 minutes (recommended: allocate 40 seconds per question, which gives you a 3 minutes buffer)
    • You are not required to give a justification for your answer in this section.

    Final exam - Section 2

    • The second section will contain 15 MCQs
    • Questions will appear in random order.
    • You will not be able to go back to previous questions.
      Reasons:
      1. to minimize opportunities for collusion
      2. not unreasonable for the materials tested and the proficiency level expected -- i.e., when using this knowledge in a real life SE project discussion, it will be rare for you to go back to revise what you said earlier in the discussion
    • Recommended duration: 35 minutes (recommended: allocate 2 minutes per question, which gives you a 5 minutes buffer)
    • You are required to give a justification for your answer in this section. The question will specify what should be included in the justification. Answers without the correct justification may not earn full marks. However, we'll give full marks up to two correct answers that do not have justifications (or that have incorrect justification) (to cater for cases where you accidentally proceeded to the next question before adding the justification).

    Exam briefing, mock exam, practice exam paper

    • There will be an exam briefing in the penultimate lecture. It will include a minimal mock exam, just to help you understand the structure.
    • You will be given a practice exam paper (of proportionally reduced size of the full paper) to help you practice timing. That practice paper will be released at least one week before the exam.

    Exam briefing, mock exam, practice exam paper

    • There will be an exam briefing in the penultimate lecture. It will include a minimal mock exam, just to help you understand the structure.
    • You will be given a practice exam paper (half the size of the full paper) to help you practice timing. That practice paper will be released at least one week before the exam.

    Admin Apdx F: Handling Team Issues : OPTIONAL

    If your team is facing difficulties due to differences in skill/motivation/availability among team members,

    • First, do not expect everyone to have the same skill/motivation level as you. It is fine if someone wants to do less and have low expectations from the module. That doesn't mean that person is a bad person. Everyone is entitled to have their own priorities.

    • Second, don't give up. It is unfortunate that your team ended up in this situation, but you can turn it into a good learning opportunity. You don't get an opportunity to save a sinking team every day 😃

    • Third, if you care about your grade and willing to work for it, you need to take initiative to turn the situation around or else the whole team is going to suffer. Don't hesitate to take charge if the situation calls for it. By doing so, you'll be doing a favor for your team. Be professional, kind, and courteous to the team members, but also be firm and assertive. It is your grade that is at stake. Don't worry about making a bad situation worse. You won't know until you try.

    • Finally, don't feel angry or 'wronged'. Teamwork problems are not uncommon in this module and we know how to grade so that you will not be penalized for others' low contribution. We can use Git to find exactly what others did. It's not your responsibility to get others to contribute.

    Given below are some suggestions you can adopt if the project work is not going smooth due to team issues. Note that the below measures can result in some team members doing more work than others and earning better project grades than others. It is still better than sinking the whole team together.

    • Redistribute the work: Stronger programmers in the team should take over the critical parts of the code.

    • Enforce stricter integration workflow: Appoint an integrator (typically, the strongest programmer). His/her job is to maintain the integrated version of the code. He/she should not accept any code that breaks the existing product or is not up to the acceptable quality standard. It is up to others to submit acceptable code to the integrator. Note that if the integrator rejected your code unreasonably, you can still earn marks for that code. You are allowed to submit such 'rejected' code for grading. They can earn marks based on the quality of the code.

    If you have very unreliable or totally disengaged team members :

    • Re-allocate to others any mission-critical work allocated to that person so that such team members cannot bring down the entire team.
    • However, do not leave out such team members from project communications. Always keep them in the loop so that they can contribute any time they wish to.
    • Furthermore, evaluate them sincerely and fairly during peer evaluations so that they do get the grade their work deserves, no more, no less.
    • Be courteous to such team members too. Some folks have genuine problems that prevent them from contributing more although they may not be able tell you the reasons. Just do your best for the project and assume everyone else is doing their best too, although their best may be lower than yours.

    Admin Apdx C (FAQs) → Why so many submissions? : OPTIONAL

    Why so many submissions? : OPTIONAL

    The high number of submissions is not meant to increase workload but to spread it across the semester. Learning theory and applying them should be done in parallel to maximize the learning effect. That can happen only if we spread theory and 'application of theory' (i.e., project work) evenly across the semester.

    In addition, spreading the work across the semester aligns with the revisiting concepts at spaced intervals'spaced repetition' technique that we apply in this module to increase your retention of concepts learned.

    Admin Apdx C (FAQs) → Why submission requirements differ between CS2113T and CS2101? : OPTIONAL

    Why submission requirements differ between CS2113T and CS2101? : OPTIONAL

    They do, and they should.

    CS2113T communication requirements are limited to a very narrow scope (i.e., communicate about the product to users and developers). CS2101 aims to teach you technical communication in a much wider context. While you may be able to reuse some of the stuff across the two modules, submissions are not intended to be exactly the same.