In computers, transparent means something a little different than its general meaning of having the quality of being easily seen through , coming closer to meaning invisible or undetectable . Computer programs and procedures that are said to be transparent are typically those that the user is - or could be - unaware of. Transparency is considered to be especially desirable in situations where users that are not particularly technically inclined would tend to be confused by seeing or having to interact directly with programming components. The domain name system (DNS), for example, operates in a transparent manner, resolving authorized domain names into Internet Protocol (IP) addresses, all without the user's knowledge. Transparent is also used to refer to a change or upgrade of hardware or software that is undetectable in subsequent uses of the system.
A secondary meaning of transparent refers to complete predictability, as, for example, in a transparent computer system or program, output is entirely predictable from knowing the input.