python
Unit Number: AS 91637 – 3.46
Unit Name: Construct an advanced computer program for a specified task
(Version 1)
Level 3
Credits 6
Planned Review Date: 31 December 2016
Learner’s Name
Instructions
· Read all instructions carefully
· Complete ALL tasks
· Ensure your name is on every page of your assessment
· Check that this assessment has pages 1-4 in the correct order and that none of these pages is blank.
Conditions
· The timeframe for completion will be set by your Assessor according to a particular classroom situation.
· You must follow legal ethical and moral responsibilities when creating your documents
Note to Assessors:
You will need to provide candidates with a copy of the documented policies and procedures or commonly accepted practices of your organisation prior to being assessed against this unit standard
I give permission for my assessment to be given to the external assessor for marking
Student
Candidate’s Statement of Authenticity
This assessment has been done entirely by me.
Signed Date
This assessment is for use by purchasing schools only
|
Assessment for: AS91637– 3.46 Construct an advanced computer program for a specified task Version 1, Level 3, 6 Credits INTERNAL Planned Review Date December 2016
|
||
|
Achievement Criteria |
||
|
Achievement ( |
Achievement with Merit ( |
Achievement with Excellence ( |
|
Develop a complex computer program for a specified task. |
Skilfully develop a complex computer program for a specified task. |
Efficiently develop a complex computer program for a specified task. |
|
· Designing and implementing a program that includes variables, an indexed data structure, and a modular structure including details of the procedural structures of the modules |
· Following a disciplined design and implementation process, with documented cycles of incremental development |
· Ensuring that the overall modular and procedural design, graphical user interface, and event handling design, are a well-structured, logical decomposition of the task, and that the program is flexible and robust |
|
· |
· Using well-chosen modular and procedural structures, scope and encapsulation for data and methods, graphical user interface and event handling mechanisms |
· |
|
· Including a working graphical user interface with different sources of event generating components and event handling |
· |
|
|
· Using classes and objects to encapsulate data and methods |
|
|
|
· Setting out the program code clearly and documenting the program with comments |
· Documenting the program with variable and module names and comments that accurately describe code function and behaviour. |
· Setting out the program code concisely and documenting the program with comments that explain and justify decisions |
|
· Testing and debugging the program to ensure it works on a sample of expected input cases. |
· Using a comprehensive testing process, to ensure that the program works on inputs that include both expected and boundary cases. |
· Comprehensively testing and debugging the program in an organised and time effective way to ensure the program is correct on expected, boundary and invalid input cases. |
|
· The programming language for this standard must be a text-based Object-oriented programming language that supports graphical user interfaces (GUIs) and event based programming. |
||
|
· The platform for the program could be a personal computer, a mobile device, or a web browser. The program must involve graphical elements such as widgets, images, and/or shapes, and must respond to event based input from the user. |
||
|
· A complex computer program is one that has a modular structure; an indexed data structure (e.g. array or list); input and output; procedural structures that combine sequential, conditional, and iterative structures; a graphical user interface and event handling; and that includes classes and objects. Inheritance is not required. |
||
|
· Any code that is auto-generated by an Integrated Development Environment (IDE) cannot be used as evidence of student code. |
||
|
· A specified task refers to a set task which requires the development of a complex computer program to resolve. The task must be of sufficient rigour to allow the student to meet the standard and needs to be agreed prior to the program being developed. It may be teacher-given or developed in negotiation with the student. |
This assessment is for use by purchasing schools only
|
Conditions of Assessment You may open and use any previous flowcharts and programs you have created, notes that you have written yourself or the teacher has given you, the Internet and reference manuals. Your teacher can give you only very limited guidance, such as telling you where to look if you get stuck You can discuss your ideas with other students but do not show them your plans or program You may not copy others work. This includes code snippets and flowchart design All work submitted MUST be your own
|
Assessment Task
A small company ‘flow computing’ specialises in writing small programs that can be given away to students to help them with their learning
They want your help to create a program that will help students with their maths. You will be one of many computing students who will be creating a program so they want you to come up with your own design without being too limited by design constraints. You are therefore to design your own program. It MUST include a Graphical User Interface (GUI). It can be aimed at ANY age
They do however have a few specifications that need to be followed
(Make sure you read all the specifications before you begin)
Planning the program
· Create your plan and show it to your teacher before you do any coding
· If you later revise the plan keep the original and submit both for marking
· The plan should include a flowchart to show the structure of the program
· It should show the modular structure of the program, including the modules names
· Your flowchart should show how your program will use classes and objects
· It needs to show where the GUI(s) are called
· How events (such as clicking and entering text) are handled must be shown
· The plan also needs a variable table that show the name, type and scope of all variables
· This should include objects, classes and lists
· Be sure to give all variables appropriate names
· Give a short description of what each variable is for
· Create a testing table that can be used when the program has been written
· It should test for expected variables and boundary variables
· It should also include unexpected variables
· Warning: If boundary and unexpected variables cannot be input into your program you will be limiting yourself to a highest grade of Achieved
· Produce a sketch of how the program will look once written
· You must hand draw or use programs like Paint to produce your sketch
· Indicate on it the function and type for each aspect of the design
Producing the program
· Do not start writing the program until your teacher has approved your plan
· Your plan should be robust enough to allow you to produce your program. If however changes are required update your plan ensuring you keep your original plan
· Ensure your program includes the following attributes…
· Variables that are well named and have suitable attributes
· Makes use of classes and objects
· It has an array or list - this will most likely be associated with classes and objects
· Has modules (subroutines) that are well structured
· Makes use of a Graphical User Interface for the main part of the program
· Has multiple event handling on the GUI – such as mouse clicks or text input boxes
· Has both input and output (for Achieved the Input does not have to be on the GUI)
· Is designed to be expanded or changed with relative ease (for Excellence)
· Has conditional statements such as IF
· Makes use of loops such as WHILE
· Depending on the language you use the program could run on a computer, mobile device or a web browser (discuss this with your teacher if you are not running it on a computer)
Documenting cycles of development
· Keep a record of your development process
· Keep a diary of what you did and when
· When plans are changed produce updated plans, make sure you keep the originals
· Detail how you tested each module while the program is being developed
Documenting the code and laying out the program
· Your code must be documented with comments that explain what each section does
· A section is a code snippet that does one task. Many sections will make a module
· Your comments should also justify why you did things the way you did them
· You code needs to be laid out in a sensible and easy to understand way
· This includes making good use of tabs and blank lines
Testing and debugging the program
· Test the completed program using your testing table to check it works properly
· Test for expected, boundary and unexpected variables
· Remember if your program cannot accept boundary and unexpected variables you will limit yourself to a lower grade
· Make any changes needed to the program (& possibly the plan) to ensure it runs properly
Explanatory paragraphs
· Read the Achievement Criteria on the second page. Write a paragraph or paragraphs explaining how you have met the requirements for Merit and Excellence
This assessment is for use by purchasing schools only
Generic Technology standard 3.3 AS91610 – 6 credits
Develop a conceptual design considering fitness for purpose in the broadest sense
If you are also doing this standard you may have already completed it, or your teacher may give you the assessment at the same time as this one.
If you are doing both standards you should use materials produced for 3.3 as part of your planning for this assessment
Digital Technologies AS 91637 – 3.46 V1 Student Copy Page 1 of 4