Designing Databases

Saturday, January 24, 2015

Lazada Indonesia
How do you know what data to put in the database? 
A database system has to reflect the rules and practices of the organization. You need to talk with users and examine the business practices to identify the rules. And, you need a way to record these rules so you can verify them and share them with other developers. System designs are models that are used to facilitate this communication and teamwork. Designs are a simplification or picture of the underlying business operations



Identifying User Requirements
One challenging aspect of designing a system is to determine the requirements. You must thoroughly understand the business needs before you can create a useful system. A key step is to interview users and observe the operations of the firm. Although this step sounds easy, it can be difficult—especially when users disagree with each other. Even in the best circumstances, communication can be difficult. Excellent communication skills and experience are important to becoming a good designer.


Business Objects
Database design focuses on identifying the data that needs to be stored. Later, queries can be created to search the data, input forms to enter new data, and reports to retrieve and display the data to match the user needs. For now, the most important step is to organize the data correctly so that the database system can handle it efficiently.
All businesses deal with entities or objects, such as customers, products, employees, and sales. From a systems perspective, an entity is some item in the real world that you wish to track. That entity is described by its attributes or properties. For example, a customer entity has a name, address, and phone number. In modelling terms, an entity listed with its properties is called a class. In a programming environment, a class can also have methods or functions that it can perform,
and these can be listed with the class. For example, the customer class might have a method to add a new customer. Database designs seldom need to describe methods, so they are generally not listed.


Tables and Relationships
Classes will eventually be stored as tables in the database system. You have to be careful what columns you include in each table. Chapter 3 describes specific rules in detail, but they also apply when you create the class diagram. One of the most important aspects is to avoid unnecessary duplication of data.


Definitions
To learn how to create databases that are useful and efficient, you need to understand some basic definitions.

A relational database is a collection of carefully defined tables organized for a common purpose. A table is a collection of columns (attributes or properties) that describe an entity. Individual objects are stored as rows (tuples in Codd’s terms)
within the table.

Data normalization is the process of defining tables properly to provide flexibility, minimize redundancy, and ensure data integrity. The goal of database design and data normalization is to produce a list of nicely behaved tables. Each table describes a single type of object in the organization.

Primary Key
Every table must have a primary key. The primary key is a column or set of columns that identifies a particular row. For example, in the customer table you might use customer name to find a particular entry. But that column does not make a good key. What if eight customers are named John Smith? In many cases you will create new key columns to ensure they are unique. For example, a customer identification number is often created to ensure that all customers are correctly separated. The relationship between the primary key and the rest of the data is one-to-one. That is, each entry for a key points to exactly one customer row. To highlight the primary key, the names of the columns that make up the key will be underlined.



Lazada Indonesia

No comments:

Post a Comment

 
Learn on Udemy Today!