Master's of Science in Computer Science

The ever-changing world of software and computer science has always demanded more advanced training and education. With the University of San Francisco's prime location in the heart of the San Francisco Bay Area and its proximity to Silicon Valley, USF graduate students enjoy an environment rich with the many innovations and opportunities of this world-renown region of technology. For these reasons and others, the number of students in the graduate program in Computer Science at the University of San Francisco has grown by 65% since 1999.

The Master's of Science in Computer Science (MSCS) degree provides students with a broad background in software development and other core disciplines of computer science. This core background serves as a sound foundation for CS graduate students as they develop a substantial software project—either as a research-driven or commercially sponsored project.

Small classes and close interaction with full-time faculty are a hallmark of graduate education at USF. Along with the full-time teaching and research faculty, outside experts bring real-word computing experience to the classroom. In the Harney Science Center on the USF campus, a state-of-the-art computer and multimedia studio was constructed and endowed with a $2.5 million gift from a Computer Science alumnus. Students and faculty also maintain the W. M. Keck Computer Cluster (a Myrinet-connected network of 128 processors that provides students with on-site access to one of the most powerful computers at a liberal arts university).

Join us for the next informational meeting.

Emphasis in Entrepreneurship

The United States excels at entrepreneurship, and USF claims one of the top entrepreneurial business schools in the nation. Ranked in the top tier of University Entrepreneurship Programs by Entrepreneur magazine and in the top 25 of "America's Most Entrepreneurial Campuses" by Forbes and Princeton Review, the Master's in Computer Science Program has joined with USF's MBA Entrepreneurship Program to offer the classic Master's in Computer Science with an emphasis in entrepreneurship.

Working While You Go To School

USF is your gateway to the Silicon Valley. The computer science graduate school at USF offers a Practicum Option that allows students to gain practical work experience in the Silicon Valley while going to school. Students approved for the Practicum Option typically earn between $20 and $40 per hour, which makes school much easier to afford. Students take internships with companies such as BEA, AdobeSAPIntelTechnoratiLawrence Berkeley Lab, and Internet Archive

Admission Requirements

Admission requirements for the graduate program include the GRE General scores (verbal score not considered) and the following courses (USF equivalents are in parentheses):

  • High-Level Programming (CS 110 - C, C++, Python, Java, Scheme, ML, etc.)
  • Object-Oriented Programming (CS 112 - C++, Java)
  • Discrete Math (MATH 201)
  • Algorithms on Data Structures (CS 245)

Foundation Requirements

The foundation requirements are not required for admission to the graduate program, but must be completed while at USF to achieve regular status as a graduate student. These requirements are waived if they have been met by previous university-level studies (including self-study) or work experience:

Curriculum and Degree Requirements

The program involves the completion of 36 units of credit. Graduate students undertake 9 courses, or 8 courses and a master's thesis (each course is 4 units). Graduate students who have not met the foundation requirements may need to complete additional coursework at USF. The courses must be chosen as follows:

  • 3 Core Classes
  • 5 Electives from 200/300/400/600 level
    • 1 may be 200 level with permission of graduate adviser
    • 2 must be 600 level courses
  • 1 Master's Project

Up to 2 electives may be used to satisfy foundational requirements, such as operating systems, architecture, or compilers. Up to 4 units of Directed Research or Practicum may be applied as 1 elective.

A degree requirement worksheet has been provided at the bottom of this page.

Core Courses

Every MSCS student must take one course from each of the core areas:

Theory and Languages (1 Course)

CS 652 Programming Languages
CS 673 Algorithms
CS 675 Theory of Computation

Systems (1 Course)

CS 621 Network Programming
CS 636 Operating Systems
CS 685 Wireless Sensor Networks

Development (1 Course)

CS 625 Parallel and Distributed Computing
CS 630 Game Engineering 3D
CS 662 Artificial Intelligence
CS 680 Web Systems and Algorithms
CS 682 Distributed Software Development

Graduate Course Offerings

Graduate courses include any 600 level course. At least two of these courses are required to satisfy the electives requirement. See our graduate course offerings here.

Advanced Undergraduate Courses

Any 300 or 400 level course may be used to satisfy part of the electives requirement, with the exception of CS 480, CS 486, and CS 490. A 200 level course may be used to satisfy part of the electives requirement with permission of the graduate adviser. See our undergraduate course offerings here.

Master's Project

The Master's degree requires that all students undertake a Master's project. The project can be either a sponsored project for a commercial concern or other institution or a research project. In either case, the project will result in the specification, design, and development of a significant software system with full documentation, an oral presentation to the university community, and a written report. The Master's Project is offered every semester.

Master's Thesis

The thesis is not required and is reserved for exceptional students. It is not a substitute for the Master's Project, and is normally a continuation of work undertaken in a Master's Project.

Grade Requirements

To be acceptable for the Master's degree, each course must be selected with the approval of the Graduate Program Coordinator and must be passed with a grade of C (2.0) or better. Moreover, the average grade of all courses taken to fulfill the M.S. degree requirements must be B (3.0) or better. 

Students are placed on probation after any semester in which the student's GPA drops below 3.0. After a second semester on probation, the university may move to dismiss them from the program. Those students with fellowships must maintain a 3.3 GPA. At the close of the semester in which the student's GPA drops below 3.3, that student immediately loses any promised fellowship money.


"I wish there had been an entrepreneurship emphasis like USF's when I was in computer science graduate school; my career has been a combination of just that: technology and management. I hope USF's MS students, particularly those taking the emphasis in entrepreneurship, will consider Adobe upon graduation."

Dr. Charles M. Geschke
Co-founder and Chairman of the Board, Adobe Systems

"Today's business world demands both deep technical skills and expansive business acumen. Excellent USF CS graduates demonstrate both these traits and BEA looks forward to hiring more outstanding talent."

Alfred S. Chuang
Chairman, Co-Founder, CEO, BEA Systems

SelectionFile type iconFile nameDescriptionSizeRevisionTimeUser
View Download
MSCS Degree Worksheet  60k v. 1 Nov 9, 2012, 7:22 PM Sophie Engle