White box (software engineering)

From Wikipedia, the free encyclopedia

Jump to: navigation, search

In software engineering white box[citation needed], in contrast to a black box, is a subsystem whose internals can be viewed, but usually cannot be altered. This is useful during white box testing, where a system is examined to make sure that it fulfills its requirements.

Having access to the subsystem internals in general makes the subsystem easier to understand, but also easier to hack; if a programmer, for example, can examine source code, weaknesses in an algorithm are much easier to discover. This makes white box testing much more effective than black box testing, but considerably more difficult due to the sophistication needed on the part of the tester to understand the subsystem.

Also known as glass box, clear box, or open box.

White box also refers to a system that is visible, but which is so complex that it might as well be a Black box. Until more data manifests to disentangle the factual white box system complexities, there exists fractals of Black box ties to unknot. This follows from a Murphy's law of computer programming: Program complexity grows until it exceeds the capability of the programmer who must maintain it.


Personal tools
Languages