Programming Knowledge
Input and Output
Documentation and Testing
Legal and Security
Evaluation
100
A binary search algorithm takes a maximum of 8 comparisons find a value in a list. The size of the list is doubled. What is the maximum number of comparisons the algorithm will take now?
9. A binary search dismisses half the list each time a comparison is made, so doubling the list size will mean only one more comparison.
100
What are the three types of validation? Briefly describe each
Existence Checking - checking whether any input was entered Type Checking - checking whether the input if of an acceptable data type Range Checking - checking whether inputted value is within an acceptable range of values
100
Define the term "Logic error".
Data inputted causes program to behave in a way that was not originally intended.
100
Name the six legal Acts listed in the study design
Copyright Act 1968 Privacy Act 1988 Information Privacy Act 2000 Health Records Act 2001 Spam Act 2003 Charter of Human Rights and Responsibilities Act 2006
100
When should evaluation occur and why?
Evaluation should occur after the solution has been in place for a while This is to ensure that the users how acquainted themselves with the solution and do not harbor any ill feelings towards it due to dislike of change.
200
What do you call the two methods that Stacks usually have? What are a Queue's methods called?
Stacks: Push, Pop Queue: Enqueue, Dequeue
200
What is archiving?
Removing files that are not needed for immediate access and storing them in a different, long-lasting medium.
200
Why are evaluation criteria determined before the formal process of evaluation occurs?
An awareness of these criteria will help keep development on track and gives developers a better sense on how the solution will ultimately be judged
200
What is the difference between a worm and a computer virus?
Most of the time, a worm's only purpose is to replicate itself without human interaction and consume bandwidth in the process. A computer virus replicates itself with the purpose of damaging or modifying the victim's device somehow.
200
There are a few types of training for the users of a solution. List and briefly describe them
Off-site training - training run at an external venue On-site training - training conducted at the organisation Train the trainer - a selected number of employees are trained, which then train all the others On-line training - Training conducted on a computer or mobile device
300
Explain how a two-dimensional (2D) array differs from a one-dimensional (1D) array. When would you use a 2D array?
Whereas each element in a 1D array is referenced by a single integer index, elements in a 2D array are referenced by two integers. This is useful when you need to represent a grid-like situation, such as seats in a theatre.
300
What is R.A.I.D.?
Redundant Array of Inexpensive Disks Makes up-to-date copies of one disk and spreads then out over others in such a way that in the event of a HDD failure, the data can be 'rebuilt' from the others.
300
What is the difference between alpha testing and beta testing?
Alpha testing is when people with knowledge of how the program operates perform testing on the program. Beta testing is when other people, not involved with the development of the solution, test the program.
300
What organisations does the Privacy Act apply to?
All federal, state and local government organisations All organisations contracted by an government organisation All private organisations partaking in the sale of personal information All private organisations that store medical information All organisations that have an annual turnover of over AUD $3M
300
What the measures of the efficiency of a network? Give a very brief description of each
Network Productivity - how much the network is used, is desired output reached Processing time - Amount of time it takes to perform tasks over the network Operational costs - How much money is needed to maintain the network Level of Automation - Amount of effort users expend to accomplish tasks
400
What are the differences between compiled languages and interpreted languages? What are the benefits of using one over the other?
Compiled languages convert the entire code to machine code before running. Interpreted languages convert each line of just before the line is to be executed. Compiled languages run faster than interpreted languages, but interpreted languages can an incomplete program, potentially making development easier.
400
List three things that must be considered when backing up data.
(Any 3 of the following:) - Backup should be easily accessible - Backup must be able to be recovered quickly - There will often be a version gap between lost data and backup, so encouragement of users to make their own backups is a good idea - At least one backup should be kept off-site in the event of a physical disaster, such as a fire or flooding - Multiple copies of backups should exist so that not all backup data is lost if the backup medium fails
400
What are the seven types of user documentation listed in the textbook?
User guide, Technical reference manual, Installation manual, Quick start guide, Help guide, Tutorials and Context sensitive help.
400
Explain how MAC Spoofing works
A device connected to a switch with MAC address ‘1’ sends a packet intended for MAC address ‘2’. If the switch knows which port MAC ‘2’ is connected to, this transfer takes place without difficulty. However, a switch will constantly update its MAC address table to cope with changes to the network. If a device connects to the switch and calls itself MAC ‘2’ (by way of MAC address spoofing), this will replace the entry for MAC ‘2’ that currently exists in the table. All data destined for MAC ‘2’ will now be sent to this new device and not the ‘old’ MAC ‘2’.
400
What is specification creep? In what kind of projects is it more likely to occur and why?
When clients of a solution add features to the requirements even though development has already begun Projects with long timelines are prone to this, due to changes in personnel, changes to the marketplace or pressure from competitors
500
Explain why queue creep occurs, why it is a problem, and how it can be addressed.
Queues work by setting an upper and lower value in an array, with queue data stored inbetween them. The upper and lower values are incremented when elemts are added or removed respectively. This causes the queue to 'creep' up the indexes as these values get larger and larger. Eventually the maximum size of the queue can be reached, causing an 'queue overflow'. This can be solved by implementing a circular queue, where the upper value is moved to the back of the queue and the queue 'loops' around, as if it was circular
500
Explain Full, Differential and Incremental Backups, giving advantages and disadvantages of each.
Full Backup: All data is copied to backup medium. It is slow and time consuming, but safe and simple. Easy to restore. Differential Backup: A full backup is made, and then differences from original backup are stored. The process of restoring backup is more complicated. Size of the difference backup will grow, so eventually a full backup will be more practical! Incremental Backup: After a full backup is made, only the differences between current system and the system at the time of the last backup are stored. It's the fastest to back up, hardest to restore. If one incremental backup is lost, all backups after that are rendered useless!
500
Name five types of errors (other than logic errors) and briefly describe each!
(see adjudicator)
500
What are the criteria for testing the security of networked environments? List two for unsuccessful attacks and two for successful attacks.
(Any 2 of 4, for both successful and unsuccessful) Unsuccessful attacks: How many different types of attacks were detected? How were they detected and were they repelled in a sufficient manner? Is there anything that could be done to reduce the number of attacks? What information was able to be gathered about where the attacks originated? Successful attacks Where did the attack originate? Did the attacker exploit an existing security weakness or is there a new vulnerability that needs to be attended to? What data or information was stolen? Did the attacker appear to seek a specific resource or what the intrusion an opportunistic one?
500
Name an appropriateness criteria for each of the following types of system support documentation: User's guide, Technical Reference Manual, Quick Start Guide, Help guide, Tutotrial
See book