Software Design Practice Test: Visibility, Accessibility and Information Hiding — Flashcards | Software Engineering | FatSkills

Software Design Practice Test: Visibility, Accessibility and Information Hiding — Flashcards

Fast review mode: answers are shown by default so you can skim quickly. Hide them if you want to self-test.

Software quiz on layered architectures and patterns in software design, facade, mediator, adapter, proxy, prototype, reactor, command, factory and singleton patterns. It also contains questions on operation specification, design finalization and layered architectures.

In software design, visibility, accessibility, and information hiding are principles that affect how program entities are accessible, how information is hidden, and how transparency is provided.
Visibility: Program entities can be accessed through their names, references, or aliases. Visibility also provides transparency into the development process, allowing the user to see progress and determine when a goal is complete.
Accessibility: Accessible software is designed to work for people with disabilities, such as visual, hearing, motor, or cognitive impairments. Some accessibility principles include:
Perceivable information and user interface: Text alternatives for non-text content, such as images, icons, buttons, graphics, audio, and video
Captions and other alternatives for multimedia: Text transcripts and captions for audio content, audio descriptions, and sign language interpretation
Content can be presented in different ways: Properly marked-up headings, lists, tables, input fields, and content structures
Information hiding: A software design principle that limits the parts of a component that are accessible to its clients. This prevents the need for other parts of the program to be modified when design decisions are changed. For example, hiding a computation algorithm in a component and allowing users to access its function through an interface. 

Here are some steps to apply information hiding:
Identify all of the pieces of a design that are likely to change
Isolate each secret into its own module, class, or function
Design intermediate interfaces that are insensitive to changes in the underlying secrets 

Four guiding principles to achieving information hiding are:
Don't expose data items
Don't expose the difference between stored data and derived data
Don't expose implementation details of a class 

1 of 130 Ready
Which of the following represents DeSCRIPTOR specification?
Program component decomposition and component relationships are shown in static models, such as class diagrams
Shortcuts
Prev Space Show / hide Next
Turn this into a study set.
Sign in with Google to save tricky questions to your reminder list and resume on any device.
Sign in with Google Free • no extra password