0% found this document useful (0 votes)
9 views

9.1.10 Project Rubric

Uploaded by

yomostchua
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

9.1.10 Project Rubric

Uploaded by

yomostchua
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Final Project (Unit 1 – Programming & Computational

Thinking 1 – G8)
The skills you have learned in this unit are all useful in the iterative development
cycle:
 using count-controlled (for loops) to repeat code
 using an array to store multiple values
 following code in a trace table (seeing how variables, conditions and
outputs change)
 analysing different types of test data (normal, invalid and extreme data)
 understanding the different types of error code may have (logic, syntax
and runtime)
You are going to develop a chatbot program that helps someone make a
choice.
Your chatbot should start by giving the user a list of options, then ask
the user questions to narrow down the list. At the end, the program
should tell the user what the best option (or options) are.

Steps
1. Plan:
 Decide what list your chatbot will start with and decide what
questions your chatbot will ask.
 List the variables and data types that are going to be used in your
program.
 List the arrays you need to use in your program and give them a
suitable name.
2. Design the algorithm using pseudocode:
 Plan the algorithm using pseudocode.
 For maximum marks (see the rubric for more info), you must:
i. Use string manipulation e.g. length, upper/lower case,
capitalization.
ii. Use an array
iii. Use a count-controlled loop (for loop) with selection (i.e. a
conditional statement / if statement) inside the loop
 IMPORTANT: Showing your pseudocode/design for the project is one
of the best ways to prove that your team’s work is original and your
own efforts. Failing to show your plans/designs for the program
could result in your project being ungraded.
3. Develop and test the program
 Write the program in Python using https://trinket.io/python3 or
https://www.programiz.com/python-programming/online-compiler/
 Continually test, debug, and improve the program. You should save
each round of development and testing as a new file, so you have a
copy of each iteration of your program.
 Create at least one test plan.
 Create at least one trace table.
 For maximum marks (see the rubric for more info), you must:
i. (In the test plan) include normal, extreme and invalid test
data.
ii. (In the trace table) track ALL the variables, including arrays.
iii. Fix your errors.
 Challenge: identify whether they are logic, syntax or
runtime
4. Evaluate your project
 When your program is finished, write a short reflection explaining
what was successful, and what you could do better next time. Your
reflection should be specific and identify which phase
(plan/design/develop/test) you are talking about.

Ideas
Here are some ideas, which you may use to build your project. You may use your
own idea, too, and are encouraged to personalise and develop the project so the
result is as you like it.
Whatever your idea is, please make sure you read the rubric on the next
page – that is how you will be graded:
(A) "What's your best subject"?
The chatbot starts by listing all the subjects. The chatbot asks which
subject they enjoy the most, from the list, for example:
1 Maths
2 English
3 Art
4 CLISE
The user must type a number matching the subject they enjoy, for
example 2. If the user types in bad information they get a warning
message.
The chatbot responds by saying "ENGLISH is the best!"

(B) "What should I do, where?"


The chatbot starts by listing out many different fun activities. The chatbot
asks which activity the user enjoys, numbering each activity. For example:
1 Drawing
2 Playing the piano
3 Basketball
4 Dancing
The user must tpe a number matching the activity. If the user gives an
invalid choice the chatbot gives a warning message.
Next, the chatbot lists out different places in the world, numbering each
place. The chatbot asks which place the user likes the sound of the most.
After the user's answer, the chatbot says "You should definitely do some
<activity> in <place>!"

(C) "What's your best subject"? (challenge)


The chatbot starts by listing all the subjects. The chatbot asks which
subject they enjoy the most, from the list, for example:
1 Maths
2 English
3 Art
4 CLISE
The user must type a number matching the subject they enjoy. If the user
types in bad information they get a warning message, otherwise their
answer is stored in an array. The chatbot asks the same question again, a
total of 5 times.
Next, the chatbot lists out the 5 subjects the user chose.
The chatbot then asks which subject the user is best at, from that list.
After the user responds, the chatbot says that subject is the best.

Rubric for your pseudocode


Reminder: “selection” means conditional statements/if statements.
Criteria 0 - No 1- 2- 3 - Proficient 4 - Advanced
Evidence Beginning Developing
1. Pseudocode Pseudocode Pseudocode Pseudocode Pseudocode
Algorith is not describes describes an describes a describes a
m Design provided or an algorithm complete full and
and there is no incomplete that is partly algorithm correct
Control meaningful algorithm, complete with minor algorithm.
Structur algorithm. with big with some mistakes.
es mistakes. mistakes. It uses
9P.02, It uses selection
9CT.03, It uses either selection inside a
9CT.06, selection or and a count- count-
9CT.09 count- controlled controlled
controlled loops, but loop OR a
loops but not does not count-
both. combine controlled
both. loop inside
selection.

Rubric for your Python program


Note that the Python code is worth double marks.
Criteria 0 - No 2- 4- 6- 8-
Evidence Beginning Developing Proficient Advanced
2. No evidence Evidence of Evidence of Evidence of Evidence of
Programm of: 1 of: 2 of: (all 3) of: (all 4) of:
ing in a count- count- count- count- count-
text- controlled controlled controlled controlled controlled
based loops / loops / loops / loops / loops /
language reading data reading reading data reading data reading data
9P.01, from arrays / data from from arrays / from arrays / from arrays /
9P.02, string arrays / string string string
9P.03, manipulation string manipulatio manipulatio manipulatio
9P.04, . manipulatio n. n. n/
9P.05 n. storing data
in arrays
either by
using the
index
or .append()
Rubric for your iterative development cycle
Criteria 0 - No 1- 2- 3 - Proficient 4 - Advanced
Evidence Beginning Developing
3. Code has Code has Code has Code has no Code has no
Testing errors and errors, and errors. errors. errors.
and there is no there is
Debuggin evidence of evidence There is There is Test plan(s)
g a test plan of either a evidence of evidence of include
9P.08, or a trace test plan either a test either a test comprehensi
9P.09, table. or trace plan or a plan or a ve normal,
9P.10, table, but trace table. trace table. extreme, and
9P.11 not both. Either may Either may invalid data.
have some have some
OR omissions or omissions or Trace
minor errors. minor errors. table(s)
Code has correctly
no errors, follow all
but there variables
is no including
evidence arrays for a
of testing stated input.
and
debugging
.

Rubric for your evaluation


Criteria 0 - No 1- 2- 3 - Proficient 4 - Advanced
Evidence Beginning Developing
4. A reflection Reflection is provided, but Reflection is N/A
Evaluatio is not fairly general in nature. specific and
n evidenced. related to the
9P.07 phase(s)
(plan, design,
develop, test)

You might also like