The Internet Security problem is thriving on the lack of secure software. The CERT® Coordination Center (www.cert.org) reported a 35% increase in the number of software vulnerabilities discovered in 2006 over 2005. As the world has become interconnected, the gains from hacking and the number of hackers are increasing. Ideally software would be built securely from the start. Like other nonfunctional requirements such as quality, reusability, and maintainability, security is greatly determined by the architecture of a system.