Concise Guide to Software Engineering: From Fundamentals to Application Methods