Education

Curriculum180 CR

Year:1

Fall Winter Spring
MATH 151[5] CS 210 [5] CS 211 [5]
ENG 101 [5] PHYS 121 [6] PHYS 122 [6]
Hum or SS[5] MATH 152 [5] MATH 153 [5]
CS 196 [1] CS 197 [1]

Year:2

Fall Winter Spring
CS 300 [5] CS 351 [5] Free Elective [5]
MATH 208[5] MATH 301[5] MATH 270[5]
ENG 201[5] Hum or SS[5] Hum or SS[5]

Year:3

Fall Winter Spring
CS 331 [5] CS 320 [5] CS 401 [5]
CHEM/BIOL [6] CS 360 [5] CS 410 [5]
Hum or SS [5] Hum or SS [5] Hum or SS [5]

Year:4

Fall Winter Spring
CS 481 [3] CS 482 [4] CS 483 [3]
CS Elective [5] CS Elective [5] CS Elective [5]
Free Elective [5] Free Elective [5] Free Elective [5]
Degree Requirements
Completion of all required courses as shown in the BS Computer Science Degree Completion Worksheet.
In addition to eligibility requirements, students must also achieve the following:

  • Complete 180 credits with a minimum 2.0 cumulative GPA and minimum GPA of 2.0 for each individual core course (including transferred credits) in all core program courses.
  • At least 45 quarter credits for the degree must be completed in residence at Bellevue College, of which 30 credits must be upper division.
  • Courses may be subject to minimum grade requirements and prerequisites. Check online at www.bellevuecollege.edu/classes/all/.
  • General Education Requirements

    ENGL 201: The Research Paper - 5 credits

    Develops skills required for writing research papers. Students learn research techniques, source analysis, thesis development, argumentation styles, and summarizing. Fulfills a written communication course requirement at BC. Same as ENGL 102. Either ENGL 102 or ENGL 201 may be taken for credit, not both. Prerequisite: ENGL& 101 or equivalent course from another college with a C- or better.

    View details for ENGL 201

    MATH 208: Introduction to Linear Algebra - 5 credits

    Introduces the vocabulary, algebra, and geometry of vector spaces in "R" and function spaces. Students use matrix methods and vectors to explore systems of linear equations and transformations. Also presents elementary theory of eigenvalues. Fulfills the quantitative or symbolic reasoning course requirement at BC. Prerequisite: Placement by assessment or MATH& 152 or higher, with a C or better. Preferred: MATH& 153 or MATH& 254.

    View details for MATH 208

    MATH 270: Probability and Statistical Models - 5 credits

    The fundamentals of probability-based statistics with a focus on data-based problem solving. Introduces probability axioms and principles of randomness to model and evaluate samples from discrete, continuous, univariate, and multivariate distributions. Varying statistical techniques (with use of software such as MATLAB or R) will be included. Prerequisite: MATH& 152 with a B- or better. Recommended: MATH& 153.

    View details for MATH 270

    MATH 301: Discrete Mathematics - 5 credits

    This class introduces basic discrete structures in mathematics, computer science and engineering fields. Topics include elementary logic, set theory, mathematical proof, relations, combinatorics, induction, recursion, sequence and recurrence, trees, graph theory. Prerequisite: MATH 208 with a C or better and admission to BS CS program, or entry code.

    View details for MATH 301

    PHYS 121: General Engineering Physics I - 6 credits

    First in a three-course survey of physics for science and engineering majors. Course presents fundamental principles of mechanics, including motion, Newton's laws, work, energy, momentum, rotation, and gravity. Conceptual development and problem solving have equal emphasis. Laboratory work presents methods of experimental and analysis (modeling, errors, graphical analysis, etc.) and prepares students for upper-division research. Prerequisite: High School physics or equivalent, and MATH& 151 or permission of instructor.

    View details for PHYS 121

    PHYS 122: General Engineering Physics II - 6 credits

    Second in a three-course survey of physics for science and engineering majors. Course presents fundamental principles of electromagnetism, including electrostatics, current electricity circuits, magnetism induction, generation of electricity, electromagnetic oscillations, alternating currents, and Maxwell's equations. Conceptual development and problem solving have equal emphasis. Laboratory work presents methods of experimental analysis (modeling, errors, graphical analysis, etc.) and prepares students for upper-division research. Prerequisite: PHYS 121 and MATH& 152 or permission of instructor.

    View details for PHYS 122

  • Humanities course from AAS-DTA list – choose 3 different areas 15 CR
  • Social Science courses from AAS-DTA list – choose 3 different areas 15 CR
  • Natural Science course with lab: Chemistry or Biology 6 CR
  • Diversity Requirement Please see www.bellevuecollege.edu/programs/degrees/culturaldiversity for the list of approved courses
  • Core Courses

    CS 210: Fundamentals of Computer Science I - 5 credits

    Introduces computer science and programming for CS majors. Students learn design and implementation of algorithms and programming in a structured, modular language, with emphasis on problem solving, program design, and style. Prerequisite: MATH&142 or higher, with a C- or better,or placement by assessment in MATH&151 or above, or entry code.

    View details for CS 210

    CS 211: Fundamentals of Computer Science II - 5 credits

    Continues CS 210, with data structures algorithm analysis and inheritance. Students learn to create collections, lists, binary trees, and sets. Other topics include sets, generic data types, sorting, recursion, run-time complexity, and graphical user interfaces. Prerequisite: CS 210 or entry code.

    View details for CS 211

    CS 300: Data Structures - 5 credits

    This course is an introduction to the fundamental concept of data structures. It explains how to organize and store data efficiently using data structures and how to select appropriate data structures. The course further focuses on understanding the fundamental algorithms and analyzing the time and space complexity of these algorithms. Prerequisite: CS 211 and admission to BS CS program, or permission of instructor.

    View details for CS 300

    CS 320: Programming Languages - 5 credits

    This course is an introduction to the design and implementation of programming languages. The course explores organization and structure of programming languages, run?time behavior and requirements of programs, and programming language specification. The course teaches the programming models underlying different programming paradigms such as functional, logic, scripting and object-oriented languages. Prerequisites: CS 300 with a C or better, and admission to BC CS program, or instructor's permission.

    View details for CS 320

    CS 331: Database Systems - 5 credits

    The course covers the fundamental concepts of database systems. It teaches students the internals of database systems including data model, database design, relational model, relational algebra, SQL, indexing, concurrency control, query processing, transaction management and recovery. This course also aims to teach the new directions involving NoSQL persistence models. Prerequisites: CS 211 and admission to BC CS program, or instructor's permission.

    View details for CS 331

    CS 341: Computer Networks - 5 credits

    The course teaches the fundamentals of computer networks, with emphasis on the Internet. The course covers basic concepts of computer networks, layered network architecture, protocols, network programming interfaces, and concept of network performance. The course also provides students with the opportunity to having a hands-on experience by network programming.. Prerequisites: CS 211 and admission to BS CS program, or instructor's permission.

    View details for CS 341

    CS 351: Computer Architecture I - 5 credits

    This course introduces the functional components of modern computer systems (processor, memory, Input/Output, etc.), characteristics and performance of these components. The course also addresses the interactions among hardware and software components. This course further allows students to develop programming skills while learning computer architecture with assembly programming assignments. Prerequisite: CS 211 and admission to BS CS program, or instructor's permission.

    View details for CS 351

    CS 360: Operating Systems - 5 credits

    This class introduces the design and implementation of modern, process oriented operating systems, as well as systems programming basics. Primary topics include operating system structure, processes, threads, synchronization, memory management, virtual memory, file systems, I/O subsystem and device management. Prerequisite: CS 351 with a C or better and admission to BS CS program, or instructor's permission.

    View details for CS 360

    CS 401: Algorithms - 5 credits

    This course teaches the concepts and skills required to design, implement and analyze algorithms for constructing efficient computer programs. The course covers elementary data structures, searching, sorting, graph and string algorithms, and algorithm design principles such as dynamic programming, greedy, divide-and-conquer paradigms. The emphasis is on applications and scientific performance analysis of algorithms. Prerequisites: CS 300 with a C or better, MATH 301 and admission to BC CS program, or instructor's permission.

    View details for CS 401

    CS 410: Software Engineering - 5 credits

    The course teaches the fundamental concepts and principles of software engineering, its tools and techniques, and methods for building reliable software systems. This course introduces all phases of the lifecycle of a software system, including requirements elicitation and analysis, design, implementation, integration, testing, verification and validation, deployment, and maintenance. Prerequisite: CS 300 and admission to BS CS program, or instructor's permission.

    View details for CS 410

    CS 481: Senior Capstone I - 3 credits

    This course focuses on literature review, requirement specification, project management, initial design and prototyping of the three-quarter long computer science project. Students work in teams and are given milestones. The course includes lectures, reading assignments and guest speakers on development process, team working, report writing and emerging trends in computer science. Prerequisites: CS 410 with a C or better and admission to BS CS program, or instructor's permission.

    View details for CS 481

    CS 482: Senior Capstone II - 4 credits

    This course is the second in a sequence of three senior level capstone courses. This course focuses on detailed design, test plan and implementation of the project. The course includes lectures, reading assignments and guest speakers on development process, test plan, ethics, legal issues, and emerging trends in computer science. Prerequisites: CS 481 with a C or better and admission to BS CS program, or instructor' permission.

    View details for CS 482

    CS 483: Senior Capstone III - 3 credits

    This course is the third in a sequence of three senior level capstone courses. This course focuses on implementation, test and presentation of the project. The course includes lectures, reading assignments and guest speakers on poster design, innovation and entrepreneurship, presentation skills and emerging trends in computer science. Prerequisites: CS 482 with a C or better and admission to BC CS program, or instructor's permission.

    View details for CS 483

    Upper Division Electives15 CR
    Choose 15 credits from the following:

    CS 311: Software Patterns - 5 credits

    This course introduces software design paradigms, and design and architectural patterns essential for the creation of flexible, reusable, reliable and maintainable software applications. The course offers students a hands-on opportunity to apply creational, functional and behavioral design patterns, as well as architectural patterns, in a software design. Prerequisites: CS 211 and admission to BS Computer Science program, or instructor's permission.

    View details for CS 311

    CS 341: Computer Networks - 5 credits

    The course teaches the fundamentals of computer networks, with emphasis on the Internet. The course covers basic concepts of computer networks, layered network architecture, protocols, network programming interfaces, and concept of network performance. The course also provides students with the opportunity to having a hands-on experience by network programming.. Prerequisites: CS 211 and admission to BS CS program, or instructor's permission.

    View details for CS 341

    CS 356: Computer Security - 5 credits

    This course covers the principles and practice of computer security using a hands-on approach. Participants will learn about techniques, methodologies and processes for the development of efficient and secure software. In addition, the course also covers security development processes, threat modeling, common software vulnerabilities, web site vulnerabilities, defensive coding practices, and security testing. Prerequisite: CS 341.

    View details for CS 356

    CS 411: Software Engineering Project Management - 5 credits

    This course explores the fundamental project management concepts and behavioral skills needed to successfully launch and lead technology projects. Students will use a practical, hands-on approach to explore project management through case studies, projects and the use of project management software tools. Prerequisites: CS 410 and admission to BS CS program, or instructor's permission.

    View details for CS 411

    CS 420: Theory of Computation - 5 credits

    This course introduces students to the mathematical foundations of computation and complexity for problem solving, including the concepts of automata theory, the theory of formal languages and grammars, and the notions of algorithm, decidability, complexity, and computability. Students will develop the ability to understand and conduct mathematical proofs for computation and algorithms in order to solve problems efficiently. Prerequisites: MATH 301 and admission to BC CS program, or instructor's permission.

    View details for CS 420

    CS 430: Image Processing - 5 credits

    This course introduces the foundations of image processing such as sampling, enhancement, edge detection, segmentation, image morphology and image compression. Through hands-on experiences, students will use algorithms in a programming language to solve practical image processing problems for different applications. Prerequisites: MATH 208 and admission to BS CS program, or instructor's permission.

    View details for CS 430

    CS 441: Functional Programming - 5 credits

    This course introduces the foundations of functional programming and explores situations when using a Functional Programming language is most beneficial. Students will have the opportunity to apply elements of the functional programming style in daily programming tasks. Prerequisites: CS 211 and admission to BC CS program, or instructor's permission.

    View details for CS 441

    CS 455: Cloud Computing - 5 credits

    This course is an introduction to cloud computing. It teaches distributed computing concepts, the architecture of cloud computing, cloud services, virtualization, and cloud-based data storage. The course provides students with the opportunity to having a hands-on experience by deploying an application that uses cloud architecture for computing and data resources. Prerequisites: CS 331, CS 341, CS 360 and admission to BS CS program, or instructor's permission.

    View details for CS 455

    CS 460: Machine Learning - 5 credits

    This course is an introduction to the fundamentals and applications of machine learning. The course provides students with the opportunity to have theoretical knowledge and practical experience on basic concepts of machine learning with programming assignments. The course focuses on fundamentals, not on providing mastery of specific commercially available tools. Prerequisites: CS 300 with a C or better, MATH 208, MATH 270 and admission to BS CS program, or instructor's permission.

    View details for CS 460

    CS 470: Mobile Application Development - 5 credits

    This course is a project-oriented course on software application development for mobile devices. It teaches the basic principles of mobile application design, development and testing for resource-restricted devices. The course provides students with the opportunity to having a hands-on experience by deploying a real-world mobile application on the Android platform. Prerequisite: Admission to BS CS program, or instructor's permission.

    View details for CS 470

    CS 485: Computer Science Co-Op/Practicum - variable credits

    Students undertake a full-time or part-time supervised work experience with an agency, firm, or organization approved by the program. Students develop a learning plan before the work project begins and submit a final written report. A written performance review by an onsite technical supervisor will be part of a student's final assessment. Prerequisite: CS 300 and admission to BS CS program, or instructor's permission.

    View details for CS 485

    Free Choice Electives 20 CR
    Students have an opportunity to take additional computer science courses, or additional general education courses of their own interest.
    Prerequisite Chain
    prerequisitechain

    Last Updated June 5, 2019