Y2S2 Courses Information
A overview of my Year 2 Sem 2 courses (modules)
Here, I’m going to try out putting some of my notes on a blog instead of having it down either in a cheatsheet / LaTeX document or some document lying around in my storage. Usually, before the start of the semester, I collate an overview of all the modules (now rehashed by NUS as “courses”) that I will be taking so I know what to expect to learn.
Additionally, I expect to be taking my notes for CS2101 and CS2103T here, but it’s a developing story, so we will see.
- Update: Notes taken have been uploaded here on my blog! As a trial test, wasn’t too used to it, but it is something worth exploring in the future as well.
All the information I’ve referenced from NUS canvas, so hopefully it is updated!
CS2101 Effective Communication for Computing
Course combines communication skills with Software Engineering (CS2103T) and Object-Oriented Programming (CS2113T) content in some aspects.
- First half of semester: General communication skills & writing technical documents.
- Second half of semester: Oral presentations.
Topics:
- Persuasive frameworks and team dynamics, Power of your voice and your body language
- Emotional intelligence, Communication styles
- Feedback skills, Listening, questioning and answering skills
- Impromptu speech, Elevator pitch
- Rhetorical devices, product demonstration and pitch skills
- Writing technical documents: User guides and project portfolios
- Gibb’s reflective cycle framework and its application in unessay product presentations
CS2101 Assessment Breakdown
Assignment | Description | Weight |
---|---|---|
CA1 Oral Presentation | Indiv + team | 20% |
CA2 Oral Presentation | Indiv + team | 25% |
CA3 Written User Guide | Team (Written) | 15% |
CA4 Insightful Musings | Indiv (Oral &/ Written) | 20% |
Participation | Indiv (Oral & Written) | 20% |
No midterm nor final exams.
CS2103T Software Engineering
Course website: http://www.comp.nus.edu.sg/~cs2103
The syllabus is available in the course website:
- Textbook: shows a list of topics covered
- Schedule, Full Timeline: timeline of all activities
- Admin info: shows details of various aspects of the course
CS2103T is an introductory software engineering course, with 50-50 balance of basic SE theory knowledge and practical skills to gain before industry internships and higher-level project courses.
Some points about the course website:
- ⚡ Lightning bolts represents topic levels. Level-1 topics ⚡ are essential, level-2 ⚡⚡ and level-3 ⚡⚡⚡ are important, while level-4 ⚡⚡⚡⚡ are additional, helpful content that are not examinable.
- 🎓 grad caps represents relevant topics treated as prerequisite knowledge.
Additionally, a PDF version of the full textbook will be provided for use during exam reference.
CS2103T Assessment Breakdown
Assignment | Description | Weight |
---|---|---|
Team Project (tP) | Indiv + team | 50% |
Indiv Project (iP) | pseudo half/full | 15% |
Participation | Quiz, peer evals, attendance | 5% |
Finals | Open-book Exam | 30% |
Follow the course timeline / schedule: https://nus-cs2103-ay2324s2.github.io/website/schedule/timeline.html
For weekly quizzes, submit early (within four days of friday briefing) + answer > 70% correctly to earn participation marks.
CS2106 Introduction to Operating Systems
CS2106 introduces basic concepts in operating systems and links it with contemporary operating systems (eg. Unix/Linux and Windows).
Learning outcomes:
- understand how an OS manages computational resources for multiple users and applications, and the impact on application performance
- appreciate the abstractions and interfaces provided by OS
- write multi-process/thread programs and avoid common pitfalls such as deadlocks, starvation and race conditions
- write system programs that utilizes POSIX syscall for process, memory and I/O management
- self-learn and explore advanced OS topics
- understand important design principles in complex systems
CS2106 Assessment Breakdown
Assignment | Description | Weight |
---|---|---|
Labs | 4 Labs in total | 25% |
weekly quizzes | take-home, canvas | 3% |
tutorial attendance | - | 2% |
Midterm | March 9th | 20% |
Finals | Closed-book Exam, A4 cheetsheet | 50% |
CS2107 Information Security
Total: 12 Lectures, 9 Tutorials.
CS2107 as an introductory course on information security. Illustrates fundamentals of how systems fail due to malicious activities, and how they can be protected. Covers practices of secure programming and implementation. Topics covered include:
- classical/historical ciphers, introduction to modern ciphers and cryptosystems.
- ethical, legal and organisational aspects, classic examples of direct attacks on computer systems such as input validation vulnerability.
- examples of other forms of attack such as social engineering/phishing attacks, and the practice of secure programming.
Lecturer (sem 2): Prof Chang Ee Chien
Topics:
- Encryption
- Authentication (Password)
- Authenticity (Data Origin: Mac & Signature)
- PKI + Channel Security
- Network Security
- Access Control
- Call Stack and Secure Programming
- Web Security
- etc.
CS2107 Assessment Breakdown
Assignment | Description | Weight |
---|---|---|
Tutorial Attendance | - | 7% |
Lecture quizzes | 3 total | 8% |
Group Presentation | - | 5% |
CTFs | 2 Take-homes | 20% |
Midterm | - | 15% |
Finals | Open-book Exam | 45% |
CS3223 Database Systems Implementation
CS3223 studies the concepts and implementation issues related to database management systems.
- First part covers physical implementation of relational data model, including storage management, access methods, query processing, and optimization.
- Second part covers issues and techniques dealing with multi-user application environments, namely, transactions, concurrency control and recovery.
Topics:
- Introduction, Data storage
- Access Method I, II
- Sorting
- Query Evaluation I, II
- Query Optimization
- Transactions
- Concurrency Control I, II
- Crash Recovery
“If you miss a lecture, read the textboook”, Prof Chan Chee Yong. (Lectures follow textbook closely.)
CS3223 Assessment Breakdown
Assignment | Description | Weight |
---|---|---|
Class Participation | - | 3% |
Assignments | - | 30% |
Midterm | closed-book, A4 cs | 27% |
Finals | A4 cs, both examplify | 40% |
Seems like a tough and challenging but rewarding module.
Additional Links and Resources
See here to find lecturer details for each SoC course: https://www.comp.nus.edu.sg/cug/soc-sched/