The core major learning outcomes consist of classes that satisfy professional communication and development, programming and problem solving, mathematics for computing, knowledge of computers and networks, and interaction and design.

**Core Outcome 1: Professional Communication & Development - CST 300: Major Pro-Seminar**

Plan and assess personal career options and develop communication skills.

● Acquire, analyze and use information about the range of career possibilities, industry trends in computer science and information technology and its related fields to make career planning decisions.

● Use critical thinking skills to plan and assess personal career and further study goals and design educational experiences directed to those goals.

● Use written and oral communication to deliver persuasive viewpoint and technology content to multiple audiences.

● Acquire, analyze and use information about computer sciences and information technology to describe and speculate on the impact of digital communications technology on local and global communities.

**Core Outcome 2: Knowledge of Computers & Networks - CST 237: Computer Architecture**

Demonstrate an understanding of the fundamentals of computer architecture, operating systems and networks.

● Describe the history of computers and computing.

● Explain how a computer represents and transmits information, how a computer's parts and components are organized and interfaced, basic components of an operating system and basic components of local area networks and wide area networks.

● Analyze and design simple circuits using digital electronics and logic gates.

● Describe the structure and organization of a modern microprocessor, and the sequence of operations in a typical instruction execution.

● Demonstrate a basic understanding of Assembly Language programming.

**Core Outcome 3: Programming & Problem Solving - CST 231: Problem Solving and Programming C++, CST 238: Introduction to Data Structures**

Analyze and solve problems using a programming language.

● Demonstrate the ability to develop algorithms and computer programs to solve problems by systematically decomposing a complex programming problem into manageable, well-documented steps that results in a design for the problem solution.

● Demonstrate that the program compiles and executes correctly for a given set of data.

● Demonstrate programming competency in a variety of programming structures, including arithmetic operations, control structures and loops, input/output operations including file I/O, the use of function calls, and the use of arrays and other storage types.

● Debug a program using appropriate debugging strategies.

● Produce a complete set of documentation for a program.

**Core Outcome 4: Mathematics for Computing - MATH 150: Calculus I, MATH 151: Calculus II, MATH 170: Discrete Math, CST 370 Algorithms**

Use mathematical concepts and constructs to express ideas and solve problems in computer science, and to communicate quantitative information.

● Use mathematical ideas to solve problems in Computer Science and Information Technology.

● Use mathematical thinking and models, charts, graphs, tables, figures, equations, and appropriate technologies to express ideas and concepts.

● Demonstrate an understanding of discrete mathematical concepts used in computing: Articulate and apply the concepts of binary numbers, combinatorics, logic, truth tables, graph theory and algorithms to problems in Computer Science and Information Technology.

● Analyze and evaluate the mathematical thinking and strategies of others.

**Core Outcome 5: Interaction Design - CST 205: Multimedia Design and Programming**

Demonstrate effective use of computer-based tools used in the design and creation of interactive applications and electronic media.

● Design, create, and edit electronic images, sounds, videos, text, and motion.

● Use multimedia authoring tools to design, manage, and execute an interactive multimedia project.