Mastering Software Engineering: Diagrams, Models, and Testing Techniques