The way that a computer and a user communicate is known Human Computer Interaction (HCI).
In an exam you might be given a scenario and be asked to discuss the most appropriate HCI, list 2 approaches and give the benefits and drawbacks or describe one form of HCI such as a natural language interface.
There are several different types of interface that need to be considered. These include:
1. Form-based interfaces
labels and response fields
text box, radio button, drop-down
tabs used to automatically move to next response field
buttons to submit the form
may have in-built validation
USES: data collection, sign-up services, application settings. - When data is predictable.
2. Menu-based interfaces
List of options (usually numbered but could be graphical buttons to go from one form to another)
Easy to use
USES: Consider a telephone system, phone a garage, 1 - sales, 2 - send hand sales, 3 - services, if you press 3 you could have another menu 1, make booking, check on booking, speak to a member of staff. Theatre booking (cinema, film, time, seats) - When users IT skills are low
3. Graphical User Interfaces (or GUIs)
WIMPS - Windows, Icons, Menu, Pointers
Usually found in Multi-Tasking O/S
Many windows (apps) open at same time
Intuitive to use
GUI system is usually easier to learn
USES: - Operating Systems - familiarity with other software.
4. Command line interfaces
Experienced users only - Need to know the complex text commands
Low system overheads
USES: Low level interface usually with embedded systems. e.g. washing machine
5. Sensor based
automation
gather large amount of data
potentially hazardous environments
6. Touch Screen
more robust that keyboard and mouse
requires no extra hardware
Virtual Reality (VR) - is a technology that creates simulated, interactive, three-dimensional environments, allowing users to experience them through a headset or other devices.
Augmented reality (AR) - is a technology that enhances the real world by overlaying digital content onto it, such as images, text, or sounds.
Stereo/Binaural or 3D earphones to filter out natural sound and replace with a chosen selected audio
Force Feedback - haptic, sensation through hands/body.
Gesture recognition - track and translate user movements into instructions
definition: A natural language interface is where speech and linguistics is used (1 mark) to interact and control a software application. (1 mark)
provide instructions using everyday language to create, select, and modify data
Could be spoken or written
Colloquialisms and words can be interpreted differently regionally.
Accents could make is difficult for a natural language interface to identify the words being spoken
Ambiguity in spoken language where a word may have more than one interpretation. (e.g. Break, Brake, Two, Too, To)
Background noise could cause problems.
Illness such as sore throat
Proper Nouns not in the dictionary
Words from other languages in common use such as 'cwtch' in English
USES: One potential use for a natural language interface would be in translation software. Natural language could be processed in real time to allow for a seamless translation service
WJEC 2023
13. Discuss contemporary approaches to human-computer interaction. You should draw on your knowledge, skills and understanding from a number of areas across your computer science course when answering this question. [13]
ANSWER:
Contemporary devices including smart phones and tablets now do not adopt the traditional interaction technologies such as a keyboard and mouse.
• Many devices now employ different methods of humancomputer interaction including voice input, touch screen, force feedback, virtual and augmented reality.
• Voice input is not common in the everyday smart device including mobile phones and digital assistants.
• Many voice-controlled devices use a trigger word to activate them and can carry out a number of computation operations such as playing a song or ordering washing powder.
• Sometimes the ambiguity of the spoken language can have an effect on how these operate.
• For example, accents and background noise could impact on the quality of the interaction and cause issues.
• Phrases that are pronounced the same such as to, two and too also can sometimes cause issues for voice controlled.
• This could have impacts on privacy as many companies store all the phrases that are spoken to each device.
• Also, people may overhear what commands you are saying whereby your interaction instantly becomes public.
• Touch screen are also now commonplace in everyday life, touch screen allows gesture-controlled operations such a pinch-zoom and swiping.
• Touch screens are simple and natural to use and can be learnt very quickly.
• Although touch screen requires dexterity which may not be suitable for all users.
• Touch screen technology can also be fragile and expensive to replace. More often than not, if a touch screen interface breaks the device becomes unusable.
• Virtual and augmented reality interfaces are also growing exponentially within the computing industry.
• Virtual reality allows full immersive experience for users and allows user to interact with digital interfaces like never before.
• Hardware such as omnidirectional treadmills, VR headsets, in-ear aural headphones and touch controllers all heighten the sense of a different reality.
• Augmented reality allows the virtual work to mixed with the real world.
• Examples of AR are in mobile games and mobile phone app filters.
EDUQAS 2022
11. Explain the ambiguities in natural language syntax compared with computer language syntax. [8]
ANSWER:
Natural language can be defined as the spoken and written words humans use to communicate with one and other.
In natural language words can be ambiguous, one word can have more than one meaning.
An example of an ambiguous word in English is 'break'. – Accept any suitable example.
Computer language syntax can be defined as the set of rules that program statements must follow
High-level computer language syntax must be unambiguous.
Each program statement must have a specific purpose.
If there was ambiguity in computer language syntax it would be impossible to translate into machine code.
An example would be the statement 'break'. The break statement must force the program leave a construct and nothing else. – Accept any suitable example.
Validation is used to ensure any data that is entered by the user is acceptable/reasonable/meets specific requirements
format
range
type
presence
Verification is used to check that data entered by the user is consistent
Compare data with original source - e.g. visual
Double Entry (e.g. confirm password)
Both are used to to minimise the risk of human error when inputting data
Design Validation checks to see if the implementation match what you you intended to do (e.g. the designs), for your marks you would need to discuss:
Checks the correspondence between the actual design and its specification/user requirements/objectives/ safety issues.
Confirms the most appropriate techniques have been used
Confirm the HCI is appropriate
A software developer specialises in developing fully automated computerised level-crossing gate systems for train companies worldwide.
When the company develops such a system a design validation is carried out. Describe how a design validation should be carried out in this case. [2]
ANSWER:
Any 2 of:
check the correspondence between the actual design and its specification / user requirements / objectives / safety critical aspects (related particularly to level-crossing safety) 1+1
confirm that the most appropriate techniques have been used, particular bearing in mind the safety-critical aspects in this case
confirm the HCI is appropriate
not cost-related answers
Design evaluation is the process of assessing a solution (e.g. software or algorithm) to ensure it meets its intended purpose, is efficient, and is easily understood.
In the exam you would need to give examples of criterion to evaluate this.
2. The evaluation of a computer based solution should consider system functionality and system performance.
(a) Identify a criterion for the evaluation of the functionality of a system and a criterion for the evaluation of the performance of a system. [2]
ANSWER:
Functionality – the system must produce correct results for a given set of inputs.
Performance – the system must produce results within an acceptable timeframe.