Credits Required: 

Credits in the major: 70

Students begin the major by enrolling in the CST 300: Major ProSeminar Lecture where they work with the peer advisor and a faculty advisor to create their Individual Learning Plan (ILP). That ILP maps out how each student will achieve the Major Learning Outcomes designated below by successfully completing the listed courses or alternative assessment options. Students conclude the major by completing a capstone project. The capstone is a substantial, year-long, publicly presented project that displays each student's cumulative learning in the major. [Learn more at CSUMB.EDU/capstone].

The Major Learning Outcomes are divided into three levels: Core, Concentration and Final.

Core MLOs

Every student in CSIT is required to demonstrate the core outcomes before graduation. The core outcomes are intended to provide students with foundational knowledge and skills and prepare them with the background for the in-depth study of the concentrations.

Concentration MLOs

Students need to complete at least 12 units appropriate to concentration outcomes in order to fulfill their concentration requirements. Some concentrations require more units. Students must receive advisor approval for their course selections. Students can design their own individualized concentration by selecting as least three outcomes from the following list with written justification and academic advisor approval. The concentrations include:

  • SE Software Engineering
  • NS Network and Security
  • IS Information Systems
  • GD Game Development
Final MLOs

Every student in CSIT is required to demonstrate the final outcomes before graduation.

Major Requirements and Learning Outcomes are identified below. In order to graduate, students must also meet all general education and university requirements. 

Core Outcome 1: Professional Communication and Development

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.

Required Courses

  • CST 300: Major ProSeminar Lecture (2 units)
  • CST 300L: Major Proseminar Writing Lab (2 units)

Core Outcome 2: Knowledge of Computers and Networks

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.

Required Courses

  • CST 337: Computer Architecture (4 units)

Core Outcome 3: Programming and Problem Solving

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.

Required Courses

  • CST 231: Problm-Solving/Programng (2 units)
  • CST 238: Intro to Data Structures (2 units)

Core Outcome 4: Mathematics for Computing

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.

Required Courses

  • AND

Core Outcome 5: Interaction Design

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.

Required Course

  • CST 201/L: Media Tools Lecture (3 to 6 units)

Culmination Outcome 1: Service to the Community

Demonstrate the ability to combine knowledge in the discipline and community experiences to finish a community-based project.

  • Demonstrate an understanding of a community problem and a need for service and/or support.
  • Make a meaningful contribution to the solution of the problem.

Required Courses

  • CST 462S: Computer Sci and Community (2 units)
  • CST 361S: Technology Tutors (5 units)

Culmination Outcome 2: Professional Communications*

Demonstrate professional communication skills in written and oral form.

  • Compose a capstone proposal with background research, methods, details description of implementation steps, budget, schedule, risks and evaluation plan.
  • Present the background, methods, requirements, process and conclusion of the capstone project clearly in written and oral formats.

Required Courses

  • CST 400: Senior Capstone Proj Planning (2 units)
  • CST 401: Capstone Lab (2 units)
  • CST 496: Directed Study (1 to 6 units)

Culmination Outcome 3: Capstone Project: Culminating Experience

Create a comprehensive project according to an approved set of specifications, that represents the culmination of CSUMB experiences in the major and showcases an achievement of professional level work.

  • Finish the capstone project according to the proposal.
  • Apply basic project management skills.
  • Evaluate the solution according to a specified set of criteria

Required Courses

  • CST 400: Senior Capstone Proj Planning (2 units)
  • CST 401: Capstone Lab (2 units)
  • CST 496: Directed Study (1 to 6 units)

Culmination Outcome 4: CSIT Elective

Demonstrate breath of knowledge in Computer Science and Information Technology topics outside of selected concentration

Required Course

  • 3 advisor-approved CSIT elective courses outside of your selected concentration

Culmination Outcome 5: Ethics and Current Issues in the Major

Through an ethical perspective, students examine the impact of current and future information technologies on economics and culture in society

  • Demonstrate an understanding of the issues regarding the impact of current and future computing & information technologies on social frameworks such as economics, education, governance, globalization and social justice.
  • Articulate code of conduct and reflect professional ethics in the computing and technology fields.
  • Analyze case studies in current issues and professional ethics.

Required Course

  • CST 373: Ethics in Comm & Tech (4 units)

GD Outcome 1: Game Fundamentals

Understand the fundamental issues in the development of digital games.

  • Describe components of modern digital games components and their relationships.
  • Articulate the historical development of contemporary video and computer gaming
  • Describe team member roles and tasks within the production process.
  • Describe the relationships of conceptual, creative, and technical production process to overall game development.
  • Analyze the business, marketing, and industry components of game development.
  • Articulate how and why digital games are designed.
  • Use game engines and modeling tools to produce components of digital games.
  • Generate an original game idea and produce a detailed design document for it.

Required Course

  • CST 320: Intro to Digital Games (4 units)

GD Outcome 2: Game Programming

Develop and produce a computer game.

  • Describe the technologies required for game programming.
  • Apply programming skills to produce components of digital games.
  • Use professional level game development environment in game production.

Required Course

  • CST 306: Game Engine Programming (4 units)

GD Outcome 3: Game Design

 

Demonstrate the ability to analyze, plan and produce a computer game.
Utilize professional level platforms and tools to produce digital games that meet the user needs and system constraints.

  • Articulate the software system development life cycle and its characteristics.
  • Apply best practices regarding project management.
  • Analyze needs and constraints of complex software system design.
  • Write a game development proposal to justify the investment.
  • Analyze game designs and select appropriate commercial development systems.
  • Collaborate with a team to create a simple yet complete digital game.
  • Evaluate the games produced for usability, playability, and accuracy.
  • Understand and apply modern software production practice and tools such as component based programming, integrated development environment, version control and testing.

 

Required Course

  • CST 438: Software Engineering (4 units)

IS Outcome 1: Database Management Systems

Articulate and apply database design concepts and models.

  • Describe components of a database management system and how they work together.
  • Systematically design appropriate database structure using normalization and data modeling.
  • Program using the database query language SQL.
  • Articulate the advantages and purpose of databases, the characteristics of database systems, and how to use database systems both interactively and programmatically.
  • Illustrate query processing and optimization techniques, transaction management, and storage and file structures.

Required Course

  • CST 363: Database Mgt:Methods/Appl (4 units)

IS Outcome 2: Business and Technology

Describe the basic structure and operation of modern high tech corporations and the information technologies utilized.

  • Articulate various systems, techniques, procedures and conventions that are used to define the business and its strategies, services, products, clients and organizational form.
  • Describe how information technology are used in business and the trends of the technologies.

Required Course

  • CST 365: Business & Information Tech (4 units)

IS Outcome 3: Advanced Information Systems

Utilize professional level platforms and tools to produce business information systems that meet the user needs and business constraints.

  • Analyze the business problems and select appropriate commercial information systems.
  • Evaluate the information system produced for usability, efficiency, and accuracy.
  • Articulate industry trends in the particular domains.
  • Write an information system proposal to justify the investment in system design.

Required Courses

  • CST 336: Internet Programming (4 units)
  • CST 463: Database System Administration (4 units)

NS Outcome 1: Network Fundamentals

Understand and apply network fundamentals.

  • Describe networking standards, concepts, topology, and media including LANs, WANs, the TCP/IP model, IP addressing, sub-netting, network hardware, network security and various protocols.
  • Explain networking theory and protocols on common network systems.
  • Apply IP routing concepts and router administration, distance vector and link state based IP routing algorithms, router interfaces, routing tables, and routing protocol configuration and network security concepts.

Required Courses

  • CST 311: Intro to Computer Networks (4 units)

NS Outcome 2: Network Management

Understand and apply fundamentals of security technologies in protecting networks.

  • Describe potential threats at each layers of TCP/IP model and most common computer systems.
  • Explain foundational technologies that can be used to mitigate the impact of these threats including cryptographic algorithms, key exchange protocols, and PKI.
  • Apply network and computer security concepts to develop threat analysis within the constraints of requirements, cost and technology.
  • Apply system hardening mechanisms to protect end hosts, networking equipment including routers and switches.

Required Course

  • CST 312: Network Security (4 units)

NS Outcome 3: Advanced Networking

Apply processes and methods used to create an enterprise network plan and information systems.

  • Examine inputs, business drivers, and deliverables of the planning process.
  • Understand practical issues such as information security, business requirements, IT architecture, cost justification, implementation, migration planning, and vendor selection.
  • Manage data, voice, and video communications.
  • Apply industry standard products to manage and control digital networks.
  • Demonstrate setup, configuration, and maintenance of Linux/UNIX servers
  • Describe best practice in system administration including security policies and communication strategies with users.

Required Course

  • CST 412: Network Administration (4 units)

SE Outcome 1: Advanced Programming

Apply object-oriented techniques to software construction.

  • Apply object-oriented analysis and design to practical software construction.
  • Provide a graphical user interface of a software system to a user.

Required Course

  • CST 338: Software Design (4 units)

SE Outcome 2: Specialized Programming

Apply programming skills to a specialized application.

  • Utilize professional level platforms and tools to produce software systems that meet specified user needs and constraints.
  • Combine several software skills and techniques to create an integrated software system.
  • Articulate industry trends in the particular domains.

Required Course

  • CST 336: Internet Programming (4 units)

SE Outcome 3: Planning, Analysis and Production of Software Application

 

Demonstrate the ability to analyze, plan, and produce a complete software application.

  • Articulate the software system development life cycle and its characteristics.
  • Apply best practices regarding project management.
  • Analyze needs and constraints of complex software system design.
  • Write a project proposal, a project report, and an operating manual.
  • Collaborate with team members to implement a large software system.
  • Understand and apply modern software production practice and tools such as component based programming, integrated development environment, version control and testing.

 

Required Course

  • CST 438: Software Engineering (4 units)

Concentrations

Game Development

Information Systems

Network and Security

Software Engineering