Summer Semester 2000
|
OVERVIEW |
INSTRUCTOR: W. Michael McCracken Office: 265 College of Computing Phone: (404) 894-6172 Email: mike@cc.gatech.edu Office Hours: by appointment, for appointment, send mail to gwen@cc.gatech.edu |
|
Lab Assistants: TBA |
|
|
TEXTBOOKS Code Complete: A Practical Handbook of Software Construction (Required) Author: Steve McConnell, Microsoft Press, 1993 |
General catalog course description
: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 applicationsWhat this class is all about:
CS2331 is designed to be an adjunct to CS2330. The two classes combined are intended to give you a variety of skills and knowledge with an emphasis on learning concepts and tools that will be useful to you in later courses and your career. This class emphasizes the tool using and software construction parts of the two courses. You will be expected to attend all lectures and labs in this class. If you miss one, you may fall behind as the concepts covered build on the work of prior labs. We intend that by the time you finish this class and CS 2340/1 next semester that you will be acquainted with a variety of programming models. You will know how to design relatively simple programs and how to debug and test them. We expect that you will achieve a level of competence that we refer to as programming without fear. What that means is we expect you will be able to solve most programming problems and solve them correctly, even if you havent seen them before. As you might guess, CS2330 emphasizes the knowledge required to solve these problems and CS2331 emphasizes the skills.
How this class operates:
The class emphasizes independent study and requires you to actively be engaged in the learning process. What that means is that we will give you guidance and introductory information on the subject matter, but we expect you will acquire the skills through practice. Skill is only learned through practice. The lectures are set up to give you an introduction and overview of the topic of the week, and the labs are used to give you supervised practice in use of the topic.
The secrets to success:
This class is intended to give you a set of skills that you will use for the rest of your career. If there are things we are not covering that you think are important speak up, we want feedback.
The class process:
There are two or three things we want you to keep while in this class. One is a diary of your experiences and mistakes. We will randomly check these things. We would suggest you go out and buy yourself a little notebook, construct a text file or web page so that you can always write down what you learned and what mistakes you made. We feel it is imperative that you keep this diary, as we feel in skill development, learning from your mistakes is a big part of acquiring advanced skills. If you cant remember the exact error you made, then it is difficult to overcome those mistakes.
The second thing we want you to keep is a more formal time and error log that we will introduce in the fourth week. This can be combined with your diary if you wish.
You should note that the syllabus has quizzes scheduled. I may or may not give a quiz on the appointed day. You need to come to class and see if there is a quiz, though they will generally fall into the range of the time I show it. The point of all that is to at least get you to come to class to see what we are talking about.
I will fill in the missing pieces of this page as things get defined over the semester.
|
Week |
Date |
Topic |
Readings |
Prepared Lecture |
Deliverable |
|
|
1 |
5/17 |
Lecture: Course Overview |
Policies |
|
|
|
|
|
5/18 |
Lab: No lab this week |
|
|
|
|
|
2 |
5/24 |
Lecture: Errors |
Chap 1-3 & 25.4 |
|
|
|
|
|
5/25 |
Charrette 1 |
|
|
|
|
|
3 |
|
|
|
|
||
|
|
5/31 |
Lecture: Constructive Programming |
Chap 4-7 |
|||
|
|
6/1 |
Lab2: Programming for readability and understandability |
|
|
|
|
|
4 |
|
|
|
|
||
|
|
6/7 |
Lecture: Debugging |
Chap 26 |
|
||
|
|
6/8 |
Lab3: Debugging Lab A |
|
|
|
|
|
5 |
|
|
|
|
|
|
|
|
6/14 |
Lecture: Personal Software Process |
Chap 31 & 32 |
|
||
|
|
6/15 |
Lab4: Debugging Lab B |
|
|
|
|
|
6 |
|
|
|
|
||
|
|
6/21 |
Quiz #1 |
|
|
|
|
|
|
6/22 |
Lab: No Lab |
|
|
|
|
|
7 |
|
|
|
|||
|
6/28 |
Lecture: Black Box Testing |
Chap 25 |
|
|
|
|
|
|
6/29 |
Lab5: Black Box Testing |
|
|
|
|
|
8 |
|
|
|
|||
|
|
7/5 |
Lecture: White Box Testing |
Chap 25 |
|
|
|
|
|
7/6 |
Charrette #2 |
|
|
||
|
9 |
|
|
|
|||
|
7/12 |
Lecture: Integration Testing |
Chap 26 |
|
|
||
|
|
7/13 |
Lab 6: Testing Tools |
|
|
|
|
|
10 |
|
|
|
|||
|
|
7/19 |
Lecture: Complexity and Static Analysis |
Chap 19, 21, 24 |
|
||
|
|
7/20 |
Lab 7: |
|
|
|
|
|
11 |
|
|
|
|
||
|
|
7/26 |
Quiz #2 |
|
|
|
|
|
|
7/27 |
Lab 8: Charrette #3 |
|
|
|
|
|
12 |
7/31 |
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.
Individual grades for the course will be based on the following: diaries, quizzes, labs and charrettes. 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 |
|
Diaries |
20% |
|
Labs |
40% |
|
Quizzes |
20% |
|
Charrettes |
20% |
Georgia Tech Disclaimer
This page is maintained by: vernard@cc.gatech.edu
Last Modified on
Thursday, March 16, 2000.