Logical structures, sets, combinatorial structures, graphs, formal systems
Algorithm representation, using a high-level language, systematic program development using top-down design, and program verification
Internal organization of a computer, how this organization is used to represent data, execute programs and communicate to the outside world; assembly language programming; and basic operating system concept
Abstract data types, their implementations and use in algorithm design
Principlesnof data communications and computer networks (Prerequisite: CMSC C or consent of instructor)
Design and implementation of database management systems; relational database and query optimization; and future trends in database designs (Prerequisite: CMSC D or consent of instructor)
Fundamental concepts of planning, development and information processing implementation of MIS
Fundamental concepts of object-oriented technology (Prerequisite: CMSC B and CMSC D or consent of instructor)
Principles and methods of designing, implementing, validating and maintaining software systems (Prerequisite: CMSC B and CMSC D or consent of instructor)