More+instructions+from+OCC

**ITGS Projects May 2012 onwards using programming tools to develop the product**

Any project involving programming tools must meet the requirements for the ITGS project and additionally the student must provide the following:

1. the **product** (eg app) or whatever evidence is available from the making of the product must be on the CD-ROM/DVD that is submitted for the ITGS Project. The full working version must also be made accessible from a website or from an Internet service so that it is available to the Moderator.

2. an **8-10 minute video** must be made for any programmed product that runs on a device other than a desktop or laptop computer (eg iPhone/iPad/iPod Touch, Androids, Interactive Whiteboards, calculators...). The video must demonstrate all of the key features of the product and how the product is complex. The student must capture the video directly from the device. They can then use a video editing program to edit the video capture and to add audio explanations. This video must be added to the documentation folder and linked to the cover page in the free text area.

3. **explanations** of the programming and complex techniques used in the development of the product must be included in Criterion E Product Development with screenshots.

4. **evidence** for the programmmed solution must include:


 * The programmed solution should solve the client's needs and should show evidence of input, processing and output.


 * The complete design of the product using accepted design methodologies for programming must be used in Criterion D Product Design.


 * The programming used to create the product must be closely aligned to the design presented in criterion D Product Design


 * There needs to be evidence of original code, structured programming and elegance in coding.


 * Within Criterion D Product Design and Criterion E Product Development, all programming tools and any code used from sources (i.e. online forums, books, help sites) must be referenced as appropriate.


 * Depending on the client's needs, an advanced program may include arrays, string handling, file handling, subroutines, parameter passing, loops, conditions, object definitions.


 * The programming code must be clearly documented indicating where the above techniques have been used and also any code that was used/adapted from other sources.


 * The programming code must be copied and pasted at the end of Criterion E Product Development in a section labelled Appendix.


 * Advice for the teacher on programming projects involving devices (i.e. iPhone/iPad/iPod Touch, Androids, Interactive Whiteboards, calculators...):**


 * Make certain that the student has a client with a genuine problem that requires a programmed solution and that the programming and other tools involved can be regarded as complex (i.e. not text-only interface; integrates graphics, sound, video, or animation in the product).


 * Determine what programming tools are required for the making the product (i.e.usually provided by the companies who make the devices). Costs may be involved in either acquiring the tools or posting the product to an online service).


 * Make certain that expert assistance is available from the onset to advise the student when they encounter a 'bug' in the logic of the program or in the programming itself.


 * Identify online help forums and online tutorials in using the programming tools that will be used to develop the product. Check online sources for known problems in using the programming tools.


 * Check at the beginning how to provide the app or whatever evidence is available from the making of the app on the CD-ROM/DVD.


 * Check how the full working version of the product can be made accessible from a website or from an Internet service. (eg how to submit a product to iTunes).


 * Determine how the video can be captured from the device running the product. This needs to be tested at the beginning so that any problems with lighting and video capture can be solved in advance.


 * Make certain that the design (i.e. plan, methods, diagrams) for the product meets accepted standards for developing products with programming tools.


 * Maintain frequent contact with the student to check on their progress and discuss areas of difficulty.


 * NOTE: only programmed solutions that are fully functional on a computer will be accepted in M11 and N11. Programmed solutions for other devices (eg iPad/iPhone/iPad touch, Androids, Interactive whiteboards, calculators...) will be accepted M12 onwards.**