CS 111. INTRODUCTION TO DATA PROCESSING. Introduction to computer hardware, software, Internet and World Wide Web. Provide students an in-depth understanding of why computers are essential tools in information processing, education, research, business and society in general. Use of the e-mail and World Wide Web as an integrated learning tool. Use of basic application software tools: word processing, spreadsheet and database. 3
CS 112. SURVEY OF COMPUTER SCIENCE. Introduction to computer Sciences as discipline, including theory of computation, programming languages and their structure, computer architecture, operating systems and networks, and social, ethical, and professional issues; use of application software (word processing, spreadsheet, database, etc.) and Internet; introduction to programming in a modern object-oriented programming language. Prerequisite: Computer Science, Mathematics or Mathematics Education major or faculty approval. 3 - Syllabus
CS 191-CS 192. COMPUTER SEMINAR. Required for freshman computer science majors both seminars of the freshman year. Introduction to the field of Computer Science, methods of note talking, group advisement, problem sessions, other presentations may be make by faculty, guest speakers or students. Prerequisite: Freshman Computer Science major.
CS 203. COMPUTER PROGRAMMING I. This course is an introduction to basic concepts of computer science, with emphasis on object-oriented programming. Fundamental techniques for software design and implementation will be covered and these concepts demonstrated in a programming languages such as C++. Additional topics include top-down modular design, developing general purpose software tools, procedural and data abstraction and algorithms. Prerequisite: CS 112. 3
CS 204. COMPUTER PROGRAMMING II. This course will further develop and expand upon the topics introduced in CS203. Advanced object-oriented programming techniques will be covered, with extensive use of recursion and dynamic data structures. Abstract data types, including lists, queues, trees and graphics, will be studied. Algorithms for searching and sorting will be explored. Prerequisite: CS 203. 3
CS 205. DATA STRUCTURES. Basic concepts of data structures and their representation of algorithms for manipulation of lists, trees, graphs, queues, stacks and sorting techniques. Prerequisite: CS 204. 3
CS 221. JAVA PROGRAMMING. An introduction to a second programming language for computer science majors. Students learn to read and write programs in a modern object-oriented languages. The language chosen is one with popularity and use. The current language is Java. Prerequisite: CS 204. 3
CS 231. VISUAL BASIC PROGRAMMING. Introduction to computer programming and information processing principles using the Visual Basic Language. Application development, user interface design, program development methodology, structured and objective-oriented programming and Visual Basic software development system. Prerequisite: CS 203. 3
CS 251. ALGEBRAIC LANGUAGE PROGRAMMING. Using all facilities of FORTRAN including program design, constants and variables and array processing. Making use of subprograms, and formatted data. Prerequisite:CS 112 3
CS 275. INTERNSHIP. Internships that provide students with real-life work-related experiences in the field of computer science and mathematics are a valuable part of an undergraduate education. Students choosing this option may choose to satisfy requirements for computer science credits by completing a research internship in a qualifying position. Prerequisite(s) Computer Science major. 3
CS 304. RPG IV. RPG IV contains a variety of business and commercial applications and may be used in Accounting or Business Administration functions. Students will understand the foundation of RPG IV, including its structure, specifications, and operation codes. Students will also program embedded and external subprocedures and other advanced techniques of the language. Prerequisite: CS 204. 3
CS 309 COBOL PROGRAMMING. Study and use of the COBOL languages, typical uses in business and industry. Prerequisite: CS 203. 3
CS 321. COMPUTER ARCHITECTURE. (Writing Intensive Course). Introduction to the internal logical structure of computers and the techniques of machine level programming; architectures and functioning of micro/conventional computer systems. Taught with considerable emphasis on writing, requiring reports, projects and a major research paper. Course will stress in addition to theory, method of research and organization of written reports. Prerequisite: CS 205. 3
CS 341. DISCRETE STRUCTURES. Elementary logic sets, relations, functions, ordering, equivalence relations, partitions, finite sets, module arithmetic; natural number, mathematical induction, arithmetic string, string programs, structured connectedness, traversals, graph algorithms. Prerequisite: CS 205. 3
CS 350. PRINCIPLES OF PROGRAMMING LANGUAGE. A survey of programming language concepts and design principles of programming paradigms (procedural, functional, and logic). Topics include a history of programming languages, data type supported, control structures, and run-time management dynamic structures. Prerequisite: CS 205. 3
CS 351. DATABASE MANAGEMENT. This course examines the logical organization of databases; the hierarchical, network and primarily relational data models and their languages. Functional dependencies, normal forms, issues of database planning, design and implementation; examination of some commercially available database management systems. Prerequisite: CS 205. 3
CS 361. INFORMATION SYSTEMS. Introduction to computer concepts in context of business and information systems, and overview of the information systems discipline with emphasis on Visual Basic Programming in designing databases. Prerequisite: CS 231. 3
CS 371. OPERATING SYSTEMS. The course introduces the software that manages all the resources of a computer system. Basic principles of Memory Management, Processor/Process Management, Device Management. File Management and System Management are covered. Also, this course looks at several specific operating systems and evaluate their advantages and shortcomings. Prerequisite: CS 205and CS 321. 3
CS 377. INTRODUCTION TO GEOGRAPHIC INFORMATION SYSTEMS. This course is designed to introduce students to spatial analysis techniques and issues, provide hands-on training in the use of these tools, and enable them to solve a variety of spatial and temporal problems. Emphasis will be placed on the nature of spatial information, spatial data models and structured, data input, manipulation and storage, spatial analytic and modeling techniques and error analysis. Prerequisite: Consent of instructor. 3
CS 398. SOCIAL AND ETHICAL ISSUES IN COMPUTING. A study of the ways in which advances in computers and engineering technology have affected society. Impact of computers on society; discussion of the nature of digital computers and role of information processing in human affairs. Written and oral presentations by students concerning computer ethics and the social responsibilities of computer scientists are required. Prerequisite: Junior Computer Science Major. 1
CS 403. MICROCOMPUTER APPLICATIONS. Microcomputer applications for office administration, education and business majors. Involves learning to use operating system, word processor, spread sheet, and database management software. Prerequisite: CS 112 or Departmental Approval. 3
CS 422. INTRODUCTION TO NETWORKING. This course covers issues of computer communications and networks. This course is organized around the TCP/IP reference model and Open Systems Interface model. The main topics include principles of data communications, local-area and wide-are networks, network design essentials, network media, network communication and protocols, network architectures, network operation systems and Internet-based applications. Prerequisite: CS 371 and CS 321. 3
CS 425. SOFTWARE ENGINEERING. An introduction to software engineering with emphasis on practical techniques for object-oriented analysis and design. Classical and modern principles and practice of software engineering, including classical and object-oriented approaches to architecture, design, life cycle, and project management; software metrics; change management; teams and teaming to tools; reusability, portability, and interoperability; requirement and specification. This course will expose students the methods of developing large software systems in an industrial environment. Working in terms, students will design, implement, and test large objects. Prerequisite: CS 351. 3
CS 431. NUMERICAL ANALYSIS I. Computational methods of finding numerical solutions to nonlinear equations, computations of interpolating polynomial numerical integration, and ordinary differential equations. Prerequisites: CS 205 and MA 301. 3
CS 441. LANGUAGES AND COMPILERS. Generalized language features, Backus-Naur form, functional characteristics of various languages, semantic requirements of problem-solving tasks. Prerequisite: CS 350. 3
CS 455. SENIOR PROJECT IN COMPUTER SCIENCE I. A comprehensive computer project with considerable detail to be completed under supervision of a faculty member. Topics to be decided in consultations with faculty member. Prerequisite: Senior in computer science. 3
CS 475 INTERNSHIP. Internships that provide students with real-life work-related experiences in the field of computer science and mathematics are a valuable part of an undergraduate education. Students choosing this option may choose to satisfy requirements for computer science credits by completing a research internship in a qualifying position. Prerequisite(s) Computer Science major. 3
CS 491-CS 492. COMPUTER SEMINAR. Required for each senior computer science major each semester of the senior year. Presentation of topics in research new development, new systems, etc. Presentations may be made by faculty, guest speakers or students. Prerequisite: Senior in computer science. 1