Computer Science (CS)
CS 1113 Computer Literacy
A study of the basic computer operations, the role of computers in society, and some applications in business, industry, and education. (Does not count toward the Computer Science major or minor.)
CS 1313 Logic and Problem Solving
This course is the study of sound reasoning and the application of this reasoning to problem solving. In the course we will discuss many approaches to problem solving such as step algorithms, flow charts, set theory, truth tables and Warnier programs. Students will learn techniques to translate real life problems into forms which will enable computer programs to solve them. These techniques or tools should allow students to create and design programs that will be dependable and correct.
CS 1613 Computer Science I
Introduction to computer programming. The entire process of creating software is examined from analysis and design to coding and testing. An emphasis is placed upon problem solving using top-down and bottom-up techniques. Language features include data types, functions, program flow control, and input/output.
CS 1623 Computer Science II
Objects and classes are introduced in an examination of inheritance and polymorphism. Project management techniques including make files and debugging tools are discussed. Language features explored include dynamic memory management, parameter passing, name overloading and multidimensional arrays.
CS 2343 Web Page Programming
Basic concepts to design a web site. Included are content, navigation, graphics, and interactivity. HTML, internet programming, commercial domain licensing, development software, and effective layout. Students must maintain a web site.
CS 2513 Seminar in Programming
An additional computer programming course using the languages specified such as, but not limited to Pascal, Java, Fortran, Visual Basic, and other languages deemed appropriate. Fundamental programming skills are assumed as this course emphasizes the particular aspects of the specified language. This course is repeatable for credit with a different language specification.
CS 2813 Data Structures
Computers require information to be organized in a time and space efficient manner. The performance analysis and implementation of common structures including lists, queues, stacks, trees, heaps, and hash tables are the central themes of the course. In addition, students will incorporate existing libraries of structures with their programs.
CS 3133 Computer Graphics
Computer graphics related hardware and software needs. Two dimensional graphics (scaling the screen; clipping; viewports; transformations; rotations, homogenous coordinates). Analytical Geometry; rectangular coordinates; polar coordinates. Three dimensional graphics: left-hand and right-hand coordinate system transformations, two dimensional images of three dimensional objects, hidden line/surfaceelimination, animation.
CS 3143 Computer Architecture
A study of computer organization and operation. Includes hardware structure, machine and assembler languages, and software systems.
CS 3223 Net-Centric Computing
The study of how data is communicated from one computer to another including such topics as local area networks, network design, distributed processing, and telecommunication management.
CS 3323 Advanced Database Analysis
Advanced database concepts such as custom reports generated by SQL, relational tables, integration of databases with web site interfaces, and compatibility issues with current internet programming platforms. Several commercially available database systems in use will be utilized for the solution of complex and comprehensive business and industry case studies.
CS 4113 Operating Systems
Batch systems, assemblers, macros, loaders, compilers, advanced operating systems, multiprogramming, multiprocessing.
CS 4223 Algorithm Analysis
Advanced programming techniques, algorithm analysis, time and space analysis, special topics, searching, sorting, file processing, peripheral devices.
CS 4313 Compiler Construction
Translation concepts, arithmetic expressions, models of grammar, parsing, structure of translation trees.
CS 4323 Programming Languages
Advanced features of several programming languages and their associated data structures; run-time stacks; memory management; scope rules; sub-programs; special purpose languages and advanced features of conventional languages.
CS 4343 Applied Net-Centric Computing
This course focuses on integrating the class knowledge in computer science and internet technology together and applying those skills in local/wide area networks and virtual private network. Topics include: web technologies, network architecture, protocols, applications, management, and security. In addition, the network hands-on projects for students will include: configuring network services/servers such as DNS, DHCP, NATP, Firewall, TELNET, FTP, SSH, Email, Newsgroup, Database, and Web Servers, implementing the Network File System and Network Information System, sharing resources between Unis/Linus and Windows network systems and developing a Three-tier Database-driven on- line E-Commerce application.
CS 4413 Systems Analysis
Producing quality software on time and under budget that meets all user requirements through the software life cycle techniques. Cost estimation, project management, testing, and maintenance are stressed.
CS 4423 Software Engineering
Practical application of systems software development using techniques learned in previous courses. Should be taken toward the end of a student’s academic training.
CS 4623 Advanced Web-Based Application Develop
This course is to provide a comprehensive introduction to developing Web applications using the Microsoft .NET platform. Topics include:understanding ASP.NET and the .NET architecture, building Windows and Web applications using rapid applications development techniques, developing Web forms with server controls, displaying dynamic data from a database using ADO.NET, creating Web services and deploying Web applications. In addition, topics on HTTP,XML,SOAP,WSDL and C# or VB.NET will introduced as well.
CS 4643 Distributed Networks
The purpose of this course is to learn the general concepts of distributed network computing and to realize how those concepts have been applied in computer network technologies. Also, the advantages and disadvantages of those technologies will be discussed. Topics to be covered include: Basic Graph Concept, Distributed Network Computing-Sequential and Distributed algorithms, Network Protocols (TCP/IP, Multicast, and other protocols), Wireless and Multimedia Networks, Network Security, and Network Management.
CS 4950 Internship
Supervised-site experience in computer science or computer information systems gained through work. Weekly and term reports required. Petition required.
CS 4960 Directed Reading
Petition required.
CS 4970 Special Studies
Petition required.
CS 4980 Senior Seminar
In this course, students refine job search skills by developing a resume and cover letter. Students also complete a career development application and job search. Selected readings in career development will be assigned and discussed. In addition, students are expected to demonstrate knowledge in major fields through the performance of research and writing and assessment testing. Petition required.
CS 4981 Senior Seminar
In this course, students refine job search skills by developing a resume and cover letter. Students also complete a career development application and job search. Selected readings in career development will be assigned and discussed. In addition, students are expected to demonstrate knowledge in major fields through the performance of research and writing and assessment testing. Petition required.
CS 5103 Foundations of Computer Science
This course covers the mathematical and theoretical foundations of computer science. Topics include logic, proof techniques, recursion and recurrence relations, analysis of algorithms, combinatorics, basic data models/structures (sets,relations, linear models, trees, and graphs), and introductory computer theory (language theory, regular expressions, computability, NP- completeness, Turing Machines, etc.). CS5103 presents computer science from a mathematical and theoretical point of view, although implementation issues will be discussed.
CS 5133 Operating Systems
Batch systems, assemblers, macros, loaders, compilers, advanced operating systems, multiprogramming, multiprocessing.
CS 5213 Algorithm Analysis
Advanced programming techniques, algorithm analysis, time and space analysis, special topics, searching, sorting, file processing, peripheral devises.
CS 5313 Compiler Construction
Translation concepts, arithmetic expressions, models of grammar, parsing, structure of translation trees.
CS 5323 Programming Languages
Advanced features of several programming languages and their associated data structures; run-time stacks; memory management; scope rules; sub-programs; special purpose languages and advanced features of conventional languages.
CS 5413 Systems Analysis
Producing quality software on time and under budget that meets all user requirements through the software life cycle techniques. Cost estimation, project management, testing, and maintenance are stressed. Petition required.
CS 5423 Software Engineering
Practical application of systems software development using techniques learned in previous courses.
CS 5623 Advanced Web Based Application Develop
This course is to provide a comprehensive introduction to developing Web applications using the Microsoft .NET platform. Topics include: understanding ASP.NET and the .NET architecture, building Windows and Web applications using rapid applications development techniques, developing Web forms with server controls, displaying dynamic data from a database using ADO.NET, creating Web services and deploying Web application. In addition, topics on HTTP, XML, SOAP, WSDL,and C# or VB.NET will be introduced as well.
CS 5643 Distributed Networks
The purpose of this course is to learn the general concepts of distributed network computing and to realize how those concepts have been applied in computer network technologies. Also, the advantages and disadvantages of those technologies will be discussed. Topics to be covered include: Basic Graph Concept, Distributed Network Computing-Sequential and Distributed algorithms, Network Protocols (TCP/IP, Multicast, and other protocols), Wireless and Multimedia Networks, Network Security, and Network Management. Graduate students will be required to do extra projects and research reports.
CS 5960 Directed Readings
CS 5970 Special Studies
CS 5980 Seminar
CS 5990 Research for Master’s Thesis
Independent investigation designed in consultation with the student’s graduate advisory committee.
