Computer Science Major

Computer Science Major

Computer Science

Major

The Computer Science major develops fundamental competency in theoretical and technical areas of computing, and a characteristic style of thinking and problem-solving.

Offered by the Department of Electrical Engineering and Computer Science.

The Computer Science (CS) major at the United States Military Academy develops fundamental competency in theoretical and technical areas of computing, as well as a characteristic style of thinking and problem-solving. The knowledge, skills, and abilities gained through the study of CS will serve our graduates well throughout a full career of service and professional practice in the field.

Cadet studies in computer science consist of carefully chosen "threads" woven throughout the program and designed for both breadth and depth of learning. These threads include theoretical foundations, programming and software design, systems fundamentals, and applications of computing. 

If you are interested in Computer Science, contact ANY instructor of the department to be directed to an academic counselor.

This major offers an honors track. 

Computer Science Cadet Experience

Cadet studies in Computer Science consist of carefully chosen "threads" woven throughout the program and designed for both breadth and depth of learning.

The threads:

  • Theoretical foundations
  • Programming and software design
  • Systems fundamentals
  • Applications of computing

All CS majors take courses in introductory programming, data structures, discrete math, databases, object-oriented concepts, computer theory, design and analysis of algorithms, operating systems, digital logic, computer architecture, programming languages, and networks. A professional seminar and year-long capstone project are also required, as well as a few elective choices.

To see more about some of our recent activities, visit EECS on Facebook.

Learn more about our first-rate computing laboratory research facilities.

To learn more about this area of study, visit the Department of Electrical Engineering & Computer Science.

All computer science majors take courses in introductory programming, data structures, discrete math, databases, object-oriented concepts, computer theory, design and analysis of algorithms, operating systems, digital logic, computer architecture, programming languages, and networks. A professional seminar and year-long capstone project are also required, as well as a few elective choices. 

Required Courses

  • CS380 COMPUTER ORGANIZATION
  • CS384 DATA STRUCTURES
  • CS385 DESIGN & ANALYS-ALGORITHMS
  • CS400 CS PROFESSIONAL CONSIDERATIONS
  • CS403 SOFTWARE TESTING & DEVELOPMENT
  • CS474 INTRO TO THEORETICAL COMP SCI
  • CS478 PROGRAMMING LANGUAGES
  • CS481 OPERATING SYSTEMS
  • CY300 PROGRAMMING FUNDAMENTALS

Sample Electives

  • CS484 COMPUTER NETWORKS
  • CY350 NETWORK ENGR & MGT
  • CS393 DATABASE SYSTEMS
  • CS394 DISTRIB APPLICATION ENGRNG
  • CS473 COMPUTER GRAPHICS
  • CS483 DIGITAL FORENSICS
  • CS484 COMPUTER NETWORKS
  • CS485 SPEC TOPICS IN COMPUTER SCI
  • CS486 ARTIFICIAL INTELLIGENCE
  • CS490 COMPUTR SCI SUMMER RESEARCH
  • CY350 NETWORK ENGR & MGT
  • CY383 SECURE INTERFACE DESIGN
  • CY450 CYBER SECURITY ENGINEERING
  • EE375 COMPUTER ARCHITECTURE W/MICRO
  • EE487 EMBEDDED SYSTEMS DEVELOPMENT
  • MA386 INTRO TO NUMERICAL ANALYSIS
  • MA464 APPLIED ALGEBRA W/ CRYPTOLOGY
  • XE492 DISRUPTIVE INNOVATIONS

To learn more, view the full Computer Science Major Curriculum.

Computer science majors participate in clubs and activities including the award-winning Information Assurance student chapter of the Association for Computing Machinery, the ACM Special Interest Group on Security, Special Interest Group on Security, Audit and Control (SIGSAC), and Cadet Competitive Cyber Team (C3T). Majors also have the opportunity to apply their knowledge in research and operational settings through honor societies and summer internships as part of the Academic Individual Advanced Development (AIAD) program.

To see more about some recent activities, visit EECS on Facebook.

Honor Societies:

To learn more about enrichment for this area of study, visit the Department of Electrical Engineering & Computer Science or the Cyber Research Center.

The Bachelor of Science (B.S.) in Computer Science at the United States Military Academy is accredited by the Engineering Accreditation Commission of ABET under the commission's General Criteria and Program Criteria for Computer Science and similarly named engineering programs.

Current ABET Computer Science Accreditation Commission (EAC) Student Outcomes

Student outcomes are statements that describe what students are expected to know and be able to do by the time of graduation. 

Cadets who qualify for graduation with a Computer Science major from USMA will demonstrate:

  • an ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics.
  • an ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors.
  • an ability to communicate effectively with a range of audiences.
  • an ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts.
  • an ability to function effectively on a team whose members together provide leadership, create a collaborative environment, establish goals, plan tasks, and meet objectives.
  • an ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions.
  • an ability to acquire and apply new knowledge as needed, using appropriate learning strategies.

ABET Computer Science program educational objectives

Program educational objectives are broad statements that describe the career and professional accomplishments that the program is preparing graduates to achieve.

The Computer Science program seeks to prepare future Army officers for productive and rewarding careers in engineering or related professions for service to the nation.

Five to seven years after graduation, cadets who majored in Computer Science will have been successful Army officers who:

  •  Initiated and completed tasks that identify aspects of a complex situation that can be enhanced by using computing technology.
  • Applied computing knowledge and skills while using an engineering process individually or in diverse teams to develop computing technology applications.
  • Used effective communication to explain new computing technology to war fighters in support of current and emerging Army war fighting doctrine.
  • Grown professionally through self-study, continuing education and professional development.

For the current and recent enrollment and graduate statistics, click the link for “View by Major” under the section "Enrollment for Select Majors."