Developing Robust Software (Edexcel GCSE Computer Science)
Revision Note
Written by: Robert Hampton
Reviewed by: James Woodhouse
Developing Robust Software
What is robust software?
Robust software is software designed to withstand unexpected errors such as an input from a user or a calculation and continue to operate
Programmers must ensure the software has a way of dealing with the potential errors to ensure their software does not crash
Common vulnerabilities include:
weak authentication
lack of encryption
Authentication
Authentication is the process of ensuring that a system is secure by asking the user to complete tasks to prove they are an authorised user of the system
Authentication is done because bots can submit data in online forms
Authentication can be done in several ways, these include
Usernames and Passwords
CAPTCHA
Other methods that programmers can do to authenticate the user is include
Allowing users to recover passwords via email links and SMS codes
Encrypting data
Encryption
Encryption is a method of scrambling data before being transmitted across a network in order to protect the contents from unauthorised access
Identifying Vulnerabilities
Two techniques that can be used to help identify vulnerabilities are:
Code reviews
Audit trails
Code reviews
A code review can help to identify issues with software source code such as:
bad programming practice
vulnerabilities within the code itself
efficiency of code
Audit trails
An audit trail is a complete digital record of what has been:
opened
edited
deleted
copied
transferred etc.
The purpose of an audit trail is to:
aid the restoring of a software to a state before errors were identified
investigate security incidents
Ensure software compliance
Last updated:
You've read 0 of your 5 free revision notes this week
Sign up now. It’s free!
Did this page help you?