TIC2002 (2019)
  • Full Timeline
  • Week 1 [Aug 12]
  • Week 2 [Aug 19]
  • Week 3 [Aug 26]
  • Week 4 [Sep 2]
  • Week 5 [Sep 9]
  • Week 6 [Sep 16]
  • Week 7 [Sep 30]
  • Week 8 [Oct 7]
  • Week 9 [Oct 14]
  • Week 10 [Oct 21]
  • Week 11 [Oct 28]
  • Week 12 [Nov 4]
  • Week 13 [Nov 11]
  • Textbook
  • Admin Info
  • Report Bugs
  • Forum
  • Announcements
  • File Submissions
  • repl.it link
  • Java Coding Standard
  • Duke repo
  • Week 1 [Aug 12] - Tasks

    Tasks you need to do in the week will appear in this tab.

    1. Install Java before the lecture
    2. Create a GitHub account
    3. Submit the pre-module survey by Saturday 2359
    4. Attend the lecture
    5. Submit weekly exercises

    0 Learn about the module and the website

    Relevant: [Admin About the module ]

     

    TIC2002 Introduction to Software Engineering contains roughly a 50-50 balance of theory and practice of SE. It covers the knowledge/skills necessary to do small software projects, and as such, it is a first step towards preparing you to work in bigger SE projects, which will be done in later modules.

    Relevant: [Admin Using the website ]

     

    The Schedule page is your main source of information for TIC2002. You will need to refer to it weekly. For an overview of the full schedule, refer to the Full Timeline page.

    More details for the upcoming weeks will be added as the weeks progress. In general, information given for more than 1 week into the future should be treated as tentative.

    Browser Compatibility

    Most of this will work on most mainstream Browsers, but embedded slides are best viewed using Chrome.

    Information Layers

    This book tries to layer information so that readers can decide to omit less important layers if they wish to.

    More important information are in bold or highlighted while less important information are dimmed or in collapsed panels such as the below.

    Less important info

    Less important info

    Less important info

    Tabs indicate alternative formats of the same content (e.g. video vs text). You can choose the one you like and ignore the other tabs.

    Some textual description of X

    Video describing X

    Dotted underlines indicate tool tips (activated by hovering over it) and dashed underlines indicate modal windows (activated by clicking) containing additional information.

    Additional information
    Additional information

    This website uses a star rating system to indicate the priority level of contents.

    Relevant: [Admin Module Expectations → Star Rating System ]

     

    Star Rating System

    We use a star rating system indicate the importance of module components. Start with things that are rated one-star and progress to things with more stars. Things rated four stars are optional.

    Star ratings for topics (and textbook sections):

    • One-star topics : The topics you need to achieve just to keep up with the module. We recommend you to achieve these topics if you want to pass the module (i.e. up to a C grade).

    • Two-stars topics : Can get you up to a B+.

    • Three-stars topics : Can get you up to an A+.

    • Four-stars topics : Optional. Not examinable. For your own knowledge.

    • topics marked with two icons e.g., : , : , : , : are relevant topics you are expected have achieved in prerequisite modules. They are given for reference only. The number of stars indicate the progression of topics, similar to the star rating system above i.e., one-star prerequisite topics are the most basic and the most important. four-star pre-requisite topics can be ignored without affecting CAP.

    Conventions Used

    Shorthand Headings

    Meaning of some shortened headings:

    • What : the meaning of the concept in concern

    • Why : the motivation behind the concept in concern

    • How : the usage of the concept in concern

    • When : the pros and cons of the concept in concern, when to use the concept

    Boxed-Text Styles

    additional info warning positive message important message an error to avoid tip definition

    Meaning of Icons

    extra : tangential info, can be ignored if not interested
    : direct link to the LO. Ctrl+Click to open the LO in new window/tab.
    : learning outcomes
    : prerequisite learning outcome
    : examples
    : resources
    : exercises
    : printable version
    : preview/more info
    : video
    >_ : a command to be run in a terminal
    : textual description
    : slides
    : output produced by running code
    question without answer
    question with answer

    : tasks to do
    : lecture
    : tutorial
    : evidence you can use to prove you have achieved a learning outcome
    ⏰ : deadline

    Searching for keywords

    Use the search box in the top navigation bar to search for keywords in the website pages. If you cannot find the content related to a keyword, let us know by posting in the forum so that we can add the missing keyword to our search index.

    Saving as PDF Files

    1. Use Chrome to load the page you want to save as pdf.

    2. Click on the Print option in Chrome’s menu.

    3. Set the destination to Save as PDF, then click Save to save a copy of the file in PDF format. For best results, use the settings indicated in the screenshot below.

    Printing Textbook Content

    Printer-friendly version (indicated by icon) have been provided for each chapter and the whole book. You can use them for saving as pdf files or printing.

    Making this Website Better

    This website was generated using the MarkBind software developed at NUS. We welcome bug reports, suggestions, and contributions, to be submitted at the website issue tracker.

    1 Install Java before the lecture

    • See the panel below:

    Relevant: [Admin Programming Language ]

     

    This module uses Java. It assumes you are familiar with C++ basics and provides lessons to help you transition from C++ to Java.

    Install JDK 11 in your computer.

    2 Create a GitHub account

    • See the panel below:

    Relevant: [Admin Tools → GitHub ]

     

    GitHub

    We'll be using GitHub for code hosting (compulsory).

    Create a free GitHub account if you don't have one already.

    3 Submit the pre-module survey by Saturday 2359

    • Submit the pre-module survey, available on LumiNUS

    4 Attend the lecture

    • There is no tutorial in this week. The lecture will start at 7.30pm.

    Relevant: [Admin Lectures ]

     

    Tuesdays 7.30-9.30pm
    SR2 (COM1-02-04)

    Lectures will not be webcast as the venue does not have a webcast facility. Please bring your laptop to the lecture as you will need to be using it for the most part of the lecture.

    Lecture slides are not suitable to be used as reference materials as they have been optimized for lecture delivery instead. Use the textbook (not slides) as your main reference. Slides will be uploaded to LumiNUS after the lecture, usually by Wednesday.
    If slides are not in LumiNUS by the expected times, please feel free to ping the lecturer.

    5 Submit weekly exercises

    • As you learn the weekly topics, submit Week 1 programming exercise on repl.it. See the panel below for more info. More instructions about this will be provided during the lecture.

    Relevant: [Admin Programming Exercises ]

     

    In some weeks, there will be some programming exercises for you to submit (on Repl.it). You should do the exercises as you learn the topics. Focus on learning the topic rather than finishing the exercises. While these are exercises provided to self-test your knowledge, the more important thing is to read and understand the topic content. Furthermore, not all topics are tested by exercise.

    Relevant: [Admin Tools → repl.it ]

     

    repl.it

    We'll be using Repl.it for coding exercises (compulsory).

    Relevant: [Admin Getting Help ]

     

    If you face difficulties/doubts while learning the weekly topics, doing weekly exercises/tasks

    • you can post in the module forum
    • email prof at damith[at]comp.nus.edu.sg
    • ask for prof's help during next week’s tutorial hour