CS Pathways: Preparing students for Computer Science @ UMD

CS Pathways Logo

The University of Maryland and its Department of Computer Science are enriched by the skills and knowledge that transfer students bring with them to their education here. That also holds true for high school students coming with advanced credit. To facilitate the transfer of credit to UMD, the Department works with community college and high school instructors, advisors and administrators on the best processes to assist students. We have collected here information on how students may be best prepared for the transition from their institutions to the Computer Science major at College Park, and we welcome contacts and questions. Please direct those to Monica Hilliard (monicah [-at-] umd [dot] edu).

General Campus and Departmental Information

Transfer Credit Services

Transfer Credit Services is a unit within the Office of the Registrar at UMD. This unit provides information about general campus policies and procedures for transferring credit to UMD, either from another accredited institute of higher education or from prior learning credits from high school advanced placement or other mechanism.


Transfer Applicant Requirements

More information on Transfer Applicant Requirements is listed by Admissions at the following link. Note that under the Maryland Transfer Advantage Program for community college students taking UMD courses, a new policy requires them to take these courses in Summer/Winter, rather than Fall/Spring, starting in AY2019-2020.


Transfer and Prior Learning Credits

More specific information about transfer and prior learning credits for computer science is listed on the general computer science web page for prospective students.



Limited Enrollment Program

Starting Fall 2019 Computer Science will become a limited enrollment program (LEP), and the following page has an FAQ on the LEP:


Additional information can be found at: https://lep.umd.edu/.


Presentations from CS Pathways Workshop

On July 1st, the Department held a workshop for community college and high school instructors, advisors and administrators for mutual discussions on best preparing our students for a career in computing. The workshop program is at the following page:


Presentations at the Workshop covered the overall structure of the Computer Science major, details of the introductory course, and previous computing experience that students bring to the introductory course.

Presenter PDF
Michael Hicks
Professor of Computer Science
Co-Associate Chair of CS Undergraduate Education
Nelson Padua-Perez
Senior Lecturer
Roger Eastman
Professor of the Practice

Articulating CS Courses with UMD

Once a course is accepted for articulation at UMD it is listed in the Transfer Course Database by Transfer Credit Services. For the Computer Science Department to accept new courses for as equivalent for articulation, we would appreciate receiving the following information for each course from the other institution:


  • (a) The UMD CS course number and name to be evaluated for equivalence.
  • (b) Expected outcomes for the equivalent course at the other institution.
  • (c) Syllabus for the equivalent course.
  • (d) A full semester's homeworks, project descriptions and starter files, and exams.
  • (e) Any URLs associated with the course.


With the syllabus please include anything you consider relevant, like timeline and grade breakdown but also logistics such as whether pair programming is done, testing and grading procedures, rubrics, and so on. If we need additional information we'll ask. We do not need graded assignments.

Please send this information to monicah [-at-] umd [dot] edu (Monica Hilliard). We'll review this with you, and either accept or provide feedback.

Material for UMD CMSC Introductory Courses

For use in articulating courses we have assembled information on the primary, introductory UMD programming courses CMSC131, 132, 216 and 250, and present it here. Some material is password protected. For the password information please contact Monica Hilliard (monicah [-at-] umd [dot] edu).

Information on the full requirements for the CMSC major is at:



CMSC 131 (4) Object-Oriented Programming I
This is a first programming course for Computer Science majors with a focus on object-oriented programming. The goal of the course is to develop skills such as program design and testing as well as the implementation of programs using a graphical IDE. All programming will be done in Java.
CMSC 132 (4) Object-Oriented Programming II
This a second programming course for Computer Science majors with a focus on object-oriented programming. The goal of the course is to develop skills such as program design and testing as well as the implementation of programs using a graphical IDE. All programming will be done in Java.
CMSC 216 (4) Introduction to Computer Systems
An introduction to lower level programming details in the C programming language.
CMSC 250 (4) Discrete Structures
This course covers fundamental mathematical concepts related to computer science.


The following each contain links to standard learning outcomes and example materials for the two introductory courses CMSC131 and CMSC132 assembled by Senior Lecturer Fawzi Emad.

The following are specific examples of class websites for each of these courses.

The CMSC131/132/216 have an emphasis on testing student projects, and Principal Lecturer Evan Golub prepared the following material as resources for community college and high school faculty to demonstrate ways testing and be done using JUnit tests, similar to but without the need for our local submissions server:


We also offer several introductory courses intended for non-majors: CMSC106, CMSC122, and CMSC125. You may view these course descriptions in the Undergraduate Catalog. If you’re interested in having a course evaluated for any of these equivalencies, or if you’d like more information about these courses, please contact monicah [-at-] umd [dot] edu (Monica Hilliard).