INFORMATION TECHNOLOGY: SOFTWARE DEVELOPMENT POST MORTEM by Mark Kelly. Written examination. Thursday 13 November 2008

27 

Loading....

Loading....

Loading....

Loading....

Loading....

Full text

(1)

INFORMATION TECHNOLOGY: SOFTWARE

DEVELOPMENT

POST MORTEM 2008

by Mark Kelly

Written examination

Thursday 13 November 2008

Reading time: 11.45 am to 12.00 noon (15 minutes) Writing time: 12.00 noon to 2.00 pm (2 hours)

Number of

questions Number of questions to be answered Number of marks

A 20 20 20

B 5 5 17

C 13 13 52

Total 89 • Students are permitted to bring into the examination room: pens, pencils, highlighters, erasers, sharpeners, rulers and one scientific calculator.

• Students are NOT permitted to bring into the examination room: blank sheets of paper and/or white out liquid/tape.

Materials supplied

• Question and answer book of 22 pages with a detachable insert containing a case study for Section C in the centrefold.

• Answer sheet for multiple-choice questions. Instructions

(2)

• Remove the insert containing the case study during reading time. • Write your student number in the space provided above on this page.

• Check that your name and student number as printed on your answer sheet for multiple-choice •questions are correct, and sign your name in the space provided to verify this.

• All written responses must be in English. At the end of the examination

• Place the answer sheet for multiple-choice questions inside the front cover of this book.

Students are NOT permitted to bring mobile phones and/or any other unauthorised electronic devices into the examination room.

Legend:

Exam questions are in black. My suggested answers are in blue. Rambling commentary is in blue italics. Examiners' comments may be in red.

Jump to SECTION A, SECTION B, CASE STUDY, SECTION C

SECTION A - Multiple-choice questions

Instructions for Section A

Answer all questions in pencil on the answer sheet provided for multiple-choice questions. Choose the response that is correct or that best answers the question.

A correct answer scores 1, an incorrect answer scores 0. Marks will not be deducted for incorrect answers.

No marks will be given if more than one answer is completed for any question

Question 1

The main components of an information system are A. equipment, people, information, and procedures. B. equipment, people, data, and programs.

C. equipment, people, data, and procedures. D. equipment, data, procedures and software.

Answer is C. That's how the study design defines 'information system'. Question 2

A ticket seller at a cinema uses a computer to • check which seats are available for a customer • allocate a vacant seat to the customer

• print a ticket for the customer.

(3)

B. a management information system C. an expert system

D. a transaction processing system

Answer is D. A TPS records transactions. Its data is fed upwards to Management Information Systems at the tactical decision making level of management, and then up to be used by Executive Information Systems at the Strategic level of management.

The following information relates to Questions 3 and 4.

One model of the systems development life cycle involves the process of creating a simplified version, or part, of a system as soon as analysis is completed. This helps to quickly identify misunderstandings between system users and developers, and to expose missing user requirements early in the systems development life cycle.

Question 3

The systems development life cycle model described above is most probably A. rapid application development.

B. agile modelling. C. structured modelling. D. prototyping.

Answer is D. Prototypes are demonstration models of products which demonstrate the functionality of the real product, or demonstrate the "look and feel" of it.

Question 4

It-is clear that the model described above is not the waterfall model of systems development because A. in the waterfall model no part of the system is created until the design is complete.

B. in the waterfall model users are not involved at all in the systems development life cycle. C. the waterfall model does not include an analysis stage.

D. the waterfall model does not allow misunderstandings to occur between users and software developers.

Answer is A. The traditional SDLC is rigidly 'lock step' with each stage following the previous one. As its waterfall name suggests, you can't go back.

Question 5

Data sent through a cable connection is naturally more secure than data sent through a wireless connection. This statement is

A. true, because to dishonestly obtain data from a cable requires a physical connection to be made to the

cable.

B. false, because wireless transmissions are encrypted and so data is safe from unauthorised access. C. true, because when wireless is used, data is broadcast to all computers within a 10-kilometre radius of the

(4)

transmitter.

D. false, because cable connections can only go a certain distance before wireless has to be used. Answer is A. Cable must be physically tapped to steal signal. Wireless cannot be geographically constrained and can be received remotely.

Interesting question. It can't be B because not all wireless is encrypted, and encryption is not always uncrackable. It can't be C because wireless does not often reach 10km. It can't be D because some cables can outstretch wireless (e.g. fibre optic).

The algorithm Process_weights has been designed to process data contained in a file called bag_weights.

Question 6

The algorithm is to be tested using a pencil and paper. It is assumed that bag_weights will contain the test data: 55, 77, 60, 0, 58.

At the end of the test the final value in variable count will be A. -1

B. 0 C. 1 D. 2

Answer is D.

Let's walk through it as the computer would... ('cos I can't do these in my head - I really do need pencil and paper)

count =0 cutoff=60

weight=9999 (this is a temporary value so it actually enters the loop!) weight (9999) > 0 so enter the while loop

(5)

55 < cutoff (60), so count = 1

Retest the While condition - weight (55) > 0 so loop again read 75 into weight

75 > cutoff (60) so do nothing

Retest the While condition - weight (75) > 0 so loop again read 60 into weight

60 is not less than cutoff (60) so do nothing

Retest the While condition - weight (60) > 0 so loop again read 0 into weight

0 < cutoff (60) so count now =2

Retest the While condition - weight (0) not > 0 so exit the while loop decrement count (2) to 1

That was rather fun with some nice border condition testing and a tricky end-of-loop before all the data was read :-)

Question 7

In Process_weights, the variable count will most probably only ever contain A. string data.

B. floating point data. C. integer data. D. decimal data.

Answer is C. Since it is only ever incremented or decremented by 1, it will always remain an integer. By the way, floating point is the same as decimal in that they both just have fractional parts.

Question 8

Process_weights will be a small part of an information system. The information system is to be represented with a data flow diagram.

(6)

Answer is A. The parallel lines around 'bag_weights' denotes a data store. The other options had a rectangle (which is an external entity) or an arrow (which is a data flow from somewhere else. Question 9

The major purpose of creating test data and expected results is to find A. syntax errors.

B. logic errors. C. variable errors. D. documentation errors.

Answer is B. Syntax errors are mistakes in how commands are expressed in the language being used, including command/function names, number of parameters entered, punctuation. They just can't be understood by the very literally-minded compiler. Logic errors occur when language rules are not broken, but the result is not what you expected. For example, A=A+3 is syntactially correct, but if you meant to subtract rather than add, your answer will be rubbish.

(7)

Question 10

The best data type to store a phone number in the format (99) 9999 9999, for example (03) 1234 5678, would be

A. integer.

B. floating point or decimal number. C. string or text.

D. Boolean.

Answer is C. Repeat after me, kiddies: you should never store phone numbers as numbers. If you did, you could not enter the parentheses, leading zero, or the spaces. Since you'll never be doing arithmetic with the number anyway, storing it as text is no disadvantage.

Question 11

A program for viewing high quality photographs on a computer screen is being written. The

photographs are stored as JPEG files on a central fileserver and have an average size of 2 megabytes each. To download one photograph to a computer that has a wireless connection running at 10 megabits per second will take about

A. 0.2 seconds. B. 1.6 seconds. C. 5 seconds. D. 6.25 seconds.

Answer is B. This is why they let you bring in your calculator. Let's do some arithmetic.

10 megaBITs divided by 8 bits in a byte = 1.25 megaBYTES per second. So a 2M photo will take a second and a bit.

2 divided by 1.25 = 1.6 seconds. Question 12

When evaluating the effectiveness of a software application you are mainly looking at A. how quick it is to load and run.

B. how well it does its job. C. how little space it takes up. D. how quickly it can access data.

Answer is B. Effectiveness is a measure of quality, accuracy, pleasantness etc. Efficiency is a measure of saved time, money or labour. Read such keywords very carefully!

Question 13

A school database is being set up. The programmers wish to check that the entry of the date of birth of a student is what is expected for a student entering that year level.

Assuming that the date is a valid date, the best validation technique would be A. existence test.

(8)

B. numeric test. C. string test. D. range test.

Answer is D. You need to check that the value is within reasonable lower and upper ranges. Existence test simply checks that the value was entered at all. I've not heard of numeric and string tests: they usually fall under the heading 'type check'.

Question 14

Documentation that introduces new users to the commonly used features of software packages is called

A. a tutorial.

B. an installation guide. C. a data dictionary. D. systems documentation.

Answer is A. The installation guide gives instructions for (duh) installing the software. A data dictionary describes the data structures (fields etc) within the software.

The following information relates to Questions 15-17.

The functional block diagram below is of a small company's local area network.

Question 15

In the network shown above, what is the name of the hardware shown as X? A. printer

B. switch C. CAT 5 cable D. LAN

(9)

Not really a hard question. Question 16

The local area network above shows an example of a A. hybrid topology.

B. bus topology. C. star topology. D. tree topology.

Answer is C. Hybrid is a mixture of 2 or more topologies, e.g. star-bus, star of stars. It certainly isn't a bus (which requires coaxial cable and looks like a centipede).

After researching the difference between hybrid and tree (I've previously considered them synonymous), I've found they both exist and are different. Luckily, they are not relevant to this question.

Question 17

The company, on learning that its ISP does not have a firewall, must install one on its system. Using the positions labelled 1-4, which is the best position for the firewall?

A. 1 B. 2 C. 3 D. 4

Answer is probably C.

I originally thought 'D' because you want your firewall to be the first part of your LAN exposed to the outside world. However that is controlled by the ISP and consists of analogue data heading for your modem to be demodulated. As one reliable teacher colleague said, "Terrible question" because none of the answers are really good in the real world. Best choice would be inside the router/modem rather than in a separate box in either location 3 or 4.

Question 18

A company that conducts surveys is setting up five of its networked computers for special data entry work. The person in charge created a Gantt chart to help manage the project. A section of the chart is shown below.

(10)

A. Testing of software can begin as soon as the central database is set up.

B. The critical path for this part of the project is the tasks numbered 1-3-4-5. C. Data entry operators must be trained before software testing can begin.

D. Setting up the central database and installing data entry software cannot occur at the same time. Answer is B.

Can't be A because software testing has to wait not only for database setup, but also for installing data entry software. It has 2 predecessors.

Can't be C because clearly training is done after software testing.

Can't be D because database setup overlap in the chart, so they are concurrent.

And it must be B because the critical path is the longest path from the beginning of the project to the end of the project that has no slack time in it.

Question 19

A program reads a set of money amounts entered via a keyboard. It stores each amount into a file in the order it is received. This file is later accessed by reading the data in the order it was received. This kind of file access is known as

A. normal access. B. direct access. C. random access. D. serial access. Answer is D.

I've often wondered if there is a difference between serial access and sequential access, but in this case it's not important. There's only one viable option. One text tells me that sequential files are sorted by one or more fields. Serial access records appear in the order in which they were entered. In both cases, they are different to random access files in which records can be accessed without having to read all of the records between where the read/write head is and where the record is stored. Hard disks, CDs, DVDs, even old LP vinyl record players are random: the head can be lifted and dropped anywhere, instantly. Serial/sequential files are more akin to cassette tape which must be rewound or fast forwarded to find a particular song.

Question 20

A program is being written that will perform calculations involving temperature measurements taken over a long period of time. The programmer chooses T as the name for the variable which will hold a temperature measurement. This variable name is

A. a good choice because that is the symbol used in science.

B. a poor choice because it is not clear whether it stands for temperature or time. C. a good choice because it is brief and quick to enter.

D. a poor choice because it does not specify the size of the variable.

Answer is B. The name may be temptingly easy to type, but it will later become confusingly meaningless and will require relearning the data dictionary every time the program is revisited.

(11)

SECTION B - Short answer questions

Instructions for Section B

Answer all questions in the spaces provided.

Question 1

Two important file management procedures are 'archiving' and 'backing up'. Both involve copying files, but they have very different purposes,

a. State the main purpose of each procedure. Main purpose of archiving

Instead of deleting files that are no longer required, they are taken offline and stored elsewhere to free up storage space.

Main purpose of backup

To protect files by copying them to a second location. 2 marks

Describe one difference between them.

Files that are archived are deleted from the original location. Backed up files are copied, not moved, and the original copy remains in place.

2 marks

Question 2

Explain the difference between user documentation and internal documentation for a software application.

User documentation provides software users with information on how to use the software. Internal documentation (such as comments within a program) is not seen by users; it is meant to tell

programmers important things about the code, such as: what it does; why it was written as it was; who wrote it; its version; warnings to future developers etc.

4 marks

Question 3

List the main features of a naming convention for variables and procedures that you have used in your programming this year. State two advantages of this convention.

Main features

'Hungarian notation' uses a prefix.name format such as txtFirstName, boolMarried, globalFlag.The prefix identifies the object type, and the name instantiates an particular instance of the object.

(12)

Advantage 1

The prefix clearly identifies the type of the object so mismatched objects cannot be accidentally combined. e.g. if bNumber is a a byte variable (which can hold up to 255) and pPoint is a 32 bit pointer, the programmer would quickly realise that bNumber = pPoint + 1 would lead to an error because any 'p' variable could never fit into a 'b' variable.

Advantage 2

It promotes consistency throughout a program, and throughout a team. It reduces the chances that an individual or team mate will mistreat variables because they did not realise their type. It's also more efficient for program maintenance, since returning to work on a program after a long absence will be easier because the programmer will not need to relearn that particular program's naming scheme. 3 marks

Question 4

A program is being written that will require a file to be randomly accessed many times in order to read data from it. The file contains about 600 megabytes of data and is currently stored on a CD. The programmer has three options.

A - Write the program so that it reads the data as needed directly from the CD.

B - Write the program so that it first copies the entire file onto hard disk and then reads the data as needed.

C - Write the program so that it first copies the entire file into main memory and then reads the data as needed.

Which option should the programmer choose in order to minimise the program's running time? Give reasons for your answer.

Option C. RAM access is far faster than accessing hard disks, and especially optical media. The key information in the question was "minimise running time". There would be arguments for using the other options under different circumstances, but not if the main aim was speed. The instruction was to give reasons (plural) but I can't really think of a second one. Perhaps explain that (1) seeking and (2) reading/writing operations would be faster in RAM than either of the options. 2 marks

Question 5

A principal wants to purchase new software to enable teachers to design their own online examinations. On searching the web he finds Excellent Exams Software and decides to set up a criteria table to help him evaluate the software accurately. Excellent Exams Software makes the claims stated in the table below. Complete the table below by stating the evaluation criteria for each claim and provide a comment to help the principal make a decision.

Claim Criteria for evaluation Comment

Very easy to use Usability This should mean teachers will need very little training but you will need to check this It takes only three

(13)

to wait even 3 minutes? Operates without fatal

errors on most networked systems

Reliability Perhaps there are no "fatal" errors, but are there other non-fatal errors it is prone to? Compatibility Is our network system one of the "most"? Need to find out. 4 marks

'It takes only three minutes to load per user' could be a touch ambiguous. It could mean 'install' (onto their laptop) or load (run) each time they wanted to use it.

Total 17 marks END OF SECTION B

Case Study Centrefold

Pattie's Parties

Pattie owns a small business: Pattie's Parties. It is a party planning and catering service that Pattie runs from her suburban home. Pattie advertises through the Yellow Pages and a simple website. She also has a team of event coordinators: people who she can hire on a casual basis to coordinate the event on the day.

When first planning an event, Pattie visits the home of a client and writes down information about their event. When she returns home she enters the information into a 'quotes' spreadsheet. The spreadsheet calculates the item costs and gives a total. Pattie enters this data into a word processor so a properly formatted quote and covering letter can be printed. The letter and quote are then sent either by post or email to the client.

If the quote is accepted, Pattie arranges the event including • booking a venue

• ordering the catering and equipment for the event • organising security if required

• selecting an event coordinator from her team.

Pattie keeps information about suppliers and products in a 'suppliers' spreadsheet. It is linked to the quotes spreadsheet so that quotes have up-to-date prices and product numbers. In the past, she updated the suppliers spreadsheet as soon as her suppliers provided her with new information. The problem

Pattie's Parties has been so successful that a year ago Pattie had to hire two people to help her do the quote preparation and event arrangement work. So that her workers can also work from home, Pattie sends them a new version of her suppliers spreadsheet as soon as she updates it.

Unfortunately the continued increase in business, and having two staff to work with, has led to the following difficulties.

1. Long delays in preparing and sending out an up-to-date suppliers spreadsheet. This has resulted in a loss of income for Pattie's Parties either because the new job is underquoted (out-of-date data), or because the job is lost (the client is not prepared to wait).

(14)

2. Occasional double-booking of event coordinators and some specialist equipment, because the three people organising events are not fully aware of all other events.

Proposed system

Lucy, a systems analyst who Pattie hired to look into her business difficulties, has suggested the following.

1. Pattie's Parties set up a central database that includes information about suppliers, products, staffing and client bookings. The supplier and product information should be kept up to date by electronic transfer of information between the suppliers and Pattie's Parties.

2. The central database be hosted by an ISP.

3. Pattie and her staff are each issued with a mobile computing device that allows the user to • use information obtained from the central database

• show the-client images (stills and video clips) of products and past parties so that the client can make decisions more easily

• enter all party requirements and a detailed description of the party venue • print a quote to give to the client before leaving the client's home

• upload bookings into the central database

(15)
(16)

Instructions for Section C

Answer all questions in the spaces provided. Remove the case study insert and read all the information provided before you answer these questions. Answers must apply to the case study.

Lucy began her analysis of Pattie's Parties' current system by interviewing Pattie and taking many notes. She then returned to her office and used the data in her notes to continue the analysis. Question 1

From Lucy's notes it became clear that there were a number of reasons for Pattie to change her system. Each reason related to one of the three types of factors prompting changes in organisations. In the table below Lucy has identified an economic factor and has provided an explanation of why it is an economic factor. From the case study, identify a technical factor and a social factor, and

provide an explanation for why each is considered that type of factor.

Type of factor Example Explanation

economic errors in quotes leads to a loss of income for Pattie's Parties

technical

1. messy and inefficient system exchanging data between spreadsheet and word processor.

or

2. recording initial data by handwriting and then typing it up later

1. transferring data between applications is slow and a potential cause of errors or data loss.

or

2. double-handling of data is inefficient and could also lead to transcription errors.

social

Pattie did not spend as much time as possible with the client because follow-up work needed to be done back at the office

It's important to make good contact with clients to encourage their trust and to get as much information as possible about their needs. Calculating the detail in the client's presence will also let Pattie better determine the client's needs as more pricing information is discovered. 4 marks

'There WAS a number of reasons', not 'were'.

Question 2

Using the data in her notes, Lucy has drawn a system flow chart of Pattie's current system. Part of the chart is shown in the case study. Explain what Lucy should do with the completed chart before using it in the rest of her analysis.

1 mark

Check it with Lucy for errors and completeness? Convert it into a data flow diagram?

(17)

Staple it?

The instruction is a bit vague for my liking. Anyway... as long as the markers accept 'Staple it', I'll be happy :-)

Is there an official step required after completing a system flow chart? Baptise it, perhaps? Take it out to dinner with the parents?

System flow charts are physical design tools which model the actual processes and data manipulation in use. After analysis, the DFD is created. It's a logical design tool to model what needs to be done in the new system. The big difference is that physical design says how something is done; logical design says what is done.

Question 3

Lucy has started drawing a data flow diagram (DFD) of the current system. A part of her DFD is shown below. It is based on the part of the system flow chart shown in the case study. Lucy has not yet labelled several parts of the diagram.

Suggest the best labels for the parts of the diagram currently labelled A, B, C and D. A - Client

B - Suppliers Spreadsheet C - Itemised costs

D - Prepare quote for client 4 marks

It's not too hard if you compare the system flowchart and the DFD and locate the similarities. Remember that rectangles are external entities (sources or destinations of data or information that are outside of the the system. Clients would be one, and suppliers are another. The parallel lines indicate data stores, such as databases, spreadsheets etc. Circles are processes that are done (not people who perform the processes).

(18)

Lucy's analysis of Pattie's system is now complete and she proposes the system described in the case study. Pattie gives her approval to design the proposed system.

Question 4

There are two ways in which the data from the central database can be made available to Pattie and her staff.

System A - Download the entire central database onto each mobile device at the start of the day. At the end of the day upload the new data from clients on to the central database.

System B - Use the web to obtain access to the central database and update client data as required. a. Explain one advantage of System A compared with System B.

Less time and money spent on data access. Work can continue even if data access is unavailable for the rest of the day (e.g. out of range, system failure, losing the device or leaving it at home)

b. Explain one advantage of System B compared with System A.

Changes to data are immediately available to all users, and would prevent double-bookings and out-of-date pricings. Since untimely data access is a big part of the current problem, this is a major advantage.

2 + 2 = 4 marks

Lucy advises that purpose-built software is the best way to go and provides Pattie with specifications. Pattie hires the company Baron Software to write the software for the new system.

Question 5

The software specifications show that a procedure is required to enable Pattie to see which event coordinators are available on a particular date. The algorithm for this procedure has been created and is shown below.

The algorithm uses the following variables.

Variable Use

DateRequired Stores the date Pattie requires a coordinator Num_Coordinators Stores the number of coordinators employed

by Pattie

CountCoordinator Counter for coordinators Coordinator_Available[] Stores the availability (true/false) of each

coordinator

CoordinatorBooking Stores a booking date for a coordinator Coordinator_Name[] Stores the names of the coordinators

(19)

Test data used to check algorithm

Variable Test data

Date_Required 13/11/2008 Coordinator_Name[1] Pattie Coordinator_Name[2] Charles Coordinator_Name[3] Manfred Bookings file 3 2/5/2008 12/12/2008 Blank 13/11/2008

(20)

15/11/2008 Blank 2/11/2008 12/11/2008 Blank

a. Using the test data above

i. What output would you expect to get if the algorithm was correct? Pattie

Manfred

ii. What output does the algorithm actually give? Charles

b. Describe the error in the algorithm.

It sets the count_coordinator to 1 during initialisation and does it again as soon as the outside REPEAT begins, so the starting count is 1 higher than it should be.

Therefore only the first two coordinators are tested, and it sets the wrong coordinator's availability flag.

c. Suggest one way the algorithm could be altered to fix this error. Change the initialisation to Count_coordinators = 0

or (not as easily)...

Move the count increment to just before the UNTIL count_coordinator = num_coordinators, and change the '=' to '>'

2 + 2 + 2 = 6 marks

Let's walk through the pseudocode with the test data.. Be careful with these questions because they are usually studded with very subtle "gotchas" that trip up the unwary or casual reader. A

walkthrough takes some time, but it's worth it. I thought after a quick scan taht I had easily

discovered the gotcha - until I found that a second gotcha got me. Only the walkthrough uncovered it. BEGIN Input Date_required (13/11/2008) Read Num_coordinators (3) Set_Up_coord_Info - so Coordinator_available[1]=TRUE Coordinator_available[2]=TRUE Coordinator_available[3]=TRUE Coordinator_name[1]=Pattie Coordinator_name[2]=Charles Coordinator_name[3]=Manfred

Count_coordinator == 1 (this causes the logical error later) REPEAT

Count_coordinator ==2 REPEAT

(21)

Read coordinator_booking (12/12/08)

Date_required (13/11/2008) <> coordinator_booking (12/12/08) so do nothing Read coordinator_booking (Blank)

Drop through the UNTIL because coordinator_booking == Blank

Coordinator_available[2] still = TRUE so print Coordinator_name[2] which is Charles

Count_coordinator ==2 <> Num_Coordinators (3) so return to the first repeat REPEAT

Count_coordinator ==3 REPEAT

Read coordinator_booking (13/11/2008)

Date_required (13/11/2008) == coordinator_booking (13/11/08) so Coordinator_available[count_coordinator, which is 3 ] == FALSE Read coordinator_booking (15/11/08)

Date_required (13/11/2008) <> coordinator_booking (15/11/08) so do nothing Read coordinator_booking (Blank)

Drop through the UNTIL because coordinator_booking == Blank coordinator_available[3] = FALSE so don't print anything

Count_coordinator ==3 equals Num_Coordinators (3) so drop through to END So the actual output is Charles

A pet peeve of mine, which I really find irksome is that the examiners use a left-facing arrow in their pseudocode to represent assignment. It's a royal pain to type into a webpage! The best I can manage is using Wingdings font (a pain) or using a potentially ambiguous substitute such as <= or <-- (which never look right). What's so difficult with using = or even == (two equal signs) to indicate assignment of values? They're commonly used in most languages!

You could easily enough understand the meaning of Count_coordinators = 0 or Count_coordinators == 0, couldn't you? And since the syntax of pseudocode is largely arbitrary, who really would care? Question 6

From the variables used in the algorithm, select one of each type to complete the following table.

Type Variable Name

Boolean Array Coordinator_Available[] String (Text) Array Coordinator_Name[]

Numeric Count_coordinator

3 marks

Question 7

The software specifications also require a program to be written for the mobile device. This program is to be used to prepare quotes at the client's house.

The programmer at Baron Software has designed a dialog box for checking the categories of staff required for the event, and for entering the number of guests. This will calculate the staff numbers required for the event.

(22)

a. Explain why the programmer has used checkboxes rather than text boxes to enter the staff required into the system.

It forces the entry of valid boolean data.

b. Explain two data validation techniques the programmer can use to ensure that the number of guests entered in the text box is suitable.

Technique 1

Test for existence (value is not blank) Technique 2

Test for a value greater than zero. Perhaps try for a range, but determining the upper limit for a party can be tricky? 100 might be too small for a big wedding, so set it to 5,000?

Deciding on range limits can be quite a difficult decision. You don't want to allow bad data to enter the system, but neither do you dare risk excluding data that is valid but unusual.

2 + 2 = 4 marks

Question 8

Part of Pattie's agreement with Baron Software is to keep development costs to a minimum. When the programmers are discussing how best to store the client quotes on the mobile device, one

programmer, Schroeder, argues that they must include encryption. Another programmer, Sally, disagrees as encryption will increase the overall development cost.

Discuss the ethical considerations from each point of view.

Including encryption is ethical since it would protect clients' personal information. It's not that Pattie's organisation would likely be subject to the Privacy Act, but any organisation should take reasonable steps to protect clients' data, especially if it's being stored/transmitted in potentially risky

environments such as wireless communications.

(23)

4 marks

Question 9

Pattie goes shopping to find the most suitable mobile computing device for her business. She knows that these devices need to

use information obtained from the web-based central database

show the client images (stills and video clips) of products and past parties so that the client can make decisions more easily

efficiently enter all party requirements and a detailed description of the party venue upload bookings into the central database.

She also wants the device to promote her product in the best possible way. Some of the specifications of her three favourite brands are stated below.

Considering the functions that Pattie wants the device to perform, list the three brands in the order that you would recommend to Pattie and clearly explain the reasons for the order of your choice.

Features LINUS MARCELL FRANKLIN

RAM 1 GB 1 GB 1 GB

Storage 40 GB HDD 80 GB HDD 80 GB Hard drive

Screen 5" (12.5 cm) 12.5" (32 cm) 12.9" (33 cm) Connectivity Wireless LAN only Wireless LAN + Ethernet CAT 6 LAN Wireless LAN only

Ports 1 USB 2.0 2 USB 2.0 2 USB 2.0

Battery life 10 hours 9 hours 10 hours

DVD drive External DVD + - RW External DVD + - RW External DVD + - RW Input Touch screen Stylus + touch screen Touch screen

Other Integrated 2.0 Megapixel camera Full keyboard Bar code scanner Integrated 2.0 Megapixel camera Order of preference

1. Marcell 2. Franklin 3. Linus

Explanation for the order of your choice

The specifications are quite similar, so it comes down to details.

The main reason for the Marcell is its input facilities: it's the only one with a full keyboard and styles to make it quicker and easier to enter data. Its screen is reasonably-sized to comfortably show

pictures and video to clients. Its RAM, HDD, USB, battery life and DVD are no worse than the Franklin, and better than the Linus (which has a smaller HDD and screen). The Marcell also has a RJ45 for the CAT cable, which may be a bonus back at the office to speed up data communications. One feature lacking in the Marcell is that it's the only one without a camera, but the device was never said to need to take pictures, only to show them, so this factor can be discounted.

(24)

The second choice, Franklin is equal to the Marcell in nearly every respect except for the keyboard. It shares the Marcell's screen and HDD benefits over the remaining option, the Linus. The bar code scanner is unique, but is not useful to Pattie.

The Linus' only score comes from equal-best battery life, but on the other hand it has one less USB port than the other devices.

4 marks

I'm a bit confused. Wireless LAN (i.e. 802.11) is not going to give them internet access unless every client has a WLAN that they can connect to. They would need to have broadband wireless - WAN wireless, not LAN wireless. That's unless they have a USB-connected broadband wireless modem. So, strictly speaking none of the options is acceptable without adding equipment to them. Question 10 follows this up...

Question 10

Later, Pattie receives this junk mail advertising. She realises that if this is true, then her staff could connect to the website and upload the accepted quotes immediately from the client's home. But she would need to ask the company for more information about its offer.

If she has only now discovered this possiblity, she must have been intending to only connect to the website when at the office. After Question 4 asked whether it was better to work offline (system A) or online (system B), I assumed she was aware of this possibility and would naturally have gone for the online alternative. Apparently she didn't, which is an odd decision. Either that, or she didn't know that broadband internet existed, which is even stranger for a so-called system analyst.

List three important characteristics of the Mobile Broadband that Pattie would want to use in her business and explain why each is important.

Characteristic 1 High speed Reason

Saves time uploading and downloading, so quotes could be created efficiently. Characteristic 2

It's mobile! Reason

The online database could be accessed at clients' homes so quotes could be produced onsite. Characteristic 3

(25)

Reason

Connectivity can be used in a broad range of locations 6 marks

Question 11

Lucy has arranged for the Pattie's Parties database to be hosted remotely by an ISP called Illuminated Business Hosting. Pattie has asked to see its disaster recovery plan so that she can be confident that her business will not suffer if something goes wrong.

Identify two features she would want in this plan and explain why they are important to Pattie's business.

4 marks

Feature Reason

Its backups are

regular. Out-of-date backups are worth little. To get back to normal operations, backups need to be done frequently. Its backups are

tested. Backups cannot be trusted until they have been tested to ensure the data can be restored if necessary. Backup media are

stored offsite

If backups are stored in the same place as the original data, the same disaster (e.g. fire, theft) could remove all of the valuable data.

Its DDRP is documented

It's important to know what needs to be done in a moment of crisis. Documentation makes it clear who does what, when and how.

In order to implement the new system, Pattie needs to provide her staff with appropriate training and user documentation to support them in its use.

Question 12

Baron Software has a room on its premises for training clients. It contains a set of networked desktop computers which can be loaded with the client's software. Baron Software has offered Pattie two training programs.

1 One day at Baron premises for Pattie and her staff at a total cost of $300

2 A half-day at Pattie's house and then at the home of each staff member at a total cost of $600 a. State one advantage, apart from cost, of each training program.

Advantage of training program 1 It's cheaper than the other option.

Pattie does not need to buy hardware and set up mobile internet accounts before training begins. One would trust Baron to set up the software properly so it reflects how Pattie wil be using it for real. Advantage of training program 2

It's individualised one-on-one nature means that the instructor can focus on the specific needs of each trainee.

(26)

It's more convenient not having to travel to be trained.

It can be set up in the same sort of environment in which it will be used for real, so the training is more realistic and can reveal potential implementation issues.

b. Considering all factors, recommend which option would be better for Pattie's business and explain your choice.

Recommendation

Program 2. While it is more expensive, it is money wisely spent. Personal training will better address the individual needs of each person's level of skill and preferred learning style. It is likely to be more effective and also more efficient because training time is not being wasted explaining things to people who already understand them, or inadequately explaining things to some people and not others. Since it's vital that the users can use the system properly, second-rate training could leave them underequipped for the tasks they will need to perform; they could even damage the system if they use it without fully understanding how it works.

2 + 1 = 3 marks Question 13

One important goal Pattie established at the beginning of her system development was to provide accurate and timely quotes.

Using the headings below, outline a strategy Pattie could use to determine whether this system goal has been met after implementation.

Evaluation strategy

Time how long it takes to create a range of quotes and compare those times with times taken before the system was implemented.

Compare actual costs with quotes and see whether they are more or less accurate than the previous system.

Count the number of times errors such as double-bookings or incorrect prices occurred compared to the old system.

Count the number of times quotes could be delivered to the client onsite rather than at a later time.

Time frame

Evaluation should begin a reasonable time after the system has been implemented fully, but not so long that they have completely forgotten about the old system's strengths and weaknesses. If the system is used daily, perhaps one month of usage might be adequate. It is important that users have had enough time to become well-acquainted with the system so they can use it skilfully and

confidently and assess its performance knowledgably. Data to be collected and from where

Collect timings of how long it took to generate quotes from a log book maintained by each user.

Refer to copies of quotes generated with the new system and compare them with actual costs. Users should have been instructed to record any instances of double-bookings or bad prices occurring. Refer to these records to get a system failure rate.

Use copies of quotes to see if the date and time the quote was generated was more than a day after the client meeting.

Note that other techniques such as interviews and surveys are not really appropriate for objective assessments of times and financial accuracy. They should be reserved for subjective criteria such as ease of use, comfort levels, attractiveness etc, which are very human factors that are hard or impossible to measure scientifically.

(27)

How the data will be used to evaluate this system goal

If the data reveals that the system produced quotes that accurately predicted actual party costs, and also were produced quickly, the system goal could be said to have been achieved. If not, remedial action might be needed to enhance the system.

1 +2 + 2 = 5 marks Total 52 marks

END OF QUESTION AND ANSWER BOOK

As usual, an interesting and challenging paper with only minor oddities. Compared to the average IT Applications paper, it is a delight!

Back to the IT Lecture Notes index

Back to the last page you visited Created 19 November 2008 Last changed: November 19, 2009 8:25 AM

Original Content © Mark Kelly 2008

Images and questions are © Victorian Curriculum and Assessment Authority 2006. Reproduced here with permission for educational purposes.

Figure

Updating...

References

Updating...

Related subjects :