Australian Vocational Education and Training/ICAB4225A Automate processes
From the official document:
- This unit defines the competency required to automate solutions by using basic scripting processes and application-specific scripting options.
What does that mean? Good question! Read on and find out (or you can also read more on the National Training Information Systems Official document for ICAB4225A)
This unit forms part of the following qualifications:
How this unit will help you:[edit | edit source]
This unit aims to get you started demonstrating the the process of writing computer-recipe's (a.k.a. algorithm's) using the tools of the trade:
- sequence - the order that you put your instructions in (e.g. First, put one teaspoon of coffee in the cup, next fill the cup 3/4 full with boiling water, next add 5ml of milk)
- selection - choosing between different options depending on a condition (e.g. IF person takes sugar THEN add one teaspoon of sugar to cup)
- repetition - repeating some of your statements (e.g. WHILE colour is not uniform DO stir coffee with teaspoon)
Given a problem that you understand, this unit asks you to demonstrate the process of
- describing a solution to the problem (a.k.a. an algorithm that uses sequence, selection and repetition) on paper first using a tool such as flowchart's or psuedocode,
- Testing and reviewing your algorithm on paper for mistakes (perhaps in a group),
- debugging your script for errors on the computer and identifying any problems that you may not have thought of previously (e.g. "Gee, I didn't think about the case where the user might put a negative number for the number of sugars in their coffee!!")
- Creating technical documentation for other programmers who might have to work on your code, as well as user documentation to help people use your program.
Ideas for learning the required skills[edit | edit source]
Describing the Solution[edit | edit source]
- Lep's Lair has a good introduction to programming
- There's an description of pseudocode at California's Polytechnic State University
- The online book: How to Design Programs has some chapters on developing a program plan, along with exercises and solutions.
Debugging[edit | edit source]
Translating to a Scripting Language[edit | edit source]
PHP[edit | edit source]
- A ground-up approach to PHP on Tizag - just right for learning programming constructs
- W3Schools also has an introduction to PHP
- PHP Tutorial for web based applications on w3resource
Python[edit | edit source]
- the exercises and answers for a python course taught at Indiana University. The first four weeks are particularly good for students of process automation.
- the downloadable openbook: How to think Like a Computer Scientist - also available in Java, C++ and Logo versions.
- a Bite of Python - all the usual intro to programming stuff, plus a good section on program design (ch 11: problem solving)
Documentation[edit | edit source]
Read through the w:Software_documentation software documentation article on wikipedia
Ideas for demonstrating this unit[edit | edit source]
Grading[edit | edit source]
If you are demonstrating this unit as part of a formal course, you might find that the unit is graded (meaning you can not only demonstrate your competence, but can also gain a credit or distinction). If this is the case, here are some ideas for possible credit/distinction activities that you can discuss with your facilitator:
Notes and discrepancies[edit | edit source]
- Element 1 seems to simply provide conditions for the algorithm that the learner develops (or really, it just defines what an algorithm is: it needs to solve the problem, taking account of all possibilities, and it must end.)
- Element 2 seems to be implied by 3? ()
- This unit doesn't seem to require learner to create the solution? But rather, to use an algorithm to describe and then implement a solution...