You are here
UA South's small campus atmosphere offers students the advantage of individualized instruction and support while also providing access to the resources of one of the top-ranked research universities in the nation.
The Bachelor of Science in Computer Science prepares students for a variety of careers in programming, web and systems security, government defense, forensics, and information management and analysis.
Students will receive hands-on experience by working in many mainstream areas of Computer Programming such as algorithms, programming languages, compilers, databases, Artificial Intelligence and more.
Because the B.S. in Computer Science has specific entrance and degree requirements, it is highly recommended that students first meet with an academic advisor to ensure that they have met the following requirements before submitting their application for admission to The University of Arizona:
- Completion of 60 or more transferable credits from a regionally accredited institution
- A minimum 2.0 GPA in all transferable units
- Completion of lower division major and minor requirements
- Completion of CSC 127A and 127B or the transfer equivalents
- All Computer Science applicants are admitted to the UA as Pre-Computer Science majors. After at least one semester at the UA and completion of the major admission criteria, pre-computer science majors who meet the auto-admit criteria will be moved to the Computer Science major.
- Effective in the 2016-17 catalog, the following auto-admission criteria apply:
|Major Auto-Admission Criteria||Cochise College||Arizona Western College|
Cumulative UA GPA of 2.4 or higher
GPA of 3.0 or higher between 120, 245 & 210
Pre-major GPA of 2.0 or higher in all attempts at all pre-major courses
|CSC 110 Intro to Programming I||CIS 204 or 208||CSC 127A|
|CSC 120 Intro to Programming II||CIS 220C or 220J||CSC 127B|
|CSC 245/MATH 243/MATV 323 Intro to Discrete Structures||MAT 227||N/A|
|CSC 210: Software Development (Java)||CIS 208 or 220J||CSC 127A or 127B (Java)|
Please contact Student Services if you have any questions, or if you are interested in meeting with an academic advisor to do an unofficial transcript evaluation and assist you in completing your application.
UA South maintains a variety of tools to help you plan your education. We include them here for your reference. To make a personalized plan for your UA South education, contact us!
UA Degree Search provides an overview of the Computer Science major, four year plans, transfer pathways, and career opportunities.
Transfer Pathway Agreements guide students who are earning specific community college degrees. AZ Transfer Pathways allow students to complete an Associates of Applied Science degree at any Arizona community college and transfer seamlessly into the Bachelor of Applied Science degree at The University of Arizona South. Specifically, UA South has partnership agreements with Arizona Western College, Central Arizona College, Cochise College, Eastern Arizona College, the Maricopa Community College District, and Pima Community College. Students can also transfer from other institutions and should contact an academic advisor to find out how!
All prospective students are encouraged to speak with an academic advisor for an unofficial evaluation of their transfer credit, including military credits, to ensure the timely and cost efficient progress towards their Bachelor's degree.
Academic Advisement Reports are the official degree audits for UA students once they have been admitted into their chosen major. The Computer Science report contains lists of applicable classes to be used to satisfy graduation requirements. Current UA students can access their personalized Advisement Report in UAccess Student Center under the Academics menu.
Courses are based in theory with a strong focus on professional application. Courses in the major include:
CSCV 335 Object Oriented Programming and Design
This course is a study of fundamentals of object-oriented software development including design principles, inheritance, polymorphism, Unified Modeling Language (UML), testing, event-driven programming with graphical user interfaces, applications of design patterns, and use of existing frameworks. By the end of the class, students will be able to
- complete a few programs using object oriented programming and design principles and features;
- become comfortable with event-driven programming with graphical user interfaces; and create programs using best programming practices.
CSCV 460 Database Systems
This is a broad coverage course which gives students a detailed examination of the use of database systems in applications. The topics covered include conceptual design, data models, query languages, logical database design, physical database design, and query optimization. By the end of the course, the student will be able to:
- Identify and explain key components in database management systems;
- Develop and refine conceptual models of databases; and
- Apply normalization techniques and implement databases.
CSCV 452 Principles of Operating Systems
This course studies the principles and concepts that govern the design of modern computer operating systems. The course covers the two primary functions of an operating system: insulating users and applications from details of the computer hardware, and managing the allocation of resources to improve efficiency. Topics covered include the process model of computation, concurrent processes, process synchronization and computation, processor scheduling, deadlock, memory management, and file systems. By the end of the course, the student will be able to:
- Explain the major functions of an operating system and describe issues relating to the design and implementation of operating systems;
- Identify and explain the inter-relations among the various components that make up an operating system;
- Synthesize and evaluate operating system and system architecture implications, apply to problems and examples, evaluate alternatives; and
- Develop components of an operating system including kernel- and user- process creation and communication, I/O device drivers, interrupt handlers, and system call handlers.