CPSC 210_101_2016W

Course Title: 
Software Construction
Instructor(s): 
Course Info
Course Number: 
CPSC 210
Section: 
101
Term: 
Term 1
Location
Building: 
DMP
Room: 
310
Dates
Year: 
2016 Winter
Days: 
MWF
Time (start): 
12:00 PM
Time (end): 
1:00 PM
Date (start): 
Sep 06, 2016
Date (end): 
Dec 02, 2016

Design, development, and analysis of robust software components. Topics such as software design, computational models, data structures, debugging, and testing.

Extended Description: 

The following broad topics will be covered. The main learning goals for each topic are also provided.

Data Abstraction

  • describe how data abstraction makes possible the construction of larger software systems
  • specify, use, test and implement a data abstraction in Java

Control Flow Models

  • produce inter- and intra-method control flow diagrams from Java code

Type Hierarchies, Polymorphism and Dispatching

  • trace the execution of Java source code that uses polymorphism, inheritance and dynamic dispatching
  • determine if one type is substitutable for another

Robust Data Abstractions

  • specify, test and implement a robust data abstraction using exceptions

Object-Oriented Design

  • record the design of an existing system using a UML class diagram
  • extract UML sequence diagrams from existing code
  • express a UML class diagram as a Java program
  • make effective use of the Java Collections Framework

Design Patterns

  • apply the Composite, Observer, and Iterator patterns to a given design problem

a place of mind, The University of British Columbia

 

ICICS/CS Building 201-2366 Main Mall
Vancouver, B.C. V6T 1Z4 Canada
Tel: 604-822-3061 | Fax: 604-822-5485
General: help@cs.ubc.ca
Undergrad program: undergrad-info@cs.ubc.ca
Graduate program: grad-info@cs.ubc.ca

Emergency Procedures | Accessibility | Contact UBC | © Copyright The University of British Columbia