Structure of this Chapter
In Section 11.1Section 11.1 we discuss when a database developer might use
fact-finding techniques. (Throughout this book we use the term
“database developer” to refer to a person or group of people
responsible for the analysis, design, and implementation of a
database system.) In Section 11.2Section 11.2 we illustrate the types of facts that
should be collected and the documentation that should be produced
at each stage of the database system development lifecycle. In
Section 11.3Section 11.3 we describe the five most commonly used fact-finding
techniques and identify the advantages and disadvantages of each. In
Section 11.4Section 11.4 we demonstrate how fact-finding techniques can be
used to develop a database system for a case study called
DreamHome, a property management company. We begin this section
by providing an overview of the DreamHome case study. We then
examine the first three stages of the database system development
lifecycle, namely database planning, system definition, and
requirements collection and analysis. For each stage we demonstrate
327
328of each. We finally demonstrate how some of these techniques may be used during the earlier stages of the database system development lifecycle using a property management company called DreamHome. The DreamHome case study is used throughout this book.
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29635
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29644
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29751
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30021
the process of collecting data using fact-finding techniques and
describe the documentation produced.
11.1 When Are Fact-Finding Techniques Used?
There are many occasions for fact-finding during the database system
development life cycle. However, fact-finding is particularly crucial to
the early stages of the lifecycle, including the database planning,
system definition, and requirements collection and analysis stages. It
is during these early stages that the database developer captures the
essential facts necessary to build the required database. Fact-finding is
also used during database design and the later stages of the lifecycle,
but to a lesser extent. For example, during physical database design,
fact-finding becomes technical as the database developer attempts to
learn more about the DBMS selected for the database system. Also,
during the final stage, operational maintenance, fact-finding is used to
determine whether a system requires tuning to improve performance
or further development to include new requirements.
Note that it is important to have a rough estimate of how much time
and effort is to be spent on fact-finding for a database project. As we
mentioned in Chapter 10Chapter 10, too much study too soon leads to paralysis
by analysis. However, too little thought can result in an unnecessary
waste of both time and money, due to working on the wrong solution
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_019.xhtml#eid27876
to the wrong problem.
11.2 What Facts Are Collected?
Throughout the database system development lifecycle, the database
developer needs to capture facts about the current and/or future
system. Table 11.1Table 11.1 provides examples of the sorts of data captured
and the documentation produced for each stage of the lifecycle. As we
mentioned in Chapter 10Chapter 10, the stages of the database system
development lifecycle are not strictly sequential, but involve some
amount of repetition of previous stages through feedback loops. This
is also true for the data captured and the documentation produced at
each stage. For example, problems encountered during database
design may necessitate additional data capture on the requirements
for the new system.
TABLE 11.1 Examples of the data captured and the documentation produced for each stage of the database system development lifecycle.
STAGE OF DATABASESTAGE OF DATABASE
SYSTEMSYSTEM
DEVELOPMENTDEVELOPMENT
LIFECYCLELIFECYCLE
EXAMPLES OF DATAEXAMPLES OF DATA
CAPTUREDCAPTURED
EXAMPLES OFEXAMPLES OF
DOCUMENTATIONDOCUMENTATION
PRODUCEDPRODUCED
Database planning Aims and objectives of Mission statement
328
329
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29652
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_019.xhtml#eid27876
database project and objectives of
database system
System definition Description of major
user views (includes
job roles or business
application areas)
Definition of scope
and boundary of
database system;
definition of user
views to be
supported
Requirements
collection and analysis
Requirements for user
views; systems
specifications,
including performance
and security
requirements
Users’ and system
requirements
specifications
Database design Users’ responses to
checking the
conceptual/logical
database design;
functionality provided
by target DBMS
Conceptual/logical
database design
(includes ER
model(s), data
dictionary, and
relational schema);
physical database
design
Application design Users’ responses to Application design
checking interface
design
(includes
description of
programs and user
interface)
DBMS selection Functionality provided
by target DBMS
DBMS evaluation
and
recommendations
Prototyping Users’ responses to
prototype
Modified users’
requirements and
systems
specifications
Implementation Functionality provided
by target DBMS
Data conversion and
loading
Format of current data;
data import capabilities
of target DBMS
Testing Test results Testing strategies
used; analysis of
test results
Operational Performance testing User manual;
maintenance results; new or
changing user and
system requirements
analysis of
performance
results; modified
users’ requirements
and systems
specifications
11.2 What Facts Are Collected?
Throughout the database system development lifecycle, the database
developer needs to capture facts about the current and/or future
system. Table 11.1Table 11.1 provides examples of the sorts of data captured
and the documentation produced for each stage of the lifecycle. As we
mentioned in Chapter 10Chapter 10, the stages of the database system
development lifecycle are not strictly sequential, but involve some
amount of repetition of previous stages through feedback loops. This
is also true for the data captured and the documentation produced at
each stage. For example, problems encountered during database
design may necessitate additional data capture on the requirements
for the new system.
TABLE 11.1 Examples of the data captured and the documentation produced for each stage of the database system development lifecycle.
STAGE OF DATABASESTAGE OF DATABASE
SYSTEMSYSTEM
DEVELOPMENTDEVELOPMENT
LIFECYCLELIFECYCLE
EXAMPLES OF DATAEXAMPLES OF DATA
CAPTUREDCAPTURED
EXAMPLES OFEXAMPLES OF
DOCUMENTATIONDOCUMENTATION
PRODUCEDPRODUCED
Database planning Aims and objectives of
database project
Mission statement
and objectives of
328
329
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29652
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_019.xhtml#eid27876
database system
System definition Description of major
user views (includes
job roles or business
application areas)
Definition of scope
and boundary of
database system;
definition of user
views to be
supported
Requirements
collection and analysis
Requirements for user
views; systems
specifications,
including performance
and security
requirements
Users’ and system
requirements
specifications
Database design Users’ responses to
checking the
conceptual/logical
database design;
functionality provided
by target DBMS
Conceptual/logical
database design
(includes ER
model(s), data
dictionary, and
relational schema);
physical database
design
Application design Users’ responses to
checking interface
Application design
(includes
design description of
programs and user
interface)
DBMS selection Functionality provided
by target DBMS
DBMS evaluation
and
recommendations
Prototyping Users’ responses to
prototype
Modified users’
requirements and
systems
specifications
Implementation Functionality provided
by target DBMS
Data conversion and
loading
Format of current data;
data import capabilities
of target DBMS
Testing Test results Testing strategies
used; analysis of
test results
Operational
maintenance
Performance testing
results; new or
User manual;
analysis of
changing user and
system requirements
performance
results; modified
users’ requirements
and systems
specifications
11.3 Fact-Finding Techniques
A database developer normally uses several fact-finding techniques
during a single database project. There are five commonly used fact-
finding techniques:
• examining documentation;
• interviewing;
• observing the enterprise in operation;
• research;
• questionnaires.
In the following sections we describe these fact-finding techniques
and identify the advantages and disadvantages of each.
11.3.1 Examining Documentation
Examining documentation can be useful when we are trying to gain
some insight as to how the need for a database arose. We may also
find that documentation can help to provide information on the part
of the enterprise associated with the problem. If the problem relates
to the current system, there should be documentation associated with
329
330
that system. By examining documents, forms, reports, and files
associated with the current system, we can quickly gain some
understanding of the system. Examples of the types of documentation
that should be examined are listed in Table 11.2Table 11.2.
11.3.2 Interviewing
TABLE 11.2 Examples of types of documentation that should be examined.
PURPOSE OFPURPOSE OF
DOCUMENTATIONDOCUMENTATION
EXAMPLES OF USEFULEXAMPLES OF USEFUL
SOURCESSOURCES
Describes problem and need for
database
Internal memos, emails, and
minutes of meetings
Employee complaints and
documents that describe the
problem Social media such as
blogs and tweets
Performance reviews/reports
Describes the part of the
enterprise affected by problem
Organizational chart, mission
statement, and strategic plan of
the enterprise
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29786
Objectives for the part of the
enterprise being studied
Task/job descriptions
Samples of completed manual
forms and reports
Samples of completed
computerized forms and reports
Describes current system Various types of flowcharts and
diagrams
Data dictionary
Database system design
Program documentation
User/training manuals
Interviewing is the most commonly used and normally the most useful
fact-finding technique. We can interview to collect information from
individuals face-to-face. There can be several objectives to using
interviewing, such as finding out
facts, verifying facts, clarifying facts, generating enthusiasm, getting
the end-user involved, identifying requirements, and gathering ideas
and opinions. However, using the interviewing technique requires
good communication skills for dealing effectively with people who
have different values, priorities, opinions, motivations, and
personalities. As with other fact-finding techniques, interviewing is
not always the best method for all situations. The advantages and
disadvantages of using interviewing as a fact-finding technique are
listed in Table 11.3Table 11.3.
TABLE 11.3 Advantages and disadvantages of using interviewing as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
Allows interviewee to respond
freely and openly to questions
Very time-consuming and costly,
and therefore may be impractical
Allows interviewee to feel part of
project
Success is dependent on
communication skills of
interviewer
Allows interviewer to follow up
on interesting comments made by
Success can be dependent on
willingness of interviewees to
330
331
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29831
interviewee participate in interviews
Allows interviewer to adapt or
reword questions during
interview
Allows interviewer to observe
interviewee’s body language
There are two types of interview: unstructured and structured.
Unstructured interviewsUnstructured interviews are conducted with only a general
objective in mind and with few, if any, specific questions. The
interviewer counts on the interviewee to provide a framework and
direction to the interview. This type of interview frequently loses
focus and, for this reason, it often does not work well for database
analysis and design.
In structured interviewsstructured interviews, the interviewer has a specific set of
questions to ask the interviewee. Depending on the interviewee’s
responses, the interviewer will direct additional questions to obtain
clarification or expansion. Open-ended questionsOpen-ended questions allow the
interviewee to respond in any way that seems appropriate. An
example of an open-ended question is: “Why are you dissatisfied with
the report on client registration?” Closed-ended questionsClosed-ended questions restrict
answers to either specific choices or short, direct responses. An
example of such a question might be: “Are you receiving the report on
client registration on time?” or “Does the report on client registration
contain accurate information?” Both questions require only a “Yes” or
“No” response.
To ensure a successful interview includes selecting appropriate
individuals to interview, preparing extensively for the interview, and
conducting the interview in an efficient and effective manner.
11.3.3 Observing the Enterprise in Operation
Observation is one of the most effective fact-finding techniques for
understanding a system. With this technique, it is possible to either
participate in or watch a person perform activities to learn about the
system. This technique is particularly useful when the validity of data
collected through other methods is in question or when the
complexity of certain aspects of the system prevents a clear
explanation by the end-users.
TABLE 11.4 Advantages and disadvantages of using observation as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
Allows the validity of facts and
data to be checked
People may knowingly or
unknowingly perform differently
when being observed
Observer can see exactly what is
being done
May miss observing tasks
involving different levels of
331
332
difficulty or volume normally
experienced during that time
period
Observer can also obtain data
describing the physical
environment of the task
Some tasks may not always be
performed in the manner in
which they are observed
Relatively inexpensive May be impractical
Observer can do work
measurements
As with the other fact-finding techniques, successful observation
requires preparation. To ensure that the observation is successful, it is
important to know as much about the individuals and the activity to
be observed as possible. For example, “When are the low, normal, and
peak periods for the activity being observed?” and “Will the
individuals be upset by having someone watch and record their
actions?” The advantages and disadvantages of using observation as a
fact-finding technique are listed in Table 11.4Table 11.4.
11.3.4 Research
A useful fact-finding technique is to research the application and
problem. Computer trade journals, reference books, and the Internet
(including user groups and bulletin boards) are good sources of
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29887
information. They can provide information on how others have solved
similar problems, plus on whether software packages exist to solve or
even partially solve the problem. The advantages and disadvantages
of using research as a fact-finding technique are listed in Table 11.5Table 11.5.
11.3.5 Questionnaires
TABLE 11.5 Advantages and disadvantages of using research as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
Can save time if solution already
exists
Requires access to appropriate
sources of information
Researcher can see how others
have solved similar problems or
met similar requirements
May ultimately not help in solving
problem because problem is not
documented elsewhere
Keeps researcher up to date with
current developments
Another fact-finding technique is to conduct surveys through
questionnaires. Questionnaires are special-purpose documents that
allow facts to be gathered from a large number of people while
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29944
maintaining some control over their responses.
TABLE 11.4 Advantages and disadvantages of using observation as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
Allows the validity of facts and
data to be checked
People may knowingly or
unknowingly perform differently
when being observed
Observer can see exactly what is
being done
May miss observing tasks
involving different levels of
difficulty or volume normally
experienced during that time
period
Observer can also obtain data
describing the physical
environment of the task
Some tasks may not always be
performed in the manner in
which they are observed
Relatively inexpensive May be impractical
Observer can do work
measurements
332
As with the other fact-finding techniques, successful observation
requires preparation. To ensure that the observation is successful, it is
important to know as much about the individuals and the activity to
be observed as possible. For example, “When are the low, normal, and
peak periods for the activity being observed?” and “Will the
individuals be upset by having someone watch and record their
actions?” The advantages and disadvantages of using observation as a
fact-finding technique are listed in Table 11.4Table 11.4.
11.3.4 Research
A useful fact-finding technique is to research the application and
problem. Computer trade journals, reference books, and the Internet
(including user groups and bulletin boards) are good sources of
information. They can provide information on how others have solved
similar problems, plus on whether software packages exist to solve or
even partially solve the problem. The advantages and disadvantages
of using research as a fact-finding technique are listed in Table 11.5Table 11.5.
11.3.5 Questionnaires
TABLE 11.5 Advantages and disadvantages of using research as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
Can save time if solution already Requires access to appropriate
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29887
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29944
exists sources of information
Researcher can see how others
have solved similar problems or
met similar requirements
May ultimately not help in solving
problem because problem is not
documented elsewhere
Keeps researcher up to date with
current developments
Another fact-finding technique is to conduct surveys through
questionnaires. Questionnaires are special-purpose documents that
allow facts to be gathered from a large number of people while
maintaining some control over their responses. When dealing with a
large audience, no other fact-finding technique can tabulate the same
facts as efficiently. The advantages and disadvantages of using
questionnaires as a fact-finding technique are listed in Table 11.6Table 11.6.
TABLE 11.6 Advantages and disadvantages of using questionnaires as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
People can complete and return
questionnaires at their
Number of respondents can be
low, possibly only 5% to 10%
332
333
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29979
convenience
Relatively inexpensive way to
gather data from a large number
of people
Questionnaires may be returned
incomplete
People more likely to provide the
real facts as responses can be kept
confidential
May not provide an opportunity
to adapt or reword questions that
have been misinterpreted
Responses can be tabulated and
analyzed quickly
Cannot observe and analyze the
respondent’s body language
There are two types of questions that can be asked in a questionnaire:
free-format and fixed-format. Free-format questionsFree-format questions offer the
respondent greater freedom in providing answers. A question is asked
and the respondent records the answer in the space provided after the
question. Examples of free-format questions are: “What reports do
you currently receive and how are they used?” and “Are there any
problems with these reports? If so, please explain.” The problems with
free-format questions are that the respondent’s answers may prove
difficult to tabulate, and in some cases, may not match the questions
asked.
Fixed-format questionsFixed-format questions require specific responses from
individuals. Given any question, the respondent must choose from the
available answers. This makes the results much easier to tabulate. On
the other hand, the respondent cannot provide additional information
that might prove valuable. An example of a fixed-format question is:
“The current format of the report on property rentals is ideal and
should not be changed.” The respondent may be given the option to
answer “Yes” or “No” to this question, or be given the option to answer
from a range of responses including “Strongly agree,” “Agree,” “No
opinion,” “Disagree,” and “Strongly disagree.”
11.4 Using Fact-Finding Techniques: A Worked Example
In this section we first present an overview of the DreamHome case
study and then use this case study to illustrate how to establish a
database project. In particular, we illustrate how fact-finding
techniques can be used and the documentation produced in the early
stages of the database system development lifecycle—namely, the
database planning, system definition, and requirements collection and
analysis stages.
When dealing with a large audience, no other fact-finding technique
can tabulate the same facts as efficiently. The advantages and
disadvantages of using questionnaires as a fact-finding technique are
listed in Table 11.6Table 11.6.
TABLE 11.6 Advantages and disadvantages of using questionnaires as a fact-finding technique.
ADVANTAGESADVANTAGES DISADVANTAGESDISADVANTAGES
People can complete and return
questionnaires at their
convenience
Number of respondents can be
low, possibly only 5% to 10%
Relatively inexpensive way to
gather data from a large number
of people
Questionnaires may be returned
incomplete
People more likely to provide the
real facts as responses can be kept
confidential
May not provide an opportunity
to adapt or reword questions that
have been misinterpreted
Responses can be tabulated and
analyzed quickly
Cannot observe and analyze the
respondent’s body language
332
333
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid29979
There are two types of questions that can be asked in a questionnaire:
free-format and fixed-format. Free-format questionsFree-format questions offer the
respondent greater freedom in providing answers. A question is asked
and the respondent records the answer in the space provided after the
question. Examples of free-format questions are: “What reports do
you currently receive and how are they used?” and “Are there any
problems with these reports? If so, please explain.” The problems with
free-format questions are that the respondent’s answers may prove
difficult to tabulate, and in some cases, may not match the questions
asked.
Fixed-format questionsFixed-format questions require specific responses from
individuals. Given any question, the respondent must choose from the
available answers. This makes the results much easier to tabulate. On
the other hand, the respondent cannot provide additional information
that might prove valuable. An example of a fixed-format question is:
“The current format of the report on property rentals is ideal and
should not be changed.” The respondent may be given the option to
answer “Yes” or “No” to this question, or be given the option to answer
from a range of responses including “Strongly agree,” “Agree,” “No
opinion,” “Disagree,” and “Strongly disagree.”
11.4 Using Fact-Finding Techniques: A Worked Example
In this section we first present an overview of the DreamHome case
study and then use this case study to illustrate how to establish a
database project. In particular, we illustrate how fact-finding
techniques can be used and the documentation produced in the early
stages of the database system development lifecycle—namely, the
database planning, system definition, and requirements collection and
analysis stages.
11.4.1 The DreamHome Case Study—An Overview of the Current System
The first branch office of DreamHome was opened in 1992 in Glasgow
in the UK. Since then, the Company has grown steadily and now has
several offices in most of the main cities of the UK. However, the
Company is now so large that more and more administrative staff are
being employed to cope with the ever-increasing amount of
paperwork. Furthermore, the communication and sharing of
information between offices, even in the same city, is poor. The
Director of the Company, Sally Mellweadows, feels that too many
mistakes are being made and that the success of the Company will be
short-lived if she does not do something to remedy the situation. She
knows that a database could help in part to solve the problem and has
requested that a database system be developed to support the running
333
334
of DreamHome. The Director has provided the following brief
description of how DreamHome currently operates.
DreamHome specializes in property management, taking an
intermediate role between owners who wish to rent out their
furnished property and clients of DreamHome who require to rent
furnished property for a fixed period. DreamHome currently has
about 2000 staff working in 100 branches. When a member of staff
joins the Company, the DreamHome staff registration form is used.
The staff registration form for Susan Brand is shown in Figure 11.1Figure 11.1.
Each branch has an appropriate number and type of staff including a
Manager, Supervisors, and Assistants. The Manager is responsible for
the day-to-day running of a branch and each Supervisor is responsible
for supervising a group of staff called Assistants. An example of the
first page of a report listing the details of staff working at a branch
office in Glasgow is shown in Figure 11.2Figure 11.2.
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30052
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30058
Figure 11.1 The DreamHome staff registration form for Susan Brand.
11.4.1 The DreamHome Case Study—An Overview of the Current System
The first branch office of DreamHome was opened in 1992 in Glasgow
in the UK. Since then, the Company has grown steadily and now has
several offices in most of the main cities of the UK. However, the
Company is now so large that more and more administrative staff are
being employed to cope with the ever-increasing amount of
paperwork. Furthermore, the communication and sharing of
information between offices, even in the same city, is poor. The
Director of the Company, Sally Mellweadows, feels that too many
mistakes are being made and that the success of the Company will be
short-lived if she does not do something to remedy the situation. She
knows that a database could help in part to solve the problem and has
requested that a database system be developed to support the running
of DreamHome. The Director has provided the following brief
description of how DreamHome currently operates.
DreamHome specializes in property management, taking an
intermediate role between owners who wish to rent out their
furnished property and clients of DreamHome who require to rent
furnished property for a fixed period. DreamHome currently has
about 2000 staff working in 100 branches. When a member of staff
joins the Company, the DreamHome staff registration form is used.
333
334
The staff registration form for Susan Brand is shown in Figure 11.1Figure 11.1.
Each branch has an appropriate number and type of staff including a
Manager, Supervisors, and Assistants. The Manager is responsible for
the day-to-day running of a branch and each Supervisor is responsible
for supervising a group of staff called Assistants. An example of the
first page of a report listing the details of staff working at a branch
office in Glasgow is shown in Figure 11.2Figure 11.2.
Figure 11.1 The DreamHome staff registration form for Susan Brand.
334
335
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30052
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30058
Figure 11.2 Example of the first page of a report listing the details of staff working at a DreamHome branch office in
Glasgow.
Each branch office offers a range of properties for rent. To offer
property through DreamHome, a property owner normally contacts
the DreamHome branch office nearest to the property for rent. The
owner provides the details of the property and agrees an appropriate
rent for the property with the branch Manager. The registration form
for a property in Glasgow is shown in Figure 11.3Figure 11.3.
Once a property is registered, DreamHome provides services to ensure
that the property is rented out for maximum return for both the
property owner and, of course, DreamHome. These services include
interviewing prospective renters (called clients), organizing viewings
of the property by clients, advertising the property in local or national
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30080
newspapers (when necessary), and negotiating the lease. Once rented,
DreamHome assumes responsibility for the property including the
collection of rent.
Members of the public interested in renting out property must first
contact their nearest DreamHome branch office to register as clients
of DreamHome. However, before registration is accepted, a
prospective client is normally interviewed to record personal details
and preferences of the client in terms of property requirements. The
registration form for a client called Mike Ritchie is shown in FigureFigure
11.411.4.
Once registration is complete, clients are provided with weekly
reports that list properties currently available for rent. An example of
the first page of a report listing the properties available for rent at a
branch office in Glasgow is shown in Figure 11.5Figure 11.5.
Clients may request to view one or more properties from the list and
after viewing will normally provide a comment on the suitability of
the property. The first page of a report describing the comments made
by clients on a property in Glasgow is shown in Figure 11.6Figure 11.6.
Properties that prove difficult to rent out are normally advertised in
local and national newspapers.
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30086
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30092
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30098
Figure 11.3 The DreamHome property registration form for a property in Glasgow.
335
336
Figure 11.4 The DreamHome client registration form for Mike Ritchie.
336
337
Figure 11.5 The first page of the DreamHome property for rent report listing property available at a branch in
Glasgow.
Figure 11.6 The first page of the DreamHome property viewing report for a property in Glasgow.
Figure 11.7 The DreamHome lease form for a client called Mike Ritchie renting a property in Glasgow.
Once a client has identified a suitable property, a member of staff
draws up a lease. The lease between a client called Mike Ritchie and a
property in Glasgow is shown in Figure 11.7Figure 11.7.
At the end of a rental period a client may request that the rental be
continued; however, this requires that a new lease be drawn up.
Alternatively, a client may request to view alternative properties for
the purposes of renting.
11.4.2 The DreamHome Case Study—Database Planning
337
338
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30105
The first step in developing a database system is to clearly define the
mission statementmission statement for the database project, which defines the major
aims of the database system. Once the mission statement is defined,
the next activity involves identifying the mission objectivesmission objectives, which
should identify the particular tasks that the database must support
(see Section 10.3Section 10.3).
Creating the mission statement for the DreamHome database system
We begin the process of creating a mission statement for the
DreamHome database system by conducting interviews with the
Director and any other appropriate staff, as indicated by the Director.
Open-ended questions are normally the most useful at this stage of the
process. Examples of typical questions we might ask include:
“What is the purpose of your company?”
“Why do you feel that you need a database?”
“How do you know that a database will solve your problem?”
For example, the database developer may start the interview by
asking the Director of DreamHome the following questions:
338
339
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_019.xhtml#eid27980
DatabaseDatabase
Developer:Developer:
What is the purpose of your company?
Director:Director: We offer a wide range of high-quality properties for
rent to clients registered at our branches
throughout the UK. Our ability to offer quality
properties, of course, depends upon the services we
provide to property owners. We provide a highly
professional service to property owners to ensure
that properties are rented out for maximum return.
DatabaseDatabase
Developer:Developer:
Why do you feel that you need a database?
Director:Director: To be honest, we can’t cope with our own success.
Over the past few years we’ve opened several
branches in most of the main cities of the UK, and at
each branch we now offer a larger selection of
properties to a growing number of clients.
However, this success has been accompanied with
increasing data management problems, which
means that the level of service we provide is falling.
Also, there’s a lack of cooperation and sharing of
information between branches, which is a very
worrying development.
DatabaseDatabase How do you know that a database will solve your
Developer:Developer: problem?
Director:Director: All I know is that we are drowning in paperwork.
We need something that will speed up the way we
work by automating a lot of the day-to-day tasks
that seem to take forever these days. Also, I want
the branches to start working together. Databases
will help to achieve this, won’t they?
Responses to these types of questions should help formulate the
mission statement. An example mission statement for the
DreamHome database system is shown in Figure 11.8Figure 11.8. When we
have a clear and unambiguous mission statement that the staff of
DreamHome agree with, we move on to define the mission objectives.
Figure 11.8 Mission statement for the DreamHome database system.
Creating the mission objectives for the DreamHome database system
The process of creating mission objectives involves conducting
interviews with appropriate members of staff. Again, open-ended
questions are normally the most useful at this stage of the process. To
obtain the complete range of mission
epub://rxsygq01kgnjqgui7xpe.1.vbk/OPS/loc_020.xhtml#eid30195
objectives, we interview various members of staff with different roles
in DreamHome. Examples of typical questions that we might ask
include:
“What is your job description?”
“What kinds of tasks do you perform in a typical day?”
“What kinds of data do you work with?”
“What types of reports do you use?”
“What types of things do you need to keep track of?”
“What service does your company provide to your customers?”
These questions (or similar) are put to the Director of DreamHome
and members of staff in the role of Manager, Supervisor, and
Assistant. It may be necessary to adapt the questions as required,
depending on whom is being interviewed.
Director
DatabaseDatabase
Developer:Developer:
What role do you play for the company?
Director:Director: I oversee the running of the company to ensure that
we continue to provide the best possible property
rental service to our clients and property owners.
DatabaseDatabase What kinds of tasks do you perform in a typical
339
340
Developer:Developer: day?
Director:Director: I monitor the running of each branch by our
Managers. I try to ensure that the branches work
well together and share important information
about properties and clients. I normally try to keep
a high profile with my branch Managers by calling
into each branch at least once or twice a month.
DatabaseDatabase
Developer:Developer:
What kinds of data do you work with?
Director:Director: I need to see everything, well at least a summary of
the data used or generated by DreamHome. That
includes data about staff at all branches, all
properties and their owners, all clients, and all
leases. I also like to keep an eye on the extent to
which branches advertise properties in
newspapers.
DatabaseDatabase
Developer:Developer:
What types of reports do you use?
Director:Director: I need to know what’s going on at all the branches
and there are lots of them. I spend a lot of my
working day going over long reports on all aspects
of DreamHome. I need reports that are easy to
access and that let me get a good overview of what’s
happening at a given branch and across all
branches.
DatabaseDatabase
Developer:Developer:
What types of things do you need to keep track of?
Director:Director: As I said before, I need to have an overview of
everything; I need to see the whole picture.
DatabaseDatabase
Developer:Developer:
What service does your company provide to your
customers?
Director:Director: We aim to provide the best property rental service
in the UK. I believe that this will be achieved with
the support of the new database system, which will
allow my staff to deal more efficiently with our
customers and clients and better marketing of our
properties through the development of a new
DreamHome Web site. This site will allow our
current and new renting clients to view our
properties on the Web.
Manager
340
341
DatabaseDatabase
Developer:Developer:
What is your job description?
Manager:Manager: My job title is Manager. I oversee the day-to-day
running of my branch to provide the best property
rental service to our clients and property owners.
DatabaseDatabase
Developer:Developer:
What kinds of tasks do you perform in a typical
day?
Manager:Manager: I ensure that the branch has the appropriate
number and type of staff on duty at all times. I
monitor the registering of new properties and new
clients, and the renting activity of our currently
active clients. It’s my responsibility to ensure that
we have the right number and type of properties
available to offer our clients. I sometimes get
involved in negotiating leases for our top-of-the-
range properties, although due to my workload, I
often have to delegate this task to Supervisors.
DatabaseDatabase
Developer:Developer:
What kinds of data do you work with?
Manager:Manager: I mostly work with data on the properties offered at
my branch and the owners, clients, and leases. I
also need to know when properties are proving
difficult to rent out so that I can arrange for them to
be advertised in newspapers. I need to keep an eye
on this aspect of the business, because advertising
can get costly. I also need access to data about staff
working at my branch and staff at other local
branches. This is because I sometimes need to
contact other branches to arrange management
meetings or to borrow staff from other branches on
a temporary basis to cover staff shortages due to
sickness or during holiday periods. This borrowing
of staff between local branches is informal and
thankfully doesn’t happen very often. Besides data
on staff, it would be helpful to see other types of
data at the other branches such as data on property,
property owners, clients, and leases, you know, to
compare notes. Actually, I think the Director hopes
that this database project is going to help promote
cooperation and sharing of information between
branches. However, some of the Managers I know
are not going to be too keen on this, because they
think we’re in competition with each other. Part of
the problem is that a percentage of a Manager’s
salary is made up of a bonus, which is related to the
number of properties we rent out.
my staff to deal more efficiently with our customers and clients and
better marketing of our properties through the development of a new
DreamHome Web site. This site will allow our current and new
renting clients to view our properties on the Web.
Manager
DatabaseDatabase
Developer:Developer:
What is your job description?
Manager:Manager: My job title is Manager. I oversee the day-to-day
running of my branch to provide the best property
rental service to our clients and property owners.
DatabaseDatabase
Developer:Developer:
What kinds of tasks do you perform in a typical
day?
Manager:Manager: I ensure that the branch has the appropriate
number and type of staff on duty at all times. I
monitor the registering of new properties and new
clients, and the renting activity of our currently
active clients. It’s my responsibility to ensure that
we have the right number and type of properties
available to offer our clients. I sometimes get
involved in negotiating leases for our top-of-the-
340
341
range properties, although due to my workload, I
often have to delegate this task to Supervisors.
DatabaseDatabase
Developer:Developer:
What kinds of data do you work with?
Manager:Manager: I mostly work with data on the properties offered at
my branch and the owners, clients, and leases. I
also need to know when properties are proving
difficult to rent out so that I can arrange for them to
be advertised in newspapers. I need to keep an eye
on this aspect of the business, because advertising
can get costly. I also need access to data about staff
working at my branch and staff at other local
branches. This is because I sometimes need to
contact other branches to arrange management
meetings or to borrow staff from other branches on
a temporary basis to cover staff shortages due to
sickness or during holiday periods. This borrowing
of staff between local branches is informal and
thankfully doesn’t happen very often. Besides data
on staff, it would be helpful to see other types of
data at the other branches such as data on property,
property owners, clients, and leases, you know, to
compare notes. Actually, I think the Director hopes
that this database project is going to help promote
cooperation and sharing of information between
branches. However, some of the Managers I know
are not going to be too keen on this, because they
think we’re in competition with each other. Part of
the problem is that a percentage of a Manager’s
salary is made up of a bonus, which is related to the
number of properties we rent out.
DatabaseDatabase
Developer:Developer:
What types of reports do you use?
Manager:Manager: I need various reports on staff, property, owners,
clients, and leases. I need to know at a glance which
properties we need to lease out and what clients are
looking for.
DatabaseDatabase
Developer:Developer:
What types of things do you need to keep track of?
Manager:Manager: I need to keep track of staff salaries. I need to know
how well the properties on our books are being
rented out and when leases are coming up for
renewal. I also need to keep eye on our expenditure
on advertising in newspapers.
DatabaseDatabase
Developer:Developer:
What service does your company provide to your
customers?
341
342
Manager:Manager: Remember that we have two types of customers;
that is, clients wanting to rent property and
property owners. We need to make sure that our
clients find the property they’re looking for quickly
without too much legwork and at a reasonable rent,
and, of course, that our property owners see good
returns from renting out their properties with
minimal hassle. As you may already know from
speaking to our Director, as well as from developing
a new database system, we also intend to develop a
new DreamHome Web site. This Web site will help
our clients view our properties at home before
coming into our branches to arrange a viewing. I
need to ensure that no matter how clients contacts
us—either by email through using our Web site, by
phone, or in person—that they receive the same
efficient service to help them find the properties
that they seek.
Supervisor
DatabaseDatabase
Developer:Developer:
What is your job description?
Supervisor:Supervisor: My job title is Supervisor. I spend most of my time
in the office dealing directly with our customers;
that is, clients wanting to rent property and
property owners. I’m also responsible for a small
group of staff called Assistants and making sure
that they are kept busy, but that’s not a problem, as
there’s always plenty to do—it’s never-ending
actually.
DatabaseDatabase
Developer:Developer:
What kinds of tasks do you perform in a typical
day?
Supervisor:Supervisor: I normally start the day by allocating staff to
particular duties, such as dealing with clients or
property owners, organizing for clients to view
properties, and filing paperwork. When a client
finds a suitable property, I process the drawing up
of a lease, although the Manager must see the
documentation before any signatures are
requested. I keep client details up to date and
register new clients when they want to join the
Company. When a new property is registered, the
Manager
allocates
responsibility
for managing
that property
to me or one
of the other
Supervisors
or Assistants.
DatabaseDatabase
Developer:Developer:
What kinds of data do you work with?
Supervisor:Supervisor: I work with data about staff at my branch, property,
property owners, clients, property viewings, and
leases.
DatabaseDatabase
Developer:Developer:
What types of reports do you use?
Supervisor:Supervisor: Reports on staff and properties for rent.
DatabaseDatabase
Developer:Developer:
What types of things do you need to keep track of?
342
343
Supervisor:Supervisor: I need to know what properties are available for rent
and when currently active leases are due to expire. I
also need to know what clients are looking for. I need
to keep our Manager up to date with any properties
that are proving difficult to rent out. I need to ensure
that clients who contact us by email requesting to view
properties are given a quick response from us inviting
them to call into their nearest DreamHome branch
office. As part of the service we provide to our
property owners, we need to interview all clients first
before they are allowed to view our properties. There
is nothing unusual about this, as we have always
interviewed our clients on their first visit to a
DreamHome branch, and it’s during this time that we
note their details and their property requirements.