# Principles Of Software

## CSCI-2600

A study of important concepts in software design, implementation, and testing. Topics include specification, abstraction with classes, design principles and patterns, testing, refactoring, the software development process, GUI and event-driven programming, and cloud-based programming. The course also introduces implementation and testing tools, including IDEs, revision control systems, and other frameworks. The overarching goal of the course is for students to learn how to write correct and maintainable software.

4 credits
Cross-listed with:
CSCI-2600 Principles Of Software
Prereqs:
CSCI-1200 Data Structures
and
CSCI-2200 Foundations Of Computer Sci

# Past Term Data
Offered
Not Offered
Offered as Cross-Listing Only
No Term Data
Simple View
Detailed View

| Spring | Summer | Fall
--- | --- | --- | ---
| (Session 1) | (Session 2) |

2026

Principles Of Software (4c)

- Neha Keshan
- Shianne M. Hulbert
- Mark Richard Gilder

Seats Taken: 166/240

2025

Principles Of Software (4c)

- John Sturman
- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 303/360

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 36/160

Principles Of Software (4c)

- Mark Richard Gilder

Seats Taken: 75/64

2024

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 448/450

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 110/200

2023

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 270/300

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 80/128

2022

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 246/300

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 99/128

2021

Principles Of Software (4c)

- Carlos A Varela
- Shianne M. Hulbert

Seats Taken: 254/260

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 101/128

2020

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 183/260

Principles Of Software (4c)

- Shianne M. Hulbert
- Konstantin Kuzmin

Seats Taken: 113/120

2019

Principles Of Software (4c)

- Carlos A Varela
- Shianne M. Hulbert
- William Albert Thompson

Seats Taken: 201/260

Principles Of Software (4c)

- Shianne M. Hulbert
- Erica Ann Eberwein
- Konstantin Kuzmin

Seats Taken: 61/100

Principles Of Software (4c)

- William Albert Thompson

Seats Taken: 143/260

2018

Principles Of Software (4c)

- Konstantin Kuzmin

Seats Taken: 240/260

Principles Of Software (4c)

- William Albert Thompson

Seats Taken: 202/260

2017

Principles Of Software (4c)

- William Albert Thompson

Seats Taken: 168/160

Principles Of Software (4c)

- Ana L. Milanova

Seats Taken: 108/140

2016

Principles Of Software (4c)

- William Albert Thompson
- David Eric Goldschmidt

Seats Taken: 139/140

Principles Of Software (4c)

- David Eric Goldschmidt
- William Albert Thompson

Seats Taken: 91/100

2015

Principles Of Software (4c)

- Ana L. Milanova

Seats Taken: 33/50

Principles Of Software (4c)

- David Eric Goldschmidt
- Ana L. Milanova

Seats Taken: 87/100

2014

Principles Of Software (4c)

- Ana L. Milanova

Seats Taken: 27/25

2013 |  |  |
2012 |  |  |
2011 |  |  |
2010 |  |  |
2009 |  |  |
2008 |  |  |
2007 |  |  |
2006 |  |  |
2005 |  |  |
2004 |  |  |
2003 |  |  |
2002 |  |  |
2001 |  |  |
2000 |  |  |
1999 |  |  |
1998 |  |  |