With a BS in computer science, you’ll be able to plan, design, and optimize computer software and hardware systems for commercial and government environments. This versatile major provides you with a foundation in programming languages, software development, complex algorithms, and graphics and visualization.

This program is also available as a minor.

About the Computer Science Bachelor's Degree

In your computer science coursework, you’ll learn programming; algorithm optimization and enhancement; and the theory, science, and math behind modern computing. Specifically, you learn about Java, C++, OpenGL, Octave, and MATLAB. Your courses will cover data structures and analysis, computer systems and architecture, image and signal processing, and more.

What You'll Learn

Through your coursework, you will learn how to

  • Identify and respond to emerging technology, models, methodologies, systems, and trends in human/computer interaction, including social networking, gaming, modeling, and simulation
  • Apply logic and mathematical principles to the design, development, and verification of secure, high-performance, and reliable computing systems
  • Analyze, design, develop, and document secure technical solutions for computing systems and networking infrastructure
  • Plan, design, and optimize computing architecture, software applications, data, and systems
  • Adhere to local, national, and international technical standards, ethics, and intellectual property regulations when developing computer applications and systems
  • Analyze, compare, and contrast algorithms, programming languages, compilers, and operating systems to select or develop solutions to problems

Coursework Examples

In past projects, students have had the opportunity to

  • Design, implement, test, debug, and document Java programs using development tools
  • Design and implement a virtual stringed musical instrument that includes data fields for notes and Boolean fields to determine whether the instrument is tuned or currently playing
  • Build realistic graphical 3D worlds, animate characters, and add special effects to games using OpenGL and a programming environment
  • Create a Java programming project that uses a concurrent, secure, multi-threaded application

Computer Science Bachelor's Degree Requirements

Our curriculum is designed with input from employers, industry experts, and scholars. You'll learn theories combined with real-world applications and practical skills you can apply on the job right away.

Courses in the Major

  • CMIS 141
  • CMIS 242
  • CMIS 310
  • SDEV 300
  • CMSC 350
  • CMSC 330
  • CMSC 335
  • CMSC 430
  • CMSC 451
  • CMSC 412
  • CMSC 405
  • CMSC 495

Related Required Courses

Note: The following related required courses for the major are listed under general education ourses and may be applied to general education or elective requirements.

  • MATH 140
  • MATH 141
  • CMSC 150
  • CMIS 102

General Education Requirements

Since some recommended courses fulfill more than one requirement, substituting courses for those listed may require you to take additional courses to meet degree requirements. Consult an advisor whenever taking advantage of other options. See information on alternate courses (where allowable) to fulfill general education requirements (in communications, arts and humanities, behavioral and social sciences, biological and physical sciences, mathematics, and interdisciplinary issues).

Research and Computer Literacy Courses

  • PACE 111M
    or PACE 111T
    or other PACE 111 course
    (to be taken in first 6 credits)
  • LIBS 150
    or CAPL 398A
    or other general education elective
  • CMIS 102 (related requirement for the major; prerequisite to later course)

Communications Courses

  • WRTG 111
    or WRTG 291
    or other writing course
  • WRTG 112
  • SPCH 100
    or other communication, writing, or speech course
  • WRTG 393
    or other advanced upper-level writing course

Math Course

  • MATH 115 or MATH 140 (related course for the major)

Arts and Humanities Courses

  • HIST 142
    or HIST 157
    or other arts and humanities course
  • ARTH 204
    or foreign language course or other arts and humanities course

Behavioral and Social Science Courses

  • ECON 201
    or other behavioral and social science course
  • GVPT 170
    or other behavioral and social science course

Biological and Physical Sciences Courses

  • BIOL 101
    and BIOL 102
    or other paired science lecture and laboratory courses
  • NUTR 100
    or BIOL 160
  • or other science lecture course

Career Preparation

This program is designed to help provide you with a foundation for a career in software architecture or engineering; application software design; or systems analysis, programming, or engineering in corporate organizations and government agencies.

UMUC Video Thumbnail

For alum Lt. RJ Niesen, having his family all together at commencement after months of deployment made everything worth it.