Computer Science


Cpsc 200 Introduction to Computers and Data Processing
Students gain experience using word processing, electronic spreadsheet, and database management software. The use, misuse, and abuse of computers will be discussed with examples from many fields. Different sections of this course may be offered on different hardware platforms, usually IBM-PC compatibles or Macintoshes, but the same concepts will be studied in each section and therefore the course may be taken for credit only once. 3 credits.


Cpsc 204 Using the Internet
Prerequisite, Cpsc 200 or equivalent. An introduction to the Internet, how it works, and how to use it. Students will learn to communicate with the global Internet community via e-mail and through newsgroups, and to search the Internet for information, news, free software and more using the World Wide Web. The course emphasizes practical knowledge that will allow students to exploit the Internet in their own areas of expertise. For a final project, each student will develop a Web page relevant to his or her personal or professional interests. 3 credits.


Cpsc 210 Visual Programming
Prerequisite, Cpsc 230 or equivalent. Students learn Windows-based application development for programmers. The essentials of a visual programming language such as Visual BASIC or Delphi are covered, as are forms, properties, controls, modules, menus, and dialog boxes. Keyboard and mouse control, sequential and random file processing, manipulating text and graphics, connecting to other Windows applications through Dynamic Data Exchange (DDE) and Object Linking and Embedding (OLE), error handling and debugging are emphasized. 3 credits.


Cpsc 229 Experimental Course


Cpsc 230 Computer Programming I
Prerequisites, Math 99 or equivalent, Cpsc 200 or equivalent. Students are introduced to problem-solving methods and algorithm development in the high-level programming language, Java. The course emphasizes good design, coding, debugging and documentation, as being fundamental to the discipline. This is the first course in the computer science and computer information system majors, and is suitable for undecided students who wish to consider careers in computing. The course requires two hours per week of supervised work in the computer laboratory, in addition to three hours per week of lecture. 4 credits. (Academic Centers: 3 credits.)


Cpsc 231 Computer Programming II
Prerequisite, Cpsc 230 or equivalent. Students continue their study of computer programming through simple data structures, advanced object-oriented design, and large program structure. The course typically involves a significant programming project. The course requires two hours per week of supervised work in the computer laboratory, in addition to three hours per week of lecture. 4 credits. (Academic Centers: 3 credits.)


Cpsc 250 Assembly Language Programming
Prerequisite, Cpsc 231 or equivalent. Students learn basic programming and program structure in an assembly language, to provide experience with machine language, instruction, execution, addressing and representation of data, macros, subroutines, linkages, and recursive routines. 3 credits.


Cpsc 252 Computer Architecture I
Prerequisite, Cpsc 250. Students learn the organization and structuring of the major hardware components of computers, to understand the mechanics of information transfer and control within a digital computer system, and to provide the fundamentals of logic design. 3 credits.


Cpsc 348 Structured Systems Analysis and Design
Prerequisites, Cpsc 210, 408. Overview of the system development life cycle. Advanced study of structured systems development. Emphasis on strategies and techniques of structured analysis and structured design for producing logical methodologies for dealing with complexity in the development of information systems. 3 credits.


Cpsc 350 Data Structures
Prerequisites, Cpsc 231, Math 250. Students develop and understand data structures such as stacks, queues, lists, and trees to understand techniques such as hashing, dynamic storage allocation, and garbage collection. 3 credits.


Cpsc 352 Computer Architecture II
Prerequisite, Cpsc 252. This is a continuation of Cpsc 252. Topics to be covered are the design and analysis of instruction set processors, memory management, paging, segmentation, I/O system design, multi-processors, networks, high level language computers, object based architecture and data flow systems. (Offered alternate years.) 3 credits.


Cpsc 353 Data Communications and Computer Networks
Prerequisite, Cpsc 231. Students explore the principles and techniques of data communications and give special emphasis to networks and distributed systems. The I.S.O. Reference Model for open systems interconnection will be investigated and the function and operation of each protocol layer analyzed in detail. 3 credits.


Cpsc 354 Programming Languages
Prerequisites, Cpsc 231, 250. Students develop an understanding of the organization and design of programming languages through the formal study of programming language specifications and analysis. 3 credits.


Cpsc 355 Graphical User Interface Design
Prerequisite, Cpsc 231. Students gain experience in designing applications for different GUIs (Graphical User Interfaces). Students investigate various application frameworks using object-oriented component reuse techniques. Several windowing systems are explored and evaluated. 3 credits.


Cpsc 360 Computer Graphics
Prerequisites, Math 250, 211, Cpsc 231. The fundamental concepts of graphics software, hardware, and standards are examined. The course gives special emphasis to three-dimensional graphics and provides an introduction to graphical user interfaces. 3 credits.



Cpsc 365 , 366 Digital Logic Design I, II
Prerequisites, Math 250, 251 respectively. This two-semester course introduces the student to fundamental principles and practice of digital logic. The courses cover binary numbers and arithmetic, Boolean algebra as a method of reasoning about sequential circuits including truth tables and Karnaugh maps, logic minimization, gates and flip-flops, sequential logic and combinational logic circuit, arithmetic circuits, decoders, multiplexers and implementations of finite state devices. 3-3 credits.


Cpsc 370 Topics in Computer Science
3 credits.


Cpsc 380 Operating Systems
Prerequisites, Cpsc 252, 350. Students learn about the organization and architecture of computer systems at the machine and programming levels of system description. The course emphasizes the major principles of operating system design and the interrelationships between the operating system and hardware. 3 credits.


Cpsc 390 Artificial Intelligence
Prerequisites, Math 150, 211, Cpsc 231. Students study the tools, techniques, and applications of artificial intelligence. Students will be introduced to the programming techniques utilized in artificial intelligence applications. 3 credits.


Cpsc 402 Compiler Construction
Prerequisites, Math 150, Cpsc 350, 354. Students examine the techniques involved in the analysis of source-language statements and the generation of object code. 3 credits.


Cpsc 406 Algorithm Analysis
Prerequisites, Math 150, 211, Cpsc 350. A study of basic techniques of design and analysis of efficient algorithms for internal and external sorting/merging/searching, to provide for the integration of data structure, sort/merge/search methods and memory media into a simple data base management system. 3 credits.


Cpsc 408 Database Management
Prerequisite, Cpsc 350. Students learn data management concepts and the representation and structure of data in the context of applications and system software. The emphasis is on design of databases and developing applications in a client-serve environment using SQL as the query language. 3 credits.


Cpsc 453 Network Implementation
Prerequisite, Cpsc 353. Students explore the principles and techniques for implementing TCP/IP based networks using Microsoft Windows NT servers and clients, including the skills to configure, customize, optimize, troubleshoot and integrate network. This course assists with preparing students to meet the Microsoft Certified Systems Engineer certification requirements. For CS and CIS majors only. 3 credits.


Cpsc 455 Operating System Administration
Prerequisite, Cpsc 453. Students explore the principles and techniques for managing the Microsoft Windows NT operating system in the enterprise, including the skills to install, configure, customize, optimize, and troubleshoot both the NT workstation and Server operating system. This course assists with preparing students to meet the Microsoft Certified Systems Engineer certification requirements. For CS and CIS majors only. 3 credits.


Cpsc 458 Advanced Web-Based Database Systems
Prerequisite, Cpsc 408, 453, and 455. Students explore the principles and techniques for managing Microsoft’s SQL Server 7.0 Database System and Microsoft’s Internet Information Server including the skills to install, configure, customize, optimize, and troubleshoot both the SQL Server and Information Server Systems. This course assists with preparing students to meet the Microsoft Certified Systems Engineer certification requirements. For CS and CIS majors only. 3 credits.


Cpsc 465 , 466 Integrated Circuit Design I, II
Prerequisites, Physics 102, Math 211, Cpsc 366. ICD II also requires Cpsc 352. The first semester course introduces the student circuit analysis, including transcient and sinusoidal steady-state analysis, complex frequency and Bode plots. The second semester integrates theoretical, functional ideas from Digital Logic II with the physical electronics covered in the first semester toward the design of real-world integrated circuits. The second semester also introduces the student to VLSI CAD tools for physical design. 3-3 credits.


Cpsc 491 Cooperative Education


Cpsc 498 Senior Project
3 credits.