|
|
May 03, 2024
|
|
2020-2021 Undergraduate Catalog [Archived]
Courses
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
CS 260 - Object Oriented Programming 3 Credits
Description Object oriented programming concepts and methods. Includes encapsulation, data abstraction, class development, instantiation, constructors, destructors, inheritance, overloading, polymorphism, libraries, and packages.
Prerequisites A grade of C or better in CS 151.
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
|
|
-
CS 305 - Computer Science Teaching Methods 3 Credits
Description The methods, materials, and applications of teaching computer science in elementary, middle, and high schools. Computer science education is explored as it relates to National K-12 and Indiana state standards. Various components including computing systems, networks, data, algorithms and programming, and digital citizenship are examined along with expectations from licensing and certifying agencies.
Prerequisites C or better in CS 101, CS 151, and CS 260. CS 260 may be taken concurrently. Or consent of instructor.
Restrictions Education major with junior standing.
Repeatable No
Foundational Studies Credit No
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
-
CS 351 - Computer Organization 4 Credits
Description This course examines in some detail how a computer works. To prepare for this study, students will learn the basics of binary arithmetic, data representation, along with propositional and predicate logic. The major hardware components of a computer, including processors (CPUs), memory (RAM), storage and other peripheral devices will be examined in some detail. Computer software will also be studied. The process of program translation and execution will be outlined. Students will learn machine language and learn to write and run simple assembly language programs. Operating system functions and the organization of file systems will be studied.
Prerequisites A grade of C or better in CS 201
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
CS 452 - Software Engineering 3 Credits
Description This course studies the software life cycle: specification, object-oriented programming and design, program development, validation, testing, debugging, documentation, maintenance, revision control, CASE tools.
Prerequisites A grade of C or better in CS 201, or consent of instructor.
Note Open to graduate students. Graduate students are required to do additional work of a research nature.
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
-
CS 456 - Systems Programming 3 Credits
Description An introduction to both program translation and operating systems. There will be a survey of topics such as: top-down and bottom-up parsing, scanning, code generation, symbol table management, linkers and loaders, batch processing systems, interacting processes, multiprogramming systems, and memory management.
Prerequisites A grade of C or better in CS 202, CS 303, and CS 351.
Co-requisites Concurrent enrollment in CS 456L is required.
Note Open to graduate students. Graduate students are required to do additional work of a research nature.
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
|
|
-
CS 457 - Database Systems 3 Credits
Description The course will provide an introduction to the use of data management systems for applications, an understanding of how such systems function, and the advantages and disadvantages of various types of database systems. The first part of the course will deal with the relational model, and will include an introduction to Relational Algebra and SQL. NoSQL database systems will also be studied. Topical examples will include key-store, document, graph, and other categories of database management systems. The underlying data structures and algorithms that support database systems will also be reviewed.
Prerequisites A grade of C or better in CS 201 and CS 303
Co-requisites Concurrent enrollment in CS 457L is required.
Note Open to graduate students. Graduate students are required to do additional work of a research nature.
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
|
|
|
|
|
|
|
|
-
CS 469 - Unix/Linux Administration and Networking 3 Credits
Description Includes installation and configuration of Unix/Linux operating system software; set-up of hardware and software for Unix/Linux networking including TCP/IP, FTP, Telnet, DNS, DHCP, and Apache; Unix/Linux administration tasks including directories, users, tuning, backup, security, and networking.
Prerequisites A grade of C or better in CS 201 or consent of instructor.
Note Open to graduate students. Graduate students are required to do additional work of a research nature.
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
|
|
-
CS 471 - Operating Systems 3 Credits
Description This class introduces the basic functionality provided by computer operating systems, and covers three main topics. The first topic is memory management; specifically dynamic memory allocation, dynamic address translation, virtual memory, and demand paging. The second topic concerns processor management and concurrency; how do we manage multiple tasks that execute at the same time and share resources. Subtopics in this section include processes and threads, context switching, synchronization, scheduling, and deadlock. The third topic concerns file systems and storage management; the organization and operation of an example file system will be discussed in detail.
Prerequisites A grade of C or better in CS 456 or consent of instructor.
Note Open to graduate students. Graduate students are required to do additional work of a research nature.
Click here for the Summer 2024 Class Schedule
Click here for the Fall 2024 Class Schedule
Click here for the Spring 2025 Class Schedule
Click here for the Summer 2025 Class Schedule
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|