In the development section should be details of the tests you have written, and the development you have completed.
You need to have tests - either performed manually, or better - automatically. The test code if you have run it automatically should be snipped using the snipping tool and put into the report.
You should also have comments in your code, and variable names should be expressive of what they are to contain. ie use 'currency' instead of 'c'.
You need to explain the code that you use, it should be sufficient to use comments in your code, which is placed into your report. It is also advisable to have a particular discussion on the variables you have used. Use the table format that we used in our sorting exercise to help you. you may need to look at https://github.com/ams-bjones/sorting for a reminder with this.
Wednesday, 25 June 2014
Things to include in your design section
Okay today is a pressure day - we are writing up our Reports for our A453 Controlled assessment.
A little formatting guidance - Please put in the page header your name, center name, center number and candidate number.
Please also include the page number.
Things to include;
A little formatting guidance - Please put in the page header your name, center name, center number and candidate number.
Please also include the page number.
Things to include;
User requirements
These are an analysis of the task - what are you expected to produce in your development stage. Don't try to get too clever here - read the task, and extract the things that you need to do. Don't be afraid of using bulleted lists here.
Success Criteria
Your success criteria are questions that have True or False answers that you can test for. Note that these should be done before you start the development section. Again these could be in bulleted statements. These could be in the form of test data and expected results. ie squaring 3 should return 9.
Algorithm
Your design section should include an algorithm. You could use pseudocode or, a flow chart, or both.
Example design section from last year, at C standard
Task Number
1:
For task 1 I have to design code and test a programme
that will simulate a dice with the side numbers of 4, 6 and 12. The programme
needs to output the dice outcome. There needs to be a loop to allow the user to
roll the dice as many times as required. To attempt this question I will
initially create a flowchart to represent the thought process behind the
programme and how it will operate. To work alongside the flowchart I will also
write some pseudo code. I will then research similar programmes used on scratch
and represent what I’ve found in a table. After my research and my planning are
completed I will start to write my code and test it.
Success
Criteria
To be
successful the program should:
·
Show the dice being rolled
·
The six sided dice when being
rolled 100 time should
o
Never roll a number higher than a 6
o
Never roll a 0 or below
o
Each number [1-6] should appear
about the same number of times, the lowest frequency should not be less than
half of the highest frequency number
o
No number should not be rolled in
100 rolls.
The same
criteria apply to the other dice.
Pseudo code:
SELECT DICE
IF DICE = 4SD
OUTPUT “4 Sided Dice!!”outcome =”1-4 ROLL”
IF DICE = 6SD
OUTPUT “6 Sided Dice!!”outcome =”1-6 ROLL”
IF DICE = 12SD
OUTPUT “12 Sided Dice!!” outcome =”1-12
ROLL”
Monday, 9 June 2014
Year 10 Controlled Assessment
Its time for some controlled assessment!
This work should all be in its own repository. Please create that now.
Controlled Assessment is carried out under fairly direct instructions from the Exam board. See the syllabus pages 21 - 31 for full details.
Before you start you should be aware of a few things. Firstly what does 'controlled' mean?
The aim of the 'controlled' in 'controlled assessment' is to establish that the work you produce and turn in is your own.
To that purpose - As your teacher I have certain guidelines that I must follow, see pages 22 - 23 of the syllabus. I am allowed to lay out the task for you, and give you fairly generic advice. I can offer approaches and places to look for research, but I cannot help you much. For the final part of the assignment - the writing up we will work in formal supervision. This will be the time we are working in silence with no communication. This will occur on Wednesday 25th June.
This work should all be in its own repository. Please create that now.
Controlled Assessment is carried out under fairly direct instructions from the Exam board. See the syllabus pages 21 - 31 for full details.
Before you start you should be aware of a few things. Firstly what does 'controlled' mean?
The aim of the 'controlled' in 'controlled assessment' is to establish that the work you produce and turn in is your own.
To that purpose - As your teacher I have certain guidelines that I must follow, see pages 22 - 23 of the syllabus. I am allowed to lay out the task for you, and give you fairly generic advice. I can offer approaches and places to look for research, but I cannot help you much. For the final part of the assignment - the writing up we will work in formal supervision. This will be the time we are working in silence with no communication. This will occur on Wednesday 25th June.
General advice:
Firstly remember the practice you have had, design the task first, write your test before your pseudo code, write the algorithm in pseudocode before you write your code, and keep your tests for each time you change the code. Build it one brick at a time.
Your last unit will inform you to what you need to include. In particular consider the testing tables, and discussion of variables that we used. You can refer to any previous work to help you with this.
Keep your work up to date, and push to Github regularly. You should push to github at least once per lesson, and once during each home learning session.
Friday, 9 May 2014
Mock Exam feedback
Lesson aims
To go through and identify correct answers to Mock exam paper.
Task
We will watch the video together:
- If you think that your paper is wrongly marked please save your question until the end of the lesson.
If you have any other questions:
- Comment on this blog.
- Or raise your hand if you wish to interrupt the video.
Friday, 2 May 2014
Binary Logic
With reference to the syllabus page 7. or section 2.1.2. When it comes to Binary logic you need to know the following;
(d) explain why data is represented in computer systems in binary form
(e) understand and produce simple logic diagrams using the operations NOT, AND and OR
(f) produce a truth table from a given logic diagram.
The second video in the series goes a little further - But is a little above the GCSE targets. Watch it if you are targeted for A / A*.
(d) explain why data is represented in computer systems in binary form
(e) understand and produce simple logic diagrams using the operations NOT, AND and OR
(f) produce a truth table from a given logic diagram.
How and why is data represented in binary form?
An introduction to binary - Yes we have seen this one before.
For a start binary means that each bit of data can have two states - on /off or 1/0. This is a hardware thing - Think of computer memory as a lot of switches, then bang a load more switches in there, and you're getting close to the pointy end. This is why data is stored and used as binary.
Understand and produce simple Logic diagrams including NOT, AND, and OR
And produce a logic table from relavent given logic diagram.The second video in the series goes a little further - But is a little above the GCSE targets. Watch it if you are targeted for A / A*.
Key Questions
Lookint through your Past exam papers you should be able to attempt these questions with confidence.
January 2011
Not assessed
May 2011
Question 4
Question 6
January 2012
Not assessed
May 2012
Question 3
Binary logic seems to be assessed explicitly in a single question during the main stream exams (May/June), but is also assessed indirectly in Database related questions.
Tuesday, 29 April 2014
Algorithms 1 - What are Algorithms
This is a quick series of revision notes, and links to the videos used in lessons about algorithms. You identified them as the number 1 thing you wanted to revise, so here we go.
Going with the same logic as used in the video One of my favorite projects at the moment is the Google self driving car. This makes sense especially when humans best reaction speed when they are concentrating is in the order of 2000ms. My iphone has a processing speed of 1.5GHz, this means it can process 1,500,000,000 calculations every second. Most desktop computers will do double this speed quite easily.
The implications of this are phenomenal. The reason that this is possible is because driving a car can be described by algorithms. Computers are great at algorithms - they can do them very quickly.
While loops continue doing something until a condition is met.
Decisions are written using the if statement.
You should be able to read an algorithm and work out what it does.
For part B you should be able to find the algorithms for simple mathematical things such as:
Why are they important
Algorithms are the shaping forces behind computing.Going with the same logic as used in the video One of my favorite projects at the moment is the Google self driving car. This makes sense especially when humans best reaction speed when they are concentrating is in the order of 2000ms. My iphone has a processing speed of 1.5GHz, this means it can process 1,500,000,000 calculations every second. Most desktop computers will do double this speed quite easily.
The implications of this are phenomenal. The reason that this is possible is because driving a car can be described by algorithms. Computers are great at algorithms - they can do them very quickly.
What do you need to know?
Referring to page 11, or section 2.1.7 of the syllabus. you need to know two things for GCSE.
(a) understand algorithms (written in pseudocode or flow diagram), explain what they do, and correct or complete them
(b) produce algorithms in pseudocode or flow diagrams to solve problems.
Part a - is about understanding algorithms. algorithms have 3 basic parts. The sequence, a loop,. and a decision.
Sequence is important - look for algorithms that don't Make sense in terms of their order. Can you put your trousers on before your boxer shorts?
There are two types of loops - for loops repeat an operation for every member of a list,or array.
Part a - is about understanding algorithms. algorithms have 3 basic parts. The sequence, a loop,. and a decision.
Sequence is important - look for algorithms that don't Make sense in terms of their order. Can you put your trousers on before your boxer shorts?
There are two types of loops - for loops repeat an operation for every member of a list,or array.
While loops continue doing something until a condition is met.
Decisions are written using the if statement.
You should be able to read an algorithm and work out what it does.
For part B you should be able to find the algorithms for simple mathematical things such as:
- Counting the members of a list
- Summing the members of a list
- Finding the mean of a list of numbers
- Sorting a list of numbers
- Finding the median of a list of numbers
Another Video - Just to recap.
Revision Questions
- Write the following algorithms in pseudo-code:
- Counting the members of a list
- Summing the members of a list
- Finding the mean of a list of numbers
- Sorting a list of numbers
- Finding the median of a list of numbers
Revision task 1
Write the pseudo-code for a game which selects a random number between 1 and 100, then prompts you to guess the number. If you guess to high the program will respond 'too high', and if you respond too low, the computer will respond 'too low'
Revision task 2
Write the pseudo-code for a player of the above game to win in as few moves as possible.
Friday, 14 February 2014
First Programming Challenge
Half term is here. But for those of you who would like a challenge there are still house pounds available.
In order to get these house pounds you need to simply either have a successful pull request, or a worthy comment on a pull request for the current programming challenge.
These house pounds are available to all year 10 students who are studying Computer science GCSE, or for any year 9 students who can contribute.
You will need to log into your GitHub account and make progress towards a solution in the following programming challenge.
https://github.com/10A/Programming-challenge-1
Contributions from all years welcome, but only those from students in years 7-10 will attract house pounds.
Cyber safety - Use a nickname on all social networks - including GitHub!
Please note that House pounds are only available to my students - Sorry, but feel free to give a pull request.
In order to get these house pounds you need to simply either have a successful pull request, or a worthy comment on a pull request for the current programming challenge.
These house pounds are available to all year 10 students who are studying Computer science GCSE, or for any year 9 students who can contribute.
You will need to log into your GitHub account and make progress towards a solution in the following programming challenge.
https://github.com/10A/Programming-challenge-1
Contributions from all years welcome, but only those from students in years 7-10 will attract house pounds.
Cyber safety - Use a nickname on all social networks - including GitHub!
Please note that House pounds are only available to my students - Sorry, but feel free to give a pull request.
Thursday, 13 February 2014
Open Source.
Open source software
During the last revision test we had a question relating to open source and customized software.The question went like this;
Karen wants to use handheld computers to take customers' orders in her restaurant. The is thinking of using custom written open source software.
a) State what is meant by custom written software
bi) State a reason why Karen may decide to use custom written software
bii) State a Second reason why Karen may decide to use custom written software
c) Discuss the implications of creating open source software for the restauraunt.
There are two issues here that you need to think about;
Method of procurement.
There are two methods of procurement - off the shelf and custom written.Off the shelf software
This exists before you buy it. It is available straight away. Usually many users have used it, and they should have worked through the bugs in the system. Usually there is also a wide community of users who can help each other. You might find this help through the internet on wikis. and forums.
Custom Built Software
This is made specifically to meet the needs of a single user, or small number of users. The users work directly with the developers to make the software. The user should get what they ask for, but this takes some skill on the part of the user is knowing what to ask for. the community of users is small if it exists at all, and this usually costs more than an off the shelf solution. However the software should have the features that the user requires, and should be easier to use, because the user and developer have worked together.Proprietary vs Open source software
Computers actually don't understand computer programmers that well. Programming languages are a "halfway house" between being something for a human to read, and something for a developer to read. What a developer actually writes is the source code. This is compiled into binary machine code which the computer actually uses to run the program. (We are talking a general case here, specific cases like the python programming language can be slightly different).
The software that is distributed is the machine code, which runs the software fine. With proprietary software the source code is owned and held by the company, or developer who wrote it. The user owns a license to use the software (the machine code) but not the license to the source code. It is the source code that allows a developer to change the software.
Open source software on the other hand is software that allows you access to read the source code. The organisation, or developer, who wrote the code includes a license that tells you what you are allowed and not allowed to do with the source code. Note that without a license the source code is still subject to copyright. For more information about specific licenses, check out Githubs guide. http://choosealicense.com/
Firstly here is Stephen Fry outlining the difference between open source, and Proprietary software, and telling us about its importance.
Secondly Here is the video Where Richard Stallman explained the birth of GNU. This time pay particular attention to the subtitles for the different words in finnish between Free as in free beer, and free as in free speech. On looking this up - I realized the mistake I made in todays lesson, Richard is actually American, not Finnish. Two guesses who I was confusing him with... (Sorry Mr Stallman!)
And finally the video that summed up the lesson.
Thanks for your attention this morning.
Friday, 31 January 2014
Introduction to Python
Introduction to Python
One key message this week is to look at the syllabus. This outlines what you need to learn for the GCSE. the syllabus is available from OCR's website, here. The relavent information is located on pages 6-11 for your exam component.
This week we have had a look at the python language, and how we can start using it.
Python can be downloaded to your computer at home for free from this site. Be sure to check that you are using version 3, and that you check the system that you are working from.
The documentation for python is located at docs.python.org. This documentation is fantastic! However learning programming involves a steep learning curve which we shall ascend carefully. The language in the documentation is designed for programmers, it is a difficult attack for you now, but that is no reason to "dumb it down". With a bit of perseverance, and a few questions you will get this in no time.
We wrote our first program in lessons this week. You can find the program I wrote here.
Github is great for sharing programs, and for editing other peoples code. we will not use a lot of its functionality during the GCSE course, but if you continue programming in any way it will become invaluable.
Key notes
Functions
- A function is declared using the def keyword. (short for define)
- A function definition is an executable statement.
- The function definition does not execute the function body;
- this gets executed only when the function is called.
Variables
- A variable is a place in memory that can store a piece of data.
- A variable is set up when a value is assigned to it using a single equals sign.
- A variable can have any name which is not already defined as a built in keyword,or function.
- A piece of data can be;
- A string
- word = “hello class”
- strings are text. ie a collection of letters, numbers, and punctuation.
- A number (integer or float)
- number = 4
- number = 4.0
- Numbers can have operations performed on them. as shown in the documenation.
- A list
- Things = [1,2,3,4,5,]
- lists have operations on them, for examples see the documentation.
Key words
This week we have used a number of other key words in lessons.
- Integer
- A whole number (positive or negative)
- Float
- A number with a decimal point (positive or negative)
- String
- Text.
- Floor
- Rounded down number.
- The opposite to the floor of a float is its ceiling (ceil).
- Product
- Result when two numbers are multiplied.
- Quotient
- Result when two numbers are divided.
Thursday, 30 January 2014
Revision Notes 2 for year 11
Today we had a look at questions 5b - 7 on your mock exam.
Question 6 asked you to recall information about relational databases. Key words that came up in today's discussion were "entity", Table, and "truth table" when dealing with logic symbols.
Here is a quick explanation from catcomputerteacher.
Question 5b
This was an expansion on the use of binary and hex. The question was asking you to remember the link between binary and hexadecimal. The link is that a nibble of binary maps exactly to a digit in hex.
A nibble is a four digit group in Binary (half a byte).
You should remember how to create this table. The pattern is worth learning.
| Binary | Hexadecimal |
| 0000 | 0 |
| 0001 | 1 |
| 0010 | 2 |
| 0011 | 3 |
| 0100 | 4 |
| 0101 | 5 |
| 0110 | 6 |
| 0111 | 7 |
| 1000 | 8 |
| 1001 | 9 |
| 1010 | A |
| 1011 | B |
| 1100 | C |
| 1101 | D |
| 1110 | E |
| 1111 | F |
Here is a rather long, but good explanation of the concept.
Why is it better? Because if is easier to read for humans.
If you are asked to Explain something in an exam give two facts, or a fact and a reason.
Why is it better? Because if is easier to read for humans.
If you are asked to Explain something in an exam give two facts, or a fact and a reason.
Question 6
Question 6 was about databases, and logic.| fig 1 - Specification relating to required database knowledge |
Question 6 asked you to recall information about relational databases. Key words that came up in today's discussion were "entity", Table, and "truth table" when dealing with logic symbols.
Here is a quick explanation from catcomputerteacher.
Question 7
Question 7 asked us to recall information relating to programming. The key words in the question were selection, and iteration. You should be able recognize these statements written in pseudo-code, or code.
This is explicitly required by the syllabus;
| fig 2 - from syllabus. it is important to learn the meanings of these key words. |
Summary
We are making good progress! I know that I need to plan a lesson on databases. As there were a lot of gaps in your knowledge there, but we are making good progress towards success. There is no rush, feel free to ask questions in class, or in the comments.
Friday, 24 January 2014
Revision notes for year 11
Today we had a look at the first 5 questions from our mock test. This is a quick reminder of the main points that came up in discussion, and some extra resources to help you revise.
The mock exam is still under restriction from the exam board, hence I cannot link to it here.
Question 1.
When examiners create exams they anticipate students being nervous at the start of exams. The trick with questions like this one is to calm yourself and read it carefully. These types of questions need you to almost physically slow yourself down and to read carefully. Also check carefully these questions at the end of the exam. your nerves have gone by then, but you still may need these marks.
Question 2
Although the question asks for an answer, the examiner is after your working more than the actual answer. This is true for most mathematical questions in computing.
^ means to the power of
Facts to remember: 2^10 = 1024
1 kilobyte = 1024 bytes
1 megabyte = 1024 kilobytes = 1024^2 bytes
1 gigabyte = 1024 megabytes = 1024^3 bytes
1 terabyte = 1024 gigabytes = 1024^4 bytes
1 petabyte = 1024 terabytes = 1024^5 bytes
We also discussed the ROM and RAM in a computer.
key differences:
We also discussed the ROM and RAM in a computer.
key differences:
- ROM is smaller than RAM
- ROM contains BIOS,
- ROM is non-volatile, RAM is Volatile.
- ROM contains enough information to boot the computer and load an Operating system.
- RAM is the working memory of the computer. It is the "what am I doing here and now?"
More information - Bitesize
Question 3
Question 3 relates to computer hardware, and in particular the Von-Neuman Architecture.
Good links to help:
We will do more about this later.
If an exam asks you to state an answer, you simply write the answer down. if a question asks you to describe a something you state it first, then justify your statement.
for example:
State a hardware improvement to help a blind person:
- A braille keyboard
Describe a hardware improvement to help a blind person:
- A braille keyboard would provide a familiar interface for blind people to use.
Good links to help:
We will do more about this later.
Question 4
This related again to the Von-Neuman architecture of a machine. The key point in this question was the language used in the test.If an exam asks you to state an answer, you simply write the answer down. if a question asks you to describe a something you state it first, then justify your statement.
for example:
State a hardware improvement to help a blind person:
- A braille keyboard
Describe a hardware improvement to help a blind person:
- A braille keyboard would provide a familiar interface for blind people to use.
Question 5
This question related to number systems used with computers and other systems. in particular converting between denary (base 10), and binary (base 2). I have attached a couple of resources for the questions we went through today, but these are quite advanced, don't be afraid to ask!
resources:
Points for future
We will have a couple of lessons relating to the "Von-Neumann" computing architecture, and binary numbers. We will go through some more of the mock next Friday.
Subscribe to:
Posts (Atom)