College of Science
The 36-credit M.S. in Computer Science provides students with the knowledge and skills to become successful leaders in the field of computer science and information technology. The program provides the basic foundations with an emphasis on the design and development of large software systems.
Required courses cover what is commonly accepted by the Association for Computing Machinery (ACM) and the Institute of Electrical and Electronics Engineers (IEEE) as the core of graduate computer science. The inclusion of small implementation projects and/or computer programming exercises in most courses provides experience in the practical aspects of the software development cycle. In addition, each student enrolls in a two-course sequence, either writing a thesis or completing a large software development project.
This program is offered in a blended learning format. Nearly half of each course will be delivered online and the balance will be offered in a traditional classroom setting.
Course # | Course Name | Credits |
Required M.S. in Computer Science Courses (21 Credits) |
||
CS 631 | Algorithms and Data Structures | 3 |
CS 633 | Systems Analysis and Design | 3 |
CS 641 | Computer Architecture | 3 |
CS 643 | Operating Systems | 3 |
CS 645 | Computer Communications and networking | 3 |
CS 640 | Database Management Systems | 3 |
CS 666 | Artificial Intelligence | 3 |
Required M.S. Computer Science Elective Courses |
||
Choose four (4) advanced Computer Science courses along with one (1) Software Development Project course below: | ||
CS 690 or CS 691 | Software Development Project |
3 |
OR | ||
Choose three (3) advanced Computer Science courses along with two (2) Thesis courses below: |
||
CS 698 |
Computer Science Thesis |
3 |
CS 699 |
Computer Science Thesis |
3 |
Credit Requirements | |
Total Required M.S. Computer Science Credits | 21 |
Total Required M.S. Computer Science Elective Credits | 15 |
Total Degree Credits | 36 |
CS 631 Algorithms and Data Structures
An intensive treatment of the application of data structures and algorithms in Computer Science. Topics include recursion; sequential, linked and dynamic allocation of storage stacks; queues; trees; graphs; hash tables; and internal and external sorting and searching. Emphasis is placed on the design, implementation and evaluation of algorithms.
Credits: 3
Every Spring
CS 633 System Analysis and Design
Successful system development entails much more than just coding. We will survey various models of the software development process, learn how to elicit and analyze system requirements, and how to apply various design strategies, notations, and tools. In the end, you will understand why quality is so elusive in the development of information systems, and you will be comfortable with a range of processes, methods, and tools to help achieve it. Pre-requisite of CS 631 is required.
Credits: 3
Every Fall
CS 640 (no course description)
CS 641Computer Architecture
A study of computer architecture and organization, with emphasis on quantitative analysis. Boolean algebra is introduced to teach digital devices. Students are required to design and implement on paper a simple microprocessor by the end of the semester. Microprogramming and conventional machine level are taught. Programming is expected in an assembly programming language. Pre-requisite of CS 601 or equivalent, and CS 605 or equivalent, are required.
Credits: 3
Every Fall
CS 643 Operating Systems
An introduction to the algorithms and data structures of operating systems and their performance in various environments. Topics include CPU scheduling, memory management, virtual memory, mutual exclusion and deadlock concurrent processes, and protection and security.
Credits: 3
Every Spring
CS 645 Computer Communications and Networking
An introductory course in computer networks, with emphasis on the physical and logical design of computer networks using the OSI and TCP/IP layered models as conceptual frameworks. The physical, data link, network, and transport layers are discussed in detail. Examples are provided from existing network architectures. The TCP/IP protocol suite is studied in the contexts of the network and transport layers.
Credits: 3
Every Spring
CS 666 Artificial Intelligence
An examination of the concepts and methodologies used in constructing intelligent computer programs. Areas covered are state space representation, knowledge representation and reasoning techniques, and search strategies, including heuristic search and genetic algorithms. Application areas are selected from game playing, expert-systems, natural language processing and machine learning. Overview of AI tools and languages is included. Students are required to implement an AI project. Pre-requisite of CS 631 is required.
Credits: 3
Every Fall
CS 690 Software Development Project
The development of a large software systems project based on a current analysis and design paradigm resulting in a valid and verified software system. The application domain and the course syllabus are made available in the preceding semester. The completion of the degree core requirements is required.
Credits: 3
Every Fall
CS 691 Software Development Project
The development of a
large software systems project based on a current analysis and design paradigm
resulting in a valid and verified software system. The application domain and
the course syllabus are made available in the preceding semester. The
completion of the degree core requirements is required.
Pre-requisites of CS
631, CS 633, CS 643, CS 645, CS649 and CS 666 are required.
Credits: 3
Every Spring
CS 698 Computer Science Thesis
Preparation of a thesis under the supervision of a faculty adviser. The completed thesis is evaluated by the Department's graduate Curriculum Committee.
Credits: 3
Every Fall and Spring
CS 699 Computer Science Thesis
Preparation of a thesis under the supervision of a faculty adviser. The completed thesis is evaluated by the Department's graduate Curriculum Committee.
Credits: 3
Every Fall and Spring
© Long Island University | All Rights Reserved