Graduate Certificate in Engineering - Software Engineering
The Software Engineering option is unavailable for the Professional Master of Engineering Program. In order to complete the Graduate Certificate in Engineering in Software Engineering, ENPM 611, ENPM 612, ENPM 613, and ENPM 614 should be taken.
Academic Advisor :
Dr. George Syrmos , Director , ENPM Program
Office of Advanced Engineering Education
2130 J.M. Patterson Bldg.
301-405-3633
Email: syrmos@umd.edu
Graduate Certificate in Engineering Courses
ENPM 611 Software Engineering
Prerequisite:Competency in a programming language. This course covers software engineering, concepts, methods, and practices important to both the theorist and the practitioner. The entire range of responsibilities expected of a software engineer is presented. The fundamental areas of requirements development, software design, programming languages, and testing are covered extensively. Sessions on supporting areas such as systems engineering, project management, and software estimation are also included.
ENPM 612 System & Software Requirements
Prerequisite: None. This course focuses on the theoretical and practical aspects of requirements development. Students will recognize the place of requirements, how to work with users, requirements methods and techniques, the various requirements types, how to set requirements development schedules, requirements evolution, how to model and prototype requirements, how to evaluate and manage risk in requirements, techniques to test requirements, how to manage the requirements process, and how to write an effective requirements document.
ENPM 613 Software Design and Implementation
Prerequisite: Competency in a programming language and ENPM 611 or ENPM 612.* This course covers software design concepts and practices within the field important to both the practitioner and the theorist. Architectural and detailed designs are included for batch, client/server, and real-time systems. Design considerations for structured, object-oriented, and Web-based systems are covered. Design of databases, user interfaces, forms, and reports are also included. Implementation issues that affect the design, including error handling, performance, and inter-process communication, are presented.
ENPM 614 Software Testing and Maintenance
Prerequisite: ENPM 612 or ENPM 613.* This course covers aspects of software development after coding is completed. Students will understand the various levels of testing, techniques for creating test data, how to manage test cases and scenarios, testing strategies and methods, testing batch, client/server, real-time, and Internet systems, and the development of an effective test plan. Software maintenance will include the creation of easily maintained software; preventive maintenance, corrective maintenance, and enhancements; configuration management practices; and assuring quality in software maintenance.
| *Students are allowed to take ENPM 611 AND 613 CONCURRENTLY |
| *Students are allowed to take ENPM 612 AND 614 CONCURRENTLY |
