top of page

Search CSNewbs

304 results found with an empty search

  • 6.4 - Protection Measures | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about ways to measure the success of protection. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 6.4 - Protection Measures Exam Board: OCR Specification: 2016 - Unit 2 Staff Responsibilities It is the staff of an organisation that will spend the most time handling and amending data so the company must have sufficient and effective protection measures in place so that staff are confident in their role and know their responsibilities of information security. Certain staff members may be responsible for types of data within an organisation, such as personal and confidential data. Clearly assigning specific people to roles ensures that they know what their job is and that they are responsible if data is lost. Organisations also need to carefully consider which members of staff have access rights to certain information. If data is sensitive or confidential then the more people that have access to that data , the higher the risk of it being lost or tampered with (accidentally or on purpose). Sensitive data should only be handled and accessed by those who need to use it as part of their job role to limit the chance of data loss. Staff should be trained so that they know how to adequately handle information including basic data security techniques and how to protect data from unauthorised access and loss. Disaster & Recovery Planning With important data often stored on a computer network, it is absolutely vital that a detailed and effective disaster recovery policy is in place in the event of data being lost due to an unexpected disaster. Disasters include natural disasters (e.g. fire, flood, lightning), hardware failure (e.g. power supply unit failing), software failure (e.g. virus damage) and malicious damage (e.g. hacking). There are three clear parts to a disaster recovery policy: Before the disaster: All of the possible risks should be analysed to spot if there are any weaknesses in preparation. Preventative measures should be taken after the analysis, such as making rooms flood-proof or storing important data at a different location . Staff training should take place to inform employees what should happen in the event of a disaster. During the disaster: The staff response is very important – employees should follow their training and ensure that data is protected and appropriate measures are put in place. Contingency plans should be implemented while the disaster is taking place, such as uploading recent data to cloud storage or securing backups in a safe room and using alternative equipment until the disaster is over. After the disaster: Recovery measures should be followed, such as using backups to repopulate computer systems. Replacement hardware needs to be purchased for equipment that is corrupted or destroyed. Software needs to be reinstalled on the new hardware. Disaster recovery policies should also be updated and improved . Assessment and Effectiveness Organisations should conduct information security risk assessments periodically to ensure that their physical and logical measures are up-to-date and that they provide the most effective methods of protection. There may be training drills of what should happen if a disaster or substantial data loss occurs so that the company is prepared . By testing the security measures in place, they can identify any weak-points and fix those highlighted vulnerabilities to minimise the possibility of external and internal data intrusion. As part of an organisation's security assessment, they may identify specific cost impacts . These are necessary financial expenditures to ensure the security of data and systems, such as: Software - e.g. security software such as firewalls may be purchased to protect networked systems. Hardware - e.g. buying secure storage devices and new computer systems. Training - e.g. hiring industry experts to train staff on how to keep data secure. Security - e.g. hiring staff to protect server rooms. Q uesto's Q uestions 6.4 - Protection Measures: 1. Describe why staff are so important when it comes to data protection . [3 ] 2. Explain the steps an organisation should take as part of a disaster recovery plan . Split your answer into before, during and after the disaster. [12 ] 3. Why is it important to conduct information security risk assessments ? [2 ] 4. Describe two cost impacts to a bank of keeping customer data secure. [4 ] 6.3 - Impacts Topic List 6.5 - Physical Protection

  • 1.3 - Embedded Systems - OCR GCSE (J277 Spec) | CSNewbs

    Learn about what embedded systems are and examples of them. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 1.3: Embedded Systems Exam Board: OCR Specification: J277 Watch on YouTube : Embedded Systems Example: A washing machine has a control chip that manages the different program cycles. An embedded system is a computer system built into a larger machine to provide a means of control . Embedded systems perform a specific pre-programmed task which is stored in ROM . An embedded system uses a combination of hardware and software . They perform only specific tasks and often have a small amount of storage and low processing power . Example: A traffic light has a control chip that determines when to change to a green or red light. Q uesto's Q uestions 1.3 - Embedded Software: 1. What is an embedded system ? [3 ] 2a. Give two examples of an embedded system. [ 2 ] 2b. Research and describe another two examples of an embedded system. [ 4 ] 1.2 - CPU Performance 2.1 - Primary Storage Theory Topics

  • OCR GCSE Topic List | CSNewbs

    The list of topics in the 2020 OCR GCSE Computer Science specifications. OCR GCSE Computer Science (J277) These pages are based on the J277 OCR GCSE Computer Science specification . This website is in no way affiliated with OCR . Component One: Computer Systems OCR GCSE Key Term Generator Paper 1 Playlist on YouTube 1. Systems Architecture 1.1a - The CPU 1.1b - Registers & FE Cycle 1.2 - CPU Performance 1.3 - Embedded Systems 2. Memory & Storage 2.1 - Primary Storage 2.2 - Secondary Storage 2.3 - Units 2.4a - Number Systems 2.4b - Binary Addition & Shifts 2.4c - Character Storage 2.4d - Image Storage 2.4e - Sound Storage 2.5 - Compression 3. Networks 3.1a - Network Types & Performance 3.1b - Network Hardware & Internet 3.2a - Wired & Wireless networks 3.2b - Protocols & Layers 4. Network Security 4.1 - Network Threats 4.2 - Preventing Vulnerabilities 5. Systems Software 5.1 - Operating Systems 5.2 - Utility Software 6. Impacts 6.1a - Impacts of Technology 6.1b - Legislation Component Two: Computational Thinking, Algorithms and Programming Paper 2 Playlist on YouTube 1. Algorithms 1.1 - Computational Thinking 1.2 - Designing Algorithms 1.3 - Searching & Sorting Algorithms 2. Programming Fundamentals 2.1 - Programming Fundamentals 2.2 - Data Types 2.3 - Additional Programming Techniques 3. Producing Robust Programs 3.1 - Defensive Design 3.2 - Testing 4. Boolean Logic 4.1 - Boolean Logic 5. Languages & IDEs 5.1 - Languages & Translators 5.2 - Integrated Development Environment

  • Key Stage 3 Python | Selection | CSNewbs

    The fifth part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about how selection works and how to use if statements. Python - #5 - Selection 1. Using if Statements Using if enables your program to make a choice . There are a few things you need to remember : if is lowercase - it should turn orange. You must use double equals == You need a colon : at the end of your if line. The line below your if line must be indented . Task 1 - Create a new Python program and save the file as 5-Selection.py Use the picture to help you ask what your favourite food is . Run the program and test it works. To indent a line press the tab key on your keyboard. Indentation is important as it tells Python what is within the if statement and what isn't. 2. Using elif elif stands for 'else if '. It is used to respond in a different way depending on the input. elif works exactly the same as an if line so if you make a mistake look up at task 1 to help you. Task 2 - Write an elif line that responds differently to your favourite food question from task 1. e.g. "Yum!" if someone enters "pasta". 3. Using else It is impractical to have hundreds of elif lines to respond to different inputs. else is used to respond to anything else that has been entered in a general way. The else line works a bit differently, so look carefully at the picture . Task 3 - Write an else line that responds to anything else the user enters for your favourite food question. 4. Multiple elifs Despite what you did in task 3, programs can be expanded with more than one elif line. Underneath your first elif line but before your else line, add at least two more elif sections that respond differently depending on what is entered. Use the elif line from the task 2 picture to help you. Task 4 - Read the description above and use task 2 to help you. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Spanish Translation Create a new Python program. Save it as ' 5-Translator.py ' Add a comment at the top with your name and the date. Create a program that asks for a number between 1 and 4. Use if and elif statements to see what the user has entered and print a statement that displays the chosen number in Spanish - use the image to help you understand. BONUS : Add an else line for any numbers higher than 4. When you run it, it could look something like this: Challenge Task 2 - Able to Vote Create a new Python program. Save it as ' 5-Vote.py ' Add a comment at the top with your name and the date. Create a program that asks for their age. Use an if statement to see if the age is more than 17 (use > instead of ==). If the age is over 17, then print "You are old enough to vote!" Use an else statement to print a different message for everyone else. When you run it, it could look something like this: Challenge Task 3 - Totals Create a new Python program. Save it as ' 5-Totals.py ' Add a comment at the top with your name and the date. Use an int input line to ask the user for number 1. Use an int input line to a sk the user for number 2. Multiply the two numbers together and save it into a variable called total. If the total is over 9000, then print "It's over 9,000!!!" Use an else statement to print the total if it is less than 9000. When you run it, it could look something like this: <<< #4 Calculations #6 Turtle >>>

  • 3.1a - 3.1d - Algorithm Complexity | OCR A-Level | CSNewbs

    Learn about pseudocode, procedural programming, big O notation (constant, linear, polynomial (quadratic), exponential, linearithmic and logartihmic) and the complexity of different data structure, sorting and searching algorithms. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level Specification: Computer Science H446 3.1a - 3.1d - Algorithm Complexity Watch on YouTube : Pseudocode Procedural programming Big O notation Algorithm complexity Pseudocode Pseudocode is a simplified , language-independent way of writing algorithms that looks like programming but uses plain English to describe the steps clearly without worrying about exact syntax . The OCR A-Level Computer Science course uses a form of pseudocode unique to the exam board called 'OCR exam reference language ' that all code in exams will be written in . OCR exam reference language uses closing commands such as endif for an if statement and endwhile for a while loop . It also uses the word then instead of a colon like in Python . YouTube video uploading soon Procedural Language A procedural language , such as Python or Java , is a programming language that structures programs as sequences of step-by-step instructions grouped into procedures or functions . It focuses on breaking tasks into smaller , reusable blocks of code that operate on data , making programs easier to write , understand and maintain . This topic is in both Paper 1 and Paper 2 . YouTube video uploading soon Big O Notation O(n) Big O Notation is a way of describing how the time complexity (how long an algorithm takes ) and space complexity (how much memory it uses ) grows as the size of the input increases . This allows algorithms to be compared in terms of efficiency , using the letter n to refer to the size of the input . Complexity types: Constant - O(1) - The algorithm’s time or space stays the same no matter how large the input is . Linear - O(n) - The time or memory grows directly in proportion to the size of the input . Polynomial - O(n²) - The growth increases in proportion to the square of the input , often seen in algorithms with nested loops . Exponential - O(2ⁿ) - The time or memory doubles with each additional input element , becoming extremely slow very quickly . Logarithmic - O(log n) - The algorithm’s time grows very slowly as the input size increases , often achieved by repeatedly halving the data . Linearithmic - O(n log n) - A combination of linear and logarithmic behaviour, common in efficient sorting algorithms like merge sort . YouTube video uploading soon Algorithm Complexity Best-case , average-case and worst-case complexity describe how an algorithm performs under different input conditions . Best-case complexity is the time or space required when the algorithm meets the most favourable input , allowing it to finish as quickly or efficiently as possible . Average-case complexity represents the expected performance across typical or random inputs , giving a realistic view of how the algorithm behaves in normal use . Worst-case complexity is the maximum time or space the algorithm could ever require , used to guarantee performance even in the least favourable situation . Sorting and searching algorithms often have different case complexities for time and space . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Pseudocode Procedural Language: input, output, comments, variables, casting, count-controlled iteration, condition-controlled iteration, logical operators, selection, string handling, subroutines, arrays, files Big O Notation: time complexity, space complexity, constant, linear, polynomial, exponential, logarithmic, linearithmic, best-case, average-case, worst-case D id Y ou K now? Minecraft doesn’t load the entire world at once ; instead, it divides the world into chunks and only generates or loads the chunks near the player . Finding , saving and retrieving these chunks uses data structures like trees and hash maps , which allow the game to look up a chunk in about O(log n) or even O(1) time , minimising lag even in large worlds . 2.2 - Computational Methods A-Level Topics 3.1e - Data Structure Algorithms

  • 3.6 - Information Systems | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the differences between open and closed information systems. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 3.6 - Information Systems Exam Board: OCR Specification: 2016 - Unit 2 Information systems, such as structured databases , can be defined primarily as either 'open ' or 'closed '. Open Information Systems Closed Information Systems This type of system can interact with other information systems (e.g. another database) to exchange data , even from different platforms (types of computers). Because it is open it is more at risk of data loss and/or hacking. This type of system is private and cannot exchange data with other systems. Access is limited but it is much more secure than an open system. Q uesto's Q uestions 3.6 - Information Systems: 1. Compare and contrast open and closed information systems . [4 ] 3.5 - Data Analysis Tools Topic List 4.1 - UK Legislation

  • 3.2a - Wired & Wireless Networks - OCR GCSE (J277 Spec) | CSNewbs

    Learn about the differences between wired and wireless networks. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 3.2a: Wired & Wireless Networks Exam Board: OCR Specification: J277 Watch on YouTube : Wired Networks Wireless Networks Encryption Wired Connections Wireless Connections Wireless connections, such as WiFi or Bluetooth , use no cables but require a wireless network interface card (WNIC ). Wireless connections generally have a slower speed and can be affected by the computer's distance from the wireless router as well as obstacles like walls or bad weather. Wired connections use physical cables , such as copper or fibre optic wires , and require a network interface card (NIC ) to connect to a network. These wired connections use a wired connection protocol - most commonly Ethernet . Restricted Movement Faster More Secure NIC Required Freedom of Movement Slower Less Secure WNIC Required Encryption Wireless connections are less secure and require encryption . Encryption is the process of scrambling data into an unreadable format so that attackers cannot understand it if intercepted during transmission. The original data (known as plaintext ) is converted to scrambled ciphertext using an encryption key . Only at the correct destination will the encryption key be used to convert the ciphertext back into plaintext to be understood by the receiving computer. Q uesto's Q uestions 3.2a - Wired & Wireless Networks: 1. Briefly compare wired and wireless networks in terms of movement , transmission speed , security and required hardware . You could answer this in the form of a table. [ 8 ] 3.1b - Network Hardware & Internet Theory Topics 3.2b - Protocols & Layers

  • OCR CTech IT | Unit 1 | 3.2 - Virtualisation | CSNewbs

    Learn about the benefits and drawbacks of virtualization, as well as about cloud storage and virtual clients. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 3.2 - Virtualisation Exam Board: OCR Specification: 2016 - Unit 1 What is virtualisation? Virtualisation is the creation of a virtual version of a device , software , operating system or server . These virtual versions can then be run on a different physical computer system , such as a powerful server . There are many different types of virtualisation . Storage virtualisation combines multiple separate storage devices into acting and appearing like a single , central storage system . Using storage virtualisation improves scalability as further devices can join the storage system if more space is required . It also simplifies the management of storage across the network. Server virtualisation allows one physical server to be divided into and host multiple virtual servers , each running separately . Each virtual server operates independently , handling its own operating system and applications . This allows for resources to be used more effectively and improves the scalability and versatility of the physical server . Client Virtualisation (Virtual Clients) Client virtualisation is when several virtual desktops are run on a single server - think back to the hypervisor from 3.1 . A virtual client is a full desktop environment where the processing happens remotely . For example, where an operating system is managed and hosted centrally but displayed locally on a different computer. These are often known as 'dumb clients ' because the server does the processing for it , meaning it can have minimal resources like a slow processor and little memory / storage . General Benefits & Drawbacks of Virtualisation Benefits of virtualisation: Costs are cheaper in the long-term because money is saved by not purchasing multiple physical devices . Money is also saved due to less cabling and lower power consumption . If set up efficiently, it can be used for higher performance at a lower cost - "Do more with less" . Programs can be tested in a secure environment before main-system deployment. Simplified response to recover after a disaster because only the server needs to be fixed. Drawbacks of virtualisation: If not set up efficiently, users could face serious performance issues , as fewer servers do more work. If a single physical system fails , the impact will be greater . Initial set up is complex , requires technical knowledge and can cost a lot. Easier for hackers to take more information at once as the data is stored in the same place. Benefits of client virtualisation: All data is stored in one central location , making backup and disaster planning easier to manage . The whole system can be managed , secured and updated from the server , rather than from each individual system. Hardware costs will be reduced because the virtual clients do not store or process their own data , meaning they can be of a low spec . Users can have multiple virtual machines and log in remotely (from anywhere with internet access ). Drawbacks of client virtualisation: Users will be unable to work if network connectivity is lost . There is a high strain on the server as the virtual clients do not store or process data themselves . An increased load on the server might result in poor performance for each client, especially with multiple connections . As the data is stored in one location , there are security risks of unauthorised access if the server is not adequately protected . Server Virtual Clients Cloud Technology 'The cloud ' is storage that is accessed through a network , primarily the internet. A cloud server is an example of storage virtualisation as data may be stored across multiple physical devices . There are three different types of cloud storage: Private cloud is where a business will have its own data centre that employees can access. This allows for flexible and convenient data storage and gives the business control over data management and security . Users of the private cloud will not usually have to pay individually for access - but the company will need to spend a lot of money on set up and maintenance . Public cloud uses third-party service providers such as Google Drive or DropBox to provide storage over the internet . Public cloud is usually a pay-for-use service , where businesses will pay for specific amounts that they need. Data management and data security is maintained by the cloud provider and the business is dependent on them providing constant access and deploying effective security measures. Hybrid cloud uses a mix of on-site storage (private cloud) and third-party (public cloud) services . Organisations can move workloads between private and public clouds as their specific needs and costs change . A benefit of hybrid cloud is that it gives an organisation greater flexibility and data storage options. As an example, a company could use on-site or private cloud storage to hold sensitive information and third-party, public cloud services to hold less important data . Q uesto's Q uestions 3.2 - Virtualisation: 1. What is the difference between server and storage virtualisation ? [ 2 ] 2a. What is a virtual client ? [ 1 ] 2b. What are the advantages and disadvantages of client virtualisation ? [ 8 ] 3. Explain any further general advantages and disadvantages of using virtualisation , not covered in your answer to 2b. [4 ] 4. Describe the differences between private , public and hybrid cloud storage. [6 ] 3.1 - Server Types Topic List 3.3 - Network Characteristics

  • Python | 10b - Read & Search Files | CSNewbs

    Learn how to read and search through files in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. Python 10b - Read & Search Files Reading from a File To read and print from a file you must open it in read mode by typing "r" instead of "a". If you are writing and reading in the same program, make sure you close the file in append mode before you open it in read mode . The program below uses the Customers.txt file from the last section. A simple for loop can be used to print each line of the file. The end = "" code just prevents a space between each line. Practice Task 1 Open one of the files that you used in Section 10a and print each line. Example solution: Reading Specific Lines from a File Sometimes it is necessary only to print certain lines. The following example uses a file where I have written a sentence of advice on each line. The user is asked to enter a number between 1 and 6. If they enter 1, the first line of the file is printed. If they enter 2, the second line of the file is printed etc. Remember Python starts counting everything at 0 so each line is a digit less than you would expect . Square brackets must be used to denote the line to print: [1] not (1). The end = "" code is not necessary but removes space after the line. Practice Task 2 Create a text file (saved in the same folder as your Python file) with a list of video games. Ask the user to enter a number between 1 and 10. Print the line for the number that they input. Example solution: Print a Random Line The randint command can be imported and used to print a random line from a file . The example below prints one of the 12 months . The file is opened in read mode and the readlines() command extracts each line , placing them in a list . A random number is then generated between 0 and one less than the total number of lines . This random number is then used to print a line from the extracted list of lines . Python code from random import randint file = open ( "months.txt" , "r" ) lines = file.readlines() random = randint(0,11) print (lines[random]) months.txt January February March April May June July August September October November December potential outputs March December April July If the length of the file is not fixed (e.g. new lines are being added or lines removed ) then the random number generation line can be adapted to use the len command to calculate the current number of lines . This is required to know the upper limit of the random number . random = randint(0,len(lines)-1) Searching Through Files A for loop is used to search through a file , line by line . First, an input line is used to allow the user to enter their search term . If the term that is being searched for is found, then the whole line is printed. The example below uses a variable named found to state if there is a match when the file is searched. If the search term is found, then the found variable is changed to true . If the search term is not found , the found variable remains as false, so the 'no customers found' statement is printed . Practice Task 3 You should have completed Practice Task 2 from Section 10a (the A Level task). Add extra code to that program so that you can search for specific students. Example solution: ⬅ 10a - Open & Write Files 10c - Remove & Edit Lines ➡

  • OCR CTech IT | Unit 1 | 3.1 - Server Types | CSNewbs

    Learn about the role of different server types including file, application, print, email, mail servers and the hypervisor. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 3.1 - Server Types Exam Board: OCR Specification: 2016 - Unit 1 What is a server? A server is a powerful dedicated system on a network . It requires increased memory , storage and processing power than traditional computer systems to fulfill its role across the network. Servers need to be scalable - this means they must be adaptable and able to efficiently manage the needs of connected systems if more are added or some are removed . Servers have different roles so a company may use multiple , separate server types within their organisation, each with a specific purpose . Having separate servers is costly but beneficial as if one loses connection , others may still be usable . Also a server will be more efficient if it is only managing one resource (e.g. printers) at a time . File Server A file server centrally stores and manages files so that other systems on the network can access them. The server provides access security , ensuring that only users of the appropriate access level can access files. File servers can be used to automatically backup files , as per the organisation's disaster recovery policy. Using a file server frees up physical storage space within a business and can provide printing services too. Printer Server These servers control any printers on a network and manage printing requests by sending the document to an appropriate printer. Print servers use spooling to queue print jobs so that they are printed when the printer is ready. If a fault occurs with a certain printer, work can be automatically diverted to another available printer. Application Server These servers allow users to access shared applications on a network. All users will be able to access common applications like email software or word processing, but the server will also restrict certain applications to those with invalid access levels (such as hiding financial databases from employees outside of the finance department). Application updates can be simply deployed to the application server only , avoiding individual updates for each system and saving a lot of time . Installers can be hosted on an application server, allowing the software to be easily installed on other connected machines . Database Server These servers manage database software that users on the network can access and use to manipulate data . Data held on the server will be stored in a database accessible from multiple connected computers . The data can be modified using query languages such as SQL. Storing data on a database server, rather than individual computers, is more reliable . A database server for a business also allows for scaling - for example, the database can be increased in size if the customer base grows. Web Server A web server manages HTTP requests from connected devices to display web pages on web browsers . A request (e.g. csnewbs.com) is sent to the web server. The server contains a list of known URLs and their matching IP addresses . The server contacts the server where the web page is held and delivers the web page to the client . Mail Server These servers send and receive emails using email protocols (SMTP & POP) allowing email communication between other mail servers on other networks. The server makes sure emails are delivered to the correct user on the network. Email servers can store company address books making internal communication easier for organisations. The server may have anti-spam functions to reduce junk mail. Hypervisor A hypervisor allows a host machine to operate virtual machines as guest systems. The virtual machines share the resources of the host , including its memory, processing power and storage space. This type of technology is called virtualisation . The guest machines are isolated so if one failed, the other guests and the hosts are not affected - demonstrating good security . The hypervisor optimises the hardware of the host server to allow the virtual machines to run as efficiently as possible. Q uesto's Q uestions 3.1 - Server Types: 1a. What is a server ? Why does it need to be scalable ? [2 ] 1b. Give two reasons why a company may use multiple , separate servers . [2 ] 1c. State the 7 types of server . [1 each ] 2. A medium-sized animation company working on a movie are considering buying a server. Describe each type of server and the different roles they have. a. File Server b. Printer Server c. Application Server d. Database Server e. Web Server f. Mail Server g. Hypervisor [4 each ] 3. What type of technology does a hypervisor use to control multiple virtual machines? [1 ] 2.7 - Protocols Topic List 3.2 - Virtualisation

  • 3.1 - Defensive Design - OCR GCSE (J277 Spec) | CSNewbs

    Learn about defensive design considerations including validation checks, verification, anticipating misuse, maintainable code, authentication and input sanitisation. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 3.1: Defensive Design Exam Board: OCR Specification: J277 Watch on YouTube : Defensive Design Validation Checks Maintainability Defensive Design Considerations There are several things to consider when creating a program that is secure and robust , including: Anticipating Misuse Planning ahead to take steps against potential misuse (e.g the app X prevents the same tweet sent twice in a row as it might be spam ). Input Sanitisation Checking and cleaning up data that has been input , (e.g. removing special characters to prevent a SQL injection ). Validation Checking whether input data follows specific criteria and should be accepted (e.g. a length check on a password). Verification Checking whether data that has been entered is correct (e.g. double entry ). Authentication Ensuring only authorised users can gain access to a system (e.g. usernames and strong passwords ) . Maintainable code Allowing other programmers to easily read and quickly understand code that has been written (e.g. using comments , indentation and appropriate variable names ). Input Validation Validation is a process to check that data is reasonable or sensible before it is accepted . Range Check Checks data is within a certain range . Age: 34 203 Type Check Checks data is a certain data type . Height (in cm): 182 Two metres Format Check Checks data is entered in a certain way . Date of Birth (DD/MM/YYYY) 25/03/2011 25th March 11 Presence Check Checks that data has actually been entered and not left blank . Password: fluffythecat123 Lookup Table A table of acceptable entries , also known as a list . Length Check Checks the length of the input is within a certain amount. Telephone Number 08323877319 07383 Maintainability Programs should be written in a way that makes maintaining and understanding them as straightforward as possible. Examples of making a program maintainable include: Using subprograms to reuse code and make them easier to test . This is called modularisation . Appropriate variable names , using a naming convention , ensure the purpose of a variable is immediately understood. Using indentation to improve readability and clearly show each ‘block’ of code. Comments enable a programmer to understand the purpose of each line of code. Crucial when working in a team . Using constants is another method of improving maintainability. This keeps the program code consistent , which makes it easier to read and debug a program. Q uesto's Q uestions 3.1 - Defensive Design: 1. Describe the different considerations a programmer should make for a defensive design . [ 6 ] 2. Describe the each validation check and give a suitable example . [ 12 ] 3. Explain the different ways a program can be maintained . [ 5 ] 2.3 Additional Programming Theory Topics 3.2 - Testing

  • 2.4a - Number Systems - OCR GCSE (J277 Spec) | CSNewbs

    Learn about how to convert between the denary (decimal), binary and hexadecimal number systems. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). Exam Board: OCR 2.4a: Number Systems Specification: J277 Watch on YouTube : Binary and Denary Hexadecimal Number System Ranges Binary to Denary Denary to Binary Binary to Hexadecimal Hexadecimal to Binary Denary to Hexadecimal Hexadecimal to Denary What is binary? By now you should know that computer systems process data and communicate entirely in binary . Topic 2.3 explained different binary storage units such as bits (a single 0 or 1), nibbles (4 bits) and bytes (8 bits). Binary is a base 2 number system. This means that it only has 2 possible values - 0 or 1 . What is denary? Denary (also known as decimal ) is the number system that you've been using since primary school. Denary is a base 10 number system. This means that it has 10 possible values - 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9 . Binary & Denary Convert from binary to denary: Convert from denary to binary: Hexadecimal What is hexadecimal? Hexadecimal is a base 16 number system. This means that it has 16 possible values - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E and F . Hexadecimal is used as a shorthand for binary because it uses fewer characters to write the same value . This makes hexadecimal less prone to errors when reading or writing it , compared to binary. For example, 100111101011 in binary is 9EB in hexadecimal. Hexadecimal only uses single-character values. Double-digit numbers are converted into letters - use the table on the right to help you understand. Binary to hexadecimal: Hexadecimal to binary: Converting from denary to hexadecimal / hexadecimal to denary To convert from denary to hexadecimal or from hexadecimal to denary , it is easiest to convert to binary first . However, it is possible to convert directly from denary to hexadecimal or directly from hexadecimal to denary . The videos below explain both methods . Denary to hexadecimal: Hexadecimal to denary: Watch on YouTube Watch on YouTube Watch on YouTube Watch on YouTube Watch on YouTube Watch on YouTube Q uesto's Q uestions 2.4a - Number Systems: 1. Explain why hexadecimal numbers are used as an alternative to binary . Use an example . [ 3 ] 2. Convert the following values from binary to denary : a. 00101010 b. 11011011 c. 01011101 d. 11101110 e. 01011111 [1 each ] 3. Convert the following values from denary to binary : a. 35 b. 79 c. 101 d. 203 e. 250 [1 each ] 4. Convert the following values from binary to hexadecimal : a. 11110101 b. 01100111 c. 10111010 d. 10010000 e. 11101001 [1 each ] 5. Convert the following values from hexadecimal to binary : a. C2 b. 8A c. DE d. 54 e. F7 [1 each ] 6. Convert the following values from denary to hexadecimal : a. 134 b. 201 c. 57 d. 224 e. 101 [1 each ] 7. Convert the following values from hexadecimal to denary : a. 32 b. A5 c. 88 d. C0 e. BE [1 each ] Click the banners below to try self-marking quizzes (Google Forms) on these topics. Binary to Denary: Denary to Binary: Binary to Hexadecimal: Hexadecimal to Binary: 2.3 - Data Units Theory Topics 2.4b - Binary Addition & Shifts

© CSNewbs 2026

The written, video and visual content of CSNewbs is protected by copyright. © 2026
bottom of page