This document introduces concepts related to software engineering design. It discusses software quality attributes like performance, security, and maintainability. It also covers operational quality attributes concerned with system usage and development quality attributes related to software development. Finally, it defines key design concepts like abstraction, architecture, patterns, and separation of concerns and provides examples of procedural and data abstraction.