Computer Science, Informatics Concentration (M.S.) - Graduate - 2012 University Catalog

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

The Department of Computer Science offers a Master of Science degree in Computer Science and an MS in Computer Science with a concentration in Informatics. The concentrations consist of taking 3 courses in a computer intensive area, or in a specialized area complementary to computer science. An MS in Mathematics with a concentration in Computer Science is offered by the Department of Mathematical Sciences. This degree option is described under Mathematics.

The graduate program in computer science is designed for students interested in pursuing computer science theoretically as well as practically at an advanced level. While introducing students to newly developing areas of computer science, this program emphasizes the foundations and concepts of the field. Concepts are developed rather than routine programming skills. Students are prepared for professional work in the design and implementation of software systems, data base systems, operating systems, artificial intelligence, expert systems, graphics, simulation and algorithms for discrete and continuous structures that will aid in the solution of problems encountered in the scientific and business sector. The curriculum is designed to allow students to develop skills needed to achieve leadership positions in business, industry, and government in computer science or in related fields that are computer science intensive. The program also prepares teachers of computer science at the two year college, high school and middle school levels.

The graduate program in computer science began in 1978.  At present, there are 12 full-time faculty in the Department of Computer Science.  the special interests of the faculty include algorithms, artificial intelligence, automata theory, automated theorem proving, bioengineering, compilers, computer science education, complexity theory, computational linguistics, computational logic, cryptography, databases, data mining and knowledge discovery, design and management of information systems, expert systems, fault-tolerant computing, graphics, machine organization and architecture, neural networks, non-linear phenomena and fuzzy logic, operating systems, parallel and distributed computing, program verification, pixel and image processing, robotics, software engineering, scientific computing, and telecommunications. The department has the advantage of having professional computer scientists as both faculty and visiting specialists.  The visiting specialists are drawn from the aerospace, chemical, computer, and pharmaceutical industries. This mix of faculty affords students the opportunity to obtain an education in both the practical and theoretical aspects of computer science.

Computer facilities within the College of Science and Mathematics currently comprise a local area network (SCINet) of Sun servers and workstations, as well as Dell and Macintosh teaching laboratories. The Sun network comprises four Enterprise servers, a student laboratory with  twenty Ultra 10 workstations, and workstations in faculty offices. The computers of this network run under UNIX operating system.  Available software packages include: Maple, MATLAB, Iris Explorer, LaTEX, Rational Rose, SAS, Splus, Ingres, MySQL, JavaStudio, and JavaWorkshop.  Programming language include: C, C++, Java, Ada, FORTRAN, Pascal, LISP, Prolog, Perl and Smalltalk.  In addition, Montclair State University maintains a DEC Alpha 2100 (running the VMS operating system), on which any MSU student may establish an account.  Software available on this machine include: Ada, C, C++, COBOL, FORTRAN, GPSS, Ingres, LISP, Macro, Maple, Minitab, Pascal, PL/1, Prolog, SAS, SAS graphics, SPSSX and SPSS graphics. The University also maintains a number of microcomputer labs throughout the campus.  Access to the Alpha and CSAM Sun network is available from most of these microcomputers via a campus-wide local area network (MSUNet).  In addition, these microcomputers support a wide variety of software such as JMP, Mac Spin, Data Desk, Solo, Statistix, and Office for student use.  Montclair State University recently became its own Internet Service Provider (MSU-ISP). All students and faculty may establish Internet Accounts. These, as well as dial-up lines, provide remote access to computers on campus.

Students desiring to enter the MS in Computer Science without an appropriate background in computer science can obtain the necessary foundation in computer science and mathematics by taking courses in our prerequisite program.  Upon satisfactory completion of part or all of the program, students are admitted to the Master of Science program.

COMPUTER SCIENCE w/CONC:Informatics

Complete 33 semester hours including the following 3 requirement(s):

  1. CORE COURSES

    Complete the following 4 courses for 12 semester hours:

    CMPT 580 Machine Organization and Architecture (3 hours lecture) 3
    CMPT 581 Systems Software Design (3 hours lecture) 3
    CMPT 583 Computer Algorithms (3 hours lecture) 3
    CMPT 594 Software Engineering and Reliability (3 hours lecture) 3
  2. INFORMATICS CONCENTRATION

    Complete 2 requirement(s):

    1. Complete 3 courses for 9 semester hours:

      CMPT 586 File Structures and Databases (3 hours lecture) 3
      CMPT 593 Structured System Design and Analysis (3 hours lecture) 3
      CMPT 596 Principles of Data Communication (3 hours lecture) 3
    2. Complete 1 course for 3 semester hours from the following list

      CMPT 592 Data Base Design and Implementation (3 hours lecture) 3
      CMPT 696 Local Area Networks (3 hours lecture) 3
  3. ELECTIVES AND CULMINATING EXPERIENCE

    1. Comp Science, Math or Business Electives

      Complete 9 semester hours (OR 6 semester hours if you plan to complete the Thesis or Masters Project) from the following list. Substitutions require GPC approval

      CMPT 574 Pixel and Image Processing (3 hours lecture) 3
      CMPT 575 Introduction to Computer Graphics (3 hours lecture) 3
      CMPT 576 Object-Oriented Software Development (3 hours lecture) 3
      CMPT 578 Introduction to Artificial Intelligence (3 hours lecture) 3
      CMPT 582 Theory of Automata and Formal Languages (3 hours lecture) 3
      CMPT 584 Operating System Design (3 hours lecture) 3
      CMPT 585 Topics in Computer Science (3 hours lecture) 3
      CMPT 587 Microcomputers and Computer Interfaces (3 hours lecture) 3
      CMPT 588 Fundamentals of Programming Languages (3 hours lecture) 3
      CMPT 589 Computer Simulation of Discrete Systems (3 hours lecture) 3
      CMPT 590 Computer Simulation of Continuous Systems (3 hours lecture) 3
      CMPT 591 Compiler Theory and Construction (3 hours lecture) 3
      CMPT 592 Data Base Design and Implementation (3 hours lecture) 3
      CMPT 678 Neurocomputing (3 hours lecture) 3
      CMPT 680 Parallel Architectures and Algorithms (3 hours lecture) 3
      CMPT 683 Advanced Computer Algorithms (3 hours lecture) 3
      CMPT 690 Independent Study in Computer Science 3
      CMPT 694 Software Quality Assurance (3 hours lecture) 3
      CMPT 695 Seminars in Computer Science (1-4 hours seminar) 1-4
      CMPT 696 Local Area Networks (3 hours lecture) 3
      CMPT 699 Master's Thesis Extension 1
      INFO 503 Information Systems (3 hours lecture) 3
      MATH 569 Applied Mathematics: Discrete (3 hours lecture) 3
      MATH 584 Operations Research (3 hours lecture) 3
      STAT 541 Applied Statistics (3 hours lecture) 3
      STAT 544 Statistical Computing (3 hours lecture) 3
      STAT 548 Applied Regression Analysis (3 hours lecture) 3
      STAT 595 Topics in Statistics (3 hours lecture) 3
      STAT 645 Advanced Topics in Statistics (3 hours lecture) 3
    2. Culminating Experience

      Complete 1 of the following options:

      1. Thesis Option

        Students must have a 3.3 or higher in the required core courses to register for the Thesis:

        1. Register for the following to complete the Thesis and earn 3 semester hours

          CMPT 698 Master's Thesis 3
        2. Submit the completed Thesis Original and one copy to the Graduate School Office. See Thesis Guidelines for details.

      2. Masters Project Option

        1. Complete to earn 3 semester hours

          CMPT 697 Master's Project in Computer Science (3 hours lecture) 3
        2. Department notification required upon successful completion.

      3. Comprehensive Exam Option

        Successfully complete the Comprehensive Examination.


Course Descriptions:

CMPT574: Pixel and Image Processing (3 hours lecture)

This course provides an introductory and comprehensive treatment of pixel and image processing with applications to fine arts, face recognition, etc. Topics include sampling and quantization, convolution, equalization, filtering, image segmentation, image operations, morphological image processing. 3 sh.

Prerequisites: CMPT 580 and permission of graduate coordinator.

CMPT575: Introduction to Computer Graphics (3 hours lecture)

An introduction to computer graphics, including the algorithms to generate two-dimensional and three-dimensional graphical pictures. An overview of ray tracing, shading and color theory. Interactive graphics. Graphics devices. 3 sh.

Prerequisites: CMPT 580 and permission of graduate coordinator.

CMPT576: Object-Oriented Software Development (3 hours lecture)

Introduction to the major features of the object-oriented paradigm and their realization in an object-oriented programming language. Introduction to major methods and tools used in object-oriented analysis and design. Implementation and testing issues. 3 sh.

Prerequisites: CMPT 581, CMPT 583 and permission of graduate coordinator.

CMPT578: Introduction to Artificial Intelligence (3 hours lecture)

An introduction to artificial intelligence including representations of knowledge, problem solving, games, heuristics and backtracking, expert systems, theorem proving, the language LISP and PROLOG. 3 sh.

Prerequisites: CMPT 583 and permission of graduate coordinator.

CMPT580: Machine Organization and Architecture (3 hours lecture)

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

Prerequisites: Permission of graduate coordinator.

CMPT581: Systems Software Design (3 hours lecture)

Assemblers, macroprocessors, linkers and loaders, introduction to compilers and run facilities. Required of majors. 3 sh.

Prerequisites: CMPT 580, and permission of graduate coordinator.

CMPT582: Theory of Automata and Formal Languages (3 hours lecture)

Languages and grammars, finite automata and regular grammars, context free grammars, push-down automata, Turing machines, computability, deterministic languages, linear bounded automata and stack automata. 3 sh.

Prerequisites: Permission of graduate coordinator.

CMPT583: Computer Algorithms (3 hours lecture)

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 sh.

Prerequisites: Permission of graduate coordinator.

CMPT584: Operating System Design (3 hours lecture)

Design and implementation of operating systems, multiprogramming, multiprocessor, device management, scheduling, virtual memory, case studies. 3 sh.

Prerequisites: CMPT 581, and permission of graduate coordinator.

CMPT585: Topics in Computer Science (3 hours lecture)

Recent developments in the field. Topics such as Monte Carlo methods, graphics, expert systems, security, networks and special areas of applications. May be repeated twice for a maximum of 9.0 credits as long as the topic is different. 3 sh.

Prerequisites: CMPT 580 and permission of graduate coordinator.

CMPT586: File Structures and Databases (3 hours lecture)

Secondary storage devises. Data transfer. Primary and secondary access methods. Sequential and random access methods. File design. File organizations and corresponding processing. File maintenance. Sorting large files. Databases concepts. Required of majors. 3 sh.

Prerequisites: Permission of graduate coordinator.

CMPT587: Microcomputers and Computer Interfaces (3 hours lecture)

Introduction to geneology, manufacture and hardware design of microprocessors, microcomputer architecture, instruction sets and programming, microcomputer peripherals and interfaces. 3 sh.

Prerequisites: CMPT 580, and permission of graduate coordinator.

CMPT588: Fundamentals of Programming Languages (3 hours lecture)

A comparative approach to modern programming languages with emphasis on non-imperative languages, and an introduction to parallel languages. 3 sh.

Prerequisites: Permission of graduate coordinator.

CMPT589: Computer Simulation of Discrete Systems (3 hours lecture)

Introduction to simulation and discrete simulation models. Queuing theory and stochastic processes. Simulation methodology including generation of random numbers and variates, design of simulation experiments, analysis of data generated by simulation experiments and validation of models. Survey of current simulation languages and selected applications. 3 sh.

Prerequisites: CMPT 580, permission of graduate coordinator.

CMPT590: Computer Simulation of Continuous Systems (3 hours lecture)

Computer simulation of continuous systems with emphasis on conservation principles and governing equations, numerical treatment of systems of algebraic and differential equations, the use of software packages and simulation languages, verification and validation techniques, and interpretation and presentation of results. 3 sh.

Prerequisites: CMPT 580, permission of graduate coordinator.

CMPT591: Compiler Theory and Construction (3 hours lecture)

Introduction to the formal description of programming languages, the theory of parsing, and the concepts and techniques used in the construction of compilers. 3 sh.

Prerequisites: CMPT 581, permission of graduate coordinator.

CMPT592: Data Base Design and Implementation (3 hours lecture)

To develop in-depth understanding of data base concepts and issues. The major emphasis of the course is on the conceptual (logical) organization, retrieval, and manipulation of data. Required of majors. 3 sh.

Prerequisites: CMPT 586, permission of graduate coordinator.

CMPT593: Structured System Design and Analysis (3 hours lecture)

A study of the design of large scale computer systems relative to the constraints imposed by hardware, software and particular types of applications. Recent work in automated system design will be discussed. 3 sh.

Prerequisites: CMPT 586, and permission of graduate coordinator.

CMPT594: Software Engineering and Reliability (3 hours lecture)

Principles and methods for the analysis, design, implementation, testing, and verification of software systems. Topics include requirements analysis, domain analysis, implementation, testing, verification, and software management. 3 sh.

Prerequisites: Permission of graduate coordinator.

CMPT596: Principles of Data Communication (3 hours lecture)

Physical and logical aspects of data communications: analog-digital, broadband-baseband, TDM-FDM, protocols, modulation techniques, hardware for communication. 3 sh.

Prerequisites: CMPT 580, and permission of graduate coordinator.

CMPT678: Neurocomputing (3 hours lecture)

Basic neural network concepts, definitions, and building blocks; learning laws; simple implementations; associative networks; mapping networks; survey of applications. 3 sh.

Prerequisites: CMPT 583, and permission of graduate coordinator.

CMPT680: Parallel Architectures and Algorithms (3 hours lecture)

This course provides a study of the state-of-art of parallel processing algorithms and architectures. Parallel processing uses multiple processors working together in a synchronized fashion to solve large problems fast. 3 sh.

Prerequisites: CMPT 580 and CMPT 583, and permission of graduate coordinator.

CMPT683: Advanced Computer Algorithms (3 hours lecture)

Dynamic programming, game trees and backtracking techniques, branch and bound, polynomial evaluation and fast Fourier transform algorithms; complexity and analysis, and optimization techniques will be applied. NP-hard problems and NP-completeness. 3 sh.

Prerequisites: CMPT 583, and permission of graduate coordinator.

CMPT690: Independent Study in Computer Science

Independent study under the direction of a faculty member, offering the opportunity to pursue topics in computer science which may be outside the scope of regular curricular offerings or may be an extension of an existing course or courses. Approval must be obtained from the graduate coordinator or and faculty advisor. May be repeated once for a maximum of 6.0 credits. 3 sh.

Prerequisites: Permission of graduate coordinator.

CMPT694: Software Quality Assurance (3 hours lecture)

This course examines (i) planned and systematic patterns of all actions necessary to provide adequate confidence that a product conforms to established requirements, and (ii) a set of activities designed to evaluate the process by which high-quality complex software products are developed. 3 sh.

Prerequisites: CMPT 594 or permission of graduate advisor.

CMPT695: Seminars in Computer Science (1-4 hours seminar)

Guided study of selected topics in major field of interest. 1 - 4 sh.

Prerequisites: CMPT 581, 583, and 586 and permission of graduate coordinator.

CMPT696: Local Area Networks (3 hours lecture)

Fundamental issues and concepts underlying Local Area Network (LAN) development via microcomputers: topology, transmission media and technology, error control, protocols. 3 sh.

Prerequisites: CMPT 596, and permission of graduate coordinator.

CMPT697: Master's Project in Computer Science (3 hours lecture)

Analysis of a significant problem related to computing and design of a solution. Where appropriate, implementation and testing as well as documentation of the solution. 3 sh.

Prerequisites: Completion of the computer science required core courses and permission of graduate coordinator.

CMPT698: Master's Thesis

Independent research project done under faculty advisement. Students must follow the MSU Thesis Guidelines, which may be obtained from the Graduate School. Students should take CMPT 699 if they don't complete CMPT 698 within the semester. 3 sh.

Prerequisites: Departmental approval.

CMPT699: Master's Thesis Extension

Continuation of Master's Thesis Project. Thesis extension will be graded as IP (In Progress) until thesis is completed, at which time a grade of Pass or Fail will be given. 1 sh.

Prerequisites: CMPT 698.

INFO503: Information Systems (3 hours lecture)

Examines the information requirements of an organization. The differences in the kinds of information needed at the various organizational levels (operational, administrative and strategic) are emphasized. How to plan and implement a comprehensive information system is discussed as well as methods to measure its effectiveness. 3 sh.

Prerequisites: M.B.A. degree students only.

MATH569: Applied Mathematics: Discrete (3 hours lecture)

Introduction to the basic ideas of discrete mathematics and its applications. Counting principles, permutations, combinations, algorithms, complexity, graphs, trees, searching and sorting, recurrence relations, generating functions, inclusion-exclusion, the pigeonhole principle, chromatic number, eulerian chains and paths, hamiltonian chains and paths, flows in networks, finite Markov chains. 3 sh.

Prerequisites: MATH 335, and 340, and 425, and permission of graduate program coordinator.

MATH584: Operations Research (3 hours lecture)

An in-depth study of one or at most two topics in operations research, selected from linear programming and game theory, linear and nonlinear programming, queuing theory, inventory theory, simulation models. 3 sh.

Prerequisites: MATH 425 and STAT 440 and permission of graduate program coordinator.

STAT541: Applied Statistics (3 hours lecture)

Review of estimation and hypothesis testing for one sample and two sample problems; introduction to non-parametric statistics and linear regression; fundamental principles of design, completely randomized design, randomized block design, latin square, and 2 factor design. 3 sh.

Prerequisites: STAT 330 or STAT 443 and permission of graduate program coordinator.

STAT544: Statistical Computing (3 hours lecture)

Computer systems for data analysis and data graphics, and intermediate level statistical methodology are investigated. Several statistical computing packages are utilized and evaluated. 3 sh.

Prerequisites: STAT 541 or STAT 548, and CMPT 183, and permission of graduate program coordinator.

STAT548: Applied Regression Analysis (3 hours lecture)

Fitting equations to data; matrices, linear regression; correlation; analysis of residuals; multiple regression; polynomial regression; partial correlation; stepwise regression; regression and model building; regression applied to analysis of variance problems; introduction to nonlinear regression. 3 sh.

Prerequisites: STAT 330 or STAT 443, and permission of graduate program coordinator.

STAT595: Topics in Statistics (3 hours lecture)

Topics such as exploratory data analysis, statistical graphics, statistical quality control and statistical quality assurance, Bayesian methods and Markov chain monte carlo studies. May be repeated twice for a total of 9.0 credits. 3 sh.

Prerequisites: Permission of graduate program coordinator.

STAT645: Advanced Topics in Statistics (3 hours lecture)

Recent developments in statistical science. Topics such as data mining, statistical genomics, computationally intensive data-analytic methods, statistical consulting, dynamic statistical graphics and visualization, applied time series analysis. May be repeated with no limit as long as the topic is different. 3 sh.

Prerequisites: Permission of graduate program coordinator.

Output generated in 0.00081 seconds.