ArticleslgStudy

computer science

Transparency (human–computer interaction)

Transparency (human–computer interaction) is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Transparency (human–computer interaction) rather than just read about it. In short: Any change in a computing system, such as a new feature or new component, is transparent if the system after change adheres to previous external interface as much as possible while changing its internal behaviour. The purpose is to shield from change all systems (or human users) on the other end of the interface.

Key takeaways

  • Transparency (human–computer interaction) belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Transparency (human–computer interaction) to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Transparency (human–computer interaction) from memory before moving on to harder problems.

Reference excerpt

Any change in a computing system, such as a new feature or new component, is transparent if the system after change adheres to previous external interface as much as possible while changing its internal behaviour. The purpose is to shield from change all systems (or human users) on the other end of the interface. Confusingly, the term refers to overall invisibility of the component, it does not refer to visibility of component's internals (as in white box or open system). The term transparent is widely used in computing marketing in substitution of the term invisible, since the term invisible has a bad connotation (usually seen as something that the user can't see, and has no control over) while the term transparent has a good connotation (usually associated with not hiding anything). The vast majority of the times, the term transparent is used in a misleading way to refer to the actual invisibility of a computing process, which is also described by the term opaque, especially with regard to data structures. Because of this misleading and counter-intuitive definition, modern computer literature tends to prefer use of "agnostic" over "transparent". The term is used particularly often with regard to an abstraction layer that is invisible either from its upper or lower neighbouring layer. Also temporarily used later around 1969 in IBM and Honeywell programming manuals the term referred to a certain computer programming technique. An application code was transparent when it was clear of the low-level detail (such as device-specific management) and contained only the logic solving a main problem. It was achieved through encapsulation – putting the code into modules that hid internal details, making them invisible for the main application.

Examples For example, the Network File System is transparent, because it introduces the access to files stored remotely on the network in a way uniform with previous local access to a file system, so the user might even not notice it while using the folder hierarchy. The early File Transfer Protocol (FTP) is considerably less transparent, because it requires each user to learn how to access files through an ftp client. Similarly, some file systems allow transparent compression and decompression of data, enabling users to store more files on a medium without any special knowledge; some file systems encrypt files transparently. This approach does not require running a compression or encryption utility manually. 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 (see Data Access Object, for example). In object-oriented programming, transparency is facilitated through the use of interfaces that hide actual implementations done with different underlying classes.

Types of transparency in distributed system Transparency means that any form of 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. Example: SQL Queries Location transparency – Users of a distributed system should not have to be aware of where a resource is physically located. Example: Pages in the Web 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. Security transparency – Negotiation of cryptographically secure access of resources must require a minimum of user intervention, or users will circumvent the security in preference of productivity. Formal definitions of most of these concepts can be found in RM-ODP, the Open Distributed Processing Reference Model (ISO 10746). 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 and finite 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.

References

Further reading Yue, Weining; Wang, Heng; Wang, Guoping (2007). "Designing Transparent Interaction for Ubiquitous Computing: Theory and Application". In Jacko, Julie A. (ed.). Human-Computer Interaction. Interaction Design and Usability. Lecture Notes in Computer Science. Vol. 4550. Berlin, Heidelberg: Springer. pp. 331–339. doi:10.1007/978-3-540-73105-4_37. ISBN 978-3-540-73105-4.

Worked examples

Example 1 — a first encounter with Transparency (human–computer interaction)

Start with the simplest possible case. Write down what Transparency (human–computer interaction) claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Transparency (human–computer interaction) before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Transparency (human–computer interaction) ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Transparency (human–computer interaction)

In research
Transparency (human–computer interaction) appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Transparency (human–computer interaction) in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Transparency (human–computer interaction) is common in secondary-school and first-year university syllabi. It links to neighbouring topics Distributed computing architecture, Human–computer interaction, Software architecture, so understanding it makes those chapters shorter.
In everyday life
Look for Transparency (human–computer interaction) outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Transparency (human–computer interaction)” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Transparency (human–computer interaction) in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Transparency (human–computer interaction) means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Transparency (human–computer interaction) out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Transparency (human–computer interaction) in simple terms?

Any change in a computing system, such as a new feature or new component, is transparent if the system after change adheres to previous external interface as much as possible while changing its internal behaviour. The purpose is to shield from change all systems (or human users) on the other end of…

Why does Transparency (human–computer interaction) matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Transparency (human–computer interaction)?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Transparency (human–computer interaction).

Tags

  • Distributed computing architecture
  • Human–computer interaction
  • Software architecture

Keep exploring