Defensive programming — is a form of defensive design intended to ensure the continuing function of a piece of software in spite of unforeseeable usage of said software. The idea can be viewed as reducing or eliminating the prospect of Murphy s Law having effect.… … Wikipedia
Defensive design — is the practice of planning for contingencies in the design stage of a project or undertaking. Essentially, it is the practice of anticipating all possible ways that an end user could misuse a device, and designing the device so as to make such… … Wikipedia
Immunity Aware Programming — When writing firmware for an embedded system, immunity aware programming is a set of programming techniques used in an attempt to tolerate transient errors in the program counter or other that would otherwise lead to failure.Immunity aware… … Wikipedia
EMC Aware Programming — Electromagnetic compatibility (EMC) Aware Programming involves writing software which is resilient to errors induced by electromagnetic fields.MotivationMicrocontrollers have low immunity tolerance resulting in a very high rate of transient… … Wikipedia
Design by contract — (DbC) or Programming by Contract is an approach to designing computer software. It prescribes that software designers should define formal, precise and verifiable interface specifications for software components, which extend the ordinary… … Wikipedia
Code audit — A software code audit is a comprehensive analysis of source code in a programming project with the intent of discovering bugs, security breaches or violations of programming conventions. It is an integral part of the defensive programming… … Wikipedia
Software bug — To report a MediaWiki error on Wikipedia, see Wikipedia:Bug reports. A software bug is the common term used to describe an error, flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or … Wikipedia
Computing — For the formal concept of computation, see computation. For the magazine, see Computing (magazine). For the scientific journal, see Computing (journal). A difference engine: computing the solution to a polynomial function … Wikipedia
List of tools for static code analysis — This is a list of significant tools for static code analysis.Historical products* Lint the original static code analyzer of C code.Open source or Noncommercial products .NET (C#, VB.NET and all .NET compatible languages) *… … Wikipedia
Computer insecurity — This article is about computer security exploits and defenses. For computer security through design and engineering, see computer security. Computer security Secure operating systems Security architecture Security by design Secure coding … Wikipedia
Security engineering — is a specialized field of engineering that focuses on the security aspects in the design of systems that need to be able to deal robustly with possible sources of disruption, ranging from natural disasters to malicious acts. It is similar to… … Wikipedia