Search CSNewbs
304 results found with an empty search
- 1.3 - Input, Output & Storage | OCR A-Level | CSNewbs
Learn about different input and output devices, RAM (random access memory) and ROM (read only memory) and storage devices, including solid state, magnetic and optical types. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 1.3 - Input, Output & Storage Specification: Computer Science H446 Watch on YouTube : Input & output devices Storage devices RAM & ROM Virtual storage This topic covers the internal and external devices required to input data into computer systems , output from them and store data for both temporary and long-term use . Input & Output Devices Input devices , such as a keyboard , mouse , microphone or sensor , allow data to be entered into a computer system for processing . Input can be manual (e.g. typing on a keyboard ) or automatic (e.g. a temperature sensor taking readings ). Output devices , such as monitors , printers and speakers , present the results of processing in a form understandable to humans . Input and output are not limited to text - they may also be visual , audio or tactile (e.g. braille displays or printed paper ). Storage Devices Secondary storage is non-volatile storage used to permanently hold programs and data when not in use by the CPU . There are three types : Magnetic storage uses magnetised patterns on a disk or tape (e.g. hard disk drives or magnetic tape ) to store large amounts of data for a low cost per gigabyte . Solid-state storage uses flash memory with no moving parts (e.g. SSDs and USB drives ), making it very fast , durable and portable . Because there are no moving parts, it is the fastest to access data . Optical storage uses lasers to read and write data as pits and lands on a disc surface (e.g. CDs, DVDs, Blu-ray). Discs are cheap to mass produce , but they are not durable , slow to access and have a low capacity . RAM & ROM Primary storage is low-capacity , internal storage that the CPU can directly access . There are two types: Random Access Memory (RAM ) is volatile storage that temporarily holds both programs and data currently in use , including the operating system . It can be read from and written to , but all contents are lost when the power is turned off . Read Only Memory (ROM ) is non-volatile storage that normally cannot be changed . The contents of ROM are saved when the power is turned off . ROM stores the BIOS and firmware , including the instructions needed to boot the computer when it is switched on . Virtual Storage Virtual storage is the separation of logical storage from physical storage , such as when data is stored remotely and accessed over a network instead of being kept locally . A common example is cloud storage , where data is held on remote servers and accessed via the internet . Benefits are that it is scalable , enables easy collaboration , provides automatic backup and saves local storage space . Drawbacks include that it relies on a stable internet connection , poses security risks and reduces user control over data . Q uesto's K ey T erms Input & Output Devices Secondary Storage: magnetic, solid state, optical, portability, capacity, cost (per GB), access speed, reliability, durability, power consumption Primary Storage: RAM, ROM, volatile, non-volatile Virtual Storage: cloud storage D id Y ou K now? The first commercial hard disk drive , the IBM 305 RAMAC (released in 1956 ), was the size of two fridges , weighed around a tonne , and stored just 5 MB of data - about the same as one .mp3 song . 1.2 - Types of Processor A-Level Topics 2.1 - Systems Software
- Greenfoot | Common Errors | CSNewbs
The most common errors made in Grennfoot when making a game and how to fix them, including when missing punctuation is expected or the end of file is reached while parsing. Common Greenfoot Errors Greenfoot Home If the world becomes greyed out and you can't click on anything then an error has occurred. The actor with the error will have red lines on it. When an error occurs, a red squiggly line will appear underneath the problem. Hover your mouse over the line and a helpful message will appear to help you solve the issue. Some of the more common errors (and how to fix them) are listed below: ; expected Every line with a white background must end in a semi colon ( ; ) ) expected You have missed a bracket . Count the number of open brackets and the number of closed brackets on a line and make sure you have an equal number of both. reached end of file while parsing You are missing at least one curly bracket ( } ) at the end of your program . Press enter to move onto a new line at the bottom; you must have a closed curly bracket with a yellow background and another closed curly bracket with a green background . cannot find symbol You have typed a command incorrectly . Greenfoot uses a system where commands have no spaces and each word after the first word is uppercase . Such as isKeyDown not IsKeyDown and not isKeydown. Check your spelling and capitals carefully. Stuck ? If you start typing but can't remember what commands come next, press Ctrl and Space together to show a list of all possible commands that you can use.
- 3.6 - 7 Layer OSI Model - Eduqas GCSE (2020 spec) | CSNewbs
Learn about networking standards and the seven layers of the Open Systems Interconnected (OSI) model - Application, Presentation, Session, Transport, Network, Data Link and Physical. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.6: 7-Layer OSI Model Exam Board: Eduqas Specification: 2020 What are networking standards? Networking standards are rules that allow computer systems to communicate across networks . Standards have been created to ensure devices can exchange data and work together . What is the 7-layer OSI Model? The OSI ( Open Systems Interconnection ) model is split into 7 layers . The model is used to visualise the different parts of a network as each of the seven layers has a specific role . Splitting a network design into layers is beneficial to programmers as it simplifies design , making it easier to modify and use . Each layer has a certain purpose and is associated with different protocols . The seven layers are explained below: 7 Allows humans and software applications to use the network e.g. browsers (HTTP /HTTPS ) and email (SMTP ) and file transfer (FTP ). 6 The purpose of the presentation layer is to display data in a standard format that other devices can accept and understand . 5 The session layer establishes a connection between computers allowing data to be sent between them. Data can be synchronised in each session to allow for efficient data transfer . 4 TCP breaks the data down into data packets . This layer makes sure the data is sent and received in the correct order and reassembled at the destination without errors. 3 IP is responsible for addressing and routing data packets . The optimal route for the data to take is calculated in this layer. Also known as the 'Internet Layer '. 2 Ethernet sets out the format of data packets . This layer handles transmission errors and passes data to the physical layer . 1 This layer converts the data packets into bits so they can be transferred across a physical connection using routers and switches . Q uesto's Q uestions 3.6 - 7-Layer OSI Model: 1a. What are networking standards ? [ 2 ] 1b. Describe why network designs are split into layers . [ 2 ] 2. Create a diagram similar to the one above and describe each layer of the OSI Model. [ 14 ] 3. Look at the statements below and name the layer that is being described: a. This layer ensures data packets are sent and received correctly. b. This layer checks for errors in transmission and sets out the data packet format. c. This layer displays data in a format that can be understood. d. This layer allows software like web browsers to interact with the network. e. This layer transfers bits across a connection using routers. f. This layer establishes a connection between computer systems. g. This layer uses addresses to ensure data packets take the correct route. [ 7 ] 3.5 - Protocols Theory Topics 3.7 - The Internet
- Python | CSNewbs
Learn how to create simple programs in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. Formerly pynewbs.com. Follow the instructions in each section and try the practice tasks on every page . At the end of each section are larger problems to solve. Pyt hon Sections 0. Setting up Python Installing and Using Python 1. Printing and Variables a. Printing b. Comments c. Creating Variables d. Using Variables Section 1 Practice Tasks 2. Inputting Data a. Inputting Text b. Inputting Numbers Section 2 Practice Tasks 7. Subroutines a. Procedures b. Functions Section 7 Practice Tasks 8. Lists a. Using Lists b. 2D Lists c. Dictionaries Section 8 Practice Tasks 9. String Handling a. Basic String Handling b. Number Handling Section 9 Practice Tasks 3. Data Types & Calculations a. Data Types b. Simple Calculations Section 3 Practice Tasks 4. Selection a. If Statements b. Mathematical Operators ( & MOD / DIV) c. Logical Operators Section 4 Practice Tasks 5. Importing from Libraries a. Random b. Sleep c. Date & Time d. Colorama e. More Libraries (math) Section 5 Practice Tasks 6. Loops a. For Loops b. While Loops Section 6 Practice Tasks 10. File Handling a. Open & Write to Files b. Read & Search Files c. Remove & Edit Lines Section 10 Practice Tasks 11. User Interfaces a. Graphical User Interface 12. Authentication a. Error Handling Extended Tasks Extended Task 1 (Pork Pies) Extended Task 2 (Lottery) Extended Task 3 (Blackjack) Extended Task 4 (Vet Surgery) Extended Task 5 (Colour Collection) Extended Task 6 (Guess the Word) Extended Task 7 (Guess the Number)
- 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 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
- 1.2 - The FDE Cycle - Eduqas GCSE (2020 spec) | CSNewbs
Learn about the seven steps of the fetch-decode-execute cycle and important registers in the CPU. Based on the 2020 Eduqas (WJEC) GCSE specification. 1.2: The FDE Cycle Exam Board: Eduqas Specification: 2020 The Fetch - Decode - Execute (FDE) cycle is performed by the CPU millions of times every second. This cycle is how the CPU processes data and instructions for each program or service that requires its attention. Important Registers A register is a small storage space for temporary data in the CPU . Each register has a specific role . There are five essential registers used in the FDE cycle : Program Counter (PC) A register that tracks the RAM address of the next instruction to be fetched . Memory Address Register (MAR) A register that tracks the RAM address of the instruction that is to be fetched . Memory Data Register (MDR) The MDR stores the instruction that has been transferred from RAM to the CPU . Current Instruction Register (CIR) A register that stores the instruction that has been fetched from RAM , and is about to be decoded or executed . Accumulator (ACC) The ACC stores the result of mathematical or logical calculations . Fetch - Decode - Execute Cycle The essential idea of the FDE cycle is that instructions are fetched from RAM , to be decoded (understood) and executed (processed) by the CPU . 1. The Program Counter (PC ) register displays the address in RAM of the next instruction to be processed . This value is copied into the Memory Address Register (MAR ). 0054 2. The PC register is increased by 1 . This prepares the CPU for the next instruction to be fetched. 0055 3. The CPU checks the address in RAM which matches the address held in the MAR . 0054 4. The instruction in RAM is transferred to the Memory Data Register (MDR ). 5. The instruction in the MDR is copied into the Current Instruction Register (CIR ). MDR MDR CIR 6. The instruction in the CIR is decoded (understood) and executed (processed). Any result of an execution is stored in the Accumulator (ACC ) register. CIR ACC 7. The cycle repeats by returning to the first step and checking the program counter for the address of the next instruction . Q uesto's Q uestions 1.2 - The Fetch - Decode - Execute (FDE) Cycle: 1 . What is the purpose of the registers ? [1 ] 2 . Describe the purpose of each register : a. The Program Counter (PC) [ 1 ] b. The Memory Address Register (MAR) [ 1 ] c. The Memory Data Register (MDR) [ 1 ] d. The Current Instruction Register (CIR) [ 1 ] e. The Accumulator (ACC) [ 1 ] 3. Draw a diagram of the seven steps of the Fetch - Decode - Execute cycle . [7 ] 1.1 - The CPU 1.3 - Primary Storage Theory Topics
- Key Stage 3 Python | Variables | 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 - #2 - Variables 1. Number Variables A variable is a value that can change . Imagine there are 20 biscuits in a jar. Then I eat one. Now there are only 19. You must state what the value of a variable is before it is used . e.g. biscuits = 20 Task 1 - Create a new Python program and save the file as 2-Variables.py Create a variable called sweets and give it the value 15. Then print sweets. Variable names cannot have spaces . You can use underscores if you want, e.g. num_of_eggs When you are printing variables, you don't put them in speech marks . Otherwise, it will print the variable name and not the value. 2. String Variables A string is a programming term for a collection of characters . When you are giving a variable a string value, it must be written in speech marks . Remember when you print the variable however, it is never printed in speech marks . Task 2 - Create a variable called name and give it the value of your name. Then print the name variable. 3. Using Variables in a Sentence When we have printed the variables so far, they have not been very informative! You can print variables together with sentences so that they mean more. Use a comma ( , ) between variables and sentences . Task 3 - Use the pictures to help you add commas and sentences to your program to be more informative. 4. Using Variables Together You can print more than one variable together in the same sentence by separating them with sentences and commas . If this doesn't work, double-check your program has a comma between each variable and sentence . Task 4 - Type a new print line that uses both your name and your sweets variables together. Use the image to help you. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Funny Animals Create a new Python program. Save it as ' 2-FunnyAnimals.py ' Add a comment at the top with your name and the date. Create a variable for a colour and give it a value (e.g. "blue") Create a variable for an animal and give it a value (e.g. "horse") Print a funny sentence that uses both variables. BONUS : Try to use only one print line. BONUS : Try to use only three lines in total . Remember: Break up variables in a print line by using commas. When you run it, it could look something like this: Challenge Task 2 - Funny Sentence Create a new Python program. Save is as ' 2-FunnySentence.py ' Add a comment at the top with your name and the date. Write a program that uses three variables, an adjective (descriptive word), a number and an animal. Print a funny response using all variables. BONUS : Try to use only one print line. BONUS : Try to use only four lines in total . Remember: Break up variables in a print line by using commas. When you run it, it could look something like this: <<< #1 The Basics #3 Inputs >>>
- Python | 3a - Data Types | CSNewbs
Learn about the different data types used in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 3a - Data Types Data Types in Python If you are a Computer Science student you need to know about the different data types that are used in programming. String – A sequence of alphanumeric characters (e.g. “Hello!” or “Toy Story 4” or “Boeing 747” ) Integer – A whole number (e.g. 1470 or 0 or -34) Float (also called Real ) – A decimal number (e.g. -32.12 or 3.14) Boolean – A logical operation (True or False) Character – A single alphanumeric character (e.g. “a” or “6” or “?”) [ Not used in Python as it would just be a string with a length of 1] Converting to Another Data Type Converting a variable from one data type to another is called casting . Casting Commands str (variable_name) converts a variable to a string . int (variable_name) converts a variable to a integer . float (variable_name) converts a variable to a float (decimal number). An integer (or float ) value may be cast into a string so that it can be used with + as part of a sentence to avoid spaces . total = 45 print ( "You owe £" , total , "in total." ) print ( "You owe £" + str (total) , "in total." ) = You owe £ 45 in total. You owe £45 in total. When dividing an integer the answer is automatically given as a decimal number (float ), even if it is .0 (e.g. 10 / 2 would give 5.0). Casting a float (also known as real) number into an integer using int() will remove the decimal . total = 100/10 print ( "The answer is" , total ) print ( "The answer is" , int(total) ) The answer is 10.0 The answer is 10 = Data Types Task 1 ( Time) Write an input line with int to ask the current hour . Write another input line with int to ask the current minute . Write a print line with str() that outputs this as a clock time. Example solution: What is the hour? 12 What is the minute? 44 The time is 12:44 Data Types Task 2 ( Decimal ) Write an input line with int to ask for any number . Use float() in a print line to output number as a decimal. Example solution: Enter any number: 456 456.0 ⬅ Section 2 Practice Tasks 3b - Simple Calculations ➡
- 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.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
- CSN+ Preview | CSNewbs
About CSNewbs Plus (CSN+) CSN+ is a premium collection of resources made for teachers that follows the Computer Science specifications covered on the website . Currently, these resources are in development , with the Eduqas GCSE resource pack arriving first, based on the Eduqas GCSE Computer Science 2020 specification . < Free zip folder download of all resources for Eduqas GCSE topic 1.1 (The CPU) *Updated Jan 2021* Resources included for each topic: Lesson Slides Starter activity (to print) Task resources (e.g. diagrams or worksheets to print) Task answers What is included in the CSNewbs+ GCSE collection? 39 presentation slides 39 starters 39 task answer documents 19 revision activity pages 7 topic tests & answers See below for more details: + Complete presentation slides for each of the 39 theory topics in the Eduqas GCSE 2020 specification . PowerPoint and Google Slides compatible. Activity resources to print . Including diagrams , tables and worksheets for lesson tasks . All answers included for teachers to use. Starter questions that recap the previous topic. For teachers to print before the lesson. All answers included in the lesson slides. 39 starters . Comprehensive answers for all lesson tasks . 39 task answer documents containing answers for over 100 lesson tasks for teachers to use . Revision templates for students to complete, to print on A3 paper . 19 pages and 7 revision lesson slides . Exercise book headings and the driving question (lesson focus) 7 end-of-topic tests with brand new questions . All answers included for teachers. What is included on the presentation slides? The following breakdown shows the presentation slides for 1.1 (The CPU): A title slide The content covered from the Eduqas GCSE specification Exercise book headings and the driving question (lesson focus) Answers to the starter activity questions Lesson objectives An explanation of the topic Clear explanations of the content First task. Students use slides or CSNewbs to complete. All answers on separate teacher document. Task 2. Table provided in teacher resource pack to print. Further explanations of the content Further explanations of the content with diagrams. Further explanations of the content with diagrams. Task 3. Answers in the teacher document. Plenary to check the students' understanding of the lesson topics. < Free zip folder download of all resources for Eduqas GCSE topic 1.1 (The CPU) *Updated Jan 2021*
- 2.3 - Software Development | OCR A-Level | CSNewbs
Learn about software development methodologies such as the waterfall lifecycle, agile methodologies, extreme programming, the spiral model and rapid application development (RAD). Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 2.3 - Software Development Specification: Computer Science H446 Watch on YouTube : Waterfall Lifecycle Extreme Programming Spiral Model Rapid Application Development Software development models are step-by-step methods for creating and maintaining software . They are used to keep projects organised , reduce mistakes and make sure the finished program meets the user’s needs . Different models suit different types of projects . Waterfall Lifecycle The waterfall model is a linear and structured approach where each phase is completed one at a time in order . It needs all requirements to be clearly defined at the start , with little to no changes allowed once a phase is finished . This model is best suited for projects with fixed requirements and minimal risk of change . Extreme Programming Extreme Programming ( XP ) is a type of agile methodology that uses an iterative and flexible approach, progressing in small , usable chunks called iterations (or sprints ). It relies on frequent collaboration with stakeholders and user feedback to adapt to changing requirements . This model is ideal for dynamic projects where quick delivery and frequent updates are important. Spiral Model The spiral model combines iterative development and risk management , progressing through repeated cycles of planning , risk assessment , engineering ( development and testing ) and evaluation . Each loop focuses on identifying and addressing risks early in the project. It is ideal for complex and high-risk projects where requirements may change over time . Rapid Application Development The rapid application development ( RAD ) model focuses on quickly building software through iterative development and frequent user feedback . It uses reusable components , time-boxing and constant feedback to speed up the delivery of an effective final product . RAD is best suited for projects that need to be completed quickly and where requirements can evolve during development . Q uesto's K ey T erms Software Development: waterfall lifecycle, agile methodology, extreme programming (XP), spiral model, rapid application development (RAD) D id Y ou K now? Agile development is named after the ' Agile Manifesto ' - a set of principles for software development agreed by a group of developers at a ski resort in Utah , USA in 2001 . 2.2 - Applications Generation A-Level Topics 2.4 - Programming Languages








