|Department||Number||Title / Description||Credits|
|CS325/EG325||Introduction to Computer Engineering Design|
An introduction to the process of computer engineering project design. A systems approach will be used. Students will research topics towards the proposal of an actual project to be built in the follow-on courses, CS451-A/EG451-A and CS451-B/EG451-B. Prerequisites: Junior Standing.
|Physics and Engineering||CS121||Introduction to Computer and Information Science|
This course will teach the fundamentals of programming logic, design and implementation. The student will learn to think logically and design programs. Examples will be implemented in several languages giving students an understanding of how languages work to implement the programmer’s logic and design. Students with no programming background are strongly encouraged to take this course before pursuing other languages.
|Physics and Engineering||CS131||Computer Programming I|
This course introduces problem solving methods and algorithm development. The course emphasizes structured programming and general
programming techniques. Topics include input/output, arithmetic, conditional testing, looping, one- and two-dimensional arrays, strings, and simple search/sort methods. Students complete several programming assignments. Prerequisite: High school algebra. Offered fall.
|Physics and Engineering||CS132||Computer Programming II|
Continues from Computer Programming I, covering multidimensional arrays, user-defined data types, record data structure, sequential and binary files, sets, pointers, functions, programs with multiple files and the standard library. Introduces data structures including linked lists. Students complete several programming assignments using advanced C topics. Prerequisite: CS131. Offered spring.
|Physics and Engineering||CS220/EG351|
Cross listed as EG351
|Advanced Microcomputer Interfacing|
Introduces the field of microcomputers. Topics include microcomputer organization and architecture, machine and assembly language programming, interrupts, serial interfacing, D/A and A/D interfacing. Laboratory required. Cross-listed with EG351. Prerequisite: MA171 or EG323. Co-requisite CS220L/EG351L.
|Physics and Engineering||CS220L/EG351L|
Cross listed as EG351L
|Advanced Microcomputer Interfacing Lab|
Lab for CS220.
|Physics and Engineering||CS221||Data Structures & Algorithms|
Analyses design and implementation of algorithms of the manipulation of data structures. Topics include single and multiple linked lists, stacks, queues, multi-dimensioned and sparse arrays, binary and general trees, AVL height balancing, graphs, networks, and shortest path and minimum spanning tree algorithms. This course will also introduce the analysis of the run-time behavior of algorithms and how design considerations affect algorithm performance. Topics include the analysis of greedy algorithms, divide and conquer techniques, and dynamic programming. Students complete several programming assignments. Prerequisite: CS132. Co requisite: MA171. Offered fall.
|Physics and Engineering||CS310||Data Telecommunications and Networks|
An in-depth experience of telecommunications fundamentals, including voice-video-data from LAN, MAN, and WAN including switched network systems. Studies data communication and telecommunication models and standards, concepts, and standard organizations and practices installation, configuration, systems integration and management of technologies. Prerequisite: CS221. Offered alternate years.
|Physics and Engineering||CS322||Database Systems|
An introduction to the concepts and methods employed in the design and implementation of database management systems. The relation, network, and hierarchical models are covered, as well as the entity relationship. Data definition and manipulation languages including relational algebra, relational calculus, and SQL are presented as well as issues related to concurrent access and recovery. Students will complete a database project. Prerequisite: CS221. Offered alternate years.
|Physics and Engineering||CS331||Operating Systems|
An overview of operating system concepts. Topics include layered architecture, CPU scheduling, memory management, device management, file systems and process management. Design of specific operating systems such as UNIX will be considered. Students will complete projects designing or modifying parts of an existing operating system. Prerequisite: CS221. Offered alternate years.
|Physics and Engineering||CS410||Java Programming|
This course addresses software development using advanced object oriented concepts and JAVA. It covers concurrency and synchronization issues and advanced topics of the object paradigm such as inheritance and polymorphism. It introduces the programming of graphics using JAVA Swing classes and examines File Streams and I/O Processing in detail. It compares the procedural paradigm with the object paradigm. It also addresses issues of programming with multiple processes and programming of systems with exception-handling capabilities. These concepts are introduced in the context of developing software using software tools, including libraries of components. Prerequisites: CS221.
|Physics and Engineering||CS420||Topics in Computer Science|
This course will cover some of the current advanced topics in computer science, algorithms, complexity and architecture. The exact
topic will vary based on needs, trends and student interest. Prerequisite: Consent of instructor.
|Physics and Engineering||CS451-A/EG451-A||Senior Design Project|
A practical design course for seniors in Computer Science based on the approved project proposed in the prerequisite EG325. Students design and construct a project using a systems approach that involves all aspects of engineering practice. Prerequisite: Senior standing, CS325/EG325.
|Physics and Engineering||CS451-B/EG451-B||Senior Design Presentation|
Continued work on the student’s senior design project. Substantial time is given for project write-up and presentations in preparation for the student’s Senior Talk. Prerequisite: CS451-A/EG451-A.
|Physics and Engineering||CS499||Independent Study|
Students may undertake a study in an area of interest with approval from department chair.