- 1305 Computer Programming I A comprehensive overview of the scope and dynamics of computer science. Topics include history of computing, computer organization and components, operating systems, computer ethics, basic skills and concepts of computer programming: program control structures, methods and argument passing, iteration, arrays and problem solving by step-wise refinement, programming and documentation style. Basic skills and concepts of programming.(Offered every Fall semester)
- 1306 Computer Programming II A continuation of CS or CSIS 1305 to include advanced programming techniques, the use of object oriented techniques such as: inheritance, polymorphism and, interfaces. Introduction to visual programming concepts, String manipulation and File I/O. Students design, implement, and test a number of moderately large programs.
Prerequisites: CS 1305
(Offered every Spring semester)
- 2310 Fundamental Mathematical Structures Fundamental and unifying principles of logic and computation. Introduction to mathematical logic for the computer scientist.
Prerequisites: CS/CSIS 1305, MH 1451
(Offered every Fall semester)
- 2320 Data Structures and Algorithms Abstract data types, encapsulation and information hiding, modular programming and separate compilation, pointers and dynamic storage allocation, lists, stacks, queues, trees, graphs, searching and sorting algorithms. Prerequisites: CS 1306, CS 2310 (Offered every Spring semester)
- 2345 Computer Organization Understanding how a computer works. Introduction to physical aspects of computer systems: Digital logic and circuit design, circuit components, memory types, data representation.
Prerequisite: CS 2310. (Offered every Spring semester)
- 3300 Computer Architecture Understanding how a computer is designed. Introduction to logical aspects of system implementation: structure and electronic design of processors. Study of elements such as instruction sets and formats, operation codes, data types, registers, addressing modes, memory access methods, and I/O mechanisms.
Prerequisite: CS 2345. (Offered Fall semester; even years)
- 3330 Telecommunications and Networks A survey of various methodologies and techniques utilized in interfacing data communications and networking systems within the business environment, along with the consideration of issues related to the management of these systems. Introduction to computer-based communications and networks: underlying concepts, basic hardware components and operating systems, network architectures and protocols, data integrity and security, message routing, network management.
Prerequisite: CS 2345. (Offered Fall semester; even years)
- 3340 Operating Systems Basic concepts and components of operating systems, the relevant characteristics of hardware, and the trade-offs between conflicting objectives faced by the operating system.
Prerequisite: CS 2345 (Offered Spring semester; even years)
- 3350 Database Concepts Fundamentals of the relational data model: relation schema, relation, integrity constraints, relational database schema, relational database. Introduction to elements of database design: functional dependencies and normalization. Prerequisite: CS 2320. (Offered Spring semester; Even years)
- 3386 Visual Programming Survey of a visual programming language inclusive of variables and operators, decision structures, loops and timers, object properties, preferred user interface, special effects and use of modules and procedures. Prerequisites: CS 1305, CSIS 2376. (Offered Fall semester; Odd years)
- 3389 Software Development An intensive, implementation-oriented introduction to the
software development techniques used to create medium-scale interactive
applications. Application of the principles of program design to the construction of a
significant piece of software, justifying the design decisions made at
each stage and addressing the relevant quality issues
Identification of the basic techniques that result in efficient and effective
ways of building large software systems.
Prerequisites: CS 2320. (Offered Fall semester; Odd years)
- 4330 Database Design and Implementation Conceptual database design using the entity-relationship model; null values and spurious tuples; functional dependencies and algorithms for relational database design. Implementation of relational databases.
Prerequisite: CS 1306, CS 3350, (Offered Fall semester; Even Years)
- 4345 Internet Programming Introduction to World Wide Web programming:HTML and the WWW architecture; Applet programming; Database integration. Prerequisites: CS 4330. (Offered Spring semester; Odd years)
- 4350 Design and Implementation of Programming Languages Survey of selected high-level languages. Implementation of data and control structures. Introduction to finite automata, languages, grammars and compiler construction. Prerequisite: CS 2320. (Offered Fall semester; Odd years)
- 4360 Software Engineering Designed to support introductory subject matter of special interest in software engineering. Integration of software systems development concepts: project management, analysis, design, and implementation with telecommunications, database design, programming, testing and system integration issues. Development of software systems from concept to completion through individual and team effort. Prerequisite: CS 3388. (Offered Spring semester; Odd years)
- 4380 Internship/Project in Computer Science Supervised work experience in the field of computer science. Students planning to take this course need to consult with their advisor so they can be appropriately placed in an internship or assigned a project in the department. Prerequisite: Senior status in CS and permission of instructor. (Offered Fall semester; Odd years)
- 4390 Seminar in Computer Science An overview of current trends in computer science. A forum for discussion and presentation of current issues in computer science. Prerequisite: Senior status in CS and permission of instructor. (Offered Spring semester; Even years)
- 2099/3099 Individualized Study The course may involve a systematic reading program, library research, laboratory project, studio work, field study or creative expression. Conferences or tutoring as required, but no formal lectures or recitations. Quizzes, tests, and examinations as appropriate. CS 2099 is open only to sophomores. May be repeated for credit. Number of credit hours awarded (1-3) will be set by department chair and approved by the dean.