CSP203: Software Systems Lab
Semester II, 2017-18

Lab Timing: Monday 2:00 PM - 5:35 PM

Venue: Lab 2, Transit Campus

Objectives

Objective of this course is to train students to use unix/programming environment anf basic tools required for software development. This goal is achieved by two ways:
  • Regular weekly lab exercises.
  • A software project.
  • Main Topics

  • HTML/CSS/ViM
  • MySQL/PhP
  • Version control system
  • Latex
  • Shell + GNUPLOT
  • Threads
  • Sockets
  • Prerequisite

    CSL201 (Data Structures).

    Grading Policy


    Two software development marathons: 20%
    Lab Exercises (top n-1 labs): 40%
    Project: 40%
    A student must score at least 50% # s to pass the course.

    Attendance Requirement

    You need to be present in the labb during the lab hours. You lab submission will only be evaluated if you are present during the lab hours.

    Textbooks

    There is no standard textbook for the course. Students are supposed to learn from abundant resources available on the Internet. I will also provide the web links of the relevant resources during each lab.

    Language/Tools

    All lab exercises will be done on Ubuntu machines. Following is the tentative list of tools to be used during the labb hours: MySQL, Pearl, Shell terminal, Browser, C++, Python, Pearl, Android programming, etc.

    Teaching Assistant

    Sanatan Sukhija (Email: sanatan@iitrpr.ac.in)

    Contact Me

    By appointment at
    Room No. 358, Academic Building, IIT Ropar

    Feedback Form

    Tentative Lab Schedule

    Week Date Task Resources
    Week 1
    Jan15-Jan19
    HTML/CSS/Bootstrap Basic VI Commands, VI Editor, W3School
    Week 2
    Jan22-Jan2
    HTML/CSS/Bootstrap Bootstrap tutorial
    Week 3
    Jan29-Feb2
    MySQL + PhP WeResourse, Connect MySQL to PhP, DB Server installation on Ubuntu 1, Ubuntu 2 , PostgrateSQL
    Week 4
    Feb5-Feb9
    MySQP + PhP MySQL and PhP
    Week 5
    Feb12-Feb16
    Latex + Subversion System + Project Proposal GIT and GitHub , LaTeX
    Week 6
    Feb19-Feb23
    Latex + Subversion System + Project Proposal  
    Week 7
    Feb26-Mar2
    Mid-semester exam  
    Week 8
    Mar5-Mar9
    Shell + GNUPLOT  
    Week 9
    Mar12-Mar17
    Shell + GNUPLOT  
    Week 10
    Mar19-Mar23
    Software Development Marathon 1  
    Week 11
    Mar26-Mar30
    Threads + Sockets + Design Document  
    Week 12
    Apr2-Apr6
    Threads + Sockets + Design Document  
    Week 13
    Apr9-Apr13
    Software Development Marathon 2  
    Week 14
    Apr16-Apr20
    Project presentation  
    Week 15
    Apr23-Apr27
    Project presentation  
    Week 16
    Apr30-May4
    Final project demo