School of Computer Sciences
Master in Computer Science
Computer scientists impact society through their work in many areas. The advancement of technology has transformed the way and speed with which individuals work, communicate, and exchange information. As we now depend daily on the stability and reliability of our technology systems, there is a very strong demand for individuals with a background in computer science. Graduatelevel computer scientists are generally hired to work with the next generation of technology in areas such as computer systems, networking, database administration, operating systems, search engines, software engineering, and custom applications.
A variety of programming languages and software packages are used at the graduate level. Graduate students are expected to have the ability to immediately learn these languages and packages as needed for their programs. There are also many opportunities for independent study, projects, and research.
Integrated Bachelor of Science/Master of Science in Computer Science
An integrated baccalaureate and master’s degree program provides the opportunity for outstanding undergraduates to earn both degrees in five years. Typically, a baccalaureate degree requires four years to complete and a master’s degree requires an additional two years. However, the integrated degree programs are intended to be accomplished over a period of five years. In addition to earning both degrees a year early, the integrated programs may include additional opportunities to participate in a variety of experiential educational activities such as a master’s project or thesis.
A limited number of teaching assistantships, which provide a monthly stipend and a tuition waiver, are available. Undergraduate and graduate grade point averages, scholarship records, recommendations, and a personal statement provide the criteria for awarding assistantships. Teaching Assistants must maintain a 3.0 GPA, exhibit satisfactory progress toward their degree, and satisfactorily perform their assigned duties in order to retain their assistantships.
At Western, you will have access to a large IBM mainframe and SUN computers. There are also large laboratories with the latest microcomputers available. Our access to microcomputers is as good as any university in the United States. It is our goal to give you experience on a variety of computing equipment and the associated software so that you can judge which type of equipment is best suited for the problems you encounter during your working career.
Department faculty have a variety of experiences, degrees, and research interests. The faculty have doctorates from such universities as Florida State University, Illinois Institute of Technology, Indian Institute of Science, Northwestern University, Southern Methodist University, SUNY Buffalo, University of Illinois, University of Iowa, and University of Western Ontario. Their current research interests are in the areas of artificial intelligence, computer architecture, databases, distributed processing, graphics, languages, networking, simulation, and software engineering.
Our goals for the MS degree program in Computer Science are to offer the knowledge you need to pursue careers in research and commercial environments, and to give you the ability to stay current in our dynamic and rapidly changing discipline. Our graduates have been successful in PhD programs, in industrial research laboratories, in software and hardware design, and in middle- and upper-level management for a variety of companies.
According to the U.S. Department of Labor, Bureau of Labor Statistics, computer scientists are expected to be among the fastest growing occupations through 2018. Employment of these computer specialists is expected to grow much faster than the average for all occupations as organizations continue to adopt and integrate increasingly sophisticated technologies. Job increases will be driven by very rapid growth in computer systems design and related services.
Please refer to the graduate catalog for detailed program information and course requirements.
Computer Science (CS) Courses
CS 410G Operating Systems
Overview of the concepts/theory of operating systems with emphasis on process management, memory management, file management, scheduling, device management, and synchronization.
CS 412G Graphical User Interface Programming
Development of programs that use multiple windows, dialog boxes, mouse input, interapplication communication using API calls, object-oriented frameworks and application builders.
CS 420G Computer Communication and Networks
Survey of the operational features of telecommunications systems, computer networks, and distributed-processing systems. Considerations for the design of real-time systems.
CS 460G Artificial Intelligence Methods
An introduction to the main principles and methods of artificial intelligence. Solving problems by searching, knowledge and reasoning; machine learning; current AI applications. Programming paradigms relevant to AI will be explored.
CS 465G Computer Graphics
Introduction to computer-generation of graphs and pictures, using both character and pixel graphics methods, in two and three dimensions. Animation techniques, CAD methods.
CS 470G Database Systems
Survey of data models with emphasis on the relational model. Data normalization. Query languages and query optimization. Design and security considerations. Exposure to commercial database management systems.
CS 473G Computer Simulation
This class will introduce the science and art of computer based simulation. We will focus on discrete event simulation using the simulation languages ProModel and GPSSH. The class will focus on discrete event simulation, but will also cover Monte Carlos and continuous simulations. Scientific method and statistics will be used to develop, analyze, and report on a student developed simulation project.
CS 483G Microcomputer Systems with Database Applications
Covers command language, programming logic and applications of database systems for the non-computer science major.
CS 484G Network and Data Communications Concepts
Concepts and design of commercial computer and telecommunications networks. Course is designed for non‑majors, especially those who will manage/operate networks in business environments.
CS 488G Introduction to Programming with Visual Basic
Introduction to the principles of programming for Windows in Visual Basic. Principles include event-driven programming, control structures, properties, events, methods of controls, and forms.
CS 500 Intensive Programming Review
This course will review computer programming, object-oriented design, linear and non-linear data structures, and the software development lifecycle. All concepts will be reinforced through hands-on programming assignments and projects.
CS 512 Advanced Operating Systems
Topics chosen from the theory of distributed, parallel, and concurrent operating systems. Other possible topics include secure systems and formal models of operating systems.
CS 513 Topics in Operating Systems
Topics to include additional depth, readings, and/or examination of research trends in operating systems.
CS 522 Advanced Database Design and Administration
Advanced relational database concepts. This course will examine topics such as relational database management system design (RDBMS), including discussion of the major components of a RDBMS; query optimization strategies and cost estimation techniques; active databases, advanced transaction processing; and concurrency control.
CS 523 Topics in Database Systems
Topics to include additional depth, reading and/or examination of research trends in Database Systems.
CS 530 Design and Analysis of Algorithms
Fundamentals of the design and analysis of algorithms, space and time-complexity issues, dynamic programming, greedy algorithms, linear programming, NP-completeness, multithreaded algorithms, and applications.
CS 540 Computer Simulation
Statistical techniques used in computer simulations. Construction and verification of simulation models. Programming projects.
CS 548 Advanced Artificial Intelligence
The course will include topics from Expert Systems, Knowledge Engineering, Soft Computing, and other advanced topics.
CS 549 Topics in Artificial Intelligence
Course covers modern trends in artificial intelligence.
CS 550 Workshop
CS 556 Advanced Computer Networks
In depth studies of computer networks and the services built on top of them.
CS 557 Topics in Computer Networks
Survey of computer networks covering current trends and advanced topics. Survey of research papers from classic literature through contemporary research.
CS 560 Computer Architecture
Study of computer architecture for large-scale and small-scale systems. Microprogramming concepts. Minicomputer and microcomputer design and applications, projects on small‑scale systems.
CS 561 Advanced Computer Architecture
Investigation of techniques to enhance system performance. Topics may include compiler optimization, hardware optimization, branch prediction, speculation, exploitation of instructional-and loop-level parallelism, etc.
CS 562 Topics in Computer Architecture
Advanced topics to include additional depth, readings, and/or examination of research trends in computer architecture.
CS 566 Advanced Computer Graphics
Study and programming of problems beyond the introductory level, such as real time computer graphics using modern programming languages and graphics development environments.
CS 567 Topics in Computer Graphics
Designed to gain depth in computer graphics. Possible topics include the study of 3-D modeling for, and the development of, multi-user virtual worlds.
CS 575 Independent Study
An investigation of issues related to computer science not specifically covered in other courses.
CS 585 Software Engineering
Covers the design and implementation of large software applications through the study of team approaches and industrial standards.
CS 590 Topics in Computer Science
This course is designed to give students knowledge at the frontier of a rapidly changing technology. It is offered in the following areas: a) expert database systems; b) object-oriented programming; c) fundamentals of computer arithmetic; d) computing theory for software engineers; e) design of decision support systems; f) complexity; g) cybernetics; h) fuzzy logic; i) distributed computing. j) knowledge engineering; k) software maintenance; l) systems analysis.
CS 595 Graduate Computer Science Internship
A one-semester on-the-job experience in an industrial facility or research laboratory.
CS 599 Master's Project
Special software or hardware project work, in lieu of a thesis.
CS 600 Research
Research project for the MS Thesis
CS 601 Thesis
All candidates must meet the general admission requirements of the School of Graduate Studies. Each candidate must show evidence of having completed coursework in programming principles and data structures either prior to admission as a degree candidate or before completion of his or her program of study.
The program offers four plans for maximum flexibility in meeting your goals: (1) the traditional research-based thesis, (2) a more commercial project-oriented option, (3) an internship option, or (4) an allcoursework option. In each, you will take courses that stress projects, teamwork, and a fundamental knowledge of computing. You will graduate with competence and confidence: the competence to do the job and the confidence to know you can do it.
Plan 1: The Thesis Option requires 27 semester hours (sh) of coursework and 6 sh of research. The final written thesis will be a formal document describing the research and will be prepared in accordance with the requirements of the School of Graduate Studies.
Plan 2: The Project Option requires 30 sh of coursework and 3 sh of directed study research. A final written report on the research project is required. The successful completion of a final oral examination covering the research project or thesis, when those plans are chosen, is required to graduate.
Plan 3: The Internship Option requires 30 sh of coursework and 3 sh of internship credit. A final written report on the internship is required.
Plan 4: The All-Coursework Option requires 33 sh of coursework.
Dr. Dennis DeVolder, Director
Location: Stipes Hall 447
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-1452
Fax: (309) 298-2302
Dr. Martin Maskarinec
Location: Stipes Hall 447J
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-1316
College of Business & Technology (CBT)
Dr. William Bailey, Interim Dean
CBT Email: email@example.com
Location: Stipes Hall 101
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-2442
Fax: (309) 298-1039