https://www.augustana.edu/academics/areas-of-study/computer-science/courses
2018-19
DIANE C.MUELLER, Adjunct Assistant Professor B.A., Concordia; M.S., Illinois State
STACEY A. RODMAN, Associate Professor, Chair B.A., Gustavus Adolphus, M.A., Ph.D., Oregon FORREST STONEDAHL, Assistant Professor B.A., Carleton, M.S., Ph.D., Northwestern
MAJOR IN COMPUTER SCIENCE. 36 credits, including CSC-211, CSC-212, CSC-285, CSC-330, CSC- 370, CSC-490; two of CSC-310, CSC-320, CSC-332, CSC-335, CSC-380; MATH-219, MATH-220, MATH-230, and one of MATH-315, MATH-329, MATH-336, MATH-343.
MINOR IN COMPUTER SCIENCE. 18 credits, including CSC-211, CSC-212, CSC-285, CSC-330, CSC- 370, and 3 additional credits from the 200- or 300-level.
Grade Point Average Notation: All courses listed in the catalog as required courses for any major and/or minor, including those courses outside of the department or with a different subject coding, are considered part of the major and will count in the grade point average. Some departments may have additional grade requirements for the courses offered within their
department. Recommended supporting courses that are optional and not required may also count in the major depending on the program. For more information see your department chair or the degree requirements for Bachelor of Arts and information on Majors/Minors.
160
Courses (CSC)
CSC-112 Spreadsheet Software (1 Credits)
Introduction to the use of spreadsheet software to manage and present data. Data entry, editing and formatting, relative and absolute addressing, formulas and built-in functions, sorting,
database features, graphing, presentation quality output. Uses Microsoft Excel spreadsheet software
CSC-121 Explorations in Computing (3 Credits)
(Q) A broad study of the fundamental ideas in computer science. Topics include the history of computing, data representation, machine architecture, networking and the Internet, algorithms, programming languages, information systems, artificial intelligence, limitations of computing and ethical issues. Includes in-class laboratory work. Intended primarily for non-majors. May not be taken for credit after 212.
CSC-211 Introduction to Computer Science I (3 Credits)
Introduction to Computer Science I Problem solving and program development using the Java programming language. Elementary control structures, classes and object-oriented design. In order to register for 211, a student should have completed three years of high school
mathematics (Geometry, Algebra I and II) AND must: have an Augustana Math Index Score of at least 840 OR have an equivalent placement on the Augustana ALEKS assessment OR have earned a grade of A in 090 OR have been a student at Augustana prior to Fall 2013.
CSC-212 Introduction to Computer Science II (3 Credits)
Continuation of 211. Event-driven programming, graphical user interfaces, arrays, file processing, inheritance. Prerequisite: 211 or equivalent with a minimum grade of C- or better or permission of the department.
CSC-215 Web Programming (3 Credits)
Introduction to web programming, including HTML and CSS. Emphasis on making web pages dynamic through the use of scripting languages such as JavaScript and PHP. Includes significant in- class lab work. Prerequisite: 211.
CSC-270 Ada Programming (3 Credits)
Fundamentals of the Ada programming language including packages, generics, exceptions, and tasks. Prerequisite: 211.
CSC-285 Software Development (3 Credits)
Introduction to software engineering concepts. The software life cycle, models, requirement analysis and specification, design, implementation, testing, maintenance and project
management. Prerequisite: 212 and have earned a grade of C- or better in 212. (C- requirement in effect Sept. 6, 2016.)
CSC-299 Directed Study (1-2 Credits)
CSC-310 Database Management (3 Credits)
Using SQL to query and update databases. Emphasis on the relational data model. Includes
database design, implementation, the entity-relational model, and the normalization. In-class lab work with MS Access and Oracle. Prerequisite: 212.
161 CSC-320 Principles of Artificial Intelligence (3 Credits)
(PH) An introduction to several key ideas in artificial intelligence, including knowledge
representation, machine learning, and search/optimization techniques. Application areas will be selected from game playing, problem solving, pattern-finding, and autonomous robotics.
Philosophical questions and ethical implications of A.I. will be explored. Prerequisite: CSC 212 and MATH 230, or permission of the instructor
CSC-330 Computer Architecture (3 Credits)
Computer systems organization. Memory, control processing, assembly language, data
representations, digital logic, sequencing of instruction fetch and execution. Prerequisite: 212. CSC-332 Operating Systems (3 Credits)
Software management of computer resources. Processes, resource management and scheduling, memory management and protection, input/output devices, concurrency. Prerequisite: 330. CSC-335 Computer Networks (3 Credits)
Fundamentals of computer communication network concepts and protocols at the application, transport, network and link layers. Hands-on lab experience with networking hardware and software. Prerequisite: 330.
CSC-370 Data Structures and Algorithms (3 Credits)
The specification and implementation of data structures with an emphasis on abstract data types including linked lists, stacks, queues, trees and graphs. The design and analysis of algorithms that operate on those data structures. Includes in-class lab work. Prerequisites: 212 and have earned a grade of C- or better in 212. (C- requirement in effect Sept. 6, 2016.)
CSC-380 Programming Language Principles (3 Credits)
The concepts underlying programming languages. Includes history and formal languages.
Investigates logic, functional, and scripting languages. Projects on topics of interest. Prerequisite: 370.
CSC-399 Directed Study (1-2 Credits) CSC-400 Independent Study (1-2 Credits)
Prerequisite: 6 upper-division credits in computer science and consent of department chair. CSC-490 Senior Inquiry (3 Credits)
Applying the software development process to specify, design, implement and test a major software project in teams. Prerequisite: senior standing. (Open to graduating seniors or by permission of instructor only.)
CSC-INTR Computer Science Internship (0-9 Credits)
CSC-INTR-Axx Academic Internship (0-9) Analysis of the background, structure and policy issues in the sponsoring organization. Prerequisite: a declared major or minor in computer science.
Departmental internships must be approved by the department. CSC-INTR-Exx Experiential (0-9) Departmental internships must be approved by the department.