Computer Science Major (B.S.) - Undergraduate (Combined B.S./M.S.) - 2011 University Catalog

You are viewing the 2011 University Catalog. Please see the newest version of the University Catalog for the most current version of this program's requirements.

A minimum of 120 semester hours of coursework is required for the baccalaureate degree with a minimum 2.0 overall GPA, and a minimum 2.0 major GPA. However, more than 120 semester hours may be required depending upon the major field of study. In addition to the major requirement outlined below, all university students must fulfill the set of General Education requirements applicable to their degree (for further information, see General Education Requirements).

COMPUTER SCIENCE MAJOR (Combined BS/MS)

Complete 62 semester hours including the following 5 requirement(s):

  1. COLLATERAL REQUIREMENT

    Complete 1 of the following sequences:

    1. Complete 2 courses:

      PHYS 191 University Physics I 4
      PHYS 192 University Physics II 4
    2. Complete 2 courses:

      CHEM 120 General Chemistry I 4
      CHEM 121 General Chemistry II 4
    3. Complete 3 courses:

      ACCT 201 Fundamentals of Financial Accounting 3
      ACCT 202 Fundamentals of Managerial Accounting 3
      MGMT 231 Management Processes 3
    4. Complete 3 courses:

      ECON 101 Principles of Economics: Macro 3
      ECON 102 Principles of Economics: Micro 3
      MGMT 231 Management Processes 3
  2. REQUIRED MATHEMATICS COURSES

    Complete 4 courses:

    MATH 122 Calculus I 4
    MATH 221 Calculus II 4
    MATH 335 Linear Algebra 4
    STAT 330 Fundamentals of Modern Statistics I 3
  3. REQUIRED COMPUTER SCIENCE COURSES

    Complete 8 courses:

    CMPT 183 Foundations of Computer Science I 3
    CMPT 184 Foundations of Computer Science II 3
    CMPT 280 Assembly Language and Computer Architecture 3
    CMPT 281 Theory of Digital Machines 3
    CMPT 285 Discrete Mathematical Structures 3
    CMPT 287 Data Structures, File Structures and Algorithms 4
    CMPT 371 Software Engineering I: Analysis and Design 4
    CMPT 372 Software Engineering II: Implementation and Testing 4
  4. COMPUTER SCIENCE ELECTIVE COURSES

    Complete 6 semester hours from the following:

    1. COMPUTER SCIENCE GROUP 1 ELECTIVE

      Complete a minimum of 3 semester hours to a maximum of 6 semester hours from the following:

      CMPT 472 Computer Graphics 3
      CMPT 481 Operating Systems 3
      CMPT 483 Database Systems 3
      CMPT 484 Fundamentals of Programming Languages 3
      CMPT 485 Compiler Construction 3
      CMPT 486 Design of Computer Interfaces 3
      CMPT 487 Local Area Networks (LAN's) 3
      CMPT 493 Advanced Database Theory 3
      CMPT 495 Topics in Computer Science for Undergraduates 1-3
      CMPT 497 Undergraduate Research in Computer Science I 1-3
      CMPT 498 Undergraduate Research in Computer Science II 1-3
    2. COMPUTER SCIENCE GROUP 2 ELECTIVE

      Complete 0 semester hours to 3 semester hours from the following:

      CMPT 363 Introduction to Numerical Computing 3
      CMPT 385 Computer System Organization 3
      CMPT 387 Principles of Data Communications 3
      CMPT 388 Foundations of Artificial Intelligence 3
    3. COMPUTER SCIENCE GROUP 3 ELECTIVE

      Complete 0 semester hours to 3 semester hours from the following:

      CMPT 499 Cooperative Education in Computer Science 3-8
  5. GRADUATE COURSES

    As part of the combined BS/MS Computer Science program, complete the following 2 courses for 6 semester hours:

    CMPT 580 Machine Organization and Architecture 3
    CMPT 583 Computer Algorithms 3

Course Descriptions:

ACCT201: Fundamentals of Financial Accounting

This is an introductory course in financial accounting from a user's perspective. The theoretical foundation and basic accounting terminology are addressed. The basic financial statements consisting of the balance sheet, income statement, statement of stockholder's equity and the statement of cash flows are presented and discussed. Financial statement analysis including ratios analysis will help students to make sound decisions as investors, creditors, and managers. (3 hours lecture.) 3 sh.

Prerequisites: ENWR 105 or HONP 100.

ACCT202: Fundamentals of Managerial Accounting

This course introduces basic concepts of management accounting including cost classifications, product costing, cost-volume profit analysis, variable costing, operating budgeting, standards and performance evaluation, balance score card and non-routine decisions. The course will illustrate the use of accounting information by managers for internal decision-making purposes. (3 hours lecture.) 3 sh.

Prerequisites: ACCT 201.

CHEM120: General Chemistry I

Introductory lecture and laboratory course for science majors, prerequisite for all advanced chemistry courses. Introduction to atomic and molecular structure, bonding, stoichiometry, states of matter, solutions, and selected topics in descriptive inorganic chemistry. Laboratory stresses techniques and data treatment and their use in examining chemical systems. (3 hours lecture, 3 hours lab.) 4 sh.

Prerequisites: One year of high school chemistry.

CHEM121: General Chemistry II

Introductory lecture and laboratory course for science majors, prerequisite for all advanced chemistry courses. Introduction to thermochemistry, kinetics; general acid base, precipitation, redox equilibria, electrochemistry and selected topics in descriptive inorganic chemistry. Laboratory stresses techniques and data treatment and their use in examining chemical systems. (3 hours lecture, 3 hours lab.) 4 sh.

Prerequisites: CHEM 120 with a grade of C- or better.

CMPT183: Foundations of Computer Science I

Basic theory of digital computers. Syntax and semantics of a programming language. Algorithms: logic, design, testing and documentation. (2 hours lecture, 2 hours lab.) 3 sh.

Prerequisites: MATH 100, MATH 112, MATH 114, MATH 116, MATH 122 or MATH 221.

CMPT184: Foundations of Computer Science II

Continuation of CMPT 183. Algorithm development involving user functions; subroutines, recursions, structures file manipulation. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 183.

CMPT280: Assembly Language and Computer Architecture

Computer structures, the conventional machine level, introduction to assembler language. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 184.

CMPT281: Theory of Digital Machines

Microprogramming level of a computer, the operating system level, gates, sequential and combinational circuits, flip-flops, registers, number codes. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 280 and CMPT 285.

CMPT285: Discrete Mathematical Structures

The structures include sets, graphs, digraphs, trees, networks, lattices, matrices, semigroups and groups. Many practical business and scientific problems can be posed and solved by the use of these structures. (3 hours lecture.) 3 sh.

Prerequisites: MATH 112.

CMPT287: Data Structures, File Structures and Algorithms

Creation and manipulation of in-memory data structures including graphs, lists, queues, sets, stacks and trees; searching, sorting and other algorithms for in-memory data structures. File, file structures and external sorting. Meets the University Writing Requirement for majors in Computer Science and Science Informatics. (4 hours lecture.) 4 sh.

Prerequisites: CMPT 184. Prerequisite or co-requisite: CMPT 285.

CMPT363: Introduction to Numerical Computing

Fundamentals of numerical computation, with emphasis on basic algorithms and their efficient implementation: appropriate treatment of theoretical bases. Topics include floating point arithmetic, roundoff error and propagation, numerical solution of nonlinear equations, interpolation and approximation, and numerical integration. The Fortran language will be taught and used in programming assignments. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 183 and MATH 221.

CMPT371: Software Engineering I: Analysis and Design

Utilization of software engineering principles and techniques for the specification, analysis, and design of high-quality complex software systems including both technical and non-technical aspects. (4 hours lecture.) 4 sh.

Prerequisites: CMPT 287.

CMPT372: Software Engineering II: Implementation and Testing

This course utilizes software engineering principles and techniques for the implementation, testing and maintenance of high-quality complex software systems, as designed in a previous course (CMPT 371). (4 hours lecture.) 4 sh.

Prerequisites: CMPT 371.

CMPT385: Computer System Organization

Introduction to chip technology, microprocessors, microcomputers, architecture, instruction sets and programming of microcomputers, and other bus-oriented computers. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 281.

CMPT387: Principles of Data Communications

Fundamentals of data communication topics. Analog Digital, Broadband-Baseband, TDM-FDM, AM-FM techniques. Error codes and protocols. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 281.

CMPT388: Foundations of Artificial Intelligence

A general, comprehensive coverage of the main areas constituting the field of artificial intelligence, introduction of computer vision, natural language processing (NLP), pattern recognition and neural networks. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 371.

CMPT472: Computer Graphics

An introduction to computer graphics, including the algorithms to generate two-dimensional and three-dimensional graphical pictures. An overview of interactive graphics and graphics devices. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 287 and MATH 335.

CMPT481: Operating Systems

Process Management. Process synchronization and deadlock prevention. Memory Management. Interrupts processing. I/O Control. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 371.

CMPT483: Database Systems

A comprehensive collection of database organizations and design tools: file organizations and evaluations, database structures, schemata and implementations. Database security, operations and management. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 371.

CMPT484: Fundamentals of Programming Languages

Syntax and semantics of modern programming languages with emphasis on programming in the large, functional, logic, and object-oriented paradigms. Common threads found in both imperative and non-imperative languages discussed. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 371.

CMPT485: Compiler Construction

Introduction to the concepts and techniques used in the description of programming languages and in the construction of compilers. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 484.

CMPT486: Design of Computer Interfaces

Basic digital and analog computing circuits and interface circuits, computer-telecommunication interfaces. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 385.

CMPT487: Local Area Networks (LAN's)

Overview, topology, taxonomy, transmission, technology media and control protocols of microcomputer LAN's. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 387.

CMPT493: Advanced Database Theory

This course continues the introduction to data management. Topics include: security, integrity, concurrency and recovery, query optimization, file structures and other performance issues. (3 hours lecture.) 3 sh.

Prerequisites: CMPT 483.

CMPT495: Topics in Computer Science for Undergraduates

Study of specialized topics in computer science. May be repeated once for a maximum of 6.0 credits as long as the topic is different. () 1 - 3 sh.

Prerequisites: CMPT 287 and departmental approval.

CMPT497: Undergraduate Research in Computer Science I

Individual research in areas of computer science agreed upon by the student and the instructor. The results of the research will be a basis of a seminar or colloquium to be given by the student. Students must not accumulate more than 6 credits total in courses CMPT 497, 498, MATH 497, 498. () 1 - 3 sh.

Prerequisites: CMPT 281, MATH 335, and departmental approval.

CMPT498: Undergraduate Research in Computer Science II

Individual research in areas of computer science agreed upon by the student and the instructor. The results of the research will be a basis of a seminar or colloquium to be given by the student. Students must not accumulate more than 6 credits total in courses CMPT 497, 498 MATH 497, 498. () 1 - 3 sh.

Prerequisites: CMPT 281, MATH 335, and departmental approval.

CMPT499: Cooperative Education in Computer Science

The study of theoretical ideas of computer science combined with their practical applications in a real life environment. The co-op experience is a semester working off-campus under the guidance of a company supervisor, and a faculty supervisor. Only 3 of the 8 credits may be used to fulfill the major requirement. () 3 - 8 sh.

Prerequisites: CMPT 320 or CMPT 371 and departmental approval.

CMPT580: Machine Organization and Architecture

Basic computer organization and design, digital functions, data representation, microprogramming, CPU organization, the assembler language, and addressing techniques. Required of majors. (3 hours lecture.) 3 sh.

Prerequisites: Permission of graduate coordinator.

CMPT583: Computer Algorithms

Algorithms: definition, design and analysis; sorting and searching techniques and introductory dynamic programming studied as algorithms with complexity theory and optimization techniques applied. Required of majors. (3 hours lecture.) 3 sh.

Prerequisites: Permission of graduate coordinator.

ECON101: Principles of Economics: Macro

A study of the American economy, analytically and institutionally; the achievement of an optimal allocation of resources, price stability, full employment level of national income and long term growth. Meets Gen Ed 2002 - Social Science, Social Science. (3 hours lecture.) 3 sh.

ECON102: Principles of Economics: Micro

Organization and operation of the American economy for the production and distribution of goods and services. Pricing of products and factors of production in market situations varying from competition to monopoly. Resource allocation, price determination and behavior of the firm in the determination of quantity of output and the hiring of factors of production. Meets Gen Ed 2002 - Social Science, Social Science. (3 hours lecture.) 3 sh.

MATH122: Calculus I

Limits, continuity; derivative and differentiation; applications of the derivative, maxima, minima, and extreme considerations; antiderivatives; Riemann integral. (4 hours lecture.) 4 sh.

Prerequisites: MATH 111 or MATH 112 or placement through the Montclair State University Placement Test (MSUPT) or a satisfactory score on department's Calculus Readiness Test. (Students who did not satisfy the course prerequisite at MSU and students who received a grade of D-, D, or D+ in the prerequisite course taken at MSU are required to demonstrate competency on the department's Calculus Readiness Test.)

MATH221: Calculus II

Riemann integral applications, transcendental functions, techniques of integration, improper integrals, L'Hospital's rule, infinite series. (4 hours lecture.) 4 sh.

Prerequisites: MATH 122.

MATH335: Linear Algebra

The course content will cover the foundations of the algebra of vector spaces, matrix operations, matrix invertibility theorems, linear independence, span, basis, linear transformations, finite dimensional Hilbert Spaces, Gram-Schmidt process, projections, eigenvalues and eigenvectors, and applications. The focus of the course will be to develop advanced mathematical skills in reading and understanding abstract mathematical definitions, constructing examples, and developing mathematical proofs. Meets the University Writing Requirement for majors in Mathematics. (4 hours lecture.) 4 sh.

Prerequisites: MATH 222 or equivalent.

MGMT231: Management Processes

To provide undergraduate students a review of classical and modern approaches to the managerial process as it relates to the manager's functions of planning, organizing, communication, motivation, leading, controlling, and managing change. Emphasizing new forces in the managerial environment such as workplace diversity and economic globalization, these reviews will be tied to the open-system model and the contingency approach as overall frameworks for understanding organizations and management. (3 hours lecture.) 3 sh.

Prerequisites: ENWR 105 or HONP 100.

PHYS191: University Physics I

This one-semester calculus-based course including laboratory is a study of the principles of physics and some applications to society's problems. Topics covered include mechanics, thermodynamics, fluids, and harmonic motion. (3 hours lecture, 2 hours lab.) 4 sh.

Prerequisites: MATH 122 is prerequisite or co-requisite.

PHYS192: University Physics II

Calculus-based course. Study of some principles of physics and some applications to society's problems. Topics include: wave motion, sound and noise pollution, optics, electricity, lasers, nuclear theory, radiation, nuclear reactors, waste disposal. (3 hours lecture, 2 hours lab.) 4 sh.

Prerequisites: MATH 221 is prerequisite or corequisite.

STAT330: Fundamentals of Modern Statistics I

Displaying, describing and modeling data; arrangements for producting data; probability; methods for drawing conclusions from data: significance testing, confidence interval estimation, linear regression, analysis of variance. Examples from many disciplines including the social and natural sciences. Statistical software is used. (3 hours lecture.) 3 sh.

Prerequisites: MATH 221.