Fundamentals of Secure Embedded Software Development