9

Developing an
information system

Build a system that even a fool can use, and only a fool will want to use it.
Shaw's Principle
Overview
We are now ready to put together everything we have learnt so far. Starting from a task
description we will develop a working information system following the DDE cycle.
To do this we will look at:
 what can be achieved
 data flow diagrams
 the information system development process
 internet abuses.
IS review
So far we have found that in general the following operations are associated with an
information system:
Design
 establish the facts and relationships
 determine constraints or restrictions
 decide table structure
 identify field properties.
Manipulate data
 retrieval (queries, sorting, functions)
 insertion and deletion
 update or modify
 execute procedures.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 304

Presentation
 display (soft and hard copy)
 report (summary).
Security
 ensure confidentiality of sensitive data
 restrict access to only relevant data
 ensure integrity from accidental or deliberate error.
In the computer industry such an information system is usually developed by a team. This team
might consist of a project manager, a systems analyst or analysts, programmers, and so on.
Through the project manager these will liaise with the owner of the system, the UoD expert,
and the end users. The aim is to design a system that works for them. In addition the
development process would also involve the training of users, the preparation of work
procedures, maintenance of the system when in place, and reviews of its relative value.
If we try to do all of this ourselves we will run into great difficulty because we are restricted in
what we can do in a classroom. When it comes to modelling real-world situations we do not
have the time, expertise, or access to data that a real systems designer would have. We are
limited in the complexity of the systems we can develop and in the sophistication of what we
can achieve.
With this in mind we will cover as much of the process as we can and, in doing so, get a feel
for how an information system is developed in the industry.
Before we begin this process however we will first look at data flow diagrams as an alternative
way of describing the connections between the parts of an information system.
Data flow diagrams
A data flow diagram (DFD), as the name suggests, shows how data flows through an
information system. It is different from a conceptual schema diagram in that it concentrates on
how the data is processed (changed) rather than the objects and relations in the system. By
looking at the flow of data we not only see the information system from a different perspective,
it will also give us a good idea of the inputs and outputs, to and from the system.
A DFD shows how data enters and leaves a system, how it moves from one process to another,
and where it is stored. Over the page is a DFD for a student enrolling at a school:
In a DFD sources or destinations of data, such as students or teachers, are represented as
rectangles.
In this example the student to be enrolled provides details such as name, age, gender, etc. This
data must be checked to see if it is complete, if it contains any obvious errors, or if there are
any problems. Arrows represent this flow of information, from and to the student, while a
rounded rectangle shows the process involved (check details).
A process is where data is taken as input, something is done to it, and then an output is made.
Each process must therefore have at least one input and one output arrow.
Once checked the data can then be input into the student database. The student must also be
added to a year group, and added to class lists. As part of this last process the student will get to
choose which subjects he or she would like to do. Again arrows show flow of data, rounded
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 305

rectangles show processes, while an open ended rectangle represents the data store (student
database).





















School enrolment DFD
Once all the data has been added to the student database it can then be used to generate
information such as class lists and timetables. These are provided to students and teachers.
If you wish to add more detail to a DFD the processes and data stores can have identifying
information added.







The process can be numbered to indicate its place in a sequence, with sub-numbering (3.1, 3.2,
etc.) if required. The person or device making the change to the data is recorded at the bottom.
If there are a number of data stores they can also be identified by a code.
The best way to develop a DFD for a given scenario is to use either a whiteboard or a large
sheet of paper. The situation should be talked through, preferably by more than one person, and
the inputs, outputs, processes and data stores identified. Changes should be made as necessary
until a representative diagram of the flow of data is achieved.
Student database
Student
check
details
correct
input
data
add to
class
lists
add to
year
group
student details
omissions/errors
checked forms
student details
year
subjects
subject choices
timetable
Teachers
class lists
3.0
add to
year group
Yr coordinator
Student database D1
Room schedule D2
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 306

Activity 9.1 – Flow of data
1. Write a paragraph describing the flow of data through the school enrolment scenario
described above. Assume a typical student and describe the data collected, where it goes,
and what processing it undergoes.
2. Identify the sorts of data that flows between student and teacher, and teacher and parent.
Draw this on a diagram like the following:




3. Explain what each of the following is in a DFD and draw the symbol used to represent it.
a An external source or destination of data.
b A flow of data.
c A process.
d A data store.
4. The diagram below shows the flow of data for the Repairs database used earlier.
Owners of computer and other equipment to be repaired will leave the device with the
receptionist who will tell them when it is ready to be collected. The receptionist will
record the details on the computer. From the computer the foreman will allocate jobs to be
performed by the technicians and himself.












Represent the information from the diagram as a DFD.
technician
owner receptionist
foreman
name, device
ready, cost
job# ready
cost
name
device
job#
tech#
date
rate, priority,
tech details
job#, device, priority
job#, ready, time current jobs
Computer
parent student teacher
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 307

5. Cyrus Habberschold owns an art gallery and has asked you to develop an information
system to keep a record of all his artworks from acquisition to sale. Cyrus does not own
the artworks, his gallery is merely the agent for their sale.
Cyrus would like to keep a record of the artwork and the details of the artwork such as
title, artist, type, medium, assessed value, etc. He wants to record the details of ownership
of each artwork. An owner can own more than one artwork.
Cyril would like to use the system to prepare a catalogue which is an alphabetical list of all
the artworks available for sale with artist and assessed value. Records of sales are also to
be kept including purchaser details. This will form the basis of a mailing list for future
promotions.
Each month Cyrus prepares a statement to each owner who had artworks in the gallery
detailing the outcome of any sales.
Represent the above information as a DFD.
6. Fleet Hire Motors provide chauffeur-driven prestige vehicles and would like a database of
all vehicles that are currently part of their fleet. Apart from the usual details of make,
model, hire cost etc., date of purchase, purchase cost, and vendor are to be recorded.
Vendors can be the providers of more than one vehicle. Chauffeur (driver) details are to be
recorded with both home and mobile phone numbers, and hourly work rate.
For each hire, vehicle and chauffeur are to be recorded, as well as number of hours hired,
and distance travelled, plus customer details. Fuel costs for each vehicle are also recorded
as are service costs and details. Accidents and the appropriate damage details should also
be stored.
Represent the above information as a DFD.
7. a Prepare a CS diagram for Q5 above.
b Compare the CSD representation to the DFD. What sorts of information about the
system is provided by each diagram?
c Repeat for the scenario in Q6.
Information system development
It is now time to create an information system from scratch.
The information system development process is similar to the software development cycle.
Overall we follow the same design-develop-evaluate (DDE) cycle, but there are differences in
sub-steps as detailed below.
Identify
 general problem description – a simple statement of the overall task
 rationale for development – the reason this system is being developed
 assumptions and boundaries – the limits we place on the task to make it manageable.
Conceptualise
 aims and objectives – what we intend to achieve
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 308

 data flow diagram – a schema identifying how data travels through the system
 input and output requirements – what data is to go into, and what information we
want to be reported by the system.

The Information System Development Process
Formalise
 normalised relations – data organised into relational tables
 data dictionary – a list of the fields that make up the system with their associated
properties.
 device specification – the hardware and software needed to implement the system
 screen and report layout – a sketch plan for input and output screens or hard copy
 menu design – a tree diagram showing menu options
 interactive devices – an outline of how the user will work with the system, including
how user assistance will be given
Implement
 database and tables
 input forms
 queries
 output reports
 menu.
Test
 ensure the system works in all situations with all data.
Evaluate
 function – compare the operation of the system with the original specifications to
determine if the stated objectives have been met
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 309

 implementation – comment on the performance, reliability and ease of use of the
system; suggest possible improvements that could be made
 process – discuss the effectiveness and efficiency of the development procedure.
Document
 specification documentation – written record of the first three steps
 hard copy – representative sample of activities in the implementation phase
 evaluation – detail of ongoing and formal evaluation
 log – record of activities that describe the development process
 help system – user manual or on-line assistance to users.
We will now work through each of these steps based on the following scenario.
Scenario
The owner of Porkies Dial-a-Rib has decided to set up a computerised system to help with his small
business. The current system is paper based, and is not keeping up with the growth of the
enterprise.
Porkies works out of a kitchen in a shop. All orders are taken by phone and delivered by drivers.
There are no “walk in” or pick-up orders taken.
Over the page is a copy of Porkies menu:
Identify
To gain a clear idea of this task it is important to distinguish exactly what it involves. To do this
we will prepare a general problem description, a rationale for development, and we will
identify the assumptions and boundaries of the scenario.
General problem description
A general problem description is a simple re-statement of the overall task. To prepare this
description read the information provided carefully and pinpoint all relevant features. If
necessary you may expand on the information provided to give a clearer picture of the scenario
as you see it. When you are sure you understand what has to be done rewrite the task in your
own words.
In real life you would interview the system owner, UoD expert, and end users, and would be
able to provide both background and specific detail. In a classroom situation some
inventiveness may be necessary to provide such background and detail.
General problem description: Porkies Dial-A-Rib has been operating for two years now. It grew out
of a small cafe operation where the owner, J ohn ‘Porky’ Thompson, offered ribs as part of the menu.
These proved so popular that he specialised in just ribs. Soon he decided to employ a driver and
offer home delivery. In time Porky Thompson closed the cafe operation and only accepted orders
given over the phone. At present the business has grown to the extent that on most nights three
drivers are needed to make deliveries.
Originally orders were taken by Porky and written on scraps of paper while he made up the orders
himself. He has now found it necessary to employ a phone operator and a kitchen hand to help him
keep up. The system of writing orders on scraps of paper no longer works; orders have been mixed
up and even lost. Porky has decided to computerise the ordering system.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 310

In the new system customers will ring through their orders for ribs and other items from the menu,
such as soft drinks and garlic bread. No products are to be sold other than over the phone. Each
order is taken by the phone operator who enters customer details and both the code and the quantity
for the particular items required. Orders are not accepted from public telephones. The time of order
is noted.
The total cost of the order is calculated by the computer and the customer is informed. The operator
is also responsible for allocating the order to a particular driver. On a given night there are up to
three drivers, each with their assigned vehicle. The order is displayed on a monitor in the kitchen
where it is prepared and made ready for the driver. A copy of the order and address is given to the
driver who then collects the order and takes it to the customer.
Porkies Dial-a-Rib
Fast free delivery - 7 days a week - 5pm till 10pm
Menu
Ribs Regular Large
BBQ sauce $8.50 $10.50
Chilli sauce $8.00 $10.00
Smokey Bacon sauce $8.25 $10.25
Side Order
Fried Rice $2.95
Chips $1.95
Garlic Bread $1.60
Drinks Bottle Can
Coca Cola $1.10 $1.20
Fanta $1.10 $1.20
Sprite $1.10 $1.30
Salad Small Large
Coleslaw $1.50 $2.75
Green Salad $1.40 $2.50
Phone: 399 111
Just phone Porkies and give your name, address, suburb, and phone number to place
your order. Free delivery direct to your door in around 30 minutes.
A welcoming light turned on outside would be appreciated by our driver.
Drivers carry change for $20 only. Limited delivery area.
Minimum order $10. Prices subject to change without notice.
Rationale for development
A rationale is a reasoned justification for why a particular process is being followed.
In developing an information system in real life it is necessary to identify the reasons behind
the decision to proceed with the system. The justification might include a cost-benefit analysis,
detailed examination of current processes, investigation of alternatives, trade-offs that had to be
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 311

made, and so on. It would also include an estimate of the cost of development both financially
and in terms of time and effort. The rationale is to provide clear evidence of why there is a need
for this system and how it would add value to the enterprise.
For our purposes we will limit our rationale to just identifying the benefits that would result
from implementing such a system. Again some inventiveness may be necessary to provide
sufficient detail.
Rationale for development: The Porkies Dial-A-Rib information system is to be implemented to
improve the efficiency, accuracy and timeliness of the ordering operation and to increase customer
satisfaction.
By computerising orders they need only be entered once and can be checked by the system to
ensure values are within limits. The order can be accurately and quickly transmitted to both the
kitchen and the driver. It can also be totalled by the computer and records kept of transactions. The
saving in time of processing the order and the certainty that the customer will receive prompt and
correct delivery will improve customer satisfaction and lead to regular clientele and generate new
business. In turn this will make the business more profitable and increase the possibilities for
expansion.
Employees will benefit from the ease of use, accuracy and speed of the new system. As they
become more proficient in using the system, a higher level of staff morale should be developed.
The system will ensure that information is correct, up-to-date and consistent. Data may also be
easily accessed, and additional information will be available so that Porky can make well informed
decisions for the future operation of the business.
Assumptions and boundaries
The assumptions and boundaries (UoD) are the simplifications or limits placed on the system
so that the task is manageable and that it is practical to implement.
UoD: This system will encompass the owner (Porky Thompson, also UoD expert), the customers,
phone operator, kitchen staff and drivers. Data from the menu will be stored on computer as well as
details of orders taken and the customer who orders them. The computer will also record the time of
order, its total cost and the driver assigned.
The system will not be concerned with inventory of stock on hand, wages, profits or other
accounting. Archival records will not be kept.
Since there is no confidential information in the system it will not need password access, however it
will pay to lock menu items and values to prevent accidental changes.
Assumptions: In developing this system we will make the following assumptions:
 there is only one phone operator who is responsible for checking the delivery area and
the minimum cost of the order
 drivers are not assigned suburbs and will deliver orders one at a time as they are
prepared
 a driver is always available
 details of previous customers are not kept on computer
 items are identified by a code for ease of entering into the computer
 each order is identified by an order number
 each customer name is unique
 all orders are from private addresses though there may be two different orders from one
address (e.g. a party)
 a customer can make more than one order per night (but on a different order number).
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 312

For simplicity we are excluding such practical considerations as money handling; staff rostering;
archival details (stock available, total sales, time worked, etc.) and customer complaint handling.
Conceptualise
Once we have a clear idea of what we have to do, we can start to look at how we might do it.
This is the conceptualisation phase where we form a clear picture of how the completed system
might look as a final product before we begin.
To do this in real life you would investigate the system in place to determine the users’
requirements, but for this task we are limited to the data given in the scenario.
To form the conceptualisation we will develop:
 aim and objectives – a brief statement of what we expect to achieve by developing
this system and a list of the requirements of what the completed system is to do
 data flow diagram – showing the important parts of the system with arrows to
indicate what data is handled, and who or what it is passed to or comes from
 input and output requirements – the data to be entered into, and the facts and figures
that are to be extracted from the system.
Aim and objectives: Our aim is to develop a working information system for Porkies Dial-a-Rib. The
system will be user friendly, user proof and well documented, and will run with no errors.
We will develop a menu based information system that will record information about orders and
transactions. The system will accept new input as customer details and orders. It will also enable the
operator to assign drivers. The computer will total bills and keep a record of transactions for one
evening.
Output reports on takings for the evening and the current state of orders will be made available to
Porky. There will also be a delivery form prepared for drivers and an on-screen report for the kitchen
to see orders that have to be made up.
Data flow diagram:

Data flow diagram for Porkie’s Dial-a Rib
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 313

Input and output requirements: The phone operator will require an input screen to enter customer
details and the items ordered. It will pay to create a code for menu items to speed up the data entry
process. On the input form there will be a field for the operator to assign a driver, as well as fields for
time of order and total cost. The owner will initially need to set the menu and cost of items but since
these are not often changed we will not have a set form for their input.
Drivers will have to indicate when they have returned and are ready to deliver another order, but this
can be done directly to the phone operator and will not need to be entered into the system.
Formalise
Formalisation is where we start to flesh out the conceptualisation by going into specific detail
of how the system is to be implemented. To achieve this we will develop the following:
 normalised relations – organise data into relational tables
 data dictionary – a list of the fields that make up the system with their associated
properties
 device specification – a list of suitable hardware and software that could be used to
implement the system
 screen and report layout – a sketch plan for input and output screens
 menu design – tree diagram showing menu options
 interactive devices – outline of how the user will work with the system (including
user assistance).
Normalised relations
This step involves the development of the CS diagram and the ONF tables by preparing the
following:
 entities – identify the entities and show links between any that may be related
 elementary sentences – develop a set of elementary sentences to describe the
relationships in this UoD
 conceptual schema diagram – convert the elementary sentences into a draft diagram
 refine the diagram – simplify the diagram by eliminating surplus entities and by
indicating derived facts
 constraints and assumptions – add uniqueness, mandatory and other constraints to the
diagram and include any assumptions made
 loops – establish table loops around relation groups that are many:1 or 1:1, and
around any many:many relations
 normalised tables – from the loops form named tables and indicate keys and other
relevant information
 data dictionary – from the tables work out the field properties required.
Once this is done we can implement and test the system.
Elementary sentences
To develop the elementary sentences we will firstly need to identify the entities in the system.
To do this we will need to carefully re-read the task description and also what we have written
in the general problem description, aims and objectives. From that we can then look carefully at
the data flow diagram and input form to identify potential entities.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 314

From all of these we might end up with the following list of entities:
customer street suburb phone
order time item item cost quantity
order total cost driver order ready vehicle
On further thought we might realise that we will also need an entity called order. Using an
order number we can identify a specific order to tie together all of the information a customer
provides and to track it through the system. Identifying the order by number rather than by
customer name overcomes problems such as repeats of names or a second order by the same
customer.
We may also realise item will be identified by both an item code and an item description.
If we put all of these entities onto a sheet and draw lines showing entities that might be related
in any way we may come up with something like the following:

This will help to us develop the elementary facts and from them the elementary sentences:
customer (name) A. Mackie customer (name) A. Mackie
lives at / is location for abides in / is area for
address (street) 18 Chinchilla suburb (subname) Harlaxton
customer (name) A. Mackie customer (name) A. Mackie
is found on / is number for placed / was placed by
phone (phonenr) 345678 order (order#) 0038
order (order#) 0038 order (order#) 0038
was placed at / for placement of has total cost of / is total cost for
time (am/pm) 7:30pm money ($) 22.50
order (order#) 0038 driver (driv#) D02
is assigned to / delivers is allocated / allocated to
driver (driv#) D02 vehicle (veh#) 2
item (itemcode) R-BBQ item (itemcode) R-BBQ
is code for / has code of is priced at / is price of
item(itemname) reg. ribs-BBQ sauce money ($) 8.50
order (order#) 0038 order(order#) 0038
has status / is status for includes / is on
ready (Y/N) yes item (itemcode) R-BBQ
in number / of
quantity (nr) 2
All elementary sentences are binaries except the final one which can be represented as a nested
ternary.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 315

Conceptual schema
Our first draft of the conceptual schema diagram based on the elementary sentences will give
us:

Surplus entities and derived facts
The next step is to check for surplus entities and to see if any facts can be derived.
It does not take much to realise that both item cost and total cost are both money and so these
two entities can be joined into one. They will be handled in exactly the same way as each other
by the system.
What about entities like phone number and quantity, or driver number and vehicle number?
Perhaps these could be combined but they are not similar enough, and besides we would get
really confused if driver and vehicle numbers could be mistaken for each other. We will leave
these as separate entities.
The only fact that can be derived is the total cost for an order. This will be the sum of item cost
times quantity for a given order. (While time of order cannot be derived it can be determined by
the system.)
We will make these changes to our CS diagram (as shown over the page).
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 316

Constraints
We will now redraw the CS diagram and add uniqueness, mandatory, entity and frequency
constraints:

 ( item cost x quantity )
Normalisation

© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 317

Placing loops around the relations in the above diagram will result in the following normalised
tables:
Customer: ( name, street, suburb, phone )
Order: ( order#, name, driver, time, ready, totalcost )
Menu: ( itemcode, itemname, itemcost )
Quantity: ( order#, itemcode, quantity )
Driver: ( driver, vehicle )
Data dictionary:
Field name Data type Size Format Required Notes
name text 25 Y key for Customer
street text 35 Y
suburb text 25 Y
phone text 8 0000 0000 Y
order# number 5 00000 key for Order
driver text 15 Y key for Driver
time date/time hh:mm Y
ready yes/no 1
totalcost currency $###.## derived at run time
itemcode number 5 0000 key for Menu
itemname text 25 Y description of item
itemcost currency $###.## Y
quantity number 3 ### Y
vehicle text 5 Y
Formalisation (cont)
Now that we know what will be in our system we can complete the formalisation with a device
specification, screen and report layout, menu design and interactive devices.
Device specification: This system will need a computer for the phone operator (and perhaps the
owner) as well as a screen and some input device in the kitchen. A printer will also be required to
prepare delivery instructions for the drivers. Software will include Access 2010 and Windows 7.
In the kitchen a monitor to display the current orders will be linked into the system with a mouse or
joystick used to indicate which orders are ready.
Output reports: The system will produce the following output reports:
Report Detail Prepared for
delivery
account
driver, order number, customer name, street and number,
items and quantity, time of order, amount owing
driver
kitchen order number, items and quantity, time of order cook
current orders order numbers, items and quantity, driver allocated owner
takings total value of evening’s orders owner

*
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 318

Screen layout:
Porkies Dial-A-Rib

Order number:
Customer name: Contact phone:
Street address: Suburb:


Code Item Quantity Cost



Total:

Time of order: Driver assigned:

Menu design: The application will run through the following menu structure.
Main Menu









Interactive devices: The phone operator and owner’s interaction with this system will be provided
through an Access interface. This will be started from a desktop icon. There will be no password
access.
On start up the user will be presented with the main menu. Movement through this system will be by
mouse action on standard buttons. Directions and help will be available for all actions.
In the kitchen a list of orders will be displayed – this will be an on-screen report. The display will be
updated as each new order is filled. Movement through the orders on the report will be by mouse
action. Kitchen staff can click next to an order when it has been made up.
Exit will be from a main menu selection. The program will automatically save data to disc.
Enter
new
order
Orders
Owner Exit
View
current
orders
Print
order
Update
order
Delete
order
Return
to main
menu
Return
to main
menu
View
takings
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 319

Activity 9.2 – Implement and test
We are now at the stage of working from our design to turning our conceptualisation into a
functioning information system.
To do this in turn we will set up each of the following:
 database and tables – create the database and tables working from the ONF design,
and then populate the tables
 input forms – make the data entry forms
 queries – develop any queries needed
 output reports – create formatted reports
 menu structure – add the switchboard and macros needed to run the application
1. Use the normalised tables above set up the database for Porkies Dial-a-Rib in Access.
Populate the tables with information from the menu (see p318) and with sample customer
orders.
2. Develop the following queries to be used on the input form
a Cost: multiply itemcost from Menu by quantity from Quantity.
b Item name: display itemname given itemcode.
3. Create the data input form as per the design on page 318 and using these two queries.
4. Develop the following queries and use them to create the output reports listed on page 318:
a Deliver: using fields from Driver, Customer, Quantity and Order (amount owing will
be an expression).
b Kitchen: using fields from Quantity and Order.
c Current: also using fields from Quantity and Order.
d Takings: totalling the cost of all orders and using fields from Quantity and Menu.
5. Add a menu system to run the application.
The application should include on-screen cues for users. Ensure there is a consistent
format in screen presentation and similar actions are carried out in the same way, e.g. to
exit to a previous screen.
6. Test the system to ensure it works effectively in all situations. The system should be tested
both by yourself and at least one other person who is not familiar with it, to ensure it is
easy to use and is user proof. Use a variety of test data to prototype the system effectively.
Evaluate
Once completed the effectiveness of the system must be judged and the system has to be
documented.
Evaluation should reflect on:
 function – compare the operation of the system with the original specifications to
determine if the stated objectives have been met
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 320

 implementation – comment on the performance, reliability and ease of use of the
system; suggest possible improvements that could be made; comments made by an
unfamiliar user would be useful as part of an evaluation
 process – discuss the effectiveness and efficiency and the development procedure
with comments on working in pairs if relevant.
Function: The system as implemented meets the requirements of the initial specification.
The performance of the application is good and provides the business with a quicker more
professional service for its customers. The increased efficiency of orders appearing on the kitchen
screen immediately upon entering the computer system and the accurate print out of order and
customer details for the driver ensures no mix-ups.
With a unique identity number each order has an individual reference that is used by the phone
operator, kitchen and driver and provides a direct link between the physical order and the customer’s
delivery instructions.
Being menu driven and user friendly the program is easy to use. The menus are explicit in what is to
be done and there is error checking to ensure valid values are input. A user manual is also provided
for reference.
One disadvantage is that the business will now be dependent on the system and major problems
may occur if the system “goes down” for any reason.
Implementation: As implemented the system is still not complete and will need to be upgraded to
include the driver, and kitchen sections.
The system is reliable if users are careful not to enter invalid data or make inadvertent deletions. It is
also easy to use with actions obvious from the directions on buttons. One problem is the need to
close a window to return to the main menu and this might be difficult for novice users.
Improvements that might be included could be:
 providing an on-screen menu for the phone operator to refer to when answering calls
 archiving customer data for ease of data entry (with a customer number for regulars) and the
potential of a mailing list for advertising of special offers
 provision of further reports for the owner (stock, income etc.)
 an on-line help facility would assist in learning about the system and would increase the
confidence of the users in that they would know assistance is readily at hand
 a better interface, e.g. voice activated in the kitchen where hands might be sticky or greasy
 user proofing the system so that users can only enter valid values
 prompting the phone operator to confirm the deletion of orders
 a security system such as password access to prevent anyone other than the owner from
altering menu or prices
 a back up system to come into play if the main system went down
 including a “splash screen” with business name and logo to welcome the user at the start of the
application.
Process: In this case the process of implementation has been very smooth and we have achieved
what we set out to do.
Document
The documentation should have been collected throughout the process up to this point to
chronicle the whole process of development of this information system. It is to be collated in
order, be neatly presented, and should consist of:
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 321

 general problem description and rationale for development
 list of assumptions and boundaries
 aims and objectives
 data flow diagram
 input requirements and output reports
 device specification and screen designs
 menu design and interactive devices to be employed
 elementary sentences
 a copy of the conceptual schema diagram and normalised tables
 data dictionary
 printouts of table definitions and contents
 screen captures to show the main menu and order entry form
 printouts of reports generated
 evaluation
 user manual if included.
For a system as simple as this a user manual might be overkill, but if we did produce one it will
need to inform the user:
 what the system does
 how to start the system
 basic methods of how to use the system
 what to do if something goes wrong
 how to finish.
In addition you might like to include a copy of the menu schema to assist the user.
Such a manual might start like this:
User Manual:
Porkies Dial-a-Rib
1. About the system
2. Getting started
3. Operating the system
4. Getting help
5. How to finish off.
1. About the System
Porkies Dial-a-Rib information system is designed to increase the efficiency and overall
management of the business of which you are a part. This computerised system is faster
and more reliable than a paper based system as a result of better organisation, increased
ease of use and greater accuracy with orders. The system is easy to use and provides you
with help messages at every stage.
The system collates and stores orders coming in. Details about customers and orders are
entered by the phone operator. The system then assigns an order number and a time of
order, and calculates the total cost of the order. These details are passed onto the kitchen
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 322

and the drivers. The system will display information about the menu, orders pending
delivery and orders to be filled. The system also prepares the delivery slip.
Output reports on The state of current orders and evening’s takings are also available.
2. Getting Started
After starting the computer click on the Porkies icon on the desktop to gain access to the
main menu.
The menu offers options and sub-options of:
Orders place, print, delete, update and return to main menu
Owner view current orders, view takings and return to main menu
Exit
Each entry on the menu is activated by pressing the associated button or Alt + the
underlined letter. To exit from a menu item press the Continue button
3. Operating the System
3.1 Orders Menu
etc. ...

Possible IS Scenarios
The following scenarios are ideas for suitable information systems.
1. J acki J ones is in the process of setting up a new taxi company that she will call Kwika
Cabs. She wishes operations to be computer based and has contracted you to develop the
information system.
J acki intends to offer four categories of cab (ordinary, maxi, courier and limo) each with
its own rate of hire. Cabs also have different rates of hire for day and night (after 6 p.m.).
Each vehicle is to be owned and run by independent operators.
To maximise income taxi owners keep the vehicle on the road as much as possible with
drivers (usually including themselves) operating in shifts. The contact phone number for
each owner and driver must be held on the system.
When a customer phones up, the dispatcher will record the name and pick up point. At
times the dispatcher may request a contact phone (e.g. if he suspects a prank call). The job
is then assigned to the nearest vacant taxi and the driver is informed by radio. The time the
cab is sent is also recorded in case the customer phones back to enquire about delays.
Prepare a system that will assist the dispatcher in assigning cabs to jobs and also record the
operations for a given day (6 a.m. to 6 a.m.). As J acki intends to charge owners in
proportion to the number and category of jobs they are given, the system must be able to
give details of which cabs were in use, when, how and where they were used, and by
which customers.
2. Mike and J ane Edwards have recently taken over a small run-down motel on the New
England highway just south of Toowoomba. They have almost got the motel ready for
service but would like a computer system to record operations and have asked for your
help.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 323

The motel has fourteen rooms, six single, six double and two family, each with its own
rate. Rooms may be booked in advance, but most are taken on a casual basis when
travellers stop by. Occasionally a group may book in, in which case a discount can be
offered. The name, home address and (unless paying by cash) the credit card of the
customer who books the room is recorded. A record must also be kept of the value of
phone calls, room service and mini-bar sales for each room.
Mike and J ane would like a system that will show which rooms are available for a given
date, and a record of customers and takings.
3. The Bunyip Art Society presents an annual exhibition. The Art Show is now established as
an important event in the society’s calendar featuring work from artists from around
Australia. Invitations are extended to prominent artists, and artists who have exhibited the
previous year, to show their work for sale. The art may be paintings, sculpture, jewellery
or other media.
A catalogue is prepared for the Art Show detailing the works of art and their location in
the gallery. A receipt is issued to the customer whenever a sale is made and the society
receives a commission as agent.
At the end of the show, an account is sent to all artists detailing sales, commissions
deducted and totals forwarded. A summary report is then prepared for the Art Show
Committee.
The society’s committee is not satisfied with their existing method of recording data and
have engaged you to set up a computerised information system to record data.
Hint: you might like to refer to your answer to the art gallery DFD in Activity 9.1.
SEI 9 – Internet abuses
The most prevalent information system currently is the internet. Unfortunately there are many
who will abuse and twist it to their own ends. Information a user provides for one purpose can
be used for other unrelated, and often intrusive, purposes. In this section we will investigate
some of the forms these abuses can take.
Spam
Spam is electronic junk mail. Like personalised marketing the person promoting something for
sale sends information to consumers, but in this case it is sent by email. While ordinary junk
mail or personalised mail will cost upwards of fifty cents each to
deliver, thousands of spam mailings can be posted for a few cents.
The name spam derives from a Monty Python sketch in which
four Vikings loudly sing the praises of spam (a meat substitute)
and drown out the voices of the other customers. In the same way
email spam floods mailing lists and threatens to drown out normal
communication. In addition to email there is spam on text
messaging, fax machines, IM, blogs, social network sites, and so
on.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 324

Spam mailing lists are often compiled by unethical (or even illegal) means. One way is to use a
program called a spambot that works its way through web sites, blogs, social sites and
newsgroups, “harvesting” addresses as it goes. Another is to collect and then sell lists of
addresses of people who provide information via on-line forms. There are resources available
to spammers that give details of over 50 million current email addresses.
The extent of spam is amazing. Some estimates suggest that there are tens of billions of
unwanted emails a year, and the use of spam in newsgroups could be well over 50% of traffic.
The arrival of spam on a home computer is annoying, but the sheer volume of traffic it
generates on the internet significantly slows down operations.
It is possible to install software on your computer to filter out spam but ironically some
companies even use spam to advertise anti-spam software! The net community is doing what it
can to fight back by blacklisting spammers and notifying ISPs of originating addresses. There
are legal steps being proposed, but the international nature of the internet makes this difficult.
There are already laws in many countries that attempt to regulate spam.
Some civil liberties groups are concerned about so called stealth blocking. In this ISPs use
aggressive spam blocking without their customers’ knowledge. The concern is that ISPs
seeking to reduce spam-related costs may also block non-spam e-mail.

This anti-spam message is itself spam
Spoofing and phishing
Spoofing is where a person is able to masquerade as another. A typical example is where
unscrupulous persons pretend to be younger, or a different gender, in chat rooms or on
channels. This is simple to do because those concerned are not face to face, and identities can
be anonymised.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 325

Spoofing can also apply to programs or files. In some cases music copyright holders have
flooded file sharing networks with unlistenable versions of popular tracks to discourage
downloading.
Web page spoofing is where the legitimate page is replaced by another. An early case where
this occurred was when the official White House web site was spoofed. Hackers had found the
site was not protected and changed data on the site. Visitors were surprised to see some very
uncomplimentary comments about the then US president Clinton. Another way of spoofing a
web site is to pharm (intercept) the original web address and redirect the user to another site
that superficially looks like the original.
Spoofing can also be used as part of phishing were an attempt is made to acquire information
such as passwords or credit card details. The person behind the attempt “fishes” for the
information (the ph comes from the older practice of phone phreaking).
Phishing is a form of social engineering, and is carried out by masquerading as a trustworthy
person or business in an email, web site or instant message. In a typical phishing attempt the
target will receive a message saying that they have to “verify” their account, by following a
link to what appears to be an authentic website. In reality the link is forged, although this is
very difficult to spot as everything from the web address to the screen appearance is the same
as the original.

A phishing attempt to obtain an eBay password
The damage caused by phishing ranges from loss of access to email, to financial loss if bank
account passwords are stolen.
Phishing can also be used in identity theft. Unsuspecting people will often divulge personal
information including credit card, passport and tax file numbers. In this format phishing is also
known as carding (from credit card). Once information is acquired, the carders may use a
person’s details to prevent them from accessing their own accounts, ruin their credit rating, or
even create fake accounts in the target’s name.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 326

One strategy for combating phishing is to train users how to deal with phishing attempts. There
are also anti-phishing programs available which work by identifying typical phrasing used in
emails or on web pages. Spam filters also limit the number of phishing emails that will
penetrate a system. Some banks now also use challenge questions in addition to password
access. The answers to the challenge questions are known only to the legitimate user and the
bank, and therefore not the phisher.
Spyware
As mentioned in unit 5 spyware is the name given to programs that are loaded onto a computer
without the user’s informed consent. Once installed these programs can monitor the user’s
actions or collect information about the user for commercial purposes. The computer has been
subverted for the benefit of someone else.
The most visible behaviour of spyware is usually to promote contact with selected sites by
displaying pop-up ads. These are advertisements that appear on the computer at regular
intervals, or alternatively, whenever the user opens a new browser window. The spyware
monitors the user’s web browsing interests and habits by recording sites visited, and attempts to
develop a profile of the user in order to tailor pop-up advertisements to target the user.
Spyware is not like a virus or worm in that it does not spread itself. Most spyware is installed
by the user, but usually without their knowledge. Typically users download desirable software
such as music players or file transfer programs upon which the spyware is piggybacked. The
end user license agreement (EULA) of the main program may inform the user of this bundling
of programs, but the notification is usually buried in the many pages of fine print that few read.
An example of this was Kazaa Lite, a file sharing application many downloaded for free and
installed without reading the EULA. Not only was this EULA 4 208 words long, but it
referenced nearly 20 000 words of contracts with other associated companies. Those who
ticked the I accept box agreed to amongst other things:
 permitting their computer to be used as a server for others in their area
 allowing the usage of their computer and hard disc space to be sold onto other
companies
 permitting spyware to be installed and then used to monitor their browsing habits
 allowing the spyware to look through their computer and report on the software
installed
 not to use anti-spyware programs
 paying for legal costs in case of a lawsuit.
This information was buried in the contract. Few who read it would have agreed to the terms.
Spyware can also be loaded onto a system when the user is tricked into doing something that
installs it without realising what they are doing. As mentioned earlier a Trojan horse is a
program that claims to do one thing but actually does another. The user downloads what is
described as a useful program (e.g. a web accelerator or software agent) and does not realise the
program really is spyware. A variation on this is where the user clicks on a link for a promised
action (e.g. optimising Internet access) which instead triggers the download of the spyware.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 327

One form of spyware is described as adware. This is software that displays adverts, either with
or without the user’s consent. Some users are prepared to put up with advertisements to obtain
a free version of a program. These are displayed as part of the normal operation of the program
and the user accepts them as the cost of ownership. A later upgrade to the paid version of the
program will remove the adverts.
In addition to covert monitoring of the user, spyware can also reduce the performance of the
infected system by tying up resources. These parasitic programs can cause the computer to
crash or hang.
There are programs to detect and remove spyware. In extreme cases of multiple infection the
whole system may need a fresh install.
Keystroke logging
Keystroke logging is a process of recording the keys a user presses on the computer keyboard.
While this can have legitimate purposes such as diagnosing typing habits, it can also be used to
detect passwords, encryption keys, or other confidential information such as banking details.
Keystroke logging can be carried out by either hardware or software.
Hardware loggers are either attached to the keyboard, and hence are easily spotted, or are
installed so that they are hidden inside the keyboard. Software loggers are more difficult to
spot, and may enter the computer through a virus, worm or Trojan horse.
Both hackers and law enforcement agencies use keystroke loggers. The hackers use the
information gained to access password protected systems or for financial gain. The law
enforcement agencies use the loggers to track the activities of criminals or terrorists.
Denial of service attacks
In the normal course of events sites such as Google receive hundreds of millions of hits a day.
The number of hits determines the rates they set for advertising; the higher the number of visits
- the more they charge advertisers. However a site can have too many visitors. Sites such as
NASA during a shuttle launch can receive so many hits that their servers may not be able to
keep up with demand.
In some cases there have been deliberate attempts to overload web servers. Unhappy
customers, cyber-vandals, or commercial competitors can take part in a denial of service (DoS)
attack. Using automated URL calls, a site can be bombarded with thousands of page requests a
second from dozens of locations. The demand can be so much that the web server is overloaded
and legitimate customers or users cannot get through. The web site is effectively shut down.
In some cases the perpetrators will use many other computers to assist in the DoS. Using a
worm (such as Blaster) they secretly install remote access privileges on other people’s
computers. These infected machines can then be controlled by IRC and configured to act as a
group. When ready the “zombie” computers are activated and together bombard the targeted
server with many thousands of page requests. This form of attack is called a distributed denial
of service (DDoS) attack.
Such attacks have been made against many of the leading web sites. Originally there was
nothing that could be done – after all web sites want visitors, but such attacks are now illegal.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 328

Cookies
A cookie is a file used by the user’s Internet browser to identify the computer to a web site.
These are text files of information and are stored on the local HDD. (For Internet Explorer look
in Windows > Cookies; for Firefox use Tools > Options choosePrivacy and then Cookies and
View Cookies.)
The information stored by cookies includes such things as arrival time, pages visited, time
spent on the site, information the visitor has volunteered, searches made, and so on. The use of
cookies is mostly harmless and can be a help in speeding up access. It can also be used to greet
the user or to check identity at the next access.
However cookies can be misused. Some sites use the information stored to serve up adverts
based on previous accesses. In some cases the information collected can be used to help
develop a profile of the user. Some sites form “cookie rings” that share information.
Cookies can be disabled if the user is concerned about privacy issues but many sites require
access to the user’s cookie file before they can be visited. Without cookies enabled web access
would be severely limited. Browsers do give some control over cookie handling and there is
cookie management software and cookie eater software available to help the user to maintain
control.
Activity 9.3 – Abusing the system
1. a What is spam?
b Explain how the use of mailing lists is a privacy intrusion.
c Why is spamming so universally disliked?
d Why does it continue?
e What regulations or laws are there currently in force in Australia to control spam?
2. a Explain the difference between phishing and spoofing.
b What is an anonymiser and why might spoofers use one?
c What is the purpose of phishing? List some of the confidential information phishers
might seek.
d How would the flooding of unlistenable versions of a song discourage downloading
of a track?
e What is pharming, and why might someone pharm web addresses and redirect users?
3. a Why should users of the internet be wary of sharing personal or contact data?
b In what ways can such data be supplied inadvertently?
c What aspects of web security should the home user employ to maintain privacy and
the integrity of their system?
4. Explain with examples the meaning of each of the following:
a Identity theft.
b User profile.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 329

c Social engineering.
d Cyber-bullying.
5. How might the originators of spyware make money?
6. Outline a scenario in which keystroke logging might be used.
7. a What might motivate a person or group to mount a denial of service attack on a
company or website?
b Research and report on an actual DoS or DDoS that has occurred
8. Identify both the positive and the negative aspects of cookies.
9. Many web sites publish a privacy policy.
Either visit such a web site and briefly summarise their policy, or list the features you
think a web site privacy policy should include.
10. Visit the Electronic Frontiers Foundation at www.eff.org and identify their stand in regard
to on-line privacy. Check out also epic.org and www.privacyinternational.org .
Activity 9.4 – Social issues report
Prepare a report on one of the social issues of information systems. This is to be written in the
format of a conventional report and based on your own research. It will detail the findings of
your investigation and will conclude with a commentary of how significant the issue is, and
what you see as its possible future ramifications.
Presentation is to be in the format of a report of at least 1 500 words. The initial preparation or
research may be done in pairs, but the report itself is to be written individually.
In developing the report you will follow the Information Literacy Cycle (ILC), which is a
variation on the DDE cycle.
Identify
Select the social issue to investigate. Possible topics include:
 the implications for privacy in a technological world
 misuse of the Internet, e.g. spam, spoofing, spyware, phishing, denial of service
attacks, on-line hate groups, cyberstalking (choose one or two only)
 censorship or restriction of the Internet by government
 social networking, IRC/IM, gaming, wikis, blogs
 responsibilities in developing knowledge based systems
 biometrics
 using the computer to commit fraud, e.g. to steal money, or credit card information
 the changing workplace e.g. the virtual office, tele-commuting, e-business, e-banking
 the computer vandals: hackers or virus writers
 the effects of on-line computer games on individuals, or on society in general
 the sociological effects of computerised automation (job displacement, downsizing,
deskilling, relocation, social unrest, OH&S, etc.)
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Leading Technology 330

 technophobia (the fear of computers)
 industrial espionage in the computer industry
 obsessive behaviour and computers
 gender or socio-economic differences in relation to access, availability and utilisation
of computing resources
 a related topic agreed to with your teacher
Determine information
When you have chosen a topic, briefly list the matters to include in the report. Use this list to
identify the information to find out or collect.
Determine methods of research and possible sources of information. These will include library
resources, computer magazines and journals, as well as on-line sources.
Prepare a list of suitable terms that will assist in focussing your search efforts.

The Information Literacy Cycle
Identify sources
Conduct some initial research to establish if you can find sufficient data to support a report on
your topic.
Select the resources most relevant to your topic.
Research the issue you have chosen. The information you collect must be factual, and based on
reputable and reliable sources.
Collect and organise
Make notes of relevant information found and carefully record bibliographical information. For
web sites this will include the access date in addition to the URL.
Read through your notes and select the parts of the research to use in your report.
Divide the information into logical sections. Choose headings and list the main points to be
presented in each section.
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall
Developing an information system 331

Prepare a draft of the main sections of your report and your commentary. This is to be
submitted to your teacher for advice, directions and suggestions at this stage.
Develop your draft into a report with the following sections:
 Title page – report title, your name, who the report is for, due date
 Table of contents – section headings and page numbers
 Summary (50 words ) – brief outline of what the report covers
 Introduction (150 words) – explain the background to the report and specify its
purpose and scope; explain any specialist terms you will use
 Body of the report (800+words) – relevant data concerning topic divided into logical
sections with suitable headings; write in paragraphs with a topic sentence and one
main idea to a paragraph
 Discussion (500 words) – commentary on your findings (see below)
 Bibliography – clearly indicate all sources of data
 Appendices (optional) – additional information (e.g. tables of data).
Reflection
As part of your report make a commentary on your findings. In this state the relevant
significance of the issue. How important is it, and how serious is its effect on society? Discuss
the potential future impact of the issue. Support your comments with reference to key points in
your report.
Conclude the report by making a recommendation on whether those involved should be
encouraged or dissuaded if necessary, and how.


To finish we are going
to see how intelligent
computers can be
© Kevin Savage 2011 – Single user licence issued to Mitchell Ingall