Skip to Main Content

Computer Science

Bachelor of Science in Computer Science

Computer Science enables researchers, analysts and managers from virtually every sector and every industry to solve problems quickly and effectively.

Graduates of Bachelor’s degree programs in computer science can relate to the hardware, software, networks and data warehouses that serve as the platforms for our research, analysis and decision-making, but perhaps more importantly, graduates leave with the coding skills required to tailor industry software to the needs of their organizations.

Course Requirements

Code Course Name Credits
CMS305 Communicating in Liberal Studies 3

This course encourages students to develop professionally in fields related to the humanities with consideration of the unique viewpoints that study the human condition from the liberal studies vantage point. Focusing on the theme of 'professional conversations,' students are asked to think about what issues, debates, trends, etc., are happening in their fields of study and prospective careers. This course intends to equip students professionally and academically as they delve into their field of interest and think of their own contributions to their future profession. Pre-req: ENG124

CSC101 Introduction to Computer Science 3

This course introduces computational concepts that are fundamental to computer science and are useful for the sciences, social sciences, engineering, and digital arts. Students will write their own interactive programs to analyze data, process text, draw graphics, manipulate images, and simulate physical systems. Problem decomposition, program efficiency, and good programming style are emphasized throughout the course. No prior programming experience is assumed.

CSC210 Computer Networks/ Network Security 3

The purpose of this course is an in-depth exploration of data security controls and techniques. This course will examine theoretical concepts of network security implementation. This course will examine network security tools and techniques and include hands-on practical applications. Networking has enabled the emergence of mobile and cloud computing, creating one of the most important technological paradigm shifts in computing of the past decade. Coming advancements in wireless networking are expected to transform the technological landscape over the next decade by enabling an endless possibility of new applications, including the Internet of Things and wireless virtual reality, through the emergence of wireless networks with gigabit speeds. In order to play a role in this era of new network-powered advancements, students must have a thorough understanding of emerging networking topics, especially in the wireless domain.

CSC215 Data Structures 3

The purpose of this course is to explore abstract data types and their implementation. This course is motivated by problems that arise in a variety of disciplines; this course examines concepts and develops skills in solving computational problems. Topics include stacks, queues and trees, linked lists, as well as design and testing principles and software interfaces. Prerequisite: Introduction to Computer Science. Laboratory assignments are implemented using object-oriented programming techniques. Prerequisite: CSC101.

CSC220 Computation Structures 3

This course offers an introduction to the engineering of digital systems. Starting with MOS transistors, the course develops a series of building blocks — logic gates, combinational and sequential circuits, finite-state machines, computers and finally complete systems. Both hardware and software mechanisms are explored through a series of design examples. A good grasp of the material is essential for later courses in digital design, computer architecture and systems.

CSC300 Software Developments 3

This course considers software development as a systematic process involving specification, design, documentation, implementation, testing, and maintenance. Examines software process models; methods for software specification; modularity, abstraction, and software reuse; and issues of software quality. Students, possibly working in groups, design, document, implement, test, and modify software projects. Prerequisites: CSC101, CSC215

CSC301 Fundamentals of Information Assurance 3

This course builds a common cross-disciplinary understanding in the foundations of information assurance. Presents an overview of basic principles and security concepts related to information systems, including workstation security, system security, and communications security. It introduces information security via database technology, discusses legal infrastructure such as DMCA, Telecommunications Act, wire fraud, and other ethical issues. Covers security methods, controls, procedures, economics of cybercrime, criminal procedure, and forensics. It describes the use of cryptography as a tool, software development processes, and protection.

CSC302 Operating Systems/Operating Systems Programming 3

This class introduces the basic design of computing systems, computer operating systems, and assembly language using x86, FASM. It describes caches and virtual memory. It covers the interface between assembly language and high-level languages, including call frames and pointers, the use of system calls and systems programming to show the interaction with the operating system. Covers the basic structures of an operating system, including application interfaces, processes, threads, synchronization, inter-process communication, deadlock, memory management, file systems, and input/output control. Prerequisites: CSC215, CSC220.

CSC310 Algorithms 3

This class introduces the basic principles and techniques for the design, analysis, and implementation of efficient algorithms and data representations. It discusses asymptotic analysis and formal methods for establishing the correctness of algorithms, considers divide-and-conquer algorithms, graph traversal algorithms, and optimization techniques. Introduces information theory and covers the fundamental structures for representing data. It examines flat and hierarchical representations, dynamic data representations, and data compression. It concludes with a discussion of the relationship of the topics in this course to complexity theory and the notion of the hardness of problems. Prerequisites: CSC215, MAT221, MAT222.

CSC351 Automata, Computability & Complexity 3

This class introduces the theory behind computers and computing aimed at answering the question, “What are the capabilities and limitations of computers?” It covers automata theory, computability, and complexity. The automata theory portion includes finite automata, regular expressions, non-determinism, non-regular languages, context-free languages, pushdown automata, and non-context-free languages. The computability portion includes Turing machines, the Church-Turing thesis, decidable languages, and the Halting theorem. The complexity portion includes big-O and small-o notation, the classes P and NP, the P vs. NP question, and NP-completeness. Prerequisite: CSC220, CSC310.

CSC401 Applied Data Science 3

This class presents key concepts of applied data science. This is a survey of main topics in applied data science, with the goal of methods and tools used to analyze real life data and perform predictions using statistical and machine learning methods. Topics covered include data collection, data management, exploratory data analysis, statistical and machine learning, and communication.

CSC455 Capstone Project 3

Students write an in-depth research paper that reflects upon and analyzes the observations and experiences of the field study using the computer science literature to interpret and better understand those experiences. It requires students to give a twenty- to thirty-minute formal presentation on a topic of their research.

CSC499 Computer Science Internship 6

ENG114 Critical Reading & Response 3

This course introduces the integration of communication skills essential for effective reading, writing, speaking, and listening at the college level. In this writing intensive course, students develop composition skills to produce collegiate-level papers modeling rhetorical modes and thematic content in addition to strategies for reading complex texts; presentation skills for personal introductions, verbal summaries of readings and response writings, and peer review of papers; and basic technological skills for word processing, e-mail, and introductory-level online research.

ENG124 Research & Writing in the Disciplines 3

In this course students will apply the practices for effective reading and writing introduced in ENG 114 to the distinctive language and forms of various disciplines. This course lays the foundation for academic and professional research and stresses the use of appropriate and effective information sources. Readings for a variety of academic audiences will provide students with strategies to communicate in the sciences, business and technology, psychology, liberal studies, and the social sciences. Research and documentation skills appropriate to the disciplines are stressed. In addition to leading students through the research process from start to finish, this course will examine the many ramifications of academic honesty. Prerequisite: ENG 114

ENG134 Literary Genres 3

Selected readings in fiction, poetry, and drama introduce the student to literary types and techniques. These readings provide a basis for collegiate-level discussion, analysis, and the development of critical judgment. Building on the communications and research skills from earlier courses in the sequence, this course emphasizes continued practice in writing, and students complete a documented research paper using primary and secondary sources as one of the course writing assignments. Discussions and oral presentations based on assigned literature support the overall goal of the sequence: to enhance the advancement of the students, first academically and then professionally. Prerequisite: ENG 114

MAT221 Calculus 1 3

This course is part of a two-semester sequence (221-222), covering materials on limits, continuity, derivative of a function, techniquest of differentiation, and applications of derivatives. It prepares students for further study of MAT222, Calculus 2. This is an applied calculus course with less emphasis on theoretical rigor. Instead, the emphasis is on basic concepts, methods, and applications. Prerequisite: MAT130 or appropriate test score.

MAT222 Calculus 2 3

This course is part of a two-semester sequence (221-222), covering materials on techniques of integration, differential equations, and their applications. This is an applied calculus course with less emphasis on theoretical rigor. Instead, the emphasis is on basic concepts, methods, and applications. Prerequisite: MAT 221 or the equivalent.

MAT250 Calculus 3 3

This course offers more techniques of calculus in two and three dimensions. Topics include partial differentiation, multiple integration, sequences and series, three-dimensional vector calculus, line and surface integrals, and their applications. Prerequisites: MAT 221 and MAT 222 or the equivalent.

MAT260 Discreet Mathematics for Computer Science 3

This course introduces students to concepts and techniques from discrete mathematics that are extensively used in the field of computer science. Students will learn strategies in how to think logically and mathematically and apply their knowledge in solving problems. Topics include logic, proofs, set theory, relations, trees, counting, discrete probability theory, and graphing. Prerequisite: MAT130

MAT350 Linear Algebra 3

This course offers basic concepts of linear algebra. Topics include matrices, determinants and eigenvalues, linear systems, vector spaces, linear transformations, and their applications. Prerequisite: MAT112 or appropriate placement test score.

MAT450 Applied Statistics 3

This is an applied statistics course for students to understand and use statistical methods in research and applications. Topics include estimation and hypothesis testing, analysis of variance, simple and multiple linear regression, correlation, model building, analysis of categorical data, and nonparametric statistics. The course has a large data-analytic component using a statistical computing software package. Prerequisite: MAT120 or the equivalent.

WEL100 Women as Empowered Learners & Leaders 3

Women as Empowered Learners and Leaders is an interdisciplinary course, designed to give all students entering Bay Path University a common experience and foundation for their education. This course is an introduction to the University, to academic study, and to various approaches to thinking about personal potential, to understand the process of becoming a learner, and a leader, and composing a life, to appreciate beauty, and work actively toward establishing community and justice in the context of being a woman at the beginning of the 21st century.

WEL310 Strategies for Career and Personal Growth 1

(This course is graded Pass/Fail.) In their junior year before the opening of the spring semester, baccalaureate degree students will be offered a special opportunity to learn up-to-date information about the current work world in an intensive two-and-a-half-day workshop format. Students will meet successful professionals who will discuss the challenges and opportunities of their respective fields and help students prepare for interviews as well as learn how to navigate the early stages of their new careers.

WEL400 WELL in Practice 3

By WEL400, you will be ready to blend all the skills you have learned during the WELL program—leadership, critical thinking, research, writing, analysis, and public presentation—with a community service project. Empathy, respect, and tolerance are the core human values that are stressed. It’s what every good leader needs to confidently show the way.