Schedule of Classes
Apply Now
Skip to Menu Toggle Button

2025 Summer: May 7 - August 12

Course Class No. Section Start & End Date Day Time Status Location
CMSC 100 Social Networking and Cybersecurity Best Practices (3)
(Formerly CMIS 111.) A hands-on study of current social networking applications and approaches to protect against cyber-attacks and enhance personal cybersecurity. The goal is to collaborate and interact through personal and professional social networking while developing and using computer security best practices. Discussion covers issues associated with the impact of social computing on individuals and society. Projects include creating and maintaining accounts on selected social networking sites. Students may receive credit for only one of the following courses: CMIS 111 or CMSC 100.
Start date has passed. Please register for the next start date.
51956 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Guster, Dennis C Syllabus Course Materials
CMSC 100 Social Networking and Cybersecurity Best Practices (3)
(Formerly CMIS 111.) A hands-on study of current social networking applications and approaches to protect against cyber-attacks and enhance personal cybersecurity. The goal is to collaborate and interact through personal and professional social networking while developing and using computer security best practices. Discussion covers issues associated with the impact of social computing on individuals and society. Projects include creating and maintaining accounts on selected social networking sites. Students may receive credit for only one of the following courses: CMIS 111 or CMSC 100.
Start date has passed. Please register for the next start date.
52007 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Beache, Vidda Syllabus Course Materials
CMSC 100 Social Networking and Cybersecurity Best Practices (3)
(Formerly CMIS 111.) A hands-on study of current social networking applications and approaches to protect against cyber-attacks and enhance personal cybersecurity. The goal is to collaborate and interact through personal and professional social networking while developing and using computer security best practices. Discussion covers issues associated with the impact of social computing on individuals and society. Projects include creating and maintaining accounts on selected social networking sites. Students may receive credit for only one of the following courses: CMIS 111 or CMSC 100.
Start date has passed. Please register for the next start date.
52078 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Cercena, Sonal S Syllabus Course Materials
CMSC 100 Social Networking and Cybersecurity Best Practices (3)
(Formerly CMIS 111.) A hands-on study of current social networking applications and approaches to protect against cyber-attacks and enhance personal cybersecurity. The goal is to collaborate and interact through personal and professional social networking while developing and using computer security best practices. Discussion covers issues associated with the impact of social computing on individuals and society. Projects include creating and maintaining accounts on selected social networking sites. Students may receive credit for only one of the following courses: CMIS 111 or CMSC 100.
53094 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Pitocco, Nickolas J Syllabus Course Materials
CMSC 100 Social Networking and Cybersecurity Best Practices (3)
(Formerly CMIS 111.) A hands-on study of current social networking applications and approaches to protect against cyber-attacks and enhance personal cybersecurity. The goal is to collaborate and interact through personal and professional social networking while developing and using computer security best practices. Discussion covers issues associated with the impact of social computing on individuals and society. Projects include creating and maintaining accounts on selected social networking sites. Students may receive credit for only one of the following courses: CMIS 111 or CMSC 100.
53138 6981 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Copeland, Keiona A Syllabus Course Materials
CMSC 100 Social Networking and Cybersecurity Best Practices (3)
(Formerly CMIS 111.) A hands-on study of current social networking applications and approaches to protect against cyber-attacks and enhance personal cybersecurity. The goal is to collaborate and interact through personal and professional social networking while developing and using computer security best practices. Discussion covers issues associated with the impact of social computing on individuals and society. Projects include creating and maintaining accounts on selected social networking sites. Students may receive credit for only one of the following courses: CMIS 111 or CMSC 100.
55001 6982 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
51957 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Grady, Stephen Howard Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
51991 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Kayed, Rabiha J Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
51999 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Beyer, Tristan A Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
52006 6383 14 May 2025-08 Jul 2025 Open Online
Faculty: Al-Marzooq, Taghreed Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
52014 6384 14 May 2025-08 Jul 2025 Open Online
Faculty: Manocha, Subhash Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
52039 6385 14 May 2025-08 Jul 2025 Open Online
Faculty: Azhar, Mohammad Q Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
53095 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Karmaker, Amitava Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
53122 6981 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Haight, Timothy W Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
53126 6982 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Zevallos, Omar A Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
53134 6983 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Durham, Jeneo Kente Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
53555 4025 14 May 2025-08 Jul 2025 Th 6:30P-9:30P Open College Park (Hybrid)
Faculty: Alhabashi, Khattab A Bldg/Room: Hornbake Library (Undergrad) 0123 Syllabus Course Materials
CMSC 105 Introduction to Problem-Solving and Algorithm Design (3)
(Formerly CMIS 102.) A study of techniques for finding solutions to problems through structured programming and stepwise refinement. The objective is to design programs using pseudocode and implement them in an appropriate programming language. Hands-on practice in debugging, testing, and documenting is provided. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem-solving. Students may receive credit for only one of the following courses: CMIS 102,CMIS 102A, CMSC 101, or CMSC 105.
Start date has passed. Please register for the next start date.
54783 6387 14 May 2025-08 Jul 2025 Open Online
Faculty: Thomas, Darren J Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
Start date has passed. Please register for the next start date.
51958 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Marcello, Cynthia V. Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
Start date has passed. Please register for the next start date.
51988 6381 14 May 2025-08 Jul 2025 Closed Online
Faculty: Lee, John R Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
Start date has passed. Please register for the next start date.
51995 6382 14 May 2025-08 Jul 2025 Closed Online
Faculty: Del Orbe, Walther A Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
Start date has passed. Please register for the next start date.
52008 6383 14 May 2025-08 Jul 2025 Open Online
Faculty: Elsaghir, Hesham M Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
Start date has passed. Please register for the next start date.
52048 6385 14 May 2025-08 Jul 2025 Open Online
Faculty: Luo, Angelo Y Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
53096 6980 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Rowson, Rebecca R Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
53123 6981 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Meystel, Michael A Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
53133 6982 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Raman, Ashok N Syllabus Course Materials
CMSC 115 Introductory Programming (3)
(Formerly CMIS 141.) Prerequisite: CMSC 105 (or CMIS 102). A study of structured and object-oriented programming using the Java language. The goal is to design, implement, test, debug, and document Java programs, using appropriate development tools. Projects require the use of algorithms, simple data structures, and object-oriented concepts. Students may receive credit for only one of the following courses: CMIS 141, CMIS 141A, or CMSC 115.
53558 4020 14 May 2025-08 Jul 2025 W 6:30P-9:30P Open College Park (Hybrid)
Faculty: Butu, Emilia V Bldg/Room: Susquehanna Hall 1121 Syllabus Course Materials
CMSC 150 Introduction to Discrete Structures (3)
Prerequisite or corequisite: MATH 140. A survey of fundamental mathematical concepts relevant to computer science. The objective is to address problems in computer science. Proof techniques presented are those used for modeling and solving problems in computer science. Discussion covers functions, relations, infinite sets, and propositional logic. Topics also include graphs and trees, as well as selected applications. Students may receive credit for only one of the following courses: CMSC 150 or CMSC 250.
Start date has passed. Please register for the next start date.
50803 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Korrapati, Srinivas Syllabus Course Materials
CMSC 150 Introduction to Discrete Structures (3)
Prerequisite or corequisite: MATH 140. A survey of fundamental mathematical concepts relevant to computer science. The objective is to address problems in computer science. Proof techniques presented are those used for modeling and solving problems in computer science. Discussion covers functions, relations, infinite sets, and propositional logic. Topics also include graphs and trees, as well as selected applications. Students may receive credit for only one of the following courses: CMSC 150 or CMSC 250.
Start date has passed. Please register for the next start date.
51074 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Richmond, Greig K Syllabus Course Materials
CMSC 150 Introduction to Discrete Structures (3)
Prerequisite or corequisite: MATH 140. A survey of fundamental mathematical concepts relevant to computer science. The objective is to address problems in computer science. Proof techniques presented are those used for modeling and solving problems in computer science. Discussion covers functions, relations, infinite sets, and propositional logic. Topics also include graphs and trees, as well as selected applications. Students may receive credit for only one of the following courses: CMSC 150 or CMSC 250.
Start date has passed. Please register for the next start date.
52043 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Shaalan, Majid A Syllabus Course Materials
CMSC 150 Introduction to Discrete Structures (3)
Prerequisite or corequisite: MATH 140. A survey of fundamental mathematical concepts relevant to computer science. The objective is to address problems in computer science. Proof techniques presented are those used for modeling and solving problems in computer science. Discussion covers functions, relations, infinite sets, and propositional logic. Topics also include graphs and trees, as well as selected applications. Students may receive credit for only one of the following courses: CMSC 150 or CMSC 250.
52152 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Muralidharan, Rajamani Syllabus Course Materials
CMSC 150 Introduction to Discrete Structures (3)
Prerequisite or corequisite: MATH 140. A survey of fundamental mathematical concepts relevant to computer science. The objective is to address problems in computer science. Proof techniques presented are those used for modeling and solving problems in computer science. Discussion covers functions, relations, infinite sets, and propositional logic. Topics also include graphs and trees, as well as selected applications. Students may receive credit for only one of the following courses: CMSC 150 or CMSC 250.
52978 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Stricklin, Steve D. Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
Start date has passed. Please register for the next start date.
51959 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Logue, Thomas A Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
Start date has passed. Please register for the next start date.
51989 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Tarquinio, Michael Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
Start date has passed. Please register for the next start date.
52003 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Timko, Thomas J Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
Start date has passed. Please register for the next start date.
52018 6383 14 May 2025-08 Jul 2025 Open Online
Faculty: Fernandez, Teresa Suarez Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
53097 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Luo, Angelo Y Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
53128 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Nuur, Sadiq O Syllabus Course Materials
CMSC 215 Intermediate Programming (3)
(Formerly CMIS 242.) Prerequisite: CMSC 115 (or CMIS 141). Further study of the Java programming language. The objective is to design, implement, test, debug, and document Java programs, using appropriate development tools. Topics include object-oriented design, event driven programming, exceptions, recursion, arrays, and data structures. Students may receive credit for only one of the following courses: CMSC 215 or CMIS 242.
53560 4060 11 Jun 2025-05 Aug 2025 W 6:30P-9:30P Open College Park (Hybrid)
Faculty: Williams, Gregory T Syllabus Course Materials
CMSC 307 Artificial Intelligence Applications (3)
(No programming or math background required.) An interactive, hands-on study of current artificial intelligence (AI) applications spanning multiple disciplines and domains, including business, science, communications, and computing. The goal is to use datasets with AI and machine learning applications from leading cloud vendors, including Amazon and Microsoft. Projects and laboratory exercises demonstrate how AI can be used to solve problems across a wide variety of disciplines.
Start date has passed. Please register for the next start date.
51541 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Gorham, Christopher L Syllabus Course Materials
CMSC 307 Artificial Intelligence Applications (3)
(No programming or math background required.) An interactive, hands-on study of current artificial intelligence (AI) applications spanning multiple disciplines and domains, including business, science, communications, and computing. The goal is to use datasets with AI and machine learning applications from leading cloud vendors, including Amazon and Microsoft. Projects and laboratory exercises demonstrate how AI can be used to solve problems across a wide variety of disciplines.
Start date has passed. Please register for the next start date.
51794 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Potolea, Rodica Syllabus Course Materials
CMSC 307 Artificial Intelligence Applications (3)
(No programming or math background required.) An interactive, hands-on study of current artificial intelligence (AI) applications spanning multiple disciplines and domains, including business, science, communications, and computing. The goal is to use datasets with AI and machine learning applications from leading cloud vendors, including Amazon and Microsoft. Projects and laboratory exercises demonstrate how AI can be used to solve problems across a wide variety of disciplines.
52786 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Castillo, David Syllabus Course Materials
CMSC 307 Artificial Intelligence Applications (3)
(No programming or math background required.) An interactive, hands-on study of current artificial intelligence (AI) applications spanning multiple disciplines and domains, including business, science, communications, and computing. The goal is to use datasets with AI and machine learning applications from leading cloud vendors, including Amazon and Microsoft. Projects and laboratory exercises demonstrate how AI can be used to solve problems across a wide variety of disciplines.
52897 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Dave, Linesh Ramesh Syllabus Course Materials
CMSC 307 Artificial Intelligence Applications (3)
(No programming or math background required.) An interactive, hands-on study of current artificial intelligence (AI) applications spanning multiple disciplines and domains, including business, science, communications, and computing. The goal is to use datasets with AI and machine learning applications from leading cloud vendors, including Amazon and Microsoft. Projects and laboratory exercises demonstrate how AI can be used to solve problems across a wide variety of disciplines.
53561 7855 11 Jun 2025-05 Aug 2025 T 6:00P-9:00P Open Fort Detrick (Hybrid)
Faculty: Kornfeld, Michael J Bldg/Room: Fort Detrick 2 Syllabus Course Materials
CMSC 310 Computer Systems and Architecture (3)
(Formerly CMIS 310.) Prerequisite: CMSC 115 (or CMIS 141). A study of the fundamental concepts of computer architecture and factors that influence the performance of a system. The aim is to apply practical skills to computer systems architecture. Topics include data representation, assembly language, central processing unit architecture, memory architecture, and input/output (I/O) architecture. Students may receive credit for only one of the following courses: CMIS 270, CMIS 310, CMSC 310, CMSC 311, or IFSM 310.
Start date has passed. Please register for the next start date.
51960 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Xu, Zhe Syllabus Course Materials
CMSC 310 Computer Systems and Architecture (3)
(Formerly CMIS 310.) Prerequisite: CMSC 115 (or CMIS 141). A study of the fundamental concepts of computer architecture and factors that influence the performance of a system. The aim is to apply practical skills to computer systems architecture. Topics include data representation, assembly language, central processing unit architecture, memory architecture, and input/output (I/O) architecture. Students may receive credit for only one of the following courses: CMIS 270, CMIS 310, CMSC 310, CMSC 311, or IFSM 310.
Start date has passed. Please register for the next start date.
51992 6381 14 May 2025-08 Jul 2025 Closed Online
Faculty: Mentzos, Terrence W. Syllabus Course Materials
CMSC 310 Computer Systems and Architecture (3)
(Formerly CMIS 310.) Prerequisite: CMSC 115 (or CMIS 141). A study of the fundamental concepts of computer architecture and factors that influence the performance of a system. The aim is to apply practical skills to computer systems architecture. Topics include data representation, assembly language, central processing unit architecture, memory architecture, and input/output (I/O) architecture. Students may receive credit for only one of the following courses: CMIS 270, CMIS 310, CMSC 310, CMSC 311, or IFSM 310.
Start date has passed. Please register for the next start date.
52013 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Guy-Williams, Denton G Syllabus Course Materials
CMSC 310 Computer Systems and Architecture (3)
(Formerly CMIS 310.) Prerequisite: CMSC 115 (or CMIS 141). A study of the fundamental concepts of computer architecture and factors that influence the performance of a system. The aim is to apply practical skills to computer systems architecture. Topics include data representation, assembly language, central processing unit architecture, memory architecture, and input/output (I/O) architecture. Students may receive credit for only one of the following courses: CMIS 270, CMIS 310, CMSC 310, CMSC 311, or IFSM 310.
53098 6980 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Lusby, Jack C Syllabus Course Materials
CMSC 310 Computer Systems and Architecture (3)
(Formerly CMIS 310.) Prerequisite: CMSC 115 (or CMIS 141). A study of the fundamental concepts of computer architecture and factors that influence the performance of a system. The aim is to apply practical skills to computer systems architecture. Topics include data representation, assembly language, central processing unit architecture, memory architecture, and input/output (I/O) architecture. Students may receive credit for only one of the following courses: CMIS 270, CMIS 310, CMSC 310, CMSC 311, or IFSM 310.
53131 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Smith, Therese M Syllabus Course Materials
CMSC 315 Data Structures and Analysis (3)
(Formerly CMSC 350.) Prerequisite: CMSC 215 (or CMIS 242). A study of user-defined data structures and object-oriented design in computer science. The aim is to develop secure Java programs. Topics include linked lists, stacks, queues, arrays, maps, vectors, and trees. Algorithms that perform sorting, searching, and recursion are discussed and analyzed. Students may receive credit for only one of the following courses: CMSC 315 or CMSC 350.
Start date has passed. Please register for the next start date.
51961 6380 14 May 2025-08 Jul 2025 Closed Online
Faculty: Schmeelk, Suzanna E Syllabus Course Materials
CMSC 315 Data Structures and Analysis (3)
(Formerly CMSC 350.) Prerequisite: CMSC 215 (or CMIS 242). A study of user-defined data structures and object-oriented design in computer science. The aim is to develop secure Java programs. Topics include linked lists, stacks, queues, arrays, maps, vectors, and trees. Algorithms that perform sorting, searching, and recursion are discussed and analyzed. Students may receive credit for only one of the following courses: CMSC 315 or CMSC 350.
Start date has passed. Please register for the next start date.
51994 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Jarc, Duane J Syllabus Course Materials
CMSC 315 Data Structures and Analysis (3)
(Formerly CMSC 350.) Prerequisite: CMSC 215 (or CMIS 242). A study of user-defined data structures and object-oriented design in computer science. The aim is to develop secure Java programs. Topics include linked lists, stacks, queues, arrays, maps, vectors, and trees. Algorithms that perform sorting, searching, and recursion are discussed and analyzed. Students may receive credit for only one of the following courses: CMSC 315 or CMSC 350.
Start date has passed. Please register for the next start date.
52032 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Huskins, James M Syllabus Course Materials
CMSC 315 Data Structures and Analysis (3)
(Formerly CMSC 350.) Prerequisite: CMSC 215 (or CMIS 242). A study of user-defined data structures and object-oriented design in computer science. The aim is to develop secure Java programs. Topics include linked lists, stacks, queues, arrays, maps, vectors, and trees. Algorithms that perform sorting, searching, and recursion are discussed and analyzed. Students may receive credit for only one of the following courses: CMSC 315 or CMSC 350.
53099 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Salomie, Ioan Syllabus Course Materials
CMSC 315 Data Structures and Analysis (3)
(Formerly CMSC 350.) Prerequisite: CMSC 215 (or CMIS 242). A study of user-defined data structures and object-oriented design in computer science. The aim is to develop secure Java programs. Topics include linked lists, stacks, queues, arrays, maps, vectors, and trees. Algorithms that perform sorting, searching, and recursion are discussed and analyzed. Students may receive credit for only one of the following courses: CMSC 315 or CMSC 350.
53129 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Specioso, Richard E Syllabus Course Materials
CMSC 315 Data Structures and Analysis (3)
(Formerly CMSC 350.) Prerequisite: CMSC 215 (or CMIS 242). A study of user-defined data structures and object-oriented design in computer science. The aim is to develop secure Java programs. Topics include linked lists, stacks, queues, arrays, maps, vectors, and trees. Algorithms that perform sorting, searching, and recursion are discussed and analyzed. Students may receive credit for only one of the following courses: CMSC 315 or CMSC 350.
Start date has passed. Please register for the next start date.
54731 6383 14 May 2025-08 Jul 2025 Open Online
Faculty: Igwe, Selwyn O Syllabus Course Materials
CMSC 320 Relational Database Concepts and Applications (3)
(Formerly CMIS 320.). Prerequisite: CMSC 115 (or CMIS 141). A study of the functions, underlying concepts, and applications of enterprise relational database management systems (RDBMS) in a business environment. The aim is to appropriately use databases to meet business requirements. Discussion covers entity/relationship diagrams, relational theory, normalization, integrity constraints, the Structured Query Language (SQL), and physical and logical design. Business case studies and projects include hands-on work using an industry standard RDBMS. Students may receive credit for only one of the following courses: CMIS 320, CMSC 320, or IFSM 410.
Start date has passed. Please register for the next start date.
51962 6380 14 May 2025-08 Jul 2025 Closed Online
Faculty: Baird, Anthony B Syllabus Course Materials
CMSC 320 Relational Database Concepts and Applications (3)
(Formerly CMIS 320.). Prerequisite: CMSC 115 (or CMIS 141). A study of the functions, underlying concepts, and applications of enterprise relational database management systems (RDBMS) in a business environment. The aim is to appropriately use databases to meet business requirements. Discussion covers entity/relationship diagrams, relational theory, normalization, integrity constraints, the Structured Query Language (SQL), and physical and logical design. Business case studies and projects include hands-on work using an industry standard RDBMS. Students may receive credit for only one of the following courses: CMIS 320, CMSC 320, or IFSM 410.
Start date has passed. Please register for the next start date.
51998 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Rajani, Janak R Syllabus Course Materials
CMSC 320 Relational Database Concepts and Applications (3)
(Formerly CMIS 320.). Prerequisite: CMSC 115 (or CMIS 141). A study of the functions, underlying concepts, and applications of enterprise relational database management systems (RDBMS) in a business environment. The aim is to appropriately use databases to meet business requirements. Discussion covers entity/relationship diagrams, relational theory, normalization, integrity constraints, the Structured Query Language (SQL), and physical and logical design. Business case studies and projects include hands-on work using an industry standard RDBMS. Students may receive credit for only one of the following courses: CMIS 320, CMSC 320, or IFSM 410.
Start date has passed. Please register for the next start date.
52040 6382 14 May 2025-08 Jul 2025 Closed Online
Faculty: Johnson, Tiffany N Syllabus Course Materials
CMSC 320 Relational Database Concepts and Applications (3)
(Formerly CMIS 320.). Prerequisite: CMSC 115 (or CMIS 141). A study of the functions, underlying concepts, and applications of enterprise relational database management systems (RDBMS) in a business environment. The aim is to appropriately use databases to meet business requirements. Discussion covers entity/relationship diagrams, relational theory, normalization, integrity constraints, the Structured Query Language (SQL), and physical and logical design. Business case studies and projects include hands-on work using an industry standard RDBMS. Students may receive credit for only one of the following courses: CMIS 320, CMSC 320, or IFSM 410.
53100 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Liu, Lawrence W Syllabus Course Materials
CMSC 320 Relational Database Concepts and Applications (3)
(Formerly CMIS 320.). Prerequisite: CMSC 115 (or CMIS 141). A study of the functions, underlying concepts, and applications of enterprise relational database management systems (RDBMS) in a business environment. The aim is to appropriately use databases to meet business requirements. Discussion covers entity/relationship diagrams, relational theory, normalization, integrity constraints, the Structured Query Language (SQL), and physical and logical design. Business case studies and projects include hands-on work using an industry standard RDBMS. Students may receive credit for only one of the following courses: CMIS 320, CMSC 320, or IFSM 410.
53125 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Rajani, Janak R Syllabus Course Materials
CMSC 325 Game Design and Development (3)
Prerequisite: CMSC 215 (or CMIS 242). A project-driven study of the theory and practice of game design and development. The aim is to build realistic graphical 3D worlds, animate characters, and add special effects to games. Discussion covers critical mathematical concepts and real-time game physics. Projects include collaborative development of interactive games.
Start date has passed. Please register for the next start date.
51393 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Elms, Michael A Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 315 (or CMSC 350). A comparative study of programming languages. The aim is to write safe and secure computer programs. Topics include the syntax and semantics of programming languages and run-time support required for various programming languages. Programming projects using selected languages are required.
Start date has passed. Please register for the next start date.
50801 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Gubanov, Vladimir Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 315 (or CMSC 350). A comparative study of programming languages. The aim is to write safe and secure computer programs. Topics include the syntax and semantics of programming languages and run-time support required for various programming languages. Programming projects using selected languages are required.
Start date has passed. Please register for the next start date.
51190 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Suciu, Alin D Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 315 (or CMSC 350). A comparative study of programming languages. The aim is to write safe and secure computer programs. Topics include the syntax and semantics of programming languages and run-time support required for various programming languages. Programming projects using selected languages are required.
Start date has passed. Please register for the next start date.
52041 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Ghosh, Soumajit Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 315 (or CMSC 350). A comparative study of programming languages. The aim is to write safe and secure computer programs. Topics include the syntax and semantics of programming languages and run-time support required for various programming languages. Programming projects using selected languages are required.
52354 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Mikulski, George R Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 315 (or CMSC 350). A comparative study of programming languages. The aim is to write safe and secure computer programs. Topics include the syntax and semantics of programming languages and run-time support required for various programming languages. Programming projects using selected languages are required.
53135 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Gannavarapu, Ramji V Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 315 (or CMSC 350). A study of object-oriented and concurrent programming using features of Java. The goal is to design, implement, test, debug, and document complex robust programs in an object-oriented language. Concepts of object-oriented programming (such as composition, classification, and polymorphism) are explored. Topics include the principles of concurrent programming (such as task synchronization, race conditions, deadlock, threads, and event-driven graphic user interface programs). Programming projects are implemented in Java. Students may receive credit for only one of the following courses: CMSC 300 or CMSC 335.
Start date has passed. Please register for the next start date.
50901 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Vergamini, Didier Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 315 (or CMSC 350). A study of object-oriented and concurrent programming using features of Java. The goal is to design, implement, test, debug, and document complex robust programs in an object-oriented language. Concepts of object-oriented programming (such as composition, classification, and polymorphism) are explored. Topics include the principles of concurrent programming (such as task synchronization, race conditions, deadlock, threads, and event-driven graphic user interface programs). Programming projects are implemented in Java. Students may receive credit for only one of the following courses: CMSC 300 or CMSC 335.
Start date has passed. Please register for the next start date.
51181 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Mujeye, Douglas Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 315 (or CMSC 350). A study of object-oriented and concurrent programming using features of Java. The goal is to design, implement, test, debug, and document complex robust programs in an object-oriented language. Concepts of object-oriented programming (such as composition, classification, and polymorphism) are explored. Topics include the principles of concurrent programming (such as task synchronization, race conditions, deadlock, threads, and event-driven graphic user interface programs). Programming projects are implemented in Java. Students may receive credit for only one of the following courses: CMSC 300 or CMSC 335.
Start date has passed. Please register for the next start date.
52042 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Dinsoreanu, Mihaela Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 315 (or CMSC 350). A study of object-oriented and concurrent programming using features of Java. The goal is to design, implement, test, debug, and document complex robust programs in an object-oriented language. Concepts of object-oriented programming (such as composition, classification, and polymorphism) are explored. Topics include the principles of concurrent programming (such as task synchronization, race conditions, deadlock, threads, and event-driven graphic user interface programs). Programming projects are implemented in Java. Students may receive credit for only one of the following courses: CMSC 300 or CMSC 335.
52355 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Seely, Andrew R Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 315 (or CMSC 350). A study of object-oriented and concurrent programming using features of Java. The goal is to design, implement, test, debug, and document complex robust programs in an object-oriented language. Concepts of object-oriented programming (such as composition, classification, and polymorphism) are explored. Topics include the principles of concurrent programming (such as task synchronization, race conditions, deadlock, threads, and event-driven graphic user interface programs). Programming projects are implemented in Java. Students may receive credit for only one of the following courses: CMSC 300 or CMSC 335.
54523 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Karmaker, Amitava Syllabus Course Materials
CMSC 340 Web Programming (3)
Prerequisite: CMSC 115 (or CMIS 141). A study of how to develop web applications. The objective is to understand and implement networking protocols, system design, and web security. Topics include basic web architecture, core web standards (such as HTTP, HTML, and CSS), client-side scripting with JavaScript, and server-side programming with PHP.
Start date has passed. Please register for the next start date.
51963 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Morad, Osama Syllabus Course Materials
CMSC 345 Software Engineering Principles and Techniques (3)
(Formerly CMIS 330.) Prerequisite: CMSC 115 (or CMIS 141). A study of software engineering from initial concept through design, development, testing, and maintenance of the product. Discussion covers software development life-cycle models. The goal is to analyze, customize, and document multiple processes to solve information technology problems. Topics include configuration management, quality, validation and verification, security, human factors, and organizational structures. Students may receive credit for only one of the following courses: CMIS 330, CMIS 388A, or CMSC 345.
Start date has passed. Please register for the next start date.
51964 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Shash, Abdulnasir M Syllabus Course Materials
CMSC 345 Software Engineering Principles and Techniques (3)
(Formerly CMIS 330.) Prerequisite: CMSC 115 (or CMIS 141). A study of software engineering from initial concept through design, development, testing, and maintenance of the product. Discussion covers software development life-cycle models. The goal is to analyze, customize, and document multiple processes to solve information technology problems. Topics include configuration management, quality, validation and verification, security, human factors, and organizational structures. Students may receive credit for only one of the following courses: CMIS 330, CMIS 388A, or CMSC 345.
Start date has passed. Please register for the next start date.
51990 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Davis, Christopher L Syllabus Course Materials
CMSC 345 Software Engineering Principles and Techniques (3)
(Formerly CMIS 330.) Prerequisite: CMSC 115 (or CMIS 141). A study of software engineering from initial concept through design, development, testing, and maintenance of the product. Discussion covers software development life-cycle models. The goal is to analyze, customize, and document multiple processes to solve information technology problems. Topics include configuration management, quality, validation and verification, security, human factors, and organizational structures. Students may receive credit for only one of the following courses: CMIS 330, CMIS 388A, or CMSC 345.
53101 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Anyanso, Chukwuma Syllabus Course Materials
CMSC 345 Software Engineering Principles and Techniques (3)
(Formerly CMIS 330.) Prerequisite: CMSC 115 (or CMIS 141). A study of software engineering from initial concept through design, development, testing, and maintenance of the product. Discussion covers software development life-cycle models. The goal is to analyze, customize, and document multiple processes to solve information technology problems. Topics include configuration management, quality, validation and verification, security, human factors, and organizational structures. Students may receive credit for only one of the following courses: CMIS 330, CMIS 388A, or CMSC 345.
53127 6981 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Mittal, Ajay Kumar Syllabus Course Materials
CMSC 345 Software Engineering Principles and Techniques (3)
(Formerly CMIS 330.) Prerequisite: CMSC 115 (or CMIS 141). A study of software engineering from initial concept through design, development, testing, and maintenance of the product. Discussion covers software development life-cycle models. The goal is to analyze, customize, and document multiple processes to solve information technology problems. Topics include configuration management, quality, validation and verification, security, human factors, and organizational structures. Students may receive credit for only one of the following courses: CMIS 330, CMIS 388A, or CMSC 345.
Start date has passed. Please register for the next start date.
54581 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Morad, Osama Syllabus Course Materials
CMSC 345 Software Engineering Principles and Techniques (3)
(Formerly CMIS 330.) Prerequisite: CMSC 115 (or CMIS 141). A study of software engineering from initial concept through design, development, testing, and maintenance of the product. Discussion covers software development life-cycle models. The goal is to analyze, customize, and document multiple processes to solve information technology problems. Topics include configuration management, quality, validation and verification, security, human factors, and organizational structures. Students may receive credit for only one of the following courses: CMIS 330, CMIS 388A, or CMSC 345.
54898 6982 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Raman, Ashok N Syllabus Course Materials
CMSC 405 Computer Graphics (3)
Prerequisite: CMSC 325 or CMSC 315 (or CMSC 350). A hands-on, project-based introduction to computer graphics. The goal is to develop projects that render graphic images and animate three-dimensional objects. Topics include programming in OpenGL and transforming, viewing, and modeling 2D and 3D objects.
Start date has passed. Please register for the next start date.
51300 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: King, Lauren Beth Syllabus Course Materials
CMSC 405 Computer Graphics (3)
Prerequisite: CMSC 325 or CMSC 315 (or CMSC 350). A hands-on, project-based introduction to computer graphics. The goal is to develop projects that render graphic images and animate three-dimensional objects. Topics include programming in OpenGL and transforming, viewing, and modeling 2D and 3D objects.
52332 6980 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Metallo, Lynda M Syllabus Course Materials
CMSC 412 Operating Systems (3)
Prerequisite: CMIS 310 or CMSC 311. A study of the fundamental principles underlying modern operating systems. The objective is to design and implement a small-scale operating system and design a virtual memory management system. Discussion covers the essential components of a typical operating system and the interactions among them. Topics also include methods of managing processes and resources in computer systems. A programming project that implements part of an operating system is required.
Start date has passed. Please register for the next start date.
50903 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Didulo, Dennis Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisite: CMSC 330. An examination of the formal translation of programming languages, syntax, and semantics. The goal is to write programs that are constructed using program generators. Topics include evaluation of finite-state grammars and recognizers; context free parsing techniques, such as recursive descent, precedence, LL(K), LR(K), and SLR(K); and improvement and generation of machine-independent code and syntax-directed translation schema. Programming projects that implement parts of a compiler are required.
52356 6980 11 Jun 2025-05 Aug 2025 Open Online
Faculty: McDonald, Renee C Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisite: CMSC 330. An examination of the formal translation of programming languages, syntax, and semantics. The goal is to write programs that are constructed using program generators. Topics include evaluation of finite-state grammars and recognizers; context free parsing techniques, such as recursive descent, precedence, LL(K), LR(K), and SLR(K); and improvement and generation of machine-independent code and syntax-directed translation schema. Programming projects that implement parts of a compiler are required.
52736 6981 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Brown, Matthew L Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisite: CMSC 330. An examination of the formal translation of programming languages, syntax, and semantics. The goal is to write programs that are constructed using program generators. Topics include evaluation of finite-state grammars and recognizers; context free parsing techniques, such as recursive descent, precedence, LL(K), LR(K), and SLR(K); and improvement and generation of machine-independent code and syntax-directed translation schema. Programming projects that implement parts of a compiler are required.
52820 6982 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Francis, Dexter Whensworth Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 315 (or CMIS 350). A presentation of fundamental techniques for designing and analyzing computer algorithms. The aim is to apply big-O estimates of algorithms and proof-of-correctness techniques and to design algorithms. Basic methods include divide-and-conquer techniques, search and traversal techniques, dynamic programming, greedy methods, and induction. Programming projects are included.
Start date has passed. Please register for the next start date.
50904 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Jiang, Yuhua Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 315 (or CMIS 350). A presentation of fundamental techniques for designing and analyzing computer algorithms. The aim is to apply big-O estimates of algorithms and proof-of-correctness techniques and to design algorithms. Basic methods include divide-and-conquer techniques, search and traversal techniques, dynamic programming, greedy methods, and induction. Programming projects are included.
Start date has passed. Please register for the next start date.
51567 6381 14 May 2025-08 Jul 2025 Open Online
Faculty: Adams, Candice H Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 315 (or CMIS 350). A presentation of fundamental techniques for designing and analyzing computer algorithms. The aim is to apply big-O estimates of algorithms and proof-of-correctness techniques and to design algorithms. Basic methods include divide-and-conquer techniques, search and traversal techniques, dynamic programming, greedy methods, and induction. Programming projects are included.
52750 6980 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Sanford, Jeff H Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 315 (or CMIS 350). A presentation of fundamental techniques for designing and analyzing computer algorithms. The aim is to apply big-O estimates of algorithms and proof-of-correctness techniques and to design algorithms. Basic methods include divide-and-conquer techniques, search and traversal techniques, dynamic programming, greedy methods, and induction. Programming projects are included.
Start date has passed. Please register for the next start date.
54635 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Kuchibhotla, Hari N. Syllabus Course Materials
CMSC 486A Workplace Learning in Computer Science (3)
Prerequisites: 9 credits in the discipline and prior program approval (requirements detailed online at www.umgc.edu/wkpl). The integration of discipline-specific knowledge with new experiences in the work environment. Tasks include completing a series of academic assignments that parallel work experiences.
Start date has passed. Please register for the next start date.
54750 6980 07 May 2025-12 Aug 2025 Open Online
Faculty: Raman, Ashok N Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
Start date has passed. Please register for the next start date.
50911 6380 14 May 2025-08 Jul 2025 Open Online
Faculty: Dao, Hung Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
Start date has passed. Please register for the next start date.
51557 6381 14 May 2025-08 Jul 2025 Closed Online
Faculty: Munoz, Mark Ryan Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
Start date has passed. Please register for the next start date.
51564 6382 14 May 2025-08 Jul 2025 Open Online
Faculty: Nevarez, Shanna Nicole Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
52463 6980 11 Jun 2025-05 Aug 2025 Closed Online
Faculty: Dulmage, William B Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
52800 6981 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Davis, Christopher L Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
53143 6982 11 Jun 2025-05 Aug 2025 Open Online
Faculty: Chan, Philip W Syllabus Course Materials
CMSC 495 Capstone in Computer Science (3)
Prerequisite(s): Either CMSC 330 and CMSC 335, CMSC 320 (or CMIS 320) and CMSC 345, or SDEV 425. An overview of computer technologies, with an emphasis on integration of concepts, practical application, and critical thinking. The goal is to research, plan, conduct, and complete collaborative computer-related projects in compliance with schedule deadlines. Analysis covers innovative and emerging issues in computer science. Assignments include working in teams throughout the analysis, design, development, implementation, testing, and documentation phases of the projects, including periodic peer reviews.
Start date has passed. Please register for the next start date.
54480 6383 14 May 2025-08 Jul 2025 Open Online
Faculty: Gonzales, Matthew M Syllabus Course Materials
Top of Page