Computer Science Major

MATH 1122Applied Calculus II3
CPSC 1101Introduction to Computing3
CPSC 1131Fundamentals of Programming3
CPEG 2245
Digital Design I
and Digital Design I Lab
CPSC 2304Web Development3
CPSC 2231
Programming Workshop
and Programming Workshop Lab
CPSC 3333Introduction to Cybersecurity3
CPSC 4305Mobile Application Development3
CPSC 4314Network Security3
CPSC Elective3
Total Credits32

The Plan of Study is subject to change based upon course availability.

Plan of Study Grid
First Year
HIST 1100 Origins of the Modern World Since 1500 3
Visual and Performing Arts Course 3
ENGL 1001 Introduction to Rhetoric and Composition 3
MATH 1011 Precalculus 3
RLST 1001 Religion and the Critical Mind 3
CPEG 2245 Digital Design I 3
BIOL 1076 Environmental Science 3
CPSC 1101 Introduction to Computing 3
ENGL 2001 Rhetorics that Matter: Personal, Public, Political 3
MATH 1121 Applied Calculus I 3
Second Year
PHIL 1101 Introduction to Philosophy 3
CPSC 1131 Fundamentals of Programming 3
MATH 1122 Applied Calculus II 3
CPSC 2231
Programming Workshop
and Programming Workshop Lab
CPSC 4314 Network Security 3
COMM 1101 Argument and Advocacy 3
CPSC 2232
Data Structures
and Data Structures Lab
CPSC 2250L Computer Science Sophomore Clinic 1
CPSC 2304 Web Development 3
CPSC 3333 Introduction to Cybersecurity 3
MATH 1123 Intermediate Calculus 3
 Total Credits63

CPSC 1101 Introduction to Computing    3 Credits

In this course, students learn computational problem-solving techniques through the process of design, implementation, testing, and documentation using the programming language Python. The main ideas of computing are explored and students learn the most essential information about computers and technology in today's digital world and the latest computing trends and skills. Students will get an understanding of the breadth of computing as a discipline and how it exists in the world by identifying computing applications in society and exposing them to a variety of computing topics. Previously CS 0101.

CPSC 1131 Fundamentals of Programming    3 Credits

Attributes: BUEL Business Elective, ENPC Digital Journalism Production Component

This course introduces programming constructs and techniques in a logical progression beginning with small problems and basic algorithms through larger scale programs and design. While not an object oriented course, classes and objects are used in an ancillary capacity while working on broader topics of software architecture. Complete programs will be designed, coded, and debugged in both Java and the C programming language, developing skills necessary to work with more complex software systems. Previously CS 0131.

CPEG 2245 Digital Design I    3 Credits

Corequisite: CPEG 2245L.

An introduction to computer hardware design. Topics include: digital design principles, Boolean algebra, combinational logic design, sequential logic design, registers, counters, memory, multiplexers, finite state machines, radix conversion, and programmable logic devices. Students learn to write, implement, and simulate elementary digital design. Previously CR 0245.

CPEG 2245L Digital Design I Lab    1 Credit

Fee: $105 Engineering Lab Fee

Corequisite: CPEG 2245.

This lab course covers the practical aspects of digital logic design. Students design and implement logic circuits using techniques taught in CPEG 2245. Students gain experience using state of the art design software and development boards, which use modern field programmable gate array (FPGA) technology. Previously CR 0245L.

CPSC 2250L Computer Science Sophomore Clinic    1 Credit

Corequisite: CPSC 2304.

This sophomore clinic provides faculty guidance and supervision beyond the scope of existing courses. Students learn how to develop and structure their deliverables, as well as how to use computer science tools in the context of real-world or research projects. Previously CS 0250L.

CPSC 2304 Web Development    3 Credits

Attributes: ENPC Digital Journalism Production Component

Prerequisite: CPSC 1131.

This course introduces the student to developing applications for use on the World Wide Web. Students learn basic n-tier concepts for designing distributed applications and gain hands on experience through the construction of web-based applications. The course covers concepts that allow communication over the Web. This includes designing and authoring web pages, markup languages, the client-side document object model, usability, search engine optimization, and client-side dynamic web pages. Graduate equivalent: SWEG 5304. Previously CS 0304.

CPSC 2231 Programming Workshop    3 Credits

Corequisite: CPSC 2231L.

Prerequisite: CPSC 1131.

This course covers advanced programming concepts in one or more current programming languages, including syntax and theories. It prepares students for adapting to various programming environments and coding in an efficient manner. Lab work will accompany the course. Previously CS 0231.

CPSC 2231L Programming Workshop Lab    1 Credit

Corequisite: CPSC 2231.

This lab accompanies the Programming Workshop course for hands-on practice with course concepts. Previously CS 0231L.

CPSC 3333 Introduction to Cybersecurity    3 Credits

Prerequisite: CPSC 2231.

In this course, students will be given an extensive overview of the various components of cybersecurity, including software development, operating systems, databases, and networks. Students will learn cybersecurity concepts, issues, and tools that are critical in solving problems in the computing security domain. The course will use lectures, reading assignments, and interactive lab exercises to reinforce the concepts that are introduced. Graduate equivalent: SWEG 5333. Previously CS 0333.

CPSC 4305 Mobile Application Development    3 Credits

Prerequisite: CPSC 1131.

This project-oriented course examines the fundamental aspects of mobile computing, application architecture, and mobile application design and development. Students will learn application development on the Android platform. Students will complete a hands-on project building a prototype mobile application. Topics include user interface design and building, input and data handling, and network techniques and GPS and motion sensing. Students are expected to work on a project that produces a professional-quality mobile application. Projects will be deployed in real-world applications. Graduate equivalent: SWEG 5305. Previously CS 0305.

CPSC 4314 Network Security    3 Credits

This course is intended for individuals who need an understanding of the client-server environment, with any emphasis on network security. The OSI Model, network concepts, and network architecture are discussed. The components that make up a network, including cabling, wiring hubs, file servers, bridges, switches, routers, network interface cards, network operating systems, and network software and hardware configurations are discussed. Network architectural concepts, wide area networks, remote access, and segmentation are discussed. Operating systems will be discussed and demonstrated. Featured is the seven-layer OSI model, the foundation of today’s communication protocols. Students will work with various security protocols and configure routers and switches with security methods. Previously CS 0314.