CSE 15L - Software Tools and Techniques Laboratory

Units: 

 2

Hands on exploration of software development tools and techniques.  Investigation of the scientific process as applied to the development and debugging of programs. Introduction to and practice with specific software tools and techniques to aid in coherent software development processes. Emphasis is on weekly hands-on laboratory experiences including pre- and post-lab work, development of laboratory notebooking techniques as applied to software design.

Course Objectives: 

  • New CSE students should read CSE Course Placement Advice for assistance in choosing which course to take first.
  • Students must enroll in CSE 12 and CSE 15L the same quarter, as they are co-requisites.
  • Students admitted prior to Fall 2007 may use CSE 15L in place of the Physics Lab requirement (Physics 2BL, 2CL or 2DL).
  • CSE Bioinformatics majors do not need to take CSE 15L.
  • Questions: ugradinfo@cs.ucsd.edu

Course information - The scientific process as applied to the development and debugging of programs at the lower division level is an important component of Computer Science education. Basic debugging of a program which does not perform as expected can be defined as follows:

  1. the identification of a hypothesis for why the observed behavior does not match desired behavior
  2. followed by a process which enables the testing and valification of that hypothesis
  3. followed by a change in the program illuminated by the confirmation of the hypothesis which brings program behavior in line with desired behavior. Explicit instruction of debugging from this pedagogical advantage point will be covered in CSE 15L.

Prerequisites: 

CSE 8B or CSE 11; students must enroll in CSE 12 and CSE 15L the same quarter, as they are co-requisites. Restricted to undergraduates. Graduate students will be allowed as space permits. Please see Prerequisites Page

Offered: 

Every quarter: Fall, Winter, and Spring.