Cyber Security Engineering for Software and Systems Assurance