cyber security vs software engineering