Association for Computing Machinery Kean University Chapter

Computer Science Course Descriptions

CPS1031 Introduction to Computers (3)
Computer concepts and components; historical development of computers; data representations and files; operating system software; communications; information systems. Not for credit in Computer Science major. Prerequisites: Fulfillment of Developmental Math requirements. General Education Distribution Course

CPS1032 Microcomputer Applications (3)
A study of the microcomputer and its role in the development and organization of data in files and databases for information generation. Emphasis is on the selection and proper use of microcomputer application packages to fulfill the information needs of business and support management problem solutions. Students will be introduced to a variety of microcomputer application packages. Prerequisites: CPS 1031 or permission of instructor. General Education Distribution Course

CPS1231 Fundamentals of Computer Science (4)
Fundamental computing concepts, components and processes; hardware and software components; communications and information systems; use of systems software; problem solving with application software; introduction to design of algorithms using a high-level programming language. (3 hr. lec./1 hr. lab.) Prerequisite: Math 1000. General Education Distribution Course

CPS2231 Computer Organization and Programming (4)
Fundamental computing concepts and processes; use, development, analysis and style of algorithms involving a high-level programming language; structured programming concepts. (3 hr. lec./1 hr. lab.) Prerequisites: CPS 1231 and Math 1054 or computer programming experience and permission of instructor. General Education Distribution Course

CPS2232 Data Structures and Algorithm Analysis (4)
The theory of Abstract Data Types (ADTs); applications and implementations of the classical ADTs including lists, sets, stacks, queues, trees, and graphs; recursion; elementary algorithm analysis. (3 hr. lec./1 hr. lab.) Prerequisites: CPS 2231 and Math 2110. # Replaces CPS 1031, CPS 2341, CPS 2342, CPS 2440 for computer science majors; replaces CPS 1031, CPS 2341, CPS 2342 for mathematics and meteorology majors.

CPS2390 Organization and Architecture (3)
Fundamental concepts of assembly language programming as a means of introducing computer architecture. Data representation, logic gates, CPU and memory organization, the instruction cycle, addressing modes, high and low level code equivalence from assignments and iteration to subroutine and parameter passing. Prerequisite: CPS 2231 or permission of instructor.

CPS3250 Computer Operating Systems (3)
Historical development of operating systems, types of operating systems, CPU scheduling, memory management, file organization and access, concurrent processes, I/O organization. Prerequisite: CPS 2390.

CPS3276 Local Area Networks (3)
An introduction to operation and software design for local area networks: ISO/IEEE network standards, survey of network operating systems, setting up a network, LAN programming at the system level, NETBIOS and assembly level network programming. Prerequisite: CPS 3250.

CPS3310 Computer Programming Languages (3)
A study of characteristics of programming languages and classifications: machine, procedure-oriented, numerical, scientific, business data processing, string and list grammars, multipurpose, control and basic compiler methods. Prerequisite: CPS 2390.

CPS3351 Information Systems Programming (3)
Information systems computing concepts and processes using a high level visual programming language; information systems requirements, design, construction and testing. Prerequisite: CPS 2232 # Replaces CPS 2351 and CPS 2352

CPS3391 Advanced Assembler Language Programming (3)
Assembly language instructions for multiple address and multiple register computers: indexing, bit manipulation, fixed and floating point arithmetic on two address machine, logical instruction repertoire, data structures at the machine level, core dumps and program debugging, subroutine and macro construction. Prerequisite: CPS 2390 or permission of the instructor.

CPS3410 Applied Algorithms and Data Structures (3)
An investigation into the application of algorithms using a high level language. The application of structured programming concepts in a “hands-on” environment. The investigation and development of projects emulating the “real world.” Prerequisite: Completion of CPS Core.

CPS3440 Advanced Algorithms and Complexity Theory (3)
Algorithmic analysis. Measures of complexity. Best case, worst case, and average behavior. Algorithms involving sorting, graphs,networks, and number theory. NP-Completeness. Prerequisites: Completion of CPS Core, Math 2110 and Math 2412.

CPS3498 Computer Security and Information Theory (3)
Information and coding, measurement and transmission of information, redundancy, noise, data bank security in government and industry, computer network weaknesses, data encryption. Prerequisite: CPS 2231.

CPS3500 Programming The World Wide Web (3)
The Internet and the World Wide Web, Unix essentials, TCP/IP, MIME, browsers, HTML, the Winsock API, Introduction to PERL, CGI, Web server configuration and administration, Java script and Java, Client/server computing on the Web. Prerequisite: CPS 2232 or Equivalent or permission of instructor

CPS3740 Database Management Systems (3)
Design, implementation and administration of data base management systems. Their benefits and use in organizations. Prerequisite: CPS 3351 or permission of instructor. Writing Emphasis Course

CPS3884 Functional Programming (3)
Lambda Calculus; recursion; continuations; closures; evaluation; functional programming in COMMON LISP. Prerequisite: CPS 2232.

CPS3962 Information Systems Analysis and Design (3)
Design and analysis of Computer Information Systems. Topics will include Systems Development Life Cycle, Design and Analysis tools, CASE tools, File and Database systems, etc. Prerequisites: ACCT 2200 and CPS 3351 or permission of instructor.

CPS4130 Data Communication Systems (3)
Data communication terminology and concepts; identification of hardware and software components; networking; survey and usage of protocols; security. Prerequisite: CPS 3250.

CPS4150 Computer Architecture (3)
The fundamental concepts of modern machine organization and the implementation of instructions with emphasis on the major factors determining computer performance. Prerequisite: Completion of CPS Core and TECH 3510 (corequisite).

CPS4200 Systems Programming (3)
Module development of modern system functions and extensions. Topics include: multi-tasking, windowing, large address spaces, micro-to-mainframe operating systems such as UNIX and PC-DOS. Prerequisite: CPS 3250.

CPS4220 Compiler Construction (3)
A practical and theoretical introduction to compilers for high-level programming languages with emphasis is placed on accepted techniques for constructing compilers. Prerequisite: CPS 4200.

CPS4222 Principles of Networking (3)
Mathematical preliminaries, electromagnetic phenomena, encoding methods,error detection and correction, network topologies, frame formats, routing and the OSI model, LAN, MAN, and WAN characteristics, mathematical modeling of networks. Prerequisites: Completion of CPS Core, TECH 2506, MATH 2412 & MATH 2026 or MATH 2526

CPS4301 Software Engineering I (3)
The study of Software Engineering methodologies for the development of quality, cost effective, schedule-meeting software. Prerequisites: CPS 2232, CPS 3250. Writing Emphasis Course

CPS4408 Computer Graphics Algorithms (3)
Applications of Computer Graphics; Input and Output Devices; Line Drawing Algorithms; Windows; Viewports; Clipping; Two-Dimensional Transformations; Three-Dimensional Transformations; Projections; Animation. Prerequisites: CPS 2232, MATH 2995.

CPS4410 Systems Simulation (3)
Simulation as a problem solving technique; modeling; queuing models; random number generators; testing of random number generators; the Monte Carlo technique; generating random varieties; a simulation package. Prerequisites: Completion of CPS Core, MATH 2026& 2412.

CPS4501 Formal Language and Automata Theory (3)
The study of the concepts and theory of Formal Language and the relationship to automata; types of grammars; Turing machine. Prerequisites: CPS 3310, MATH 2110.

CPS4801 Artificial Intelligence (3)
Representation of knowledge; reasoning models; language learning. Prerequisites: Completion of CPS Core or permission of instructor.

CPS4893 Senior Seminar in Computer Science (3)
An in-depth exploration of one or more current issues in Computer Science, involving the application of a variety of concepts taken from throughout the Computer Science curriculum. Prerequisite: Completion of 30 semester hours in Computer Science at the 2000 level or above

CPS4931 Distributed Systems Applications (3)
Principles and concepts along with the design and development of distributed systems applications. Concurrent operating systems and database requirements for the development of a transaction processing application in a network environment, using the client/server paradigm. Prerequisite: Completion of CPS Core.

CPS4951 Design/Development Project (3)
A software implementation course that integrates theory and practice in design and development of a large computer information system. The student will choose a project, and then research, design, code test, document, demonstrate and present results to the class. The instructor must approve the project. Prerequisites: CPS 3962 and CPS 4931

CPS4980, 4981, 4982 Special Topics in Computer Science (3)
Research study of areas in computer science influenced by contemporary developments as well as interests and needs of students majoring in computer science. A maximum of nine semester hours may be taken in this area towards major electives. Prerequisite: Permission of instructor.

CPS4999 Cooperative Education in Computer Science (3)
Practical field experience providing resources other than those within the college environment. These credits cannot be used towards the 39 credits of course work required for computer science majors. Prerequisites: Minimum completion of CPS Core; minimum 3.00 GPA in major; minimum 2.75 cumulative GPA; approval of advisory committee.