Security is one of the most important concerns of software development. However, today’s software development techniques do not pay enough attention to engineering of security into system analysis and design. Although there have been some efforts to incorporate security analysis in the requirements engineering phase, it has not yet specified how to achieve analysis automatically during the requirements engineering process. In this book, we provide a step by step process for modeling and formal description of security requirements and faults. We incorporate fault tolerance into the security requirement model of the target system by caring for partial satisfaction of security goals.