Croydon accident claim and hire and their database management systems

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Croydon Accident Claim and Hire is a small organization which is established 10 years ago. This company deals with car hiring business and car accident and claim as well. This company has internal software and database to keep all the customers, vehicle, accidents and claims records in their database. Database is originally designed in Microsoft Access. Due to the growing needs of the company , it has plan to extend their business and open different branches in uk and want to share information on branch levels if required. Management wants to change their database for their new branch according to the latest technology and approach available to compete the market. Company has also plan to buy latest radio equipments to install into the cars to communicate with the drivers when it is required.

Mr. Babar Khan is the director of the company. After meeting him and his management working under his supervision i have decided to analyse their system and see the database which they have created and design new database which will satisfy user's requirements.


This is a small organization which deals car hires and accident claims. The main business is giving cars on hire, company has 20 cars and also gives cars on hires from the third parties and charge commission on them accordingly. Company has also contacts with other hire companies to provide clients and get commission from the company.

Company has a solicitor which handles all the accidents, injuries and claim. A company is registered with the Insurance Company which deals all the insurance claims.

Company is also authorized legally to sue against any company or person who is responsible for this accident.

After successful claim company is authorized to get commission from the third party and provides new vehicle and all the charges which other party incurred.

A company has a 24 hours car hire services to the public and also has some permanent office contracts to provide pick and drop services to their employees.

A company has internal software and database having all the records of their vehicles, their registrations, drivers and all employees, salaries, expenses, new vehicle registration, third parties detail and their vehicles, accident records and claim against these accidents.

A company's main office is based in Croydon but they have intention to extent their business and opened other office in Sutton in next 2 months.

A company's software (front end) is developed in visual basic 6.0 and database is made in Microsoft Access 2000.


There are some types of database management systems which we will discuss in detail to see which database system is best for this organization. We will focus our study on these database management systems:





A relational database management system RDBMS is a DBMS which is foundation on the relational model which is introduced by E.F.Codd. In RDBMS where data is stored in the shape of tables and also the relations among the tables also stored in the form of tables.

RDBMS have normally replaced bequest hierarchical databases and network databases as they are easier to know and utilize, even although they are not as much of competent.

There are lots of different sellers which at present create relational database management systems (RDBMS). Relational databases differ considerably in their means and in overheads. Some products are free while others are free source. The most famous sellers of RDBMS are listed down:

RDBMS Vendors


Computer Associates






Oracle Corporation


Microsoft Corporation

MS Access

Microsoft Corporation

SQL Server



NCR Teradata

PostgreSQL Dvlp Grp



Sybase 11

The three commercial leading relational vendors are Oracle, Microsoft and IBM. The three leading open source implementations are MySQL, PostgreSQL and SQLite.

A relation is distinct as a set of rows that have the similar characteristics. A row normally presents an object and information regarding that object. Objects are classically substantial objects or conception. A relation is normally stated as a table, which is formed into rows and columns. All the data located by an attribute are in the same field and match to the similar restraint.

Applications contact data by identifying queries, which utilize process such as select to point out rows, project to point out fields, and join to unite relations. Relations can be changed utilising the insert, delete, and update. New rows can provide exclusive values or be inherited from a query. likewise, queries specify rows for updating or deleting. It is important for each of a relation to be exclusively particular by some grouping (one or more) of its characteristic values. This grouping is known as the primary key.

A good database analyst is essential to make a elastic and competent relational database.

In relational database, data is collected from users . After watchful analyses we normalize the data and design relational tables.

Within the Relational Database Model, a set of policy has been recognized

to support in the making of tables that are necessary to be connected through relationships.

This set of rules is known as Normalization.

The benefits of Normalizing your database include:

* Avoiding cyclic entries

* minimising required storage room

* Checking the want to reorganize existing tables to contain new data.

* Increased hurry and elasticity of queries, sorts, and summaries.

There are five normal forms, In order to get height competence; it is optional that relational data be normalized with at least the third normal form.


The Object Oriented Database Management System (OODBMS) has been available at present for almost 20 years. The famous sellers start implementing them in the late 1980's using object oriented languages like smalltalk, c++ and java. In the start, there was a great anticipation that the OODBMS would restore the RDBMS as the database of preference for potential applications.

Many successful deployed applications have demonstrated that choosing OODBMS building consent to the building of high routine, highly synchronized and scalable solutions.

Application suites with the highly desired business capabilities either came from relational database vendor or were designed to support any relational database by adhering to the SQL standards. The characteristics of the databases were close enough that there was no particular advantage to be held by supporting one vendor over others. So the decision of which database is to be choose is often more political than technical. However, there are little differences from one vendor to the next.

There are three most common commercial OODB architectures. Choosing the right OODB architecture can mean to solve your business needs more accurately as compare to the relational databases.

It is not been possible to discuss all the features of OODBMS but the primary areas include:

a) The core Architecture

b) The concurrency Model

a) The Core Architecture:

The following are three well known OODB architecture implementations. Each OODB implementation provides degree of distribution, parallel processing and remoting that are used to elaborate system level designs; these are the core architectural types. We will call them container based, page based and object based. Lets take a look at each more closely.

Container Based Architecture

The "container-based" architecture is a client based design. It uses standard or proprietary NFS to ship segments of disk around the network, called containers, to the clients which implement the majority of the database functionality. The user application code is linked with the database client libraries which provide caching of containers, query processing, transactions and object life cycle management. All objects must reside inside a container and a container can hold many objects, multiple containers can be used if the limit per container is reached.

Page Based Architecture:

The "page-based" architecture is a client based design which runs a server process to meet page requests in a distributed virtual memory mapping model. It uses a server process to ship pages of disk around the network which get address translated into the virtual memory space of the application, where the majority of the database functionality is implemented.

Object Based Architecture:

The "object-based" architecture is a balanced design with caching and behaviour in both the application and database server processes. The server process caches pages of disk and manages indexes, locks, queries and transactions. The user application code is linked with the database client libraries which provide object caching, local locking and object lifecycle management.

b) The concurrency Model

Container Concurrency:

In this design, a separate lock server process coordinates concurrent access to information in the same container. Clients coordinate with a centralized lock process to request locks on containers in each database on a server machine before being allowed to cache a container at the client through the NFS page server. A request for update will establish a lock request queue on a container if there are existing readers of that container. The requests will either time-out or go through when existing clients release their locks on the container. Locks are generally released at transaction boundaries. When a queue is established by an update request, all other subsequent requests fall in queue behind the update request. Once the update request has been filled, all queued read requests rush in and get their read lock, return the container pages.

Page Concurrency:

In this design, the page server coordinates concurrent access by tracking which applications are accessing each page, granting permissions to lock pages locally, and using lock callbacks. A request for update will cause the page server to use callbacks, requesting other clients to release their locks on that page and give up permissions to lock the page locally. All clients either release their lock and permissions to lock locally and the request goes through or it blocks on each objecting client for a specified duration. Locks and permissions are taken out at the page level and pages may contain many objects.

Object Concurrency:

In this design, the database server process maintains lock request queues at the object level to control concurrency of access to the same object. A request for update will establish a queue if there are any existing readers of an object. The request either goes through when all current readers release their locks or times-out. In this architecture, locks are done at the object level.


An object-relational database or object-relational database management system (ORDBMS), is a Database Management System) comparable to a relational database, but through an object oriented database model: objects, classes and inheritance are openly supported in database diagram and in the query language. It also chains porch of the data model with convention data types and methods.

An object-relational database gives a core ground between relational databases and object-oriented databases (OODBMS). In object-relational databases, the advance is fundamentally that of relational databases: the data inhabit in the database and is manoeuvre collectively with queries in a query language; at the other great are OODBMS in which the database is fundamentally a constant object store for software written in an Object Oriented Languages, with a programming API ( Application Programming Interface) for storing and getting objects, and slight or no definite hold for querying.

The basic aim for the Object-relational database is to minimise the gap between conceptual data modelling techniques such as (ERD) and object relational mapping (ORM), which often use classes and inheritance, and relational databases, which do not directly support them.

And also aim is to minimise the gap between relational databases and the object-oriented modelling techniques used in programming languages such as Java, C++ , Visual Basic.Net or C#.

However, conventional RDBMS products decisive on the competent management of data pinched from a inadequate set of data types, an object-relational DBMS software-developers to add their possess types and the methods which affect to them into the DBMS. ORDBMS technology plans to allow developers to lift the height of idea at which they can see the problem domain. This aim is not generally shared; proponents of relational databases frequently quarrel that object-oriented specification degrade the abstraction level.

OODBMS vendors have rediscovered the difficulties of trying database design too closely to application design. Maintaining and evolving an OODBMS- based information system is an arduous undertaking. Sooner they realize that SQL-92 bring such tremendous productivity that the organizations will pay for the additional resources they require. You can also buy hardware, but not time.

They also rediscovered the fact that a lack of a standard data model leads to design errors and inconsistencies.

An object relational data base organizes the data and behaviour of business objects within an abstract data model. ORDBMS combines the features of RDBMS and OODBMS.

Although ORDBMS reuse the relational model but also new data types and functions can be implemented in general purpose languages such as c, java, etc.

ORDBMS have additional features which are not present in RDBMS for example, inheritance , polymorphism etc.

ORDBMS adopt the RDBMS query centric approach to data management. All data access in an ORDBMS is handled with declarative SQL statements.

Advantages and disadvantages

The differences between the three approaches

A Comparison of Database Management Systems








SQL3 (in process)

Object-oriented features Support

Do not support; It is hard to map program object to the database

Supports extensively

Limited support; mostly to new data types


Easy to use

OK for programmers; some SQL access for end users

Easy to use except for some extensions

complex relationships


Do not support abstract data types

Supports a wide variety of data types and data with complex inter-relationships

Supports Abstract data types and complex relationships


Very good performance

Relatively less performance

Expected to perform very well

Product maturity

Relatively old and mature

This concept is few years old and so relatively mature

Still in development stage so immature.

SQL use

Extensive supports SQL

OQL is similar to SQL, but with additional features like Complex objects and object-oriented features.

SQL3 is being developed with OO features incorporated in it


Its dependence on SQL, relatively simple query optimization hence good performance

It can handle all types of complex applications, reusability of code, less coding

Ability to query complex applications and ability to handle large and complex applications


Inability to handle complex applications

Low performance due to complex query optimization, inability to support large-scale systems

Low performance in web applications

Vendors Support

It is considered to be highly successful so the market size is very large but many vendors are moving towards ORDBMS

Presently lacking vendor support due to vast size of RDBMS market

All major RDBMS vendors are after this so has very good future


The benefits of using an ORDBMS while developing an application using an OO programming language are great. It not only save your time in development and need not to be worry about different data models also the benefit that there is minimum code to write is very gorgeous. In my view, there is slight grounds to choose an RDBMS over an OODBMS system for new application development except there are some inheritance issues which have to be considered.


1. RDBMS products and vendors

2. Greene OODBMS Architecture September 2006

3. Versant Object Database Fundamental Manual

4. Objectivity Inc. Technical Overview Release 9, January 2006.

5. Object Store Architecture Introductory, Dirk Butson

6. Locking and Concurrency

7. Object Relational DBMS- The Road Ahead

8. Object Relational Database Wikipedia

9. Database Normalization