Course Descriptions - Department of Computer Science

COURSE Descriptions

CPS 1031 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.

General Education Distribution Course

Prerequisites: Fulfillment of Developmental Math requirements.

CPS 1032 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. Not for credit in Computer Science Major.
General Education Distribution Course
Prerequisites: 3 Hours of CPS

CPS 1231 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.)
General Education Distribution Course
Prerequisite: MATH 1000. ENG 1030 or equiv.

CPS 2231 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.

CPS 2232 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.

CPS 2390 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 and MATH 2110.

CPS 3250 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 2232 and CPS 2390.

CPS 3276 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: Completion of CPS Core.

CPS 3310 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.

CPS 3351 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

CPS 3410 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.

CPS 3440 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.

CPS 3498 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 2232.

CPS 3500 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.

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

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

CPS 3962 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.
Prerequisites: CPS 3351 or permission of instructor.

CPS 4130 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.

CPS 4150 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).

CPS 4200 Systems Programming (3)
Module development of modern system functions and extensions. Topics include: multi-tasking, windowing, large address spaces, interrupts operating systems such as UNIX and Windows.
Prerequisite: CPS 3250.

CPS 4220 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: Completion of CPS Core.

CPS 4222 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.

CPS 4301 Software Engineering (3)
The study of Software Engineering methodologies for the development of quality, cost effective, schedule-meeting software.
Prerequisites: Completion of CPS Core.
Writing Emphasis Course

CPS 4408 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.

CPS 4410 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.

CPS 4501 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.

CPS 4801 Artificial Intelligence (3)

Representation of knowledge; reasoning models; language learning.
Prerequisites: Completion of CPS Core or permission of instructor.

CPS 4893 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.

CPS 4931 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.

CPS 4951 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

CPS 4980, 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.

CPS 4999 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.

CHAIR:
DR. Patricia morreale

Hennings Hall, HH 211
T: 908-737-3804
F: 908-737-3799

pmorreal@kean.edu

Kean University - 1000 Morris Avenue, Union, New Jersey 07083 - 908-737-KEAN (5326) - Campus Map - Directions - Directory
webmaster@kean.edu