Database Design
|
|
|
|
|
What is a Database
|
A database is a collection of information stored in a computer in a systematic way,such
that a computer program can consult it to answer questions. The software used to
manage and query a database is known as a database management system (DBMS).The
properties of database systems are studied in information science.
"A carefully thought-out database design forms the foundation for future success.
" |
|
|
|
|
Traditional databases are organized by fields, records, and files. A field is a
single piece of information; a record is one complete set of fields; and a file
is a collection of records. For example, a telephone book is analogous to a file.
It contains a list of records, each of which consists of three fields: name, address,
and telephone number. To access information from a database, you need a database
management system (DBMS). This is a collection of programs that enables you to enter,
organize, and select data in a database. |
|
|
Data Modeling As Part of Database Design
|
|
An effective data model completely and accurately represents the data requirements
of the end users. It is simple enough to be understood by the end user yet detailedenough
to be used by a database designer to build the database. The model eliminates redundant
data, it is independent of any hardware and software constraints, and can be adapted
to changing requirements with a minimum of effort. |
|
The data model is one part of the conceptual design process. The other is the function
model. The data model focuses on what data should be stored in the database while
the function model deals with how the data is processed. To put this in the context
of the relational database, the data model is used to design the relational tables.
The functional model is used to design the queries that will access and perform
operations on those tables.
|
|
Data modeling is preceeded by planning and analysis. The effort devoted to this
stage is proportional to the scope of the database. The planning and analysis of
a database intended to serve the needs of an enterprise will require more effort
than one intended to serve a small workgroup. |
|
The information needed to build a data model is gathered during the requirments
analysis. Although not formally considered part of the data modeling stage by some
methodologies, in reality the requirements analysis and the ER diagramming part
of the data model are done at the same time.
|
|
Data modeling must be preceded by planning and analysis. Planning defines the goals
of the database , explains why the goals are important, and sets out the path by
which the goals will be reached. Analysis involves determining the requirements
of the database. This is typically done by examining existing documentation and
interviewing users.
|
|
|
Requirements Analysis
|
|
The requirements analysis is usually done at the same time as the data modeling.
As information is collected, data objects are identified and classified as either
entities, attributes, or relationship; assigned names; and, defined using terms
familiar to the end-users. The objects are then modeled and analysed using an ER
diagram. The diagram can be reviewed by the modeler and the end-users to determine
its completeness and accuracy. If the model is not correct, it is modified, which
sometimes requires additional information to be collected. The review and edit cycle
continues until the model is certified as correct.
|
|
|
The goals of the requirements analysis are:
|
|
To determine the data requirements of the database in terms of primitive objects.To
classify and describe the information about these objects. To identify and classify
the relationships among the objects. To determine the types of transactions that
will be executed on the database and the interactions between the data and the transactions.
To identify rules governing the integrity of the data. The modeler, or modelers,
works with the end users of an organization to determine the data requirements of
the database. Information needed for the requirements analysis can be gathered in
several ways.:
|
 |
Review of existing documents - such documents include existing forms and reports,written
|
|
|
guidelines, job descriptions, personal narratives, and memoranda. Paper documentation
is a
|
|
|
good way to become familiar with the organization or activity you need to model.
|
 |
Interviews with end users - these can be a combination of individual or group meetings.
|
 |
Review of existing automated systems - if the organization already has an automated
system,
|
|
|
review the system design specifications and documentation .
|
|
|
|
Identification of data objects and relationships
|
|
|
 |
Drafting initial ER diagram with entities and
|
|
|
relationships. |
 |
Refining the ER diagram.
|
 |
Add key attributes to the diagram.
|
 |
Adding non-key attributes.
|
 |
Diagramming Generalization Hierarchies.
|
|
|
Validating the model through normalization.
|
 |
Adding business and integrity rules to the
|
 |
Model.
|
|
 |
|
|
In practice, model building is not a strict linear process. As noted above, the
requirements analysis and the draft of the initial ER diagram often occur simultaneously.
Refining and validating the diagram may uncover problems or missing information
which require more information gathering and analysis
|
|
|
Database Software Options
|
|
What type of database do you need? It's actually a simple matter of deciding what
features you need and choosing a product that meets your requirements and doesn't
cause too much pain in your pocketbook. |
|
|
Desktop Databases
|
|
You're probably familiar with at least one desktop database product. The market
is dominated by brand-names like Microsoft Access and FileMaker Pro. These products
are relatively inexpensive and are great for single-user or non-interactive web
applications.
|
|
|
Server Databases
|
|
If you're planning a heavy-duty database application like an e-commerce site or
a multiuser database, you're going to need to call on one of the big guns.Server
databases like MySQL, Microsoft SQL Server and Oracle provide real firepower but
carry a correspondingly heavy pricetag |
|
Nowadays, almost every database application calls for some kind of web interaction.
Many people assume that if you're looking to publish your database on the Internet,
you need to use a server database. That's not necessarily true -- a desktop database
could (inexpensively!) meet your needs.
|
|
|
How we can Help?
|
|
SIPL has rich expertise in wide spectrum of areas like Database Design ,e-commerce,
e-transformation, intranet/web applications, client-server technologies, systems
integration, support & maintenance etc.
|
|
SIPL has successfully completed a number of software projects across diverse platforms
and technologies and satisfied clientele. Solutions are developed using proven methodologies
for software development, re-engineering, conversion, porting and rapid application
development.
|
|
SIPL incorporates the element of Quality in every step of development process. Every
project undergoes through rigid Quality controls and is audited as and when necessary,
at various points. All this and more has enabled SIPL to assure quality in its every
produce
|
|
|