Transparency (computing)

From Academic Kids

In human-computer interaction, computer transparency is an aspect of user friendliness which prevents the user from worrying about technical details (like installation, updating, downloading or device drivers). For instance, a program that automatically detects the monitor resolution is more transparent compared to one that requests the user to enter it manually.

In computing and networking, a software that supports different logical actions through the same user or application interface is transparent. For example, the Network File System allows users to access files stored on a remote machine as if they were stored locally, through the same file/folder hierarchy.

Similarly, some file systems allow transparent compression and decompression of data, enabling users to store more files on a medium without any special knowledge; other file systems encrypt files transparently. In software engineering, it is also considered good practice to develop or use abstraction layers for database access, so that the same application will work with different databases; here, the abstraction layer allows other parts of the program to access the database transparently. In object-oriented programming, transparency is facilitated through the use of interfaces or header files with different implementations.

Transparency means that any form distributed system should hide its distributed nature from its users, appearing and functioning as a normal centralized system. There are many types of transparency:

  • Access transparency - Regardless of how resource access and representation has to be performed on each individual computing entity, the users of a distributed system should always access resources in a single, uniform way.
  • Location transparency - Users of a distributed system should not have to be aware of where a resource is physically located.
  • Migration transparency - Users should not be aware of whether a resource or computing entity possesses the ability to move to a different physical or logical location.
  • Relocation transparency - Should a resource move while in use, this should not be noticeable to the end user.
  • Replication transparency - If a resource is replicated among several locations, it should appear to the user as a single resource.
  • Concurrent transparency - While multiple users may compete for and share a single resource, this should not be apparent to any of them.
  • Failure transparency - Always try to hide any failure and recovery of computing entities and resources.
  • Persistence transparency - Whether a resource lies in volatile or permanent memory should make no difference to the user.

The degree to which these properties can or should be achieved may vary widely. Not every system can or should hide everything from its users. For instance, due to the existence of a fixed speed of light there will always be more latency on accessing resources distant from the user. If one expects real-time interaction with the distributed system, this may be very noticeable.


Academic Kids Menu

  • Art and Cultures
    • Art (
    • Architecture (
    • Cultures (
    • Music (
    • Musical Instruments (
  • Biographies (
  • Clipart (
  • Geography (
    • Countries of the World (
    • Maps (
    • Flags (
    • Continents (
  • History (
    • Ancient Civilizations (
    • Industrial Revolution (
    • Middle Ages (
    • Prehistory (
    • Renaissance (
    • Timelines (
    • United States (
    • Wars (
    • World History (
  • Human Body (
  • Mathematics (
  • Reference (
  • Science (
    • Animals (
    • Aviation (
    • Dinosaurs (
    • Earth (
    • Inventions (
    • Physical Science (
    • Plants (
    • Scientists (
  • Social Studies (
    • Anthropology (
    • Economics (
    • Government (
    • Religion (
    • Holidays (
  • Space and Astronomy
    • Solar System (
    • Planets (
  • Sports (
  • Timelines (
  • Weather (
  • US States (


  • Home Page (
  • Contact Us (

  • Clip Art (
Personal tools