Schedule of Classes




2023 Spring: January 11 - May 9

Course Class No. Section Start & End Date Day Time Status Location
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.
20345 6980 15 Feb 2023-11 Apr 2023 Open Online
Faculty: Gannavarapu, Ramji V 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.
21129 6380 11 Jan 2023-07 Mar 2023 Open 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.
Start date has passed. Please register for the next start date.
21521 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Romero, Jose 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.
Start date has passed. Please register for the next start date.
21823 6382 11 Jan 2023-07 Mar 2023 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.
23467 7380 15 Mar 2023-09 May 2023 Open Online
Faculty: Shash, Abdulnasir M 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.
24461 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Romero, Jose 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.
27106 7382 15 Mar 2023-09 May 2023 Open Online
Faculty: 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.
22238 6380 11 Jan 2023-07 Mar 2023 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.
24606 7380 15 Mar 2023-09 May 2023 Open Online
Faculty: Potolea, Rodica Syllabus Course Materials
CMSC 325 Game Design and Development (3)
Prerequisite: CMSC 230 or CMIS 242. A project-driven study of the theory and practice of game design and development. The aim is to build realistic graphical 3-D 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.
21780 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Marcello, Cynthia V. Syllabus Course Materials
CMSC 325 Game Design and Development (3)
Prerequisite: CMSC 230 or CMIS 242. A project-driven study of the theory and practice of game design and development. The aim is to build realistic graphical 3-D 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.
24462 7380 15 Mar 2023-09 May 2023 Open Online
Faculty: Johnson, Tiffany N Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 230 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.
21127 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Gubanov, Vladimir Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 230 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.
21750 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Jiang, Yuhua Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 230 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.
21941 6382 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Gannavarapu, Ramji V Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 230 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.
24463 7380 15 Mar 2023-09 May 2023 Closed Online
Faculty: Gubanov, Vladimir Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 230 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.
24464 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Jiang, Yuhua Syllabus Course Materials
CMSC 330 Advanced Programming Languages (3)
Prerequisite: CMSC 230 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.
24465 7382 15 Mar 2023-09 May 2023 Open Online
Faculty: Elms, Michael A Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
21269 6380 11 Jan 2023-07 Mar 2023 Closed Online
Faculty: Mujeye, Douglas Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
21787 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Ghosh, Soumajit Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
21981 6382 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Vergamini, Didier Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
24466 7380 15 Mar 2023-09 May 2023 Closed Online
Faculty: Ghosh, Soumajit Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
24475 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Vergamini, Didier Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
24476 7382 15 Mar 2023-09 May 2023 Closed Online
Faculty: Mujeye, Douglas Syllabus Course Materials
CMSC 335 Object-Oriented and Concurrent Programming (3)
Prerequisite: CMSC 230 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.
27188 7383 15 Mar 2023-09 May 2023 Open Online
Faculty: Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
Start date has passed. Please register for the next start date.
21200 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Huskins, James M Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
Start date has passed. Please register for the next start date.
21532 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Elizes, Romerl C Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
Start date has passed. Please register for the next start date.
21788 6382 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Salomie, Ioan Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
Start date has passed. Please register for the next start date.
22417 6383 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Schmeelk, Suzanna E Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
24477 7380 15 Mar 2023-09 May 2023 Closed Online
Faculty: Huskins, James M Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
24478 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Specioso, Richard E Syllabus Course Materials
CMSC 350 Data Structures and Analysis (3)
Prerequisite: 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.
24479 7382 15 Mar 2023-09 May 2023 Open Online
Faculty: Beyer, Tristan A Syllabus Course Materials
CMSC 405 Computer Graphics (3)
Prerequisite: CMSC 325 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 2-D and 3-D objects.
Start date has passed. Please register for the next start date.
21920 6380 11 Jan 2023-07 Mar 2023 Closed Online
Faculty: King, Lauren Beth Syllabus Course Materials
CMSC 405 Computer Graphics (3)
Prerequisite: CMSC 325 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 2-D and 3-D objects.
Start date has passed. Please register for the next start date.
21948 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Richmond, Greig K Syllabus Course Materials
CMSC 405 Computer Graphics (3)
Prerequisite: CMSC 325 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 2-D and 3-D objects.
24481 7381 15 Mar 2023-09 May 2023 Open Online
Faculty: King, Lauren Beth Syllabus Course Materials
CMSC 405 Computer Graphics (3)
Prerequisite: CMSC 325 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 2-D and 3-D objects.
24482 7380 15 Mar 2023-09 May 2023 Closed Online
Faculty: Marcello, Cynthia V. 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.
21271 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Suciu, Alin D 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.
21751 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Tarquinio, Michael 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.
24483 7380 15 Mar 2023-09 May 2023 Open Online
Faculty: Suciu, Alin D 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.
24484 7381 15 Mar 2023-09 May 2023 Open Online
Faculty: Munoz, Mark Ryan Syllabus Course Materials
CMSC 427 Artificial Intelligence Foundations (3)
Prerequisite SDEV 300. A study of the theoretical foundations and practical applications of artificial intelligence. The objective is to develop algorithms and systems to demonstrate intelligent behavior. Topics include intelligent agents, searching algorithms, knowledge representation, probability, logic, and learning.
Start date has passed. Please register for the next start date.
22525 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Castillo, David Syllabus Course Materials
CMSC 427 Artificial Intelligence Foundations (3)
Prerequisite SDEV 300. A study of the theoretical foundations and practical applications of artificial intelligence. The objective is to develop algorithms and systems to demonstrate intelligent behavior. Topics include intelligent agents, searching algorithms, knowledge representation, probability, logic, and learning.
24893 7380 15 Mar 2023-09 May 2023 Open Online
Faculty: Castillo, David Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisites: CMSC 330 and programming experience in C or C++. 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.
Start date has passed. Please register for the next start date.
22526 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: McDonald, Renee C Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisites: CMSC 330 and programming experience in C or C++. 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.
Start date has passed. Please register for the next start date.
22527 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Mikulski, George R Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisites: CMSC 330 and programming experience in C or C++. 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.
24485 7380 15 Mar 2023-09 May 2023 Closed Online
Faculty: McDonald, Renee C Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisites: CMSC 330 and programming experience in C or C++. 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.
24486 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Jarc, Duane J Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisites: CMSC 330 and programming experience in C or C++. 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.
Start date has passed. Please register for the next start date.
26880 6382 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Mikulski, George R Syllabus Course Materials
CMSC 430 Compiler Theory and Design (3)
Prerequisites: CMSC 330 and programming experience in C or C++. 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.
27203 7382 15 Mar 2023-09 May 2023 Open Online
Faculty: Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 350 (or CMSC 230). 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.
21273 6380 11 Jan 2023-07 Mar 2023 Closed Online
Faculty: Smith, Therese M Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 350 (or CMSC 230). 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.
21760 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Didulo, Dennis Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 350 (or CMSC 230). 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.
22387 6382 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Jarc, Duane J Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 350 (or CMSC 230). 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.
24341 7380 15 Mar 2023-09 May 2023 Open Online
Faculty: Didulo, Dennis Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 350 (or CMSC 230). 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.
24342 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Smith, Therese M Syllabus Course Materials
CMSC 451 Design and Analysis of Computer Algorithms (3)
Prerequisites: CMSC 150 and CMSC 350 (or CMSC 230). 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.
27049 7382 15 Mar 2023-09 May 2023 Open Online
Faculty: Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
21282 6380 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Sanford, Jeff H Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
21733 6381 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Mentzos, Terrence W. Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
22218 6382 11 Jan 2023-07 Mar 2023 Closed Online
Faculty: Kuchenbecker, Shanna Nicole Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
24336 7380 15 Mar 2023-09 May 2023 Closed Online
Faculty: Dao, Hung Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
24337 7381 15 Mar 2023-09 May 2023 Closed Online
Faculty: Shaalan, Majid A Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
24338 7382 15 Mar 2023-09 May 2023 Open Online
Faculty: Elizes, Romerl C Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
24339 7383 15 Mar 2023-09 May 2023 Closed Online
Faculty: Sanford, Jeff H Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
24340 7384 15 Mar 2023-09 May 2023 Closed Online
Faculty: Davis, Christopher L Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
25500 4055 15 Mar 2023-09 May 2023 T 6:30P-9:30P Open College Park (Hybrid)
Faculty: Chan, Philip W Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
26874 7385 15 Mar 2023-09 May 2023 Open Online
Faculty: Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
26917 6383 11 Jan 2023-07 Mar 2023 Open Online
Faculty: Davis, Christopher L Syllabus Course Materials
CMSC 495 Current Trends and Projects in Computer Science (3)
(Intended as a final, capstone course to be taken in a student's last 9 credits.) Prerequisite(s): Either CMSC 330 and CMSC 335, CMIS 320 and CMIS 330, 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.
27297 7386 15 Mar 2023-09 May 2023 Open Online
Faculty: Syllabus Course Materials
Top of Page