Computers are the pervasive technology of the people time. As computer become critically tied to human life, it also becomes more important that interactions with them are under control. They are no longer a novelty, but are integrated into the fabric of the world, performing both high and low-level tasks. That is, computers may be used to eliminate heavy, redundant work and more. Sophisticated machines have been deployed to perform remote surgery or detect subterranean landmines in repopulated civilian areas. The increasing importance of computers in the people lives means that it is essential that the design of computer systems incorporates techniques that can ensure reliability, safety and security.