Navigate Up
Sign In
Home > Academics > Graduate Studies and Research
Graduate Studies and Research

Computer Science

Chair: Zhigang Xiang

Deputy Chair and Graduate Admissions Officer: Jennifer Whitehead

Assistant Chair for Undergraduate Studies: Kenneth J. Lord

Assistant Chair for Graduate Studies: Keitaro Yukawa

Department Office: Science Building A202, 997-3500

Department Website: http://www.cs.qc.cuny.edu

The dynamic and growing field of computer science provides opportunities for intellectual activity, research, and future employment. The aim of the master’s program is to prepare students for professional careers in private industry, government, and academe. For those who seek academic careers and opportunities for more advanced research, the master’s program may constitute a significant portion of the PhD program offered by the CUNY Graduate Center. For information on the PhD program, consult the department.

The department’s faculty members conduct a wide range of research in computer science, and receive external funding from such federal agencies as the National Science Foundation, National Institutes of Health, and Department of Defense, as well as from corporate sources. Current areas of faculty research include bioinformatics, computer vision, information retrieval, data mining, instructional technology, medical and document imaging, networking, and parallel processing, among others. Please examine our webpage for the most up-to-date information: www.cs.qc.cuny.edu

We have about 230 computers running various operating systems (Solaris, Linux, Mac OS, Microsoft Windows, etc.) networked in the department, available for research and instruction, and the college provides many additional PCs and servers.

 

Faculty

Xiang, Zhigang, Chair, Associate Professor, PhD 1988, State University of New York at Buffalo: computer graphics, image processing, interactive techniques

Whitehead, Jennifer, Deputy Chair, Graduate Admissions Officer, Professor, PhD 1975, University of Warwick, England: continuous computational complexity, p-adic computing, real-time scheduling, file transfer scheduling

Lord, Kenneth J., Assistant Chair for Undergraduate Studies, Lecturer, PhD 1995, City University of New York: web programming

Yukawa, Keitaro, Assistant Chair for Graduate Studies, Assistant Professor, PhD 1987, University of Waterloo: database systems, database aspects of multimedia documents, programming languages

Boklan, Kent D., Assistant Professor, PhD 1992, University of Michigan at Ann Arbor: cryptography and computer security

Brown, Theodore D., Professor, PhD 1971, New York University: simulation methodology, analytic modeling, parallel algorithms, analysis of algorithms

Chen, Jinlin, Assistant Professor, PhD 1999, Tsinghua University: web information service, embedded systems, software engineering

Fluture, Simina, Lecturer, MA 1999, Queens College, CUNY: medical applications of computer vision, bio-informatics

Goldberg, Robert R., Professor, PhD 1989, Courant Institute of Mathematical Science, New York University: biomedical image processing, computer vision, formal languages and automata, genetic algorithms, graphics, scheduling theory

Goodman, Seymour, Professor Emeritus, PhD 1962, Columbia University: microprogramming, computer architecture

Gross, Ari D., Associate Professor, PhD 1991, Columbia University: computer vision, computer graphics, shape modeling, computational geometry

Huenerfauth, Matt, Assistant Professor, PhD 2006, University of Pennsylvania: assistive technology for people with disabilities, natural language processing, virtual human modeling and animation, computational linguistics of sign language

Ji, Heng, Assistant Professor, PhD 2007, New York University: statistical natural language processing, data nining and machine learning, artificial intelligence

Kong, T. Yung, Professor, PhD 1986, Oxford University, England: geometrical and topological problems related to computer vision graphics and image processing

Kwok, Kui-Lam, Professor, PhD 1965, University of Manchester, England: information retrieval (IR), application of neural networks to IR, data structures

Obrenic´, Bojana, Associate Professor, PhD 1993, University of Massachusetts at Amherst: algorithm design, especially for parallel and concurrent systems, databases, computational combinatorics, graph theory

Phillips, Tsaiyun Ihsin, Professor, PhD 1984, University of Maryland at College Park: computer vision, image processing, performance evaluation, document image analysis

Reddy, Boojala V.B., Assistant Professor, PhD 1988, University of Hyderabad: bioinformatics, computational biology, In Silico drug design

Rosenberg, Andrew, Assistant Professor, PhD 2009, Columbia University: prosodic event detection, natural language processing, spoken language processing, prosodyl intonation, machine learning

Ryba, Alexander, Professor, PhD 1985, Cambridge University, England: computational group theory, finite group theory, combinatorial game theory

Sy, Bon K., Professor, PhD 1988, Northeastern University: uncertain reasoning, use of AI augmentative communication, recognition of impaired speech, data mining, data warehouse, wireless networking, VoIP technology

Vickery, Christopher, Professor, PhD 1971, City University of New York: computer organization and architecture, software design, logic design

Waxman, Jerry J., Professor, PhD 1973, New York University: voice/data systems, algorithms, computer science education

Wee, Hoeteck, Assistant Professor, PhD 2007, University of California, Berkeley: cryptography and complexity theory

 

Program for the Master of Arts Degree

The Master of Arts in computer science includes courses in four areas of study: software, theoretical foundations, hardware, and mathematical applications and algorithms.

The software area is the primary focus of the program, and includes courses in fundamental algorithms, software design, database systems, distributed software systems, operating systems, compiler design, graphics, information organization and retrieval, and artificial intelligence.  Theoretical foundations courses include the mathematical treatment of such topics as formal language theory, automata theory, and computability theory. Course offerings in the hardware area cover topics including computer systems design, networking principles, and distributed hardware systems. The mathematical applications and algorithms area includes courses covering sequential and parallel numerical algorithms, applications of probability and statistics to the study of hardware and software systems, and principles of simulation and modeling.

All 700-level courses in the department are applicable to the CUNY doctoral program in computer science. Some graduate courses are open to students who are not matriculated in the master’s program. Consult the department for details.

Requirements for Matriculation

These requirements are in addition to the general requirements for admission.

Matriculation is based on merit as judged by the graduate admissions committee of the department. The committee will expect each candidate for matriculation to have an adequate mathematics background, including integral calculus, probability and statistics, and discrete mathematical structures.

Matriculation requirements also include a working knowledge of at least one high-level, object-oriented programming language (some courses, including core courses, require knowledge of specific languages; consult the department for current requirements), assembly language programming, data structures, principles of programming languages, operating systems, computer organization, and theory of computation. A candidate who is partially deficient in the above requirements may, at the discretion of the admissions committee, be admitted subject to the requirement that the deficiencies be rectified. Appropriate means to fulfill this requirement are provided by the department. Courses taken to meet admissions deficiencies do not count toward the credit requirements for the degree; the average (mean) grade in these courses must be at least B (3.0), and each one of these courses must be completed with a grade of B– or better.

The Jacob Rootenberg Fellowship Award

Each semester an award from the Jacob Rootenberg Fellowship Fund will be made to a new matriculant with an outstanding record of scholarship.

Program Requirements

These requirements are in addition to the general requirements for the Master of Arts as specified in this Bulletin.

Each student must complete 30 credits of 700-level courses, including the core courses (Algorithms I, Distributed Computing Computability and Complexity, and Computer Architecture and Networks). In addition, the student must choose one course in each of the three semi-core categories: software, hardware, and mathematical applications and algorithms. After completion of 21 credits, each student must satisfy a capstone requirement by completing a software development practicum, a hardware design practicum, a research practicum, an approved research project, or a master’s thesis. The remaining courses may be freely chosen from a variety of other 700-level courses, including special topics and seminar courses.

 

Courses in Computer Science

The second digit of each course number represents a particular area.

0 or 1 Software
2 Foundations
4 Hardware
6 Mathematical Applications and Algorithms

Any course designated as “scs,” “sch,” and “scm” (respectively: software, hardware, and mathematical applications and algorithms) satisfies the semi-core requirement in that particular area.

Core Courses (Students must take all four courses):

CSCI 700. Algorithms I

CSCI 715. Distributed Computing

CSCI 722. Computability and Complexity

CSCI 744. Computer Architecture and Networks

Note: Students who passed CSCI 323 or 344 with a grade of B+ or better may apply for a waiver from CSCI 700 or 715, respectively. Students who receive this waiver will still be required to complete 30 credits of 700-level courses.

Software Semi-core Courses (students must take at least one):

CSCI 701. Software Design

CSCI 707. Compiler Construction

CSCI 718. Computer Graphics

Hardware Semi-core Courses (students must take at least one):

CSCI 745. Switching Theory

CSCI 746. Computer Systems

CSCI 748. Computer Networks

Mathematical Applications and Algorithms Semi-core Courses (students must take at least one):

CSCI 762. Algorithms II

CSCI 764. Topics in Systems Simulation

CSCI 766. Probabilistic Models in Computer Systems

Elective Courses

CSCI 711. Database Systems

CSCI 780, 782, 784, 786, or 783. Special Topics in Computer Science

CSCI 790, 792, 794, 796, or 793. Seminars in Computer Science

CSCI 799.1–3. Research

Note: In the seminar and special topic courses the third digit represents the subject area. (The numbers 783 and 793 will be given to courses that resist categorization with respect to subject area.)

Capstone Courses (Students must take one, after completing 21 credits)

CSCI 731. Software Development Practicum

CSCI 732. Research Practicum

CSCI 733. Master’s Thesis

CSCI 799.3. Research

Note: The programming project reports, research reports, and master’s theses submitted by the students shall be placed in the departmental files.

Other Courses

CSCI 788.1–3. Computer Science: Cooperative Education Placement.

MA Courses

CSCI 688. Advanced Productivity Tools for Business. . 2 hr. lec. 2 hr. lab.; 3 cr. Prereq.: CSCI 012 or equivalent. Computing technology for students in business and finance-related disciplines. Advanced analytic techniques with an emphasis on spreadsheet topics such as financial functions and formulas, pivot tables, charting, and macro programming. Integration of spreadsheets, databases, and presentation tools for analysis and report generation. (5-08)

CSCI 700. Algorithms I. 3 hr.; 3 cr. Fundamental algorithms, their use, analysis, and the data structures used in their formulation. Programming paradigms such as dynamic programming, divide and conquer, greedy algorithms, branch and bound, backtracking, and their applications. Parallel algorithms.

CSCI 701. Software Design. 3 hr.; 3 cr. Prereq.: CSCI 700. Techniques and principles of systematic software development. Review of current software development tools. Top-down design and structured programming. History and concepts of modular design. Graphical user interfaces. Object-oriented design including data abstraction by classes and type polymorphism. Significant programming projects will be assigned.

CSCI 707. Compiler Construction. 3 hr.; 3 cr. Prereq.: CSCI 700. Theory and practice of compiler construction. Topics include theoretical and practical studies of lexical analysis, syntax analysis, type checking, semantic analysis, object code generation and optimization.

CSCI 711. Database Systems. 3 hr.; 3 cr. Prereq.: CSCI 700. In-depth review of database systems and extensive survey of the current literature on the topic.

CSCI 715. Distributed Computing. 3 hr.; 3 cr. Distributed systems design and implementation. Concurrency and modularity. Operating system considerations. Transport-level communication protocols. RPCs. Examples of distributed systems.

CSCI 718. Computer Graphics. 3 hr.; 3 cr. Prereq.: CSCI 700. Digital image fundamentals, scan-conversion algorithms, organization of graphics systems, 2D/3D primitives and their attributes, curve and surface representations, transformations, projections, hidden line/surface removal and clipping algorithms, color and illumination models, shading methods, interactive devices and techniques, graphics API. Significant programming projects to illustrate the rendering process as well as the design of user interfaces will be assigned.

CSCI 722. Computability and Complexity. 3 hr.; 3 cr. Prereq.: CSCI 320. Models of computation such as Turing machines, random access machines, and circuits. Time complexity classes, including P and NP, space complexity classes, including L and NL, and the interrelationships among them. Mapping reducibility and its specializations, including polynomial-time and log-space reducibility. Establishing a first NP-complete problem, such as circuit satisfiability or Boolean-formula satisfiability. P-complete decision problems; NP-complete decision problems; and related approximation algorithms.

CSCI 731. Software Development Practicum. Hours to be arranged; 3 cr. Prereq.: Completion of 21 credits, including any software semi-core course. Each student will complete a significant software development project, either of his/her own choosing or one selected by the instructor. In general, projects will incorporate the following features in their design: A graphical user interface, concurrent processing, and persistent state across invocations. All projects will include complete and separate documentation for end-users, for installation, and for software maintenance. Project management tools for version and module management, and a complete record of the development stages are required.

CSCI 732. Research Practicum. 3 hr.; 3 cr. Prereq.: Completion of 21 credits. Critical review of research in computer science. Students will conduct research on one of the topics given by the instructor, and gain experience in writing research proposals, actual research process (including the use of libraries and the reading of papers), and in writing research reports. The instructor will give lectures on the selected topics as well as on general research methods, and closely monitor the students’ research process.

CSCI 733. Master’s Thesis. 3 cr. Prereq.: Completion of 21 credits. A master’s thesis must be accepted by a sponsoring member of the department and by a thesis committee chosen by the department. (For college requirements regarding theses, see page XX of this Bulletin.)

CSCI 734. Hardware Design Practicum. Hours to be arranged; 3 cr. Prereq.: Completion of 21 credits, including a hardware semi-core course. Each student will complete a significant hardware development project approved by the instructor. Projects may be based on existing development platforms, or may involve construction of a hardware platform specific to the project. Designs may involve various areas of digital design, such as signal processing, robotics, networking, or peripheral interfacing.

CSCI 744. Computer Architecture and Networks. 3 hr.; 3 cr. The design of CPU, memory, and I/O systems. Performance evaluation. Pipeline processor design. SIMD architecture. Communication issues in a distributed computing system. Design of interconnection networks and their applications. Fault-tolerant computer systems.

CSCI 745. Switching Theory. 3 hr.; 3 cr. Boolean algebra. Symmetric and iterative circuits. Fault detection and location. State equivalence and reduction of completely and incompletely specified machines. State identification and experiments. Linear sequential circuits. Current research topics.

CSCI 746. Computer Systems. 3 hr.; 3 cr. Prereq.: CSCI 744. Parallel computer models. Program and network properties. Performance metrics and measures. Advanced processor technology, RISC and CISC processors. Software for parallel programming. Current research topics.

CSCI 748. Computer Networks. 3 hr.; 3 cr. Prereq.: CSCI 744. Basic communication concepts, connectivity analysis, delay analysis, and the International Standards Organization Reference Model of Open Systems Interconnection (ISO-OSI).

CSCI 762. Algorithms II. 3 hr.; 3 cr. Prereq.: CSCI 700. A continuation of the material of CSCI 700, including algorithms for numerical computation, algorithms for parallel or distributed computers, and probabilistic analysis of algorithms.

CSCI 764. Topics in Systems Simulation. 3 hr.; 3 cr. Prereq.: CSCI 700. Introduction to simulation and comparison with other techniques. Discrete simulation models and introduction to, or review of, queuing theory and stochastic processes. Comparisons of discrete change simulation languages. Simulation methodology including generation of random numbers and variates, design of simulation experiments for optimization, analysis of data generated by simulation experiments and validation of simulation models and results. Selected applications of simulation.

CSCI 766. Probabilistic Models in Computer Systems. 3 hr.; 3 cr. Prereq.: CSCI 700. This course deals with analytical modeling as a means of analyzing computer hardware and software through the application of fundamental concepts of probability theory, statistics, random processes such as queuing theory and Markov chains to problems encountered in queuing models of time-sharing systems, multiprocessor interference, statistical evaluation of sorting techniques, and reliability of computer systems and networks.

CSCI 780, 782, 783, 784, 786. Special Topics in Computer Science. 3 hr.; 3 cr. May be repeated for credit for differing titles.

CSCI 788.1–3. Computer Science: Cooperative Education Placement. 1–3 hr.; 1–3 cr. Prereq.: Completion of at least three 700-level computer science courses and approval by the department’s Graduate Curriculum and Advisement Committee of a detailed project description submitted by the student. Experiential learning through job placements developed by the Queens College Cooperative Education program. Opportunities are provided to test, demonstrate, and expand on academic learning in an organizational setting. This course does not count toward the 30 credits required for the Master of Arts in computer science. The grade for this course will be given on a pass/fail basis.

CSCI 790, 792, 793, 794, 796. Seminars in Computer Science. 3 hr.; 3 cr. May be repeated for credit if the topic changes.

CSCI 799.1–3. Research. 1–3 hr.; 1–3 cr. Prereq.: permission of the department. May be repeated for credit for different topics, to a maximum of 3 credits. Student research reports shall be written; they will be placed on file with departmental technical reports. CSCI 799.3 can be used to satisfy the capstone requirement if the proposal is approved for such by the department. Students may take such a course only after they have completed at least 21 credits of 700-level courses with a cumulative GPA of 3.3 or better, and the research involved must be an individual work.

 
 

 Office Information

 
Hours: (M-F) 9-5  |  (Sat-Sun) Closed
Office: Kiely Hall, Room 139A
Phone: 718-997-5190
Fax: 718-997-5198


Dr. Richard J. Bodnar
Dean of Graduate Studies and Research

Richard.Bodnar@qc.cuny.edu

Ms. Carol Capalone
Administrative Assistant

Carol.Capalone@qc.cuny.edu



 

 Related Links

 
     



Queens College, CUNY| 65-30 Kissena Blvd.| Queens, NY 11367-1597| Phone: (718) 997-5000 Copyright © 2004-
Queens College is CUNY