Security is a hot topic today(certainly with the recent Sony hack ). Integrating security into an application cannot be an afterthought but should be an integrated part of the software development lifecycle. One approach to tackle this problem is the Security Development Lifecycle as adopted by Microsoft: The Security Development Lifecycle (SDL) is a software development process that helps developers build more secure software and address security compliance requirements while reducing development cost. Threat modeling is an invaluable part of the Security Development Lifecycle (SDL) process. By applying a structured approach to threat scenarios during the design phase of development helps teams more effectively and less expensively identify security vulnerabilities, determine risks from those threats, and establish appropriate mitigations. One tool to help you do this is – Microsoft Threat Modeling Tool 2014 . It’s available as a free download from Microsoft Download Cent