There are two approaches to software security: application security vulnerability assessments, and best practices for secure software development. The former aims at finding application security bugs in the software, while the latter applies proven application security practices to the software environment lifecycle.