CS 2331 - Programming Practicum I

Spring Semester 2000
Section A: Wednesday 10:00 P 11:00 AM
Section B: Wednesday 12:00 P 1:00 PM 
OVERVIEW INSTRUCTOR:  Allison Elliott Tew
  • Office:  113 College of Computing
  • Phone:  (404) 385-0595
  • Email:   allison@cc.gatech.edu 
  • Office Hours:  Open door policy and by appointment
  • Lab Assistants:  TBA
    TEXTBOOKS
  • The Practice of Programming (Required)
  • Authors:  Brian W. Kernighan & Rob Pike 
    Publication Info:  Addison-Wesley, 1999 
  • lex & yacc (Required)
  • Author:  John R. Levine, Tony Mason, & Doug Brown
    Publication Info  2nd Ed., O'Reilly &Associates, 1995 
  • Code Complete:  A Practical Handbook of Software Construction (Optional) 
  • Author: Steve McConnell
    Publication Info: Microsoft Press, 1993


    GENERAL INFORMATION

    General Catalog Course Description:
    [Co-Requisite: CS 2330] Methods for solving large programming problems. Techniques for debugging, quality assurance, and managing large programs. Tools for program construction.

    Learning Objectives:

  • Ability to evaluate and use alternative methods of constructing and testing code
  • Skill at debugging, and the use of debugging tools
  • Ability to apply testing techniques, including the generation of test cases, and the analysis of test results
  • Ability to measure code quality and estimate productivity
  • Ability to use higher-level programming tools
  • Ability to use tools and methods of constructing software systems for distributed applications


  • SYLLABUS
     

    Week Date Topic Readings Prepared Lecture Deliverable
    1
    01/12
    Lecture: Course Overview Policies      
     
     01/12 - 13
    Lab: No lab this week        
     2
     01/19
    Lecture: Cancelled        
     
     01/19 - 20
    Lab1: Introduction to gdb        
     3
     01/24
            Lab 1 Due
     
    01/26
    Lecture: Coding Practices & Standards (K&P) Chpt.1
    (M) Chpt. 9&18
    View
    .ppt .ps
    Lab 1 Due 
       01/26 - 27 Lab2: Programming Style        
     4
    01/31
             Lab 2 Due 
     
    02/02
    Lecture: Errors & Debugging (K&P) Chpt. 5
    (M) Chpt. 26
    View
    .ppt .ps
     
       02/02 - 03 Lab3: Debugging Lab A        
    5
     02/07
             Lab 3 Due 
     
    02/09
    Lecture: Personal Software Process  
    View
    .ppt .ps
     
      02/09 - 10 Lab4: Debugging Lab B        
     6
     02/14
            Lab 4 Due
     
     02/16
    Quiz #1        
     
     02/16 - 17
    Lab: Cancelled        
    7
    02/23
    Lecture: Black Box Testing (K&P) Chpt. 6
    (M) Chpt. 25
     
     
     
     
     02/23 - 24
    Lab5: Black Box Testing        
    8
    02/28
            Lab 5 Due
     
    03/01
    Lecture: Cancelled        
     
     03/01 - 02
    Charette #1       Charette #1 Due at end of Lab
     9
    03/08
    SPRING BREAK        
     10
    03/15
    Lecture: White Box Testing (K&P) Chpt. 6
    (M) Chpt. 25
    View
     .ppt .ps
     
     
     03/15 - 16
    Lab 6: White Box Testing        
     11
    03/20
            Lab 6 Due
     
    03/22
    Lecture: Unit & Integration Testing (K&P) Chpt. 6
    (M) Chpt. 25
    View
    .ppt .ps
     
     
     03/22 - 23
    Lab 7: lex        
    12
     03/27
            Lab 7 Due 
     
    03/29
    Quiz #2        
     
     03/29 - 30
    Lab 8A: yacc - Part I        
    13
    04/05
    Lecture: Cancelled       
     
    04/05 - 06
    Lab 8B: yacc - Part II        
     14
     04/10
            Lab 8 Due
     
    04/12
    Lecture: Static Analysis  (M) Chpt. 20 & 24
     View
     .ppt .ps
     
     
     04/12 - 13
    Lab 9A: Grand Finale - Part I        
     15
     04/19
    Lecture: Tool Building & Complexity  (M) Chpt. 20
     View
     .ppt .ps
     
     
     04/19 - 20
    Lab 9B: Grand Finale - Part II        
    16
     04/24
            Lab 9 Due
     
    04/26
    Quiz #3        
     
     04/26 - 27
    Lab Final - Charette #2       Charette #2 Due at end of Lab
    17
    05/01 - 05
    Finals Week         (No Exam Scheduled)

    The dates in the above schedule are subject to change so check here periodically. Check with the instructor in class to verify.


    GRADING POLICY

    Individual grades for the course will be based on the following: homework assignments, exams, group project work, and class participation. Students taking the class on a Pass/Fail basis will be required to earn a final letter grade of C or better to receive a passing grade.

    ACADEMIC HONESTY: All students are expected to maintain standards of academic integrity. This includes an expectation that unless specifically stated otherwise, all student deliverables will be individual efforts. All suspected cases of academic dishonesty will be reported and pursued.

  • Georgia Tech Academic Honor Code
  • All assignments are due at 11:00 PM on the due date, unless otherwise specified. Late assignments will not be accepted. All lab assignments must be submitted to earn a passing grade in the course. (i.e. failure to turn in a single lab assignment will result in an automatic F in the course.)
     

    CATEGORY PERCENTAGE
    Homework
    20%
    Labs
    45%
    Quizzes
    15%
    Charettes
    20%

    Georgia Tech Disclaimer
    This page is maintained by: vernard@cc.gatech.edu
    Last Modified on  Thursday, March 16, 2000.