# 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
Prereqs:
CSCI-1200 Data Structures
and
CSCI-2200 Foundations of Computer Science

# 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) |
2024 | Principles Of Software (4c) Shianne M. Hulbert Konstantin Kuzmin Seats Taken: 432/450 |  |
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 |  |  |