Augusta UniversityWebsiteAcademic Catalog
School of Computer and Cyber SciencesDepartment Website
BS Degree in Computer Sciencesource 1source 2ABET
CS Courses
- Principles of Computer Programming ICSCI 1301 (4)introCSCI 1301: Principles of Computer Programming I
A rigorous study of the principles of computer programming with emphasis on problem solving methods which result in correct, well-structured programs. Other topics: an introduction to data representation, data types and control structures, functions, and structured data types.
- Principles of Computer Programming IICSCI 1302 (3)introCSCI 1302: Principles of Computer Programming II
A continuation of problem solving methods and algorithm development. Topics include data structures and their implementation, algorithm development and programming. The emphasis is on program development and style.
- Introduction to Networking and Cyber SecurityCYBR 2600 (4)sysCYBR 2600: Introduction to Networking and Cyber Security
Introduces networking technology and information security practices. Topics include network models and protocols as well as information security fundamentals. The course includes hands-on lab activities where techniques and procedures are demonstrated and implemented.
- Ethics in Computer ScienceCSCI 2700 (2)impactCSCI 2700: Ethics in Computer Science
A study of the ethical, social and legal impacts of computers and their applications. Specific attention will be paid to professional responsibility, issues of privacy, property rights, legal issues and real risks. Corequisite: CSCI 1301.
- Programming Languages ConceptsCSCI 3300 (3)plsCSCI 3300: Programming Languages Concepts
This course is centered around the concepts of the design and advanced features of programming languages. The differences between functional, imperative, and object-oriented programming will be discussed. Syntax specification, program evaluation, typing, abstract data types, and recursion will be discussed.
- Low-Level Programming LanguagesCSCI 3371 (3)sysCSCI 3371: Low-Level Programming Languages
Study of computer systems and programming at the level of low-level programming languages. Students will have the opportunity to learn basic principles and fundamentals of machine language, assembly language and C. Topics include pointers, bit operations, and system programming in the C# language, and register operations, control structures, bitwise operations, subprograms, and addressing techniques in assembly language.
- Database SystemsCSCI 3410 (3)sysCSCI 3410: Database Systems
This course offers an introduction to database systems as a key concept in information management. The course covers logical and physical database organization, data models, file structures, indexing, hashing, query optimization, and design issues. This course will cover the design and implementation of databases.
- pick 3
Internet ProgrammingCSCI 3600 (3)sysCSCI 3600: Internet ProgrammingThis is an advanced course in Internet programming for real-world business applications. The focus is on the complete application development cycle including analysis and design, implementation, verification, and demonstration/support. Course topics include multi-tier application design, network programming, XML, web server and client programming, JavaScript, AJAX, and web services.
Malware Analysis and Reverse EngineeringCSCI 4531 (3)sysCSCI 4531: Malware Analysis and Reverse EngineeringIntroduces malware analysis and reverse engineering techniques. Course provides in-depth coverage of the malware types, techniques, and capabilities. Popular diagnostic tools are used to analyze malware, observe malware in action, and to understand how the malware works.
Hardware and Embedded SystemsCSCI 4532 (3)sysCSCI 4532: Hardware and Embedded SystemsThis course explores microcontroller design, embedded systems, and programmable logic devices (FPGAs). Hardware reverse engineering is introduced. Industrial Control Systems are examined as an implementation of embedded systems. There is a lab component to the course.
- Analysis of AlgorithmsCSCI 4100 (3)algsCSCI 4100: Analysis of Algorithms
Introduction to design and analysis of combinatorial algorithms. Use of asymptotics in evaluating algorithm’s efficiency and scalability. Application of induction and other mathematical techniques for proving correctness of algorithms. Data structures for simplifying algorithm design, such as hash tables, heaps, binary search trees. Advanced design and analysis methods, such as greedy algorithms, dynamic programming, amortized analysis.
- Software EngineeringCSCI 4711 (3)softengCSCI 4711: Software Engineering
The software development process is examined. Current tools and techniques of software system analysis, design, implementation, and maintenance are presented in conjunction with case studies and team-oriented projects. Topics include process modeling, logic modeling, object-oriented modeling, UML, software metrics, prototyping, and software security.
- Senior Capstone ProjectCSCI 4712 (3)capstoneCSCI 4712: Senior Capstone Project
An individual or group project in the application of computer science. Emphasis is on the production of real-world software systems and may be conducted in cooperation with an external organization such as a commercial company or public agency.
Math/Stat Courses
- Calculus and Analytical Geometry IorMATH 2011 (4)mathMATH 2011: Calculus and Analytical Geometry I
An introduction to calculus including limits and continuity, derivatives of polynomial, rational, trigonometric, inverse trigonometric, exponential, and logarithmic functions, applications of derivatives, and basic integration.
Honors: Calculus and Analytical Geometry IMATH 2011H (4)mathMATH 2011H: Honors: Calculus and Analytical Geometry IAn introduction to calculus including limits and continuity, derivatives of polynomial, rational, trigonometric, inverse trigonometric, exponential, and logarithmic functions, applications of derivatives, and basic integration. This is an Honors Course.
- Calculus and Analytical Geometry IMATH 2011 (4)mathMATH 2011: Calculus and Analytical Geometry I
An introduction to calculus including limits and continuity, derivatives of polynomial, rational, trigonometric, inverse trigonometric, exponential, and logarithmic functions, applications of derivatives, and basic integration.
- Mathematical Structures for Computer ScienceCSCI 3030 (3)mathCSCI 3030: Mathematical Structures for Computer Science
The course prepares computer science majors for advanced study by emphasizing components of discrete mathematics related to computer science. The topics include sets, functions and relations, logic, Boolean algebra, graph theory, proof techniques and matrices. Examples will emphasize computer science applications.
- Introduction to Statistics and Data AnalysisororMATH 3250 (3)mathMATH 3250: Introduction to Statistics and Data Analysis
This course interweaves traditional topics in statistics with elements of data analysis using popular statistical software packages. Topics include descriptive statistics, probability distributions, sampling distributions, statistical inference for means and proportions, categorical analysis, and simple regression, including multiple and non-linear regression.
CombinatoricsororororMATH 3710 (3)mathMATH 3710: CombinatoricsA first course in enumeration. Topics include permutations and combinations of finite sets and multisets, properties of the binomial coefficients, the inclusion-exclusion formula, recurrences, generating functions, the Fibonacci sequence, and applications of Burnside’s lemma.
Science Courses
- orPrinciples of Biology IIBIOL 1108 (3)sciBIOL 1108: Principles of Biology II
A continuation of Biology 1107 studying the unifying concepts of the biotic world including physiological systems of both plants and animals, animal and plant diversity, animal and plant development, ecology and evolution, and animal behavior.
oror
Other Courses
- Fundamentals of Human CommunicationorCOMM 1100 (3)communicationCOMM 1100: Fundamentals of Human Communication
An introduction to the practice of public communication with special emphasis on public speaking. Includes the historical roots of communication models, audience adaptation, systematic library research, preparation and delivery of presentations, and preparation and use of visual aids.
- 3 × Wellness course
- 5 × Free Elective
Program Educational Objectives
- PEO1 - Be employable in a professional field or pursue advanced study
- PEO2 - Apply Computer Science knowledge, critical thinking skills, communication, and teamwork skills to engage effectively and innovate in a professional environment
- PEO3 - Participate in professional development activities and contributes to the advancement of society
Student Outcomes
BS-CS graduates will have the ability to:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program's discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program's discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
History of the Major
2024 | Replace 1 Free Elective → CSCI 4100 (Analysis of Algorithms). Disallow CSCI 3300 (Programming Languages Concepts) as CS Elective. |
2023 | |
2022 | Replace CSCI 3370 (Assembly Language Programming) → CSCI 3371 (Low-Level Programming Languages). |
2021 | Drop "Satisfactory Completion of the ETS Major Field Test" senior requirement. |
2020 | Replace MATH 2210 (Elementary Statistics) → MATH 1401 (Elementary Statistics). |
2019 | |
2018 | Replace CSCI 3520 (Introduction to Cyber Security) and CSCI 4280 (TCP/IP Protocol Analysis) electives → CSCI 4531 (Malware Analysis and Reverse Engineering) and CSCI 4532 (Hardware and Embedded Systems) electives. |
2017 | |
2016 |