joint-top-nav
Xiao Qin                                                                                
COMP2710 Software Construction - Lectures
Announcements  

Lectures  

Course Information  

Syllabus  

Course Objectives  

Academic Integrity  

Assessment  

Getting Help  

Office Hours  

Grades  

Undergraduate Research Assistantship

Photo by llnl photos on Flickr.

Week Topics Slides Reading Assignments
Week 1a 1/11 Introduction Lec01a.ppt  
Week 1b 1/13

C++ Basic 1

Lab Setup

Lec01b.ppt

Java vs C++

helloreader.cpp

Unix.ppt

ch1.1-1.2
Week 1b 1/15

C++ Basic 2:

Expressions, Assignment Statements. 

Lec01c.ppt

Generate a Random Number

rand.cpp

constant.cpp

Generate a Random Number

Ubuntu on Virtualbox PC

 

ch1.1-1.5 Homework 1
Week 2b 1/20 cin/cout, Flow of Control. Lec02b.ppt Ch2.1-2.3; pp.44-81;
Ch12.1, pp.509-523
Homework 1 Due
Week 2c 1/22 Functions Lec02c.ppt

doghouse.cpp

Ch3 pp.89-124 Homework 2
Week 3a 1/25 File I/O 1 Lec03a.ppt

simplefile.cpp

infile.txt

inputfilename.cpp

inputfilenamev2.cpp

Ch12.1  
Week 3b 1/27 File I/O 2

Testing

Lec03b.ppt Ch12.2   
Week 3c 1/29 Software Design Lec03c.ppt   Homework 2 Due
Week 4a 2/1 Use Cases useCases.ppt    
Week 4b 2/3 Class Diagram Lec04b.ppt    
Week 4c 2/5 Data Flow Diagram Lec04c.ppt    
Week 5a 2/8 Lab 1 - Use Cases Lec05a.pdf    
Week 5b 2/10 Lab 1 - Design the Menu Class, testing 

Lec05b-getNumber.ppt

getnumber.cpp

Lec05b-Lab 1 Menu Class.pdf

vi.html Lab1 Design Portion  Due
Week 5c 2/12 No Class      
Week 6a 2/15 Structures & Classes: Basics

Lec06a.ppt
accountv1.cpp

accountv2.cpp

Ch6.1  
Week 6b 2/17 Array

Lec06b.ppt
fillup.cpp

maxscore.cpp
searcharray.cpp

Ch5.1-5.3  
Week 6c 2/19 Lab 1 - Design the Encounter Class Lec06c-Lab 1 Encounter.pdf   Lab1 Programming Portion  Due
Week 7a 2/22 Review Lec07a.ppt    
Week 7b 2/24

Call by Reference

Constructors

Lec07b.ppt

Ch4.1

Ch6.2

 
Week 7c 2/26 Midterm Exam      
Week 8a 3/1 Midterm Session      
Week 8b 3/3 Lab 2 - Design: Class Diagram Lec08b-Lab2 Class Diagram.pdf    
Week 8c 3/5 System Sequence Diagram Lec08c-SystemSequenceDiagram.pdf    
Week 9a 3/8 Lab 2: System Sequence Diagram Lec09a-Lab2-SysSeqD.pdf    
Week 9b 3/10 Function Overloading Lec09b.ppt Ch4 pp.133-160 Lab2 Design Portion  Due
Week 9c 3/12 Remove an element from a vector vectorerase.cpp

Vector.ppt

Lec09c.ppt

   
Week10 Spring Break      
Week 11a 3/22 Testing and Debugging  Lec11a-Testing.pdf

How to mask passwords? passwordc.cpp

Ch4.3 pp.166-172  
Week 11b 3/24  Project 3 - Introduction     Lab 2 Programming Portion  Due
Week 11c 3/26 Substitution Cipher  Lec11c-cipher.ppt    
Week 12a 3/29  Testing Drivers and Stubs  Lec12a-DriverStub.pdf    
Week 12b 3/31  Project 3 - Vigenere Cipher  Lec12b-Vigenere.pdf    
Week 12c 4/2 Debugging Lec12c-Debugging.ppt     Lab3 Design Portion Due
Week 13a 4/5 Separate Compilation Lec13a-SeparateCompilation.ppt    
Week 13b 4/7  Makefile makefile.ppt
Makefile Tutorial
A sample Makefile
   
Week 13c 4/9

Lab 3: 

getcolumn() 

Header Files

getcolumn.cpp

makefile_v2

dtime.h

dtime.cpp

timedemo.cpp

   
Week 14a 4/12  Project 3  Lec14a-Project3.pdf    Lab 3 Programming Portion  Due
Week 14b 4/14 Namespace Lec14b-Namespace.pdf
Week 14c 4/16 Pointers 1 Lec14c.ppt
Week 15a 4/19 Lab 4 Class Diagram Lec15a-Lab 4 Class Diagram.pdf
Week 15b 4/21 Lab 4 System Sequence Diagram Lec15b-Lab4-SequenceDiagram.pdf Lab 4 Design Portion Due
Week 15c 4/23 Pointers 2 Lec15c.ppt
Week 16a 4/26 Pointers 2 Lec16a.ppt
Week 16b 4/28

Linked Data Structures 1;

Namespaces

Lec16b.ppt

dayofyearns1.cpp

dayofyearns2.cpp

dayofyearns3.h

dayofyearns3.cpp

dayofyearns4.cpp

Week 16c 4/30 Linked Data Structures 2 Lec16c.ppt  Lab 4 Programming Portion  Due
Week 17a 5/3 Review for Final Exam Lec17a.ppt

Teaching Research
Publications Students
Software Pronounce My Name
Useful Links Personal
 

 

 

 
 
 
Updated on: 3/5/2010