School of Computer Sciences

Computer Science

Program Details

Like all of Western Illinois University’s programs, studies in Computer Science are based on the broad educational foundation built during your freshman and sophomore years. General Education courses account for approximately one-third of the credit hours required for the degree and include courses in writing, speaking, the humanities, the social sciences, the natural sciences, mathematics, and health sciences.

You will find the Computer Science program rewarding and challenging. The goals are to give you the basic and fundamental knowledge of your field, allow you to continue updating your knowledge as the field progresses, and give you the confidence to attack problems and the competence to solve them.

Your program in Computer Science will consist of the following core courses: Principles I and II (with the language of JAVA), Software Applications, Computer Organization, Data Structures, Automata and Computability Theory, and Software Engineering. Upon completion of the majority of the core classes, students advance into the areas of computer architecture, database systems, systems programming, computer networking and telecommunications, artificial intelligence, computer security, graphics, and simulation.

Students have the opportunity to take courses in COBOL, E-Commerce, digital circuit design, UNIX, and GUI (graphical user interface) programming.

A minor area of study is required for the Computer Science major. Your department adviser will help you select courses for a minor that will best complement your special interests and career goals. We especially recommend a minor in one of the College of Business and Technology areas for those considering careers in commerce. Minors in such areas as Engineering Technology, Mathematics, and Law Enforcement and Justice Administration have also proven useful to our graduates.

Integrated Five-Year BS/MS Option

Today’s technology-dependent and ever-changing technology environment requires graduates with strong technical and leadership skills. In response to this need, Western’s Computer Science department offers an integrated program that will allow students to complete both a Bachelor of Science degree and a Master of Science degree in just five years. The program provides an opportunity for outstanding undergraduates to complete a traditional four-year undergraduate degree in Computer Science and then, with one additional year, earn a master’s degree.

Students may apply for admission to the integrated computer science program after completing 60 semester hours of undergraduate coursework, of which a minimum of 30 hour must be at WIU. Applicants must also have a minimum 3.25 cumulative GPA and a minimum 3.25 GPA in computer science courses.

View detailed integrated degree requirements for computer science.

Student Activities

We strongly believe there is much more to education than bookwork and labwork, though these are important. We advise our students to become involved in other activities such as music, theatre, intramural sports, the student newspaper, student government, and, of course, the Computer Science Association (CSA). CSA is one place where you will be welcomed by others with similar interests and where you can learn about the latest advances through field trips and special presentations. We feel it is a vital part of your total education. Western’s School of Computer Sciences also hosts a chapter of the National Honorary Computer Society, Upsilon Pi Epsilon. This society provides special recognition to outstanding Computer Science majors.

Computer Facilities

At Western, you will have access to a large IBM mainframe and SUN computers, and we have large laboratories of the latest microcomputers. 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 its associated software so that you can judge which type of equipment is best suited for the problems you encounter during your working career. For example, you will work on at least three different types of computers during your first four semesters at Western.

Department Minors

  • Computer Science
    • Traditional option
    • Microcomputer Applications option
  • Cyber Security
  • Information Systems
  • Information Technology
  • Network Technologies

Additional Resources

The demand for computer specialists grows every year. As a graduate in Computer Science from Western Illinois University, you’ll be well-prepared for a variety of career opportunities in every conceivable type of commercial, industrial, governmental, research, and educational organization.

Alumni Job Titles

Within 5 Years of Graduation
  • Computer Systems Support Specialist
  • Programmer Analyst
  • Network Infrastructure Specialist
  • Software Engineer
  • Systems Administrator
  • Systems Analyst
5+ Years Past Graduation
  • Application Developer
  • Clinical Applications Analyst
  • Java Architect
  • Senior VP for Information Technology
  • Technical Architect
  • Web Content Management Developer

Employers of Alumni

  • Allstate
  • AM. Assoc. of Neurological Surgeons
  • Apex Entertainment Partners
  • Caterpillar Inc.
  • College of DuPage
  • Countrywide Financial
  • Gardner Denver
  • Harrington Signal
  • John Deere
  • McAfee
  • McGladrey
  • NTT America
  • Prairie Cardiovascular Ltd.
  • Provena Health
  • Rock Island Arsenal
  • State Farm
  • West Monroe Partners
  • Xerox

Please refer to the undergraduate catalog for detailed program information and course requirements.

Course Descriptions


101 Computer Literacy I. (3) Covers computer hardware and computing concepts; introduction to word processing, spreadsheets, database, electronic communications, and presentation software. Cannot be applied to the Computer Science major. Credit cannot be given for more than one of CS 101 or 203. IAI: BUS 902.

102 Computer Literacy II. (3) Covers advanced word processing, presentation graphics, database software, integration of software, and software needs analysis. Will contain a team project. Cannot be applied to the Computer Science major. Prerequisite: CS 101 or equivalent.

114 Introduction to Computer Science. (3) (General Education/Natural Sciences and Mathematics) Introduction to computer algorithms, problem specification, correctness, computer structure, sets, truth tables, functions, and iteration. Presentation of basic principles of a current programming language. Credit cannot be given for CS 114 after or in the same semester as credit is given for CS 214. Credit cannot be given for CS 114 and CS 211 or CS 212 or CS 201.

214 Principles of Computer Science. (3) (General Education/Natural Sciences and Mathematics) Introduction to computer program design, testing, documentation, simple data structures, references, sorting, searching, and algorithm development. Credit cannot be given for both CS 214 and CS 202. Prerequisite: MATH 100. Corequisite: MATH 128. 3 hrs. lect.; 1 hr. lab. IAI: CS 911.

220 Introduction to COBOL. (3) Structured programming methods in COBOL. Introduction to file concepts and file processing.

225 Programming for Engineering and Science. (3) Fundamental principles, concepts, and methods of computing, with emphasis on applications in the physical sciences and engineering. Basic problem solving and programming techniques; fundamental algorithms and data structures; use of computers in solving engineering and scientific problems. Cannot be used towards a major in Computer Science. Prerequisite: MATH 133.

230 External Files. (3) To introduce concepts and techniques to create and maintain sequential, indexed, and relative files using Virtual Storage Access Methods (VSAM) and Access Method Service utilities (IDCAMS). Prerequisite: CS 220 or equivalent.

250 (Formerly CS 350) Data Structures I. (3) Review of basic structures; object-oriented techniques; analysis, comparison, and design of algorithms for data structure processing; sorting, searching methods. Prerequisites: CS 214 with a grade of C- or better and MATH 128 or equivalent. IAI: CS 912.

301 Advanced Microcomputer Systems with Spreadsheet Applications. (3) This course covers advanced spreadsheet techniques including microprogramming. Also covered are on-line information systems, package installation, and other advanced application techniques. Credit cannot be given for both CS 301 and CS 302. Prerequisite: CS 101 or 203.

302 Spreadsheet and Database Applications. (3) Covers both spreadsheet and database applications from a business perspective. Emphasis will be placed on working with formulas, formatting, charting, query construction, form generation, report generation, and the integration of these applications. Cannot be applied towards the Computer Science major. Credit cannot be given for both CS 301 and CS 302. Credit cannot be given for both CS 483 and CS 302. Prerequisite: CS 101 or equivalent.

305 Introduction to Computer Forensics. (3) An introduction to computer forensics. The course will cover a range of computer hardware and forensics software tools on current and past operating systems. Prerequisite: CS 101 or CS 114 or CS 214 or equivalent.

306 Advanced Computer Forensics. (3) Computer forensic software will be used for data acquisition and analysis. Topics include forensic issues common to file systems, evidence collection, and case building tasks regularly used in the analysis of electronic evidence. Prerequisite: CS 305.

310 Computer Organization I. (3) Numeric representation, logic gates, latches, adder design; architectural components: ALU, bus, IO devices; memory organization; instruction set design and tradeoffs, addressing techniques. Prerequisites: CS 214.

315 E-Commerce Technology. (3) Concepts, design, and applications related to electronic commerce. Course is designed for nonmajors, especially those who will manage or operate an E-Commerce system in a business environment. Cannot be applied toward the Computer Science major. Prerequisite: CS 101 or CS 114 or an introductory programming class.

320 Ethical, Social and Legal Issues in the Digital World. (3) (Global Issues) Study of challenges and implications of computer technology for users and IT professionals. Topics include global perspectives on ethical, social, and legal issues in software quality, freedom of expression, privacy, intellectual property, hacking, and computer crime. BGS online writing course. Prerequisite: junior standing.

343 Physical Computing. (3) Building interactive physical systems using software and hardware to sense and control the physical world. Topics include software development with sensors, electro-mechanical devices, microcontrollers, and peripheral devices. Prerequisite: grade of C- or better in one of the following: CS 114, 214, 225, 488.

351 Data Structures II. (3) Advanced data structures with emphasis on non-linear data structures. Strategies for constructing algorithmic problem solutions. Analyzing the time and space efficiency of algorithm implementations. Prerequisites: CS 250 with a grade of C- or better and (MATH 255 or MATH 341).

355 Automata and Computability Theory. (3) An introduction to the modern theory of computing: automata theory, formal languages, and effective computability. Topics covered include finite automata and regular languages; pushdown automata and context-free languages; Turing machines and general computability; undecidability and the halting problem. Prerequisites: junior standing and (MATH 255 or MATH 341).

371 (Cross-listed with CSEC 371) UNIX. (3) An introduction to the UNIX environment. Includes shell commands, scripting, regular expressions, SED, process manipulation, forks, threads, process synchronization, introduction to system programming. Not open to students with credit in CSEC 371. Prerequisite: CS 250 or Corequisite: CS 250.

395 (Cross-listed with CSEC 395) Computer Privacy and Security. (3) Methods of protecting data in computer and communications systems from unauthorized disclosure or modification while maintaining availability for authorized users. Modern cryptographic methods: symmetric and public key cryptography, message digests, digital signature, and certificates. Secure protocols: firewalls, VPNs, and IDS. Not open to students with credit in CSEC 395. Prerequisite: CS 214 or consent of School.

400 Computer Organization II. (3) Computer systems analysis and design, interconnection structures, memory, input/output processors, machine instructions sets, microprogramming, CPU structures, control units, parallel processing, computer architectures and systems. Prerequisites: CS 214 and 310.

410 Operating Systems. (3) Overview of the concepts/ theory of operating systems with emphasis on process management, memory management, file management, scheduling, device management, and synchronization. Prerequisites: CS 310 and 250.

412 Graphical User Interface Programming. (3) Development of programs that use multiple windows, dialog boxes, mouse input, interapplication communication using API calls, object-oriented frameworks and application builders. Prerequisite: CS 250.

415 E-Commerce Systems Development. (3) Tools and technologies related to electronic commerce system development will be covered. Emphasis will be placed on developing the infrastructure and exploring the emerging technical issues in support of E-Commerce. Prerequisite: CS 250.

420 Computer Communication and Networks. (3) Survey of the operational features of telecommunications systems, computer networks, and distributed-processing systems. Considerations for the design of real-time systems. Credit cannot be given for both CS 420 and (CS 484 or IS 324). Cannot be applied toward the Cyber Security major. Prerequisite: CS 351.

425 Server-Side Web Development. (3) Significant development of server-side web applications using server-side architecture and a current scripting language. Prerequisite: CS 351 or (CS 250 and IS 415) or (CS 250 and CSEC 422).

455 Computer System Security. (3) Survey of major areas of computer system security. Emphasis on detection and prevention. Hardware and software discussed. Cannot be applied to the Computer Science major. Prerequisite: CS 101 or CS 114 or equivalent.

460 Artificial Intelligence Methods. (3) 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. Prerequisite: CS 351.

465 Computer Graphics. (3) Introduction to computer-generation of graphs and pictures, using both character and pixel graphics methods, in two and three dimensions. Animation techniques, CAD methods. Computer lab projects. Prerequisite: CS 351.

470 Database Systems. (3) 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. Credit cannot be given for both CS 470 and (CS 483 or IS 342). Prerequisite: CS 351 or CSEC 432.

473 Computer Simulation. (3) Introduction to computer simulation techniques and programming languages, GPSS and SIMSCRIPT. Prerequisite: CS 250.

483 Microcomputer Systems with Database Applications. (3) Covers command language, programming logic, and applications of database systems for the non-Computer Science major. Cannot be applied to the Computer Science major. Credit cannot be given for both CS 483 and (CS 302 or CS 470 or IS 342). Prerequisite: CS 101 or 114.

484 Network and Data Communications Concepts. (3) Concepts and design of commercial computer and telecommunications networks. Course is designed for nonmajors, especially those who will manage or operate networks in a business environment. Cannot be applied toward the Computer Science major. Credit cannot be given for both CS 484 and (IS 324 or CS 420). Prerequisite: CS 101 or CS 114 or CS 214 or (CS 211 and CS 212).

486 Mobile Application Development. (3) Development of applications for mobile computing devices. Topics include mobile platforms and languages; application design for small screens; battery and resource management; debugging and testing techniques; and application distribution ecosystems. Prerequisite: CS 250 or permission of instructor.

488 Introduction to Programming with Visual Basic. (3) Introduction to the principles of programming for Windows in Visual Basic. Principles include event-driven programming, control structures, data types and structures, properties, events, methods of controls, and forms. Cannot be applied toward the Computer Science major. Prerequisite: CS 101 or ET 105, or equivalent.

491 Software Engineering I. (3) This course will focus on the design principles of large software systems. Topics include software life cycle models, agile methods, requirements engineering, object-oriented design and analysis, software architecture styles, prototyping, and team participation. Writing Instruction in the Discipline WID course. Prerequisites: CS 351, 355; ENG 280; and at least 85 s.h.; or consent of School.

492 Software Engineering II. (3) This course covers project management, implementation, testing, and maintenance of a large software system following industrial standards. Topics include scheduling, estimation, source control, testing strategies, testing techniques, and teamwork. Writing Instruction in the Discipline WID course. Prerequisite: CS 491.

495 Computer Science Internship. (1–12, repeatable to 12) Credit for work experience in a research, governmental, or business organization. Internship project report required. Only 3 s.h. can be used for the major. Prerequisites: Computer Science major, 15 s.h. of Computer Science courses, and written permission of the School director. Graded S/U only.

497 Senior Honors Project. (3–6, repeatable to 6) This course provides a project option within the departmental Honors Program. Project directed by a faculty member of the School of Computer Sciences. Prerequisite: senior Honors Program participant or consent of School.

499 Independent Study. (1–3, repeatable to 6, 3 per semester) Individual study or research in an area of Computer Science under the supervision of a Computer Science faculty member. Project report required. Prerequisite: approval of School of Computer Sciences.


Computer Sciences

Dr. Dennis DeVolder, Director
Location: Stipes Hall 447
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-1452
Fax: (309) 298-2302

Computer Sciences Website

Computer Sciences Directory

College of Business & Technology (CBT)

Dr. John A. Elfrink, Interim Dean
CBT Email:
Location: Stipes Hall 101
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-2442
Fax: (309) 298-1039

CBT Website

CBT Directory

Undergraduate Advisor

Chris Ramsey
Location: Stipes Hall 133
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-1619

Graduate Advisor

Dr. Martin Maskarinec
Location: Stipes Hall 447J
1 University Circle
Macomb, IL 61455-1390
Phone: (309) 298-1316

Computer Science vinyl window cling