procedural paradigm
an approach to developing a solution where the program operates on data and is organised in self-contained blocks called procedures
object-oriented programming
an approach to developing a solution where the focus is on data rather than processes
methods
the behaviours that an object can preform
object
a self-contained element that contains the properties and methods needed to access and manipulate data values
properties
contain code that facilitates reading and writing to the data within an object
inheritance
enables the properties of one class to be copied to another so that the only differences between the classes need to be reprogrammed
encapsulation
hides an objects data so that it can only be directly accessed by methods within the object
software development environment
software that provides programmers with an integrated set of programming tools to build an application from coding through to testing
syntax errors
an error in the code entered into the code editor e.g. misspelling
machine code
instructions in binary format that can be executed directly by the computer
source code
the original program code written by the programmer
ASCII code
American Standard Code for Information Interchange used to represent characters in 7 or 8 bit
7-bit ASCII code
uses 7-bits to represent each character
8-bit ASCII code
known as the extended ASCII table, uses 8-bits to represent each character
Unicode
a standard for encoding characters, which typically uses 16 bits
hexadecimal
a numbering system that uses base 16
one’s complement
can be used to represent a binary number, when using one’s complement , each bit is inverted
two’s complement
a method of representing signed numbers in a computer
overflow
occurs when the magnitude of the number is greater than the maximum number that can be represented by the computer
decomposition
breaking complex problem down into smaller more manageable problems called sub-problems
pattern recognition
identifying pattern trends in data
abstraction
filtering out details about the problem that will not be required for the solution
algorithm
a set of step-by-step instructions representing the solution to a problem
flowchart
a graphical representation that includes special symbols and flow lines to represent the solution to a problem
Pseudo-code
a set of English-like, language-independent instructions that uses keywords and control structures to represent the solution to a problem
bubble sort
a simple sort method that repeatedly steps through a list of data items; adjacent elements are compared and swapped if they are in the wrong order
insertion sort
a simple sorting algorithm that builds a sorted sub-list one item at a time; the sub-list becomes the new sorted list
linear search
a simple search algorithm that compares every data item in a list to the target value
binary search
a search algorithm that works on a sorted list of data items - the target value is located by finding the mid-point location in the list and comparing that value to the target value
refining a solution
the process of reviewing the design for a solution and making necessary changes so that the design meets the user’s requirements efficiently and accurately
Data requirements
the data that a program or system uses, including data input, information output and any values to be stored temporarily during processing
user interface
any part of a system that the user can interact with; this includes data capture forms, menus and buttons
Dry run
a paper-based exercise that allows the programmer to go through the solution step by step; the dry run will highlight any errors in the logic of the solution
variable
a data value stored in memory that can change during program execution
selection
where only some lines of code need to be run and only if a certain condition is met
iteration
The use of loops and conditions to repeat sections of codes
Data validation
carried out by a computer automatically when data is input; it ensures that data is reasonable, sensible and within acceptable limits
Presence check
used to ensure that the user has entered data and has not left a value or field blank
length check
used to ensure that the user has entered data that does not exceed or is not shorter than a particular number of characters
Type check
Used to ensure that data entered is of the correct data type
format check
used to ensure that data entered is in the correct format; this means that data must conform to a pattern
Test case
a document that contains a set of tests to help the programmer verify that code works as expected
White box testing
a method of testing which examines the underlying structure of the application or code which has been developed
black box testing
where the tester is unaware of the internal structure of the application they are testing
unit testing
testing one module or unit of code to ensure that it is working as expected
Integration testing
when a number of units have been tested they are combined together to form a sub-system. Integration testing ensure that all of the units work together correctly
System testing
carried out on a complete and fully integrated system to ensure correct outputs are produced in compliance with the user requirements
Extreme data
used to test that the system can cope with very small or vary large data values
valid data
used to test that the system operates as expected with normal data
invalid data
used to test that the system can process invalid data and does not crash when invalid data is entered
Null data
used to test that the system can cope when no data is entered
user requrements
a document that details what the end user expects the system to do
Robustness
a measure of the system’s ability to continue to run when high volumes of valid, exceptional or invalid data are entered
function
a procedure written to carry out a specific task