Steps recommended for creating ER diagrams
- Print the examples below.
- Using pens in different colors: underline the words that
will become entity types; the words that will become relationship types;
the words that indicate cardinality.
Now, you can either continue with pen and paper
or you can use a graph drawing program called "dia":
- Start dia. In the JKCC, you can do this by clicking
here and then
clicking "run" (the executable is on a local drive, thus this
should be save).
On any other pc, you would need to download and install it from
here
- Select "Other sheets -> ER"
- Use the boxes under "ER" for creating entities, attributes, relationships.
Use the "participation" button for creating the links.
- Double click on the boxes to edit the text.
Example 1
A database is to be designed for a Car Rental Co. (CRC). The
information required includes a description of cars, subcontractors
(i.e. garages), company expenditures, company revenues and
customers. Cars are to be described by such data as: make, model, year
of production, engine size, fuel type, number of passengers,
registration number, purchase price, purchase date, rent price and
insurance details. It is the company policy not to keep any car for a
period exceeding one year. All major repairs and maintenance are done
by subcontractors (i.e. franchised garages), with whom CRC has
long-term agreements. Therefore the data about garages to be kept in
the database includes garage names, addressees, range of services and
the like. Some garages require payments immediately after a repair has
been made; with others CRC has made arrangements for credit
facilities. Company expenditures are to be registered for all
outgoings connected with purchases, repairs, maintenance, insurance
etc. Similarly the cash inflow coming from all sources - car hire, car
sales, insurance claims - must be kept of file.CRC maintains a
reasonably stable client base. For this privileged category of
customers special credit card facilities are provided. These customers
may also book in advance a particular car. These reservations can be
made for any period of time up to one month. Casual customers must pay
a deposit for an estimated time of rental, unless they wish to pay by
credit card. All major credit cards care accepted. Personal details
(such as name, address, telephone number, driving licence, number)
about each customer are kept in the database.
Example 2
A database is to be designed for a college to monitor students'
progress throughout their course of study. The students are reading
for a degree (such as BA, BA(Hons) MSc, etc) within the framework of
the modular system. The college provides a number of module, each
being characterised by its code , title, credit value, module leader,
teaching staff and the department they come from. A module is
co-ordinated by a module leader who shares teaching duties with one or
more lecturers. A lecturer may teach (and be a module leader for) more
than one module. Students are free to choose any module they wish but
the following rules must be observed: some modules require
pre-requisites modules and some degree programmes have compulsory
modules. The database is also to contain some information about
students including their numbers, names, addresses, degrees they read
for, and their past performance (i.e. modules taken and examination
results).
Example 3
A relational database is to be designed for a medium sized Company
dealing with industrial applications of computers. The Company
delivers various products to its customers ranging from a single
application program through to complete installation of hardware with
customized software. The Company employs various experts, consultants
and supporting staff. All personnel are employed on long-term basis,
i.e. there are no short-term or temporary staff. Although the Company
is somehow structured for administrative purposes (that is, it is
divided into departments headed by department managers) all projects
are carried out in an inter-disciplinary way. For each project a
project team is selected, grouping employees from different
departments, and a Project Manager (also an employee of the Company)
is appointed who is entirely and exclusively responsible for the
control of the project, quite independently of the Company's
hierarchy. The following is a brief statement of some facts and
policies adopted by the Company.
Once you are finished you can check your answers against the
model answer