Case Study
Investigating
the Problem
Introduction
Investigating
the Problem
What
is the Problem at Present
State
the Problem
Define
how the Current System Works
What
Does the System Need to Do?
State
the Aims of the New System
Describe
the Scope and Boundaries of the New System
What
Does the System Need to Produce?
The
Inputs and Outputs of the System
Objectives
This aim of tutorial is help
you to understand the investigation phase of software development. A
case study will be used to demonstrate the steps involved in investigating a
problem and producing a report for a client. After working through the
tutorial, you should be able to produce a similar report for assignment 1.
Most programs are written to solve a
problem, to heighten the efficiency of some task. For businesses, an
increase in efficiency is desirable in order to compete and make money.
Clearly, when writing a program for
someone, it is necessary to understand the nature of the problem. So, the first thing you need to do is
investigate the problem. This means gathering the necessary information
so you can understand the problem clearly. The questions that you need
clarified through information gathering are:-
~~what is the problem at
present?~~
·
State the problem?
·
Define how the current system works?
~~what does the system need to
do?~~
·
State the aims of the new system?
·
Describe the scope and boundaries of the system.
~~what does the system need to
produce?~~
·
What other systems does it need to interface with (inputs and
outputs)
We shall look at these questions in more detail through the use of a case
study. Here is part of an interview with the company director of Modern
Carpets.
Case
Study - Modern Carpets |
Interview
with John - Modern Carpets company director
Angela:
What sort of program do you have in mind?
John:
We need a more efficient way of calculating carpet costs for our
customers. At the moment, when a customer comes in to the shop,
they see a carpet they like and the first thing they want to know is how
much it would cost them to fit out a particular room.
Angela:
How do you work out the cost at the moment?
John:
We ask the customer for the dimensions of the room so we can work out
how much carpet and underlay they need . All calculations are done
manually on paper. It would be nice to have a more efficient and quicker
way of calculating costs so the sales people can quickly demonstrate how
much different carpets would cost to the customer. We think a computer
program would be helpful. Can you help us with this?
|
There are two task we need to carry
out now we have interviewed the client. From the list given above we need
to:-
·
State the problem
·
Define how does the current system works
After speaking with the client, it is a good idea to clarify the problem
by producing a problem definition. In other words, writing down
and explaining the nature of the problem. Here is the problem definition for
Modern Carpets.
Case
Study - Carpet Company |
Problem Definition
Customers who come into Modern
Carpet's shop want to know how much it would cost to buy a carpet
for a particular room in their house. To calculate this, they need
to know not only how large the room is (its length and width) but how
much the carpet costs per square metre. On top of that, they need
to add in the cost of the carpet underlay and the cost of
fitting.
The director of the company thinks
it would be a good idea for the store to have a program on its computers
on which the sales people could demonstrate to customers how much
different carpets cost.
|
Once the problem is defined, you can show it to the client
and see if the client agrees with your perception of their requirements and you
haven't misunderstood anything.
In most cases, when you develop a
system it will replace an existing system. An existing system may be a
manual or computerised system which has outlived its usefulness. We need to
investigate the current system to thoroughly understand how people go about
their daily tasks and to be able to preserve any good features and replace
inefficient features.
So, at this point, many interviews may
be carried out with the client and the client's staff to find out about the
current system. The information gathered then has to be written
down and summarized in a report so that everyone can clearly see
a new system would be better.
Case
Study - Carpet Company |
The Current System - Report
Currently, if a customer asks how
much a carpet would cost, the sales person needs to go through the
following steps:-
-
find out the size of the room by
multiplying its length by its width
-
find the cost per square metre of
the carpet
-
find out if the customer wants
economy or luxury underlay
-
multiply the cost of the carpet
by the area of the room
-
multiply the cost of the underlay
by the area of the room
-
multiply the cost of fitting by
the area of the room
-
add together the cost of the
carpet, underlay and fitting
This process is
time-consuming. Moreover, if mistakes in the calculations occurred
the customer would not be happy about it.
|
Now that we have stated the problem and
explained the current system, we need to think about what the new system has
to do. In particular, we need to think about the following...
·
the aims of the new system
·
the scope and boundaries of the system.
We must define the primary aims of the new system. It is important to
carry this out right at the start because during the process of developing
the software, we might lose track of the original reason why the client
wanted the software. Then the software might not do what the client
wants.
When thinking about the aims, quite often we will need to read the problem
definition over and over,. This helps us to figure out what the aims
are and to make a list..
Case
Study - Carpet Company |
The aims of the calculator
program
-
To provide the sales assistants
with a more efficient way of calculating the cost of carpets.
-
To improve the service to
customers, giving a competitive edge over other carpet shops.
-
To ensure the cost of carpets can
be calculated quickly and accurately, which would encourage customers
to buy, thus increasing sales.
|
What is meant by the scope and boundaries of a system? When writing
a piece of software, you have to consider where the system ends. For
example, will the software run on one or more workstations or will it run on
a central server computer. Will your software have to interact with other
software? Is there a need for a central database? Is the system
networked together? Can the system be accessed from outside the
network. What operating system will the software be written for? There
are lots more questions like this.
Also, when writing software, you have to consider not only what the
program will do, but what it won't do. There are likely to be
many features you could include in a piece of software if you weren't
constrained by time and money. You could probably think of lots of
exciting features that could be included but you must ensure you stick to the
essential features and don't add anything unnecessary.
Here are some points relating to the Carpet company system:-
Case
Study - Carpet Company |
The scope and boundaries of the
system
-
The software will run on
stand-alone workstations.
-
The software will run on the
Windows operating system
-
The software will have a
graphical user interface
-
A central database of carpet
prices will not be a feature
-
The system is not presently
networked together and the software will not be accessible via a
network
|
All systems will need to take input
from the user or from some other source such as another system or
computer. They will also produce output of some sort. At
this stage, it is necessary to define what the inputs and outputs of a system
are. It is not necessary to go into great detail at this stage, that
will be for later. For now, we will need to briefly describe...
·
the inputs of the new system
·
the outputs of the new system.
Let's try and describe the inputs of the new Carpet Company system.
Inputs :-
-
the length and width of the room
needs to be input.
-
The price of the chosen carpet
is also needed.
-
Economy or luxury underlay needs
to be chosen
-
The cost of he underlay is
always £1.75 per square metre, so this amount doesn't need to be entered.
-
The cost of the fitting always
costs £2.00 per square metre, so this amount doesn't need to be entered.
Now, let's try and describe the outputs:-
Outputs :-
We could draw a diagram showing the inputs and outputs.

|