En.605.704 ((hot)) May 2026
Focusing on finding candidate classes and defining the static structure of a system.
EN.605.704 is designed to equip students with a disciplined approach to software development. Rather than focusing on a specific syntax, the course emphasizes . The primary goal is to teach students how to identify software components from business requirements and design them using standardized notations, specifically the Unified Modeling Language (UML) . Key learning outcomes include: Developing and refining software requirements. en.605.704
Applying formal constraints to models to ensure data integrity and logic. Focusing on finding candidate classes and defining the
Implementing industry-standard patterns and addressing how data is stored (persistence) within an object-oriented framework. Prerequisites and Requirements The primary goal is to teach students how
Learning to capture functional requirements through Use Case Diagrams and detailed scenarios.
For Computer Science students, it is often taken after completing core foundation courses such as Foundations of Software Engineering (EN.605.601).
The course is frequently offered in a flexible online-asynchronous format, making it accessible for working professionals. Career Impact Systems Engineering, Master of Science | JHU catalogue