Computer Science (CS)

Course usage information

CS-102   Introduction to Computing and Problem SolvingCredits: 4   

Term Offered: All Terms

Course Type(s): TL

Introduces a broad overview of computing topics, designed to provide students with awareness of the computing field's many aspects. Topics include fundamentals of computer architecture, operating systems, applications, networks and problem-solving. Computing topics are demonstrated and presented using computing applications including word processors, spreadsheets, databases, presentation software, and Web page development software. Introduces social and ethical issues related to computing and explores the local and global impact of computing on individuals, organizations and society. It also gives students their initial exposure to group project work.

Course usage information

CS-175   Introduction to Computer Science ICredits: 4   

Prerequisite: CS-102.

Term Offered: All Terms

Course Type(s): None

Introduction to the basic concepts of program development in a modern object-oriented language; problem-solving methods and algorithm development; basic data types; language syntax; style and documentation; and coding and testing of programs.

Course usage information

CS-176   Introduction to Computer Science IICredits: 4   

Prerequisite: CS-175 passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Continuation in depth and breadth of problem-solving and algorithm development, using the same modern object-oriented language as in CS-175. More advanced, object-oriented design. Introduction to polymorphism and inheritance. Four hours per week.

Course usage information

CS-199   Independent Study in Computer ScienceCredits: 1-3   

Prerequisite: Prior permission of directing professor and department chair required.

Course Type(s): None

Independent study in a computer science topic not substantially treated in a regular course; for students with superior ability. One-hour consultation per week.

Course usage information

CS-202   Discrete Mathematics and ApplicationsCredits: 4   

Prerequisites: CS-175 and MA-109.

Term Offered: All Terms

Course Type(s): None

Covers the basic concepts, methods, structures, and models from discrete mathematics used throughout computer science. Topics addresses include: logic and mathematical reasoning, functions, sets, summations, asymptotic notation, algorithms and complexity, number theory, cryptography, matrix algebra, induction and recursion, counting techniques, combinatorial objects, discrete structures, discrete probability therapy, relations, and graph theory and graph algorithms.

Course usage information

CS-205   Data Structures and AlgorithmsCredits: 4   

Prerequisites: CS-176, passed with a grade of C or higher and either MA-130 or CS-202, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Introduction to the design, implementation, and use of fundamental data structures (list, stacks, queues, trees); extensions of these structures and associated algorithms and informal complexity analysis. Four hours per week.

Course usage information

CS-212   Networking Fundamentals ICredits: 3   

Term Offered: Spring Term

Course Type(s): None

Prepares students with knowledge and skills required to successfully install, operate, and troubleshoot a small branch office network. Includes topics on networking fundamentals; connecting to a WAN; basic security and wireless concepts; routing and switching fundamentals; the TCP/IP and OSI models; IP addressing; WAN technologies; operating and configuring IOS devices; configuring RIPv2, static and default routing; implementing NAT and DHCP; and configuring simple networks.

Course usage information

CS-222   Networking Fundamentals IICredits: 3   

Prerequisite: CS-212.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge and skills required to successfully install, operate, and troubleshoot a small to medium size enterprise branch network. Covers topics on VLSM and IPv6 addressing; extending switched networks with VLANs; configuring, verifying and troubleshooting VLANs; the VTP, RSTP, OSPF and EIGRP protocols; determining IP routes; managing IP traffic with access lists; NAT and DHCP; establishing point-to-point connections; and establishing Frame Relay connections.

Course usage information

CS-250   Android Application DevelopmentCredits: 3   

Prerequisites: CS-175 and CS-176.

Course Type(s): None

Introduces students to writing applications for Android mobile devices. It familiarizes students with the development software for creating Android apps, programming logic used in the apps, and Java code that puts the software design and logic into the practice using an Android emulator.

Course usage information

CS-275   Introduction to an Algorithmic LanguageCredits: 3   

Prerequisite: Permission of the instructor.

Term Offered: All Terms

Course Type(s): None

A thorough overview of the syntax of an algorithmic language and stress on the concepts of structured programming. Four hours per week.

Course usage information

CS-286   Computer Architecture ICredits: 3   

Prerequisites: CS-176 or CS-275, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Number representations and operations. Processor data path. Pipelining. Memory hierarchy. Input/Output. Assembly language programming.

Course usage information

CS-288   Cooperative Education: Computer ScienceCredits: 3   

Prerequisites: Junior standing, thirty or more earned credits with at least fifteen taken at Monmouth University and CS-205 passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): EX2

Provides an opportunity for students who are engaged in a computer science-related work experience. Fifteen to twenty hours of work experience per week. May be repeated for credit.

Course usage information

CS-298   Special Topics in Computer Science (200 Level)Credits: 1-3   

Prerequisite: As announced in the course schedule.

Term Offered: All Terms

Course Type(s): None

An intensive study of a particular subject or problem in computer science to be announced prior to registration. May be conducted on either a lecture-discussion or a seminar basis. Three or four hours per week.

Course usage information

CS-299   Independent Study in Computer ScienceCredits: 3   

Prerequisite: Prior permission of directing professor and department chair required.

Term Offered: Spring Term

Course Type(s): None

Independent study in a computer science topic not substantially treated in a regular course; for students with superior ability. One-hour consultation per week.

Course usage information

CS-302   Designing and Implementing Routing in Enterprise NetworksCredits: 3   

Prerequisites: CS-212 and CS-222, both passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge and skills necessary to use advanced IP addressing and routing in implementing scalable and secure routers connected to LANs and WANs. Also covers configuration of secure routing solutions to support branch offices and mobile workers.

Course usage information

CS-306   Computer Algorithms IICredits: 4   

Prerequisite: CS-205, passed with a grade of C or higher.

Course Type(s): None

Continuation in depth and breadth of the design, implementation, and use of data types (list, binary search tree, tree, hash table, graph); intermediate algorithm design; complexity analysis. Four hours per week.

Course usage information

CS-310   Advanced Object-Oriented Programming and DesignCredits: 4   

Prerequisite: CS-205, passed with a grade of C or higher; and EN-101 and EN-102 or permission of the instructor.

Term Offered: Fall Term

Course Type(s): WT

Object-oriented programming and design, using a language different from that used in CS-176. Use of classes, inheritance, polymorphism, and libraries. Topics will include flexible system design for such requirements as globalization.

Course usage information

CS-312   Designing and Implementing Switching in Enterprise NetworksCredits: 3   

Prerequisite: CS-302, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge and skills necessary to plan, configure, and verify the implementation of complex enterprise switching solutions using Enterprise Architecture. Also covers secure integration of VLANs, WLANs, and voice and video into campus networks.

Course usage information

CS-315   Theory of ComputingCredits: 3   

Prerequisites: CS-176 or CS-275, passed with a grade of C or higher and either CS-202 or MA-120 or MA-130, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

An introduction to phrase structure languages and their relation to automata, computability, and program verification.

Course usage information

CS-316   Implementing Network SecurityCredits: 3   

Prerequisites: CS-212 and CS-222, both passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge and skills required to secure networks. Includes topics on core security technologies, the installation, troubleshooting and monitoring of network devices to maintain integrity, confidentiality and availability of data and devices, and competency in the technologies that use its security structures. A hands-on career oriented course, with an emphasis on practical experience, to help students develop specialized security skills, along with critical thinking and complex problem solving skills.

Course usage information

CS-320   IP Telephony Design and ImplementationCredits: 3   

Prerequisites: CS-212 and CS-222.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge of how to implement and support data and voice integration solutions at the network-access level. Topics covered include basic IP Telephony operation, router configuration, support, troubleshooting, and integration with an existing PSTN network.

Course usage information

CS-322   Network TroubleshootingCredits: 3   

Prerequisite: CS-312, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge and skills necessary to plan and perform regular maintenance on complex enterprise routed and switched networks and use technology-based practices to perform network troubleshooting.

Course usage information

CS-324   Computer Architecture IICredits: 3   

Prerequisite: CS-286, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Boolean algebra, combinational and sequential circuit devices are presented in lectures and laboratory. Computer hardware organization. Memory and CPU design. CPU control with microcode. Four hours per week.

Course usage information

CS-325   Software Engineering ConceptsCredits: 3   

Prerequisite: CS-205, passed with a grade of C or higher; and EN-101 and EN-102 or permission of the instructor.

Term Offered: Fall Term

Course Type(s): WT

Overview of software engineering concepts, analysis/design techniques, Unified Modeling Language (UML), software documentation, and group development of software.

Course usage information

CS-330   Administrating Unified Communication ManagerCredits: 3   

Prerequisites: CS-212 and CS-222, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Prepares students with knowledge of deploying a Unified Communications Manager to support single site and multi-site deployment models.

Course usage information

CS-335   Programming Language ConceptsCredits: 3   

Prerequisite: CS-205, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Design, evaluation, and implementation of programming languages. Discussion of imperative, applicative, object-oriented and concurrent languages. Four hours per week.

Course usage information

CS-350   Research in Computer ScienceCredits: 1-4   

Prerequisites: Junior standing, CS-306, passed with a grade of C or higher, a minimum of fifteen credits at Monmouth University, and a minimum GPA of 3.25.

Course Type(s): EX5

Original research work, associated with an external constituent and/or organization, planned and carried out with assistance of faculty research advisor. Research conducted by the student will be shared with the external constituency and submitted for outside publication and review. Number of credits arranged with advisor. Limited to Computer Science students with approval of chair, program director, or advisor.

Course usage information

CS-360   Introduction to Game DevelopmentCredits: 3   

Prerequisite: CS-205 passed with a grade of C or higher.

Term Offered: Fall Term

Course Type(s): None

An introduction to the creation of computer/video games and the different elements of games, including computer graphics, animation, artificial intelligence, algorithms, data structures, networking, software development cycles and human-computer interaction. Also listed as SE-360.

Course usage information

CS-370   Program Development Under UnixCredits: 3   

Prerequisite: CS-176 or CS-275, passed with a grade of C or higher.

Term Offered: Fall Term

Course Type(s): None

Introduction to the use of the UNIX operating system and its utilities for incremental and distributed program development, maintenance, and debugging. The course covers the UNIX shell, utilities, and program development tools that are used for large projects involving multiple developers on multiple machines. Three hours per week.

Course usage information

CS-371   Scripting LanguagesCredits: 3   

Prerequisite: CS-176 or equivalent.

Term Offered: All Terms

Course Type(s): None

An introduction to programming using widely-used, dynamically-typed, interpreted programming languages, which are sometimes called "scripting" languages. Covers general-purpose scripting languages, such as Perl and Python that are used to develop a wide range of applications. Scripting languages, such as PHP, that are used primarily in web development, will not be covered in this course.

Course usage information

CS-375   File ManagementCredits: 4   

Prerequisite: CS-205, passed with a grade of C or higher.

Course Type(s): None

Overview of files, records and files, blocking and buffering, secondary storage devices; sequential file organization, external sort/merge algorithms; random access; relative file organization; tree-structured file organization; search trees, indexed sequential file organization; list-structured file organization; multiple-key file organization. Four hours per week.

Course usage information

CS-388   Cooperative Education: Computer ScienceCredits: 3   

Prerequisites: Junior standing, thirty or more earned credits with at least fifteen taken at Monmouth University and CS-205 passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): EX2

Provides an opportunity for students who are engaged in a computer science-related experience. Fifteen to twenty hours of work experience per week. This course may be repeated for credit.

Course usage information

CS-398   Special Topics in Computer Science (300 Level)Credits: 1-3   

Prerequisite: As announced in the course schedule.

Course Type(s): None

An intensive study of a particular subject or problem in computer science to be announced prior to registration. May be conducted on either a lecture-discussion or a seminar basis. Three or four hours per week.

Course usage information

CS-414   Computer NetworksCredits: 4   

Prerequisite: CS-286, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Provides introduction to computer-networking concepts, technologies, and services, including basic communications theory, analog and digital devices, Public Switched Telephone Network, data networks, LANs, wireless services, data protocols, the Internet, multi-media, and B-ISDN.

Course usage information

CS-418   Compiler ConstructionCredits: 3   

Prerequisite: CS-205 passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

The principles and practices of incorporating the theory of finite automata and context-free languages, the maintenance and use of semantic information, and the generation and optimization of code to produce a compiler. Four hours per week.

Course usage information

CS-420   Survey of Artificial Intelligence Concepts and PracticesCredits: 4   

Prerequisite: CS-205, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Introduction to fundamental concepts and practices of artificial intelligence, covering problem definition, search techniques, knowledge representation, control knowledge, and symbolic reasoning. Includes at least two of the following advanced topics: planning, understanding, natural language processing, learning, connectionist models, common sense reasoning, and expert systems. Four hours per week.

Course usage information

CS-432   Database SystemsCredits: 4   

Prerequisite: CS-205, passed with a grade of C or higher.

Term Offered: Fall Term

Course Type(s): None

Overview of database system concepts; data modeling; ER and UML diagrams; relational database schema definition; database design; query languages; hands-on experience of SQL and Oracle. Four hours per week.

Course usage information

CS-435   Systems ProgrammingCredits: 3   

Prerequisites: CS-286 and CS-205, both passed with a grade of C or higher, and Senior standing.

Term Offered: All Terms

Course Type(s): None

Introduction to the implementation of basic system software: text editors, assemblers, loaders, and macro processors, with emphasis on software methodology for creating and maintaining large programs. The language of instruction will be C, which will be briefly introduced. Four hours per week.

Course usage information

CS-438   Operating Systems AnalysisCredits: 4   

Prerequisites: CS-286 and CS-205, both passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Management of memory, processes, files, and devices. OS design principles and performance measures. Multiprogramming, multiprocessing, concurrency, deadlock, virtual machines. Competitive and cooperating processes. Programs will be written in C. Throughout the course, students will be expected to work in pairs to solve problems and in a larger group for a more substantial project.

Course usage information

CS-445   Computer GraphicsCredits: 3   

Prerequisite: CS-205, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

Drawing lines and curves, area filling, fractals, three dimensional viewing, clipping, ray-tracing, shading, hidden line and surface removal. Four hours per week.

Course usage information

CS-461   Simulation and ModelingCredits: 3   

Prerequisite: CS-205, passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): None

An introduction to the use of discrete event simulation and other modeling methods and tools to predict the performance of computer systems and communications networks.

Course usage information

CS-471   System AdministrationCredits: 3   

Prerequisite: CS-370 or CS-371, passed with a grade of C or higher.

Term Offered: Spring Term

Course Type(s): None

Fundamental topics in system administration, focused primarily on UNIX administration with added coverage of Microsoft Windows NT descendant systems. The course is a hands-on introduction to installing and maintaining modern, multi-user, production UNIX-like operating systems and the essential services that are hosted on these systems.

Course usage information

CS-488   Cooperative Education: Computer ScienceCredits: 3   

Prerequisites: Junior standing, thirty or more earned credits with at least fifteen taken at Monmouth University and CS-204 passed with a grade of C or higher.

Term Offered: All Terms

Course Type(s): EX2

Provides an opportunity for students who are engaged in a computer science-related experience. Fifteen to twenty hours of work experience per week. May be repeated for credit.

Course usage information

CS-490   Senior ProjectCredits: 4   

Prerequisites: CS-325 and CS-432, both passed with a grade of C or higher.

Term Offered: Spring Term

Course Type(s): RD

Affords the student an opportunity to integrate topics and techniques from previous coursework in a capstone project. The project will combine investigation into computer science literature and actual implementation, either in an area of current research or an application area of interest to industry. Implementation might involve collaboration with other students. The project will be presented formally, both orally and in written form. This course satisfies the reasoned oral discourse requirement for computer science students.

Course usage information

CS-498   Special Topics in Computer Science (400 Level)Credits: 1-3   

Prerequisite: As announced in the course schedule.

Term Offered: All Terms

Course Type(s): None

An intensive study of a particular subject or problem in computer science to be announced prior to registration. May be conducted on either a lecture-discussion or a seminar basis. Three or four hours per week.

Course usage information

CS-499   Independent Study in Computer ScienceCredits: 1-3   

Prerequisite: Prior permission of directing professor and department chair required.

Term Offered: All Terms

Course Type(s): None

Independent study in a computer science topic not substantially treated in a regular course; for students with superior ability. One-hour consultation per week.