top of page

Search CSNewbs

304 results found with an empty search

  • 4.1 - UK Legislation | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about crucial laws in place to protect data and privacy, including the Data Protection Act (2018), Computer Misuse Act (1990), RIPA (2000) and the Freedom of Information Act (2000). Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 4.1 - UK Legislation Specification: 2016 - Unit 2 Exam Board: OCR There are many types of legislation - laws that have been written into use - that concern data storage, protection and the use of information. In an exam, the year the law was introduced must be stated . In 2018 the European Union introduced GDPR (General Data Protection Regulation ) to protect the privacy of data for people in the EU. The UK matched this by updating the Data Protection Act introduced in 1998 to become the Data Protection Act (2018) . This act protects the data of individuals that is stored on computers and processed by organisations. How the Data Protection Act works: Each person who has their data stored is known as a data subject . An employee within an organisation must be appointed as a data controller and it is they who are responsible for registering with the Information Commissioner . The Information Commissioner is the person in the UK who is responsible for managing several laws , most significantly the Data Protection Act. When registering with the Information Commissioner, the organisation's data controller must be clear on exactly: What information they are collecting, Why it is being collected, What the data will be used for . The six principles of the Data Protection Act (2018) state: 1. Data must be collected lawfully and processed fairly. 2. Collected data must only be used for the reasons specified. 3. Data must be relevant and not excessive. 4. Data must be accurate and up-to-date. 5. Data must not be stored for longer than necessary, 6. Data must be stored and processed securely. Actions organisations must take to stick to the Data Protection Act (2018): The company must appoint and register a member of staff to act as the organisation's data controller . The data controller is responsible for communicating with the Information Commissioner and ensuring the principles of the DPA are not broken . There must be strong security measures in practice to protect data from being accessed or transferred without authorisation . This could be in the form of physical or digital protection methods enforced by the company. Staff should be trained so that they are clearly aware of their responsibilities and each principle is adhered to. For example, they should know that data can only be used for the reasons specified when it is collected and should not be passed to others without the permission of the data subject. Data subjects should be given the opportunity to alter their data and make changes if it is incorrect . Data should be deleted when it is no longer needed , so organisations should periodically assess both the accuracy and relevance of storing each data subject's information. Data subjects have the right to make a Subject Access Request (SAR ) and receive a copy of the data which is stored about them. Companies must abide by this request by verifying the user's identify and presenting the data to them securely . Rights of data subjects: Under the Data Protection Act, individuals have a right of access to any information that is stored about them by public bodies . If an individual wishes to access their data they must submit a Subject Access Request (SAR ) which results in the following steps: The organisation's data controller must be written to and told exactly what information is required to access. An administrative fee should be paid to the organisation (but only if the request requires excessive efforts to fulfil ). The organisation must provide the requested information within 40 days . The individual must verify their identity using appropriate ID because only the data subject can request their data . Computer Misuse Act (1990) This act was introduced as computers became cheaper and more common at home and work . The act attempts to stop and punish those who use computers inappropriately . Breaking any of the three principles could result in fines and a jail sentence but only if it can be proved it was done on purpose and not by accident. The Computer Misuse Act (1990 ) includes three main principles : 1. No unauthorised access to data. Example: Hacking a computer system. 2. No unauthorised access to data that could be used for further illegal activities. Example: Accessing personal data to use as blackmail or identity theft. 3. No unauthorised modification of data. Example: Spreading a virus to change data. Data Protection Act (2018) / GDPR Freedom of Information Act (2000) This act allows people to request public authorities to release information . Public authorities include local councils , government departments , universities and hospitals . A freedom of information request must be formally submitted in a letter or email and a reply from the organisation is required within twenty days of receiving the request. A simple freedom of information request might be the average response times of the local ambulance service in the past year. Certain requests will not be accepted , such as if processing the request would be too expensive or if it involves sensitive information protected by the Data Protection Act (2018 ). Regulation of Investigatory Powers Act (2000) This act (often shortened to RIPA ) was introduced in response to the increase in both criminal and terrorist activities on the internet, it is used to monitor and access online communication of suspected criminals . If criminal activity is suspected by an individual then this act grants the following powers : Internet Service Providers (ISPs) must provide access to the suspect's online communication , such as emails or social media. Locked or encrypted data may be accessed such as online messages. ISPs could install surveillance equipment or software to track the suspect's online activity . Surveillance may take place to physically track the suspect , e.g. in private vans or by undercover officers in public spaces. Access must be granted to personal information . This act became controversial as its use widened and local councils were using it for minor offences - a Scottish council used the act to monitor dog barking and a council in Cumbria gathered video evidence about who was feeding pigeons . The act has since been changed to only allow the surveillance of crime suspects . Copyright, Designs & Patents Act (1988) This act makes it a criminal offence to copy work that is not your own without the permission of the creator or the copyright holder. This can refer to text, images, music, videos or software. Owning the copyright of an image might not prevent others from copying and using it but this act means that the owner can bring legal proceedings in court to those who have stolen their work . Creators of copyrighted work can take ownership of their work and control how it is used . Others must ask for permission to use the work otherwise the copyright holder can ask for it to be removed or demand a fee for its use . This act specifically prohibits the following actions: Making copies of copyrighted material to sell to others . Importing and downloading illegally copied material (except for personal use). Distributing enough copyrighted material to have a noticeable effect on the copyright holder . Possessing equipment used to copy copyrighted material , as part of a business. Information Commissioner's Office (ICO) Codes of Practice Protection of Freedoms Act (2012) There are seven sections to this act, revolving around the protection of personal data . It was introduced because there was little legislation about biometric data , and to update older laws . IT-related sections are summarised below: Part 1 - States how biometric data (e.g. fingerprints and DNA) is stored, handled and collected. For example, parents must give consent before their child gives biometric data to a school. Also, biometric data for suspects of minor offences is deleted after the case is closed. Part 2 - Creates new regulation for CCTV and ANPR (automatic number plate recognition) use. Part 5 - The Disclosure & Barring Service (DBS) was created to run background checks on anyone wanting to work with children or vulnerable people. Part 6 - Extends the Freedom of Information Act (2000) allowing for wider requests to be made . The information commissioner is the senior government official in charge of the country's freedom of information requests and the protection of personal data . The Information Commissioner's Office describes itself as "The UK’s independent authority set up to uphold information rights in the public interest, promoting openness by public bodies and data privacy for individuals". The ICO publishes codes of practices about various data protection and privacy topics , usually related to explaining the Data Protection Act . For example, the ICO has a code of practice regarding how organisations should share data and another code of practice about the use of CCTV . The ICO offers help and support to both individuals (such as giving access to students to their exam results) and organisations (such as support with legal electronic marketing). Privacy and Electronic Communications Regulations (2003) This law (which was updated in 2011 ) regulates how organisations can communicate with individuals . Companies must stick to the following rules: It is an offence to directly contact an individual unless they have specifically opted-in to receive communication. This is commonly managed by using tick boxes on online stores where you must opt-in to receiving promotional material. Companies must clearly state who they are when contacting customers, such as displaying the phone number when calling - and not 'hiding' the number. Organisations must explain how cookies are used on their website . Companies must only contact customers through communication channels that the customer has previously permitted . This can be done with tick boxes when signing up. Customers can select or de-select methods such as email , phone calls and text messages . The Information Commissioner's Office (ICO) is responsible for this regulation and can fine companies that commit unsolicited communication up to £500,000. It is the customer who benefits and is protected by this regulation. Equality Act (2010) The government states that "The Equality Act legally protects people from discrimination in the workplace and in wider society." Discrimination because of protected characteristics such as gender , race , religion , age and disability are specifically punishable by legal action. The aim of the act is to end discrimination in the workplace and open up fair opportunities for every employee regardless of behavioural or physical characteristics that are outside of their control . Within a company, the Equality Act protects staff by stating protected characteristics should not be a factor in an employee's promotion or change of role. Information must be presented in a format accessible to all staff . Q uesto's Q uestions 4.1 - UK Legislation: 1. Create a flashcard or PowerPoint slide for each legislation above. Explain the purpose of the legislation , its main principles and whom it affects . [5 each ] 3.6 - Information Systems Topic List 4.2 - Global Legislation

  • OCR CTech IT | Unit 1 | 1.5 - Communication Hardware | CSNewbs

    Learn about different types of hardware that allow data to be sent between systems, including router, modem, bridge and WAP. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 1.5: Communication Hardware Exam Board: OCR Specification: 2016 - Unit 1 The devices on this page are used to create or link together networks , allowing data to be sent between computer systems . Hub A hub receives data packets from a connected device and transfers a copy to all connected nodes . Switch A switch receives data packets , processes them and transfers them on to the device s pecifically listed in the destination address of the packet. Modem Modems are used to send data across the telephone network . The telephone lines can only transfer analog signals so a modem is used to convert a computer's digital data into an analog signal . Another modem converts the signal back to a digital format at the receiving end. Router Routers are used to transfer data packets between networks . Data is sent from network to network on the internet towards the destination address listed in the data packet. A router stores the address of each computer on the network and uses routing tables to calculate the quickest and shortest path . Wireless Access Point (WAP) Provides a link between wireless and wired networks . It creates a wireless local area network that allows WiFi enabled devices to connect to a wired network. Combined Device Also known as a hybrid device , this provides the functionality of multiple communication devices (e.g modem, router, switch and/or wireless access point) in a single device . They can be more expensive than a single device but are more adaptable - if the routing part of the device fails it might still be able to function as a switch / wireless access point etc. However, you will see an increased performance from a standalone device rather than a combined one as standalone devices have more complex features (e.g. VPN support). Network Interface Card (Network Adapter) A Network Interface Card (often shorted to NIC ) is an internal piece of hardware that is required for the computer to connect to a network . It used to be a separate expansion card but now it is commonly built directly into the motherboard (and known as a network adapter ). Wireless network interface cards allow wireless network connection. Q uesto's Q uestions 1.5 - Communication Hardware: 1. What is the difference between a hub and a switch ? [2 ] 2. Explain how a modem works. [3 ] 3. Explain the purpose of a router . [2 ] 4. What is a Wireless Access Point (WAP )? [2 ] 5. Describe what is meant by a 'combined device '. Give one advantage and one disadvantage of using a combined device. [3 ] 1.4 - Connectivity 1.6 - Hardware Troubleshooting Topic List

  • Eduqas GCSE Topic List | CSNewbs

    The list of topics in the 2020 Eduqas / WJEC GCSE Computer Science specification. Eduqas / WJEC GCSE Computer Science These pages are based on the Eduqas GCSE Computer Science 2020 specification . The content can also be used by students studying WJEC GCSE Computer Science in Wales . This website is in no way affiliated with Eduqas / WJEC . 1. Hardware 1.1 - The Central Processing Unit (CPU) 1.2 - The FDE Cycle 1.3 - Primary Storage 1.4 - Secondary Storage 1.5 - Performance 1.6 - Additional Hardware 2. Logical Operators & Boolean 2.1 - Logical Operators 2.2 - Boolean Algebra 3. Networks & Security 3.1 - Network Characteristics 3.2 - Data Packets & Switching 3.3 - Network Topology 3.4 - Network Hardware & Routing 3.5 - Protocols 3.6 - 7-Layer OSI Model 3.7 - The Internet 3.8 - Cyber Threats 3.9 - Protection Against Threats 4. Data 4.1 - Number Systems 4.2 - Signed Binary 4.3 - Binary Calculations 4.4 - Arithmetic Shift 4.5 - Character Sets & Data Types 4.6 - Graphical Representation 4.7 - Sound Representation 4.8 - Compression 5. Data Organisation 5.1 - Data Structures & File Design 6. Operating Systems 6.1 - Operating Systems 6.2 - Utility Software 7. Principles of Programming 7.1 - Language Levels 8. Algorithms & Constructs 8.1 - Programming Principles 8.2 - Understanding Algorithms 8.3 - Writing Algorithms 8.4 - Sorting & Searching Algorithms 8.5 - Validation & Verification 9. Software Development 9.1 - IDE Tools 10. Program Construction 10.1 - Translators 10.2 - Stages of Compilation 10.3 - Programming Errors 11. Technological Issues 11.1 - Impacts of Technology 11.2 - Legislation Component 2 (Programming Exam) Python Removed content from the 2016 Specification

  • Key Stage 3 Python | The Basics | CSNewbs

    The first part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about comments and printing. Python - #1 - The Basics 1. Start with Commenting Programmers write A LOT of code. They need to understand exactly what they have written, especially if they are working as part of a team or returning to code after working on other projects. To help them understand what they have written, programmers use comments to annotate (explain) their code . Task 1 - Create a new Python program and use # to write a comment that says your name and the date. Save the file as 1-Basics.py In Python, type the # symbol then your message to write a comment. Comments are not printed when you run a program! It is a good idea to start every program with a comment, so you know what the program is about . 2. Printing to the Screen The most basic and common command you will use in Python is print . Inside the print brackets, you can write a message within speech marks . Your print command should turn purple - don't use any capital letters in Python unless it is inside speech marks! Task 2 - Write a nice message by using the print command, brackets and speech marks. Press F5 to run your program. 3. More Printing You can write multiple print lines one after another to print on different lines. Task 3 - Add two more print lines to your program. You can choose any message that you like. 4. New Lines You can use the special command \n to start a new line . This allows you to write on multiple lines but only use one print line. Use the backslash ( \ ) not the forward-slash ( / ). Task 4 - Use \n to write a 3 sentence conversation in only one line of code. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Days of the Week Create a new Python program. Save it as ' 1-Week.py ' Add a comment at the top with your name and the date. Create a program that prints the days of the week, with each day on a new line. BONUS : Try to use only one print line. BONUS : Have no empty spaces at the start of each line. When you run it, it should look like this: Challenge Task 2 - Conversation Create a new Python program. Save it as ' 1-Conversation.py ' Add a comment at the top with your name and the date. Create a program that prints a 6-line conversation between two people. It is up to you what these two people are talking about. BONUS : Try to use only one print line. BONUS : Have no empty spaces at the start of each line. When you run it, it could look something like this: #2 Variables >>>

  • Python | Extended Task 2 | CSNewbs

    Test your ability to create a more complex program in Python based on a given scenario. Perfect for students learning GCSE Computer Science in UK schools. Extended Task 2 Lottery 17 8 4 13 20 Create a program to simulate a lottery draw. First, create an appropriate print line to welcome the user to your lottery draw. Then let the user enter five numbers between 1 and 20. Next, randomise five numbers between 1 and 20. Check to see how many numbers match and output an appropriate response for each scenario (e.g. “You have not matched any numbers, better luck next time!”) Once you have made the base program implement subroutines and lists . Make it as efficient as possible and professional-looking. Use pauses to reveal each number one at a time like a real lottery draw to build suspense. For this task, you will need to create a document and include the following sections (with screenshots where appropriate): An introduction to explain the Purpose of your program . A List of Requirements for a successful program. Screenshots of your code (with comments in your code to show understanding). Testing – Create a plan to show how you will test your program and then explanations of any errors that you found and how they were fixed . An Evaluation of what worked, what didn’t, and how you met each of your requirements from your original list. Also, discuss further improvements that you could have made to improve your program. Example solution: Helpful reminders for this task: Inputting Numbers Random Numbers Logical Operators Subroutines ⬅ Extended Task 1 (Pork Pies) Extended Task 3 (Blackjack) ➡

  • Python | 8b - 2D Lists | CSNewbs

    Learn how to create and use two-dimensional lists in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 8b - 2D Lists Creating a List with Multiple Dimensions Lists can be given another dimension to hold data that is related to each other . A scenario: Three students have taken two Chemistry tests, and their teacher has recorded the results in a 2-dimensional array (note that Python does not use arrays but uses lists instead): To create this in Python: Printing a 2D List To print the whole list, use a for loop to cycle through each record. I have altered the normal i variable to be 'record', so it is more descriptive: Use the index number to print a specific record . Look at the table above and remember that Python starts counting at 0 so Edward is record 0, Bella 1 and Jacob 2: To print a specific data value, you need to define the record number and then the data index . When using 2D lists, the first value is the row, and the second value is the column . Use the table at the very top to help you visualise this: Practice Task 1 Use the introduction at the top to help you create a 2D list with three friends in the first column, their age in the second column and their favourite colour in the third column. Print the whole list. Then print just the second person's information. Example solution: Searching Through a 2D List To search through a multi-dimensional list then you need to search through each record and then each data element for a specific value: Practice Task 2 Use the 2D list that you created in the first practice task. Ask the user to enter a name. Search through the list and print the record of that person's name. Example solution: ⬅ 8a - Using Lists 8 c - Dictionaries ➡

  • 3.2 - Packets & Switching - Eduqas GCSE (2020 spec) | CSNewbs

    Learn about the six parts of a data packet and how packet switching works. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.2: Data Packets & Switching Exam Board: Eduqas / WJEC Specification: 2020 + What is a data packet? When sending data across a network, files are broken down into smaller parts called data packets . Whole files are too large to transfer as one unit so data packets allow data to be transferred across a network quickly . Each packet of data is redirected by routers across networks until it arrives at its destination. Data packets may split up and use alternative routes to reach the destination address. When all the packets have arrived at the destination address the data is reassembled back into the original file. Contents of a Data Packet Data packets contain six distinct pieces of data which are used to redirect the packets towards the destination address. Packet Switching vs. Circuit Switching The key difference is that a circuit-switched network sends data along the same route . A packet-switched network sends data packets along different routes . Packet Switching With a packet-switched network the data is split into packets . The data packets are transmitted over a network and may take different routes to its destination. When all the packets have arrived the data is reassembled . The Internet is an example of a packet-switching network. Advantages of Packet Switching: Transmission is more secure as it is harder for a hacker to intercept complete data because it can take different routes . If a network device fails the data packets can take an alternative route . Data packets can be sent efficiently and individually across less busy routes . Disadvantages of Packet Switching: Reassembling the data takes longer because packets may arrive out of order . It is less reliable than circuit switching as some data packets may not reach the destination (this is called packet loss ). Circuit Switching When data is transmitted over a circuit-switched network all of the data takes the same route to the destination address in one continuous stream . The data is quickly reassembled at the destination because it is already in the correct order . The old telephone system is an example of a circuit-switched network. Advantages of Circuit Switching: Reassembling the data is quick because the packets arrive in the order that they were sent. It is more reliable than packet-switching because data is sent in one continuous stream . The transmission is fast and should encounter fewer errors - once the connection has been securely established . Disadvantages of Circuit Switching: Less secure as hackers could intercept the data and more easily access the data as it all takes the same route. Establishing a connection takes time to set up. If any device fails on the route then the whole connection breaks and data transfer will be incomplete. Q uesto's Q uestions 3.2 - Data Packets & Switching: 1. Draw the data packet diagram and label all 6 pieces of information . [ 6 ] 2a. Describe how packet switching works . [3 ] 2b. Describe the advantages of packet switching . [3 ] 2c. Describe the disadvantages of packet switching . [2 ] 3a. Describe how circuit switching works . [3 ] 3b. Describe the advantages of circuit switching . [3 ] 3c. Describe the disadvantages of circuit switching . [3 ] 3.1 - Network Characteristics Theory Topics 3.3 - Network Topology

  • Python | Section 3 Practice Tasks | CSNewbs

    Test your understanding of data types, calculations and modulo. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python - Section 3 Practice Tasks Task One: Square Number Create a program that asks the user to input a number and then prints the square of that number - to do this, multiply the number by itself . Remember: Break up variables and parts of a sentence in a print line by using commas. Example solutions: Enter a number: 12 The square of 12 is 144 Enter a number: 7 The square of 7 is 49 Task Two: Multiplying Numbers X Example solutions: Create a program that asks the user to input two numbers (num1 and num2 ). Multiply the two numbers together and print the total . Remember: Break up integer variables in a print line by using commas between each part of the sentence. Enter number one: 7 Enter number two: 9 7 x 9 = 63 Enter number one: 8 Enter number two: 12 8 x 12 = 96 Task Three: Turning 65 Example solutions: Create a program to input how old the user will turn this year and then print the year they will turn 65 . You could do this in just two lines but before trying that work out on paper the steps to calculating your own age you will turn 65. What steps did you take? Try to recreate those steps in Python. You might need to create another variable to make it easier. How old will you turn this year? 15 You will turn 65 in 2073 How old will you turn this year? 42 You will turn 65 in 2046 Task Four: Multiplication Table Let the user enter a number then print the first five multiplications in its times table. This can be done more simply when you learn about for loops but for now you will need to multiply the number by 1 , then multiply it by 2 etc. Try to make this program better by displaying the number and the value it is multiplied by in your print statements. Simple example solution: Enter a number: 8 8 16 24 32 40 Better example solution: Enter a number: 7 7 x 1 = 7 7 x 2 = 14 7 x 3 = 21 7 x 4 = 28 7 x 5 = 35 ⬅ 3b - Simple Calculations 4a - If Statements ➡

  • 4.3 - Decomposition Methods | F160 | Cambridge Advanced National in Computing AAQ

    Learn about the decomposition methods used in project planning such as abstraction, pattern recognition, modularisation (top down and bottom up) and parsing of requirements. Based on Unit F160 (Fundamentals of Application Development) for the OCR Cambridge Advanced National in Computing (H029 / H129) (AAQ - Alternative Academic Qualification). Qualification: Cambridge Advanced National in Computing (AAQ) Unit: F160: Fundamentals of Application Development Certificate: Computing: Application Development (H029 / H129) 4.3 - Decomposition Methods Watch on YouTube : Abstraction Pattern Recognition Modularisation Parsing of Requirements Decomposition methods break complex problems or systems into smaller , more manageable parts . This makes development easier to plan , understand and implement . Decomposition also helps reduce errors and improve efficiency , as individual tasks can be more easily tested and debugged. For each of the four decomposition methods ( abstraction , pattern recognition , top-down and bottom-up modularisation and parsing requirements ) you need to know when each method is suitable to use , its advantages and disadvantages , how client requirements affect their selection and how they can be used to visualise application designs . Decomposition Methods Abstraction Abstraction is the process of simplifying a problem by ignoring irrelevant data and focusing only on the most important details . It is used in the early stages of design or planning , when managing complexity in large systems and when creating reusable components . Pattern Recognition Pattern recognition is used to identify similarities or trends in problems or client requirements . This allows for the reuse of existing components and aids in finding solutions for common issues . It is used during the planning or analysis phases and when dealing with similar tasks , inputs , outputs or processes . Modularisation Modularisation refers to the individual components that make up a larger project . In top-down modularisation , a larger system is broken down from a general overview into its most specific parts . The purpose of bottom-up modularisation is to build the system starting with the smaller , detailed components and combining them into larger subsystems . Parsing of Requirements To parse requirements means to systematically break down and analyse client requirements into actionable tasks or functions . It is used at the start of a project to ensure shared understanding between development teams and clients . Q uesto's Q uestions 4.3 - Decomposition Methods: 1. Explain the differences between top-down and bottom-up modularisation . [4 ] 2. Explain when abstraction would be an appropriate decomposition method to use. [3 ] 3. What are the advantages and disadvantages of parsing requirements ? [ 4 ] 4. Give one way each decomposition method can be used in software application development . [ 4 ] Alan Turing and his team used pattern recognition to analyse recurring sequences in encrypted German messages , helping to break the Enigma code , which was a major factor in the Allies’ victory in World War II . D id Y ou K now? 4.2 - Client Requirement Specs Topic List 5.1.1 - Human-Computer Interaction

  • 6.3 - Impacts | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the negative impacts that data loss will have on an organisation including reputation loss, fines and possible bankruptcy. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 6.3 - Impacts Exam Board: OCR Specification: 2016 - Unit 2 If a risk to data (see 6.2 ) occurs then there are a number of different impacts that may consequently negatively affect an organisation . Loss of Intellectual Property 'Intellectual property ' refers to anything that an organisation or individual has designed, developed or created themselves . For an individual, this could be a manuscript , artwork or piece of music . For an organisation, it could be primary data they have collected, blueprints for an upcoming design or a report following data analysis. The impact of having intellectual property lost depends on the property itself and how easy it would be for the victim to recreate or recollect the data . Competitors that stole intellectual property could use it at their advantage. Also, the effect of an upcoming announcement to the public would decrease if it was leaked ahead of time. In 2017 HBO suffered large property leaks when Game of Thrones episodes were stolen before air date resulting in pirated versions appearing online well before they were due to be shown on TV. Loss of Service and Access If usernames and passwords are stolen then individuals may be unable to access services that they have paid for, an example being if WiFi details were stolen so that a hacker can access the internet using someone else's account. If a hacker is permitted access to a system they can change the account settings such as the password to lock out the original owners of that account, leaving them without access. Other services can be targeted with malicious attacks like a DDOS attack so that users cannot log into a web page or online service. If users cannot access an account they may use alternative methods and providers , such as avoiding one type of cloud storage provider that has let them down and choosing another. Breach of Confidential Information Confidential information is of a highly sensitive nature and could lead to other negative impacts if it got into the hands of unauthorised people . Confidential information, such as medical histories, should be stored securely with multiple physical and logical protections in place to ensure that it keeps its integrity . If confidential information was breached then it could lead to a loss of reputation as the holder would be regarded as ineffective at protecting the data . Legal consequences would also follow as the Data Protection Act ( 2018 ) would be broken : fines, court cases and even imprisonment would be possible further impacts. An organisation would expect to see penalties from the Information Commissioner's Office (ICO) if they failed to protect personal details by breaking the DPA . Loss of Third Party Data Many organisations will store data not only for their own purposes but for other individuals and businesses too; a key example being cloud storage providers . Users can store data on public cloud services such as Google Drive or DropBox and access their information using the internet from any networked device they please. If services like cloud storage services are hacked or taken offline (e.g. because of an attack or network problems) and data is lost then customers, especially those that pay, will be furious. This will lead to a loss of reputation, trust and even legal proceedings if personal and sensitive data is lost. Larger businesses will use private cloud storage, hosted in data centres that they maintain themselves, to avoid relying on third parties . Loss of Reputation Organisations spend years to build up a reputation where customers trust them and want to use their products or services. Data loss can immediately destroy that reputation and cause once-loyal customers to look elsewhere and choose their competitors . Failing to keep data safe means that an organisation has been unable to follow their legal and moral duty of keeping information secure and could lead to a loss of trade , resulting in reduced earnings and sales . Identity Theft If an individual's personal information is stolen by attackers then one impact is identity theft - when the attacker uses the victim's data for fraud or impersonation . Identity theft can lead to financial loss to the victim if loans , products or services are purchased in their name . The victim may have to contact their bank and other organisations to cancel transactions and there is no guarantee their money will be returned. Credit checks may be affected, leading to future financial difficulty for the victim. Threat to National Security If data of a classified nature (such as military arrangements, security weak-points or upcoming government plans) is lost and falls into the hands (most probably by hacking) of those who intend to bring harm to the country then the consequences can be disastrous. Spies of foreign countries or terrorists could use classified information to target vulnerable locations or events resulting in casualties. Threats could also be economic in nature if large amounts of money are stolen or redirected to malicious bodies. Recent Examples of Security Failure Q uesto's Q uestions 6.3 - Impacts: 1. Describe how each of the impacts above could affect a bank storing large amounts of customer data including financial records. [12 ] 2. Research three recent hacking examples . For each situation describe the impacts that occurred as a result of data loss . [12 ] Click the icons to read BBC News articles about recent examples of hacks and security breaches . Virgin Media Boots Marriott Hotels Facebook Messenger 6.2 - Risks Topic List 6.4 - Protection Measures

  • 2.3 - Additional Programming Techniques - OCR GCSE (J277 Spec) | CSNewbs

    Learn about arrays, records and SQL (structured query language) including the SELECT, FROM and WHERE commands. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). Exam Board: OCR Specification: J277 2.3: Additional Programming Techniques Watch on YouTube : String Manipulation File Handling Arrays Subprograms Random Numbers SQL This section of the specification includes programming topics that are outlined in 1.2 (Designing Algorithms). You must have an understanding of more complex programming techniques , such as how to manipulate strings , handle files and use subprograms . The best practice for learning is to try the tasks in the Python pages on this website (see the link to the right). Visit the Python section of CSNewbs ---> Subprograms What is a subprogram? Large programs are often broken down into smaller subprograms (also called subroutines ). Each subprogram focuses on a specific function of the code, helping to decompose a complex problem into more manageable chunks . Defining subprograms A subprogram is defined (identified) using the def command in Python. A program may use many subprograms , which are usually defined at the start of the code . Calling subprograms Running a line of code that includes the name of a subprogram will call (activate) it. When called , the program will run the subprogram code before returning back to the line that called it . Subprograms are only run when called , so depending on decisions made, a program may end without calling every (or any) subroutine. Parameters A parameter is a value that is passed into a subprogram when it is called , allowing the value to be used within the subprogram . A subprogram may not use a parameter , e.g. multiply() , or one parameter , e.g. multiply(num) , or several e.g. multiply(num1,num2) . Any parameters must be identified when the subprogram is defined , e.g. def multiply(num): Return The return command will send a value back to the line the subprogram was called on, allowing it to be used there . For example, the 'quad' subprogram in the example below returns the value of the 'result' variable back to the main program, allowing it to be printed . A subprogram will end either by reaching the last line of code within it, or when it reaches a return command . Subprograms that return a value are called functions . Subprogram example This subprogram is defined using the identifier 'quad ' with a parameter named number . The subprogram is called in the main program, multiplies the number passed in as a parameter by 4 and returns a value back to the main program to be printed. def quad (number): result = number * 4 return result #Main Program number = int ( input ( "Enter a number: " )) print ( "The number quadrupled is" , quad(number)) Enter a number: 5 The number quadrupled is 20 Functions and Procedures There are two types of subprograms . A function is a subprogram that returns a value , using the return command, which allows the value to be used in the line of code the function was called in. The 'divide' function below returns the value of the variable 'total' to the main program to be printed. A procedure is a subprogram that does not return a value . Example of a Procedure def multiply (num): total = num * 2 print ( "The number doubled is" , total) #Main Program num = int ( input ( "Enter a number: " )) multiply(num) Enter a number: 4 The number doubled is 8 Example of a Function def divide (num): total = num / 2 return total #Main Program num = int ( input ( "Enter a number: " )) print ( "The number halved is" , divide(num)) Enter a number: 9 The number halved is 4.5 Advantages of using subprograms Subprograms break a complex program down into smaller parts , making it easier to design and test . Each subroutine can be tested separately and abstraction can be used to simplify a complicated problem . Using subprograms allows code to be easily reused in other programs , as it has already been written , making it quicker to develop new programs or build on existing work. Using subprograms avoids code repetition , as they can be called as many times as necessary . This makes programs shorter and quicker to develop , making them easier to maintain and debug . Work can easily be split up between team members to work on different subprograms at the same time . Array An array is a static data structure that can hold a fixed number of data elements . Each data element must be of the same data type i.e. real, integer, string. The elements in an array are identified by a number that indicates their position in the array. This number is known as the index. The first element in an array always has an index of 0 . You should know how to write pseudo code that manipulates arrays to traverse , add , remove and search for data . The following steps use Python as an example, although Python does not use arrays and uses a similar data structure called a list (that can change in size as the program runs ). See the 8a and 8b Python pages for tasks on how to use lists . What Traversing an Array To traverse (' move through ') an array a for loop can be used to display each data element in order. Example code for traversing: Output: 'Inserting' a value In an array the size is fixed so you cannot insert new values, but you can change the value of elements that already exist. Overwriting the fourth element (Daphne) with a new value (Laura) will change it from Daphne to Laura. Example code for inserting: Output: 'Deleting' a value In an array the size is fixed so you cannot delete values, but you can overwrite them as blank . Overwriting the second element (Shaggy) with a blank space makes it appear deleted. Example code for deleting: Output: Searching an Array For large arrays a for loop is needed to search through each element for a specific value . This example checks each name to see if it is equal to Velma. Example code for searching: Output: Two-Dimensional Array Often the data we want to process comes in the form of a table . The data in a two dimensional array must still all be of the same data type , but can have multiple rows and columns . The two-dimensional array to the right shows the characters from Scooby Doo along with their associated colour and their species. Each value in the array is represented by an index still, but now the index has two values . For example [3] [0] is 'Daphne'. Unless stated in an exam , measure row first , then column . Searching a two-dimensional array: To print a specific data element you can just use the index number like Daphne above. To search for a specific value you will need two for loops , one for the row and another for the values of each row . The example to the right is looking for the value of ' Velma ' and when it is found it prints the associated data from the whole row . Example code for printing: Output: Example code for searching: Output: Records Unlike arrays, records can store data of different data types . Each record is made up of information about one person or thing . Each piece of information in the record is called a field (each row name). Records should have a key field - this is unique data that identifies each record . For example Student ID is a good key field for a record on students as no two students can have the same Student ID. A 2D array may be used to represent database tables of records and fields . SQL SQL (structured query language ) is a language that can be used to search for data in a database . The format of an SQL statement is: SELECT field1, field2, field3… FROM table WHERE criteria Example of an SQL statement using the Cars table: SELECT Make, Colour FROM Cars WHERE Miles > 1000 AND Age > 8 Cars table SQL uses wildcards which are symbols used to substitute characters . The * symbol represents ALL fields . Example: SELECT * FROM Cars WHERE Colour = “blue” < Click the banner to try a self-marking quiz (Google Form) about records and SQL. Q uesto's Q uestions 2.3 - Additional Programming Techniques: 1a. Describe what the following terms mean: subprogram , parameter , function , procedure . [ 2 each ] 1b. Describe three advantages of using subprograms . [ 6 ] 2. Describe the differences between a 1D array , 2D array and record . [ 3 ] 3. A one-dimensional array looks like this: TigerBreeds["Sumatran","Indian","Malayan,"Amur"] Write the code to: a. Print the element with the index of 3. [ 2 ] b. Change Indian to South China. [ 2 ] c. Remove the Amur element. [ 2 ] d. Search through the array for 'Malayan'. [ 2 ] 4a. Use the Cars table above to write the SQL statement to display the make and miles for cars that are grey OR blue . [ 3 ] 4b. Write an SQL statement to display all fields for cars that are 10 years old or less . [ 3 ] 2.2 Data Types Theory Topics 3.1 - Defensive Design

  • 5.1 - Data Structures - Eduqas GCSE (2020 Spec) | CSNewbs

    Learn about different data structures such as arrays, lists and records. Also, the difference between static and dynamic data structures and how to design files. Based on the 2020 Eduqas (WJEC) GCSE specification. 5.1: Data Structures & File Design Exam Board: Eduqas / WJEC Specification: 2020 + What is a Data Structure? A data structure is a way of efficiently organising data . There are two general forms of data structures: Static Data Structures The size of a static data structure cannot change e.g. if a data structure has 20 elements, no additional elements can be added or removed. The values of the data elements can be changed, but memory size is fixed when allocated at compile time. Because a static data structure holds a certain number of data elements they are easier to program because the size of the structure and the number of elements never change. An array is an example of a static data structure. Examples: A static data structure could be an array of teams in the Premier League. The data elements will change each year when teams are relegated and promoted but there will always be 20 teams. Dynamic Data Structures The size of a dynamic data structure can change as the program is being run , it is possible to add or remove data elements. Dynamic data structures make the most efficient use of memory but are more difficult to program , as you have to check the size of the data structure and the location of the data items each time you use the data. A list is an example of a dynamic data structure. A dynamic data structure could be a list of all teams in the Premier League that won their last match. Data elements (teams) will be added or removed across the season. Types of Data Structures List A list is a dynamic data structure that has the data elements stored in the order they were originally added to memory . Every data structure starts at 0, not 1 . Lists store data elements in the order they were added, so the first doctor is 0 and the most recent doctor is 12. An example list of the main Doctor Who actors Array An array is a static data structure that can hold a fixed number of data elements . Each data element must be of the same data type i.e. real, integer, string. The elements in an array are identified by a number that indicates their position in the array. This number is known as the index. The first element in an array always has an index of 0 . You should know how to write pseudo code that manipulates arrays to traverse, add, remove and search data. The following steps uses Python as an example. Traversing an Array To traverse (' move through ') an array a for loop can be used to display each data element in order. 'Inserting' a value In an array the size is fixed so you cannot insert new values, but you can change the value of elements that already exist. Overwriting the fourth element (Daphne) with a new value (Laura) will change it from Daphne to Laura. Example code for traversing: Example code for inserting: Output: Output: 'Deleting' a value In an array the size is fixed so you cannot delete values, but you can overwrite them as blank . Overwriting the second element (Shaggy) with a blank space makes it appear deleted. Example code for deleting: Output: Searching an Array For large arrays a for loop is needed to search through each element for a specific value . This example checks each name to see if it is equal to Velma. Example code for searching: Output: Two-Dimensional Array Often the data we want to process comes in the form of a table . The data in a two dimensional array must still all be of the same data type , but can have multiple rows and columns . The two-dimensional array to the right shows the characters from Scooby Doo along with their associated colour and their species. Each value in the array is represented by an index still, but now the index has two values . For example [3] [0] is 'Daphne'. We measure row first , then column . Searching a two-dimensional array: To print a specific data element you can just use the index number like Daphne above. To search for a specific value you will need two for loops, one for the row and another for the values of each row. The example to the right is looking for the value of 'Velma' and when it is round it prints the associated data from the whole row. Example code for printing: Output: Example code for searching: Output: Records Unlike arrays, records can store data of different data types . Each record is made up of information about one person or thing. Each piece of information in the record is called a field (each row name). Records should have a key field - this is unique data that identifies each record . For example Student ID is a good key field for a record on students as no two students can have the same Student ID. Data files are made up of records with the same structure. It would be most efficient for the fields in a record to be stored next to each other so that the data can be read into the record data structure in memory for processing by the CPU. In an exam you may be asked to state and design a data structure for a given scenario. If the data structure can hold values of the same data type you should draw an array , usually a 2D array for multiple rows and columns. Remember that a record is required to store values of different data types . Example questions: "A video gamer has recorded their three lap times in four Mario Kart courses." " State and design the most suitable data structure for this data." A two-dimensional array is most suitable because only one data type ( real ) is stored. "A vet surgery stores data on all dogs and cats including the animal's name, age (in years), weight (in kg) and whether or not it has been vaccinated." " State and design the most suitable data structure for this data for four animals ." A record is most suitable because the data structure requires different data types . Q uesto's Q uestions 5.1 - Data Structures: 1. Give two differences between static and dynamic data structures . [ 4 ] 2. Describe the differences between a list , array and record . [ 3 ] 3. A one-dimensional array looks like this: TigerBreeds("Sumatran","Indian","Malayan,"Amur") Write the code to: a. Print the element with the index of 3. [ 2 ] b. Change Indian to South China. [ 2 ] c. Remove the Amur element. [ 2 ] d. Search through the array for 'Malayan'. [ 2 ] 4. State and design the most suitable data structure for these scenarios: a. For each book in a bookshop, the staff need to record the title, author, number of pages and whether or not it is a signed copy. Include data for three books. [ 3 ] b. Four dieters are recording how many kilograms they have lost each month for 5 months. [ 4 ] 5. Design a file that stores the first initial, surname, age and hair colour of each member of a family. [ 8 ] Designing Data Structures Data is stored in files when it needs to be kept after the program has stopped running . To learn how to write code for file handling (e.g. opening, writing to, reading from and closing files) in Python click here . Designing a file requires more than just the field name (e.g. Name) and data values (e.g. Rebecca). The data type (e.g. string) and any validation checks (e.g. format check) should also be considered. Below is an example file design for a bakery. Designing Files 4.8 Compression Theory Topics 6.1 - Operating Systems

© CSNewbs 2026

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