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.

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)
  • AND
  • 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)
  • OR
  • CST 237: Intro to 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 231L: Prob Solving & Programming Lab (2 units)
  • CST 238: Intro to Data Structures (2 units)
  • CST 238L: Intro to Data Structures Lab (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 Courses

  • CST 201: Media Tools Lecture (1 to 4 units)
  • AND
  • CST 201L: Media Tools Lab (2 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 video and computer gaming.
  • Describe team member roles and tasks within the production process.
  • Relationships of conceptual, creative, and technical production process to overall game development.
  • Analyze the business, marketing, and industry components of game development.

Required Course

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

GD Outcome 2: Game Programming

Develop and produce a computer game.

  • Analyze and evaluate 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

 

Design a digital game.

  • Articulate how and why digital games are designed.
  • Generate an original game idea and produce a detailed design document for it.
  • Use game engines and modeling tools to produce components of digital games.

Required Courses

  • CST 321: Multimedia I (4 units)
  • OR
  • CST 421: Multimedia II (4 units)
  • OR
  • CST 438: Software Engineering (4 units)

GD Outcome 4: Planning, Analysis and Production of Digital Games

Plan and produce a computer game.

Utilize professional level platforms and tools to produce digital games that meet the user needs and system constraints.

  • Evaluate the games produced for usability, playability and accuracy.
  • Articulate industry trends in the game industry.
  • 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.

Required Courses

  • CST 321: Multimedia I (4 units)
  • OR
  • CST 421: Multimedia II (4 units)
  • OR
  • 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 463: Database System Administration (4 units)
  • OR
  • CST 336: Internet Programming (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)
  • AND
  • CST 312: Network Security (4 units)
  • OR
  • CST 281: Intro to Communication Network (4 units)
  • AND
  • CST 282: Intro to Network Security (4 units)

NS Outcome 2: Network Management

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

  • 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.

Required Courses

  • CST 412S: Network Admin in Community (6 units)
  • OR
  • CST 484: Advanced Networking (4 units)

NS Outcome 3: Advanced Networking

 

Use professional level programming tools to produce network designs.

  • Apply routing and raw sockets, RPC and shared memory.
  • Produce software that focuses on network programming in the context of network protocol development and implementation (e.g., SNMP, ICMP, routing, multicasting, ARP, etc.), and distributed services and 'system-level' applications such as client-server and peer-to-peer applications, distributed file systems and name services.

Required Courses

  • Complete one of the following:
  • CST 484: Advanced Networking (4 units)
  • OR
  • CST 312: Network Security (4 units)
  • OR
  • CST 281: Intro to Communication Network (4 units)
  • AND
  • CST 282: Intro to Network Security (4 units)

NS Outcome 4: System Administration

Analyze and practice system administration processes for enterprise-level information systems.

  • Demonstrate setup, configuration and maintenance of Linux/UNIX servers
  • Apply system security, shell scripts and server backups.
  • Describe best practice in system administration including security policies and communication strategies with users.

Required Courses

  • CST 412S: Network Admin in Community (6 units)
  • OR
  • CST 484: Advanced Networking (4 units)

SE Outcome 1: Advanced Programming

Apply appropriate data structures and tools in the design of software.

• Articulate and apply object-oriented programming concepts, recursion, lists, queues, searching and sorting algorithms and asymptotic notations to provide solutions to practical computing problems.

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.
  • Evaluate the software system produced for usability, efficiency and accuracy.
  • Articulate industry trends in the particular domains.

Required Courses

  • Complete one of the following
  • CST 336: Internet Programming (4 units)
  • CST 370: Design&Analysis of Algorithms (4 units)
  • CST 436: Human-Computer Interaction (4 units)

SE Outcome 3: Theory of Computing

 

Analyze and apply appropriate algorithms to computing problems.

  • Articulate algorithm development criteria.
  • Analyze algorithms for their spatial and temporal efficiency.
  • Develop new algorithms or improve existing ones to address specific computing problems.

Required Courses

  • CST 338: Software Design (4 units)
  • OR
  • CST 370: Design&Analysis of Algorithms (4 units)

SE Outcome 4: 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)

Final 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 sevice and/or support.
  • Apply the skills and knowledge developed in the curriculum to make a meaningful contribution to the solution of the problem.

Required Courses

  • CST 361S: Technology Tutors (4 units)
  • OR
  • CST 412S: Network Admin in Community (6 units)

Final 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

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

Final 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.

  • Complete a capstone project proposal that conforms to the ITCD capstone specifications.
  • 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)

Final Outcome 4: Breadth of Knowledge

Demonstrate breadth of knowledge outside of selected concentration of CSIT.

Required Course

  • Three CSIT elective classes, with advisor approval

Final 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 information technologies on social formworks such as economics, education, governance, globalization and social justice.
  • Articulate code of conduct and reflect professional ethics in the technology fields.
  • Analyze case studies in current issues and professional ethics.

Required Course

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

Concentrations

Game Development

Information Systems

Network and Security

Software Engineering