Critical Writing of Quality Database Design

18
Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design Assessment 2: Individual Critical Writing Module: Logical Database Design Assessment: Assessment 2 Title: Individual Critical Writing Course: Enterprise Systems Professional Author: Mr. Traitet Thepbandansuk Student number: 20043132 Total pages: 10 pages (Including cover page) Word count: 2,218 (Excluding references) Submission deadline: Monday 23 rd January 2012 Course: Enterprise Systems Professional Page 1 of 18 Assessment 2

description

Topic: Critical Writing of Quality Database Design Module: Logical Database Design Mark: around 76% (Distinction) Date: Jan 2012 Sheffield Hallam University

Transcript of Critical Writing of Quality Database Design

Page 1: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

Assessment 2: Individual Critical Writing

Module: Logical Database Design

Assessment: Assessment 2

Title: Individual Critical Writing

Course: Enterprise Systems Professional

Author: Mr. Traitet Thepbandansuk

Student number: 20043132

Total pages: 10 pages (Including cover page)

Word count: 2,218 (Excluding references)

Submission deadline: Monday 23rd January 2012

Course: Enterprise Systems Professional Page 1 of 10 Assessment 2

Page 2: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

1. Introduction

A database design is a process of transformation a high-level or conceptual data model in business into

a logical data model that will used to implement the physical database and application (Kendall 2011). A

quality database design enables software development able to be implemented, maintained and

modified in a cost-effective way (Hoxmeier 1997). This paper includes the critique of the processes

undertaken in the module, the first assignment, and my experience, which is divided into three parts.

1. The meaning of a “Quality Database Design” and proposed criteria for measuring

2. The contribution of Use Case, ER, and EER models to a “Quality Database Design”

3. Contrast the concepts of “correct” and “quality” in terms of a database design

2. The meaning of a “Quality Database Design” and proposed criteria for measuring

There are several aspects of a quality database design based on a perspective of each evaluator. Data

modelling with a quality process doesn’t exactly lead to a usable database in production (Redman

1995). Therefore, a quality database design should approach not only a modelling process, semantic

quality, and data quality e.g. data redundancy, consistency and integrity, but should also be concerned

about customer satisfaction in terms of completion requirements (Hoxmeier 1997). For this reason, this

paper combines the criteria from the Framework for Assessing Database Quality stated by Hoxmeier

(1997), and TQM (Total Quality Management) principle, which is widely used to improve product quality.

The objectives are to clarify the meaning of a quality design, and to suggest four criteria for measuring a

quality database design as follows; Database Process Quality, Database Data Quality, Database

Semantic Quality, and Customer Satisfaction.

2.1 Database Process Quality

There are several steps involved in the process of turning an initial problem domain into a database

design. The quality design process addressed the quality-related issues in each phase enables to

deliver a database with high quality (Blakeslee and Rumble 2003). For example, a good result of

data analysing requirements is to clarify assumptions with clients in order to capture all business

requirements (D'Orazio and Happel 1996). The use case diagram is a UML tool, which allows a

development team to use it as a discussion tool to capture comprehensive views of an overall

system. Furthermore, the data modelling stage is generally represented by an Entity-Relationship

(ER) diagram. A good ER model providing a list of data items and relationships should emphasize

rules of interrelationships between data items to improve data accuracy and consistency (Teorey

2009).

In short, a good quality process should provide three main steps as follows; capturing business

requirements as a conceptual data model, translating it into a logical data model focusing on entity-

relationship modelling tools, such as ER and Class diagram, and reducing data redundancies by

using normalization methodology (Houldcroft 2011).

Course: Enterprise Systems Professional Page 2 of 10 Assessment 2

Page 3: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

2.2 Database Data Quality

Poor data quality can damage the efficiency of organizations, and businesses (Batini and

Scannapieco 2006), and inaccurate data also make users lose confidence in the database

(Redman 1995). Therefore, a quality database model should provide data accuracy as the first

priority. To be correct, data value must be the right value, and represented in a consistent and

unambiguous form. However, there are several issues related to data accuracy that database

designers should emphasize. Firstly, a good database design should define null rules to prevent the

problems of missing value. For example, the BIRTH_DATE attribute cannot be NULL because

every person has a date of birth. Furthermore, two-value problem, such as “St Louis” and “Saint

Louis”, can be inaccurate data because both are the same city recorded with different values.

Therefore, these data can create an opportunity for inaccurate usage (Olson 2003).

In summary, a database design, which can improve data accuracy, is one of the necessary

indicators to measure database quality. The following figure illustrates the further examples of

improving data quality reflected in the assignment 1.

Figure 2.2: More examples of improving data quality

Course: Enterprise Systems Professional Page 3 of 10 Assessment 2

Page 4: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

2.3 Database Semantic Quality

As can be seen in the figure 2.3, a semantic database design should provide information that

represents a high proportionate match between problem areas and the solution domain, and should

reduce the ambiguous dimensions of a conceptual database design (Hoxmeier 1997). Using

quantitative techniques, e.g. use case, ER and EER diagrams allow the results described in a

visual format, and measured in a meaningful way (Hoxmeier 1997). Regarding with my

experiences, we started by using use case diagrams to scope the problem areas, and used the ER

and EER diagrams to communicate with development teams about information flowing and

relationships between entities. As a result, we could design databases matching with all

requirements, and develop applications in short time.

To sum up, semantic quality database design is data modelling that designs structure for a

database fitting as good as possible some relevant world (Bakker 2006).

Figure 2.3: Mapping the solution to the problem domain (Hoxmeier 1997).

Course: Enterprise Systems Professional Page 4 of 10 Assessment 2

Page 5: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

2.4 Customer Satisfaction

Total Quality Management (TQM) approaches to improve quality standards and customer

satisfaction (Carroll 1995). A good database design can be also measured by customer

satisfaction. Regarding the concept of TQM, a customer doesn’t mean only an external customer,

but it also means internal customers who are the next processes after a database is designed,

especially DBAs and developers. They have to use a database design to create a physical

database, and develop an application. Regarding with my experience, there are several ways to

improve their satisfaction. Firstly, a database design should be completed before developing

because source code depends on a database. It might take much time, if a database is redesigned.

Secondly, a quality database design should be flexible. For example, if a multi-valued attribute,

such as telephone number, is fixed only for three columns, it may not be flexible once a customer

wants to record more than three numbers.

As a result, database designers should be concerned about future possibility of data, and design a

completed database before deliver to the next process in order to obtain satisfaction from both

internal and external customers. The following diagram illustrates the concepts of TQM and internal

customer reflected in my experience.

Figure 2.4: Applying TQM principles

Course: Enterprise Systems Professional Page 5 of 10 Assessment 2

Page 6: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

3. The contribution of Use Case, ER, and EER models to a “Quality Database Design”

3.1 Use Case Model

Although a use case diagram is not a database design tool, and cannot directly contribute to a

quality database, we found that use case modeling helped to capture business requirements in

order to design a good database in several ways. Firstly, the use case diagram is an initial tool that

describes what a system does, and reflects the view of what users want (Kendal 2011). Therefore,

we could use the use cases to determine candidate entities, objects, classes, and relationships for

designing ER and EER diagrams. For instance, in the figure 3.1, Agency Staff, Customer,

Property, Appointment and Promotion will be entities and classes used in ER and EER diagrams.

Secondly, system analysts can use a use case diagram and use case description to communicate

with database designers and developers during explaining scope of work. Similarly, analysts can

use them to discuss initially with clients to confirm requirements.

To sum up, the use case diagram is a powerful UML tool to help a development team understand

how a system work in general. It indirectly contributes to a quality database design, such as

supporting ER and EER diagrams, and helping development team fulfill requirements in order to

deliver a project with high satisfaction. However, the use case diagram is just only a tool in the

analysis stage. Development team needs to use more tools and methodologies to design a quality

database in the design stage.

Figure 3.1: Use case diagram

Course: Enterprise Systems Professional Page 6 of 10 Assessment 2

Page 7: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

3.2 ER Model

Data modeling by using ER diagram is the first step in the database design that links between real-

world objects and the database modeling details (Rob, Coronel, and Crockett 2008). After we used

the ER diagram to design database for the first assignment, we found some advantages that can

contribute to a database design. Firstly, the ER diagram holds information about attributes and

constraints on entities. As can be seen in figure 3.2, the ER diagram defines primary and foreign

key constraints for all entities in order to enhance database data quality. These constraints enforce

users to input data following referential integrity rules. For example, room details cannot be

inserted into the ROOM entity, if their PROPERTY_NO is not found in the PROPERTY entity.

Secondly, in terms of database semantic quality, ER modeling can reduce ambiguity of

communication (Connolly and Begg 2010) because the ER diagram is a visual format and

measured in a meaningful way (Hoxmeier 1997). For instance, cardinalities, such as 0:*, 1:1, on

our ER diagram helped everyone understand about relationships between entities in the same

direction. Moreover, the ER diagram has entities, attributes, relationships, cardinalities to hold

necessary requirements matching to customer’s needs. Thus it can enhance both data and

semantic quality.

However, only an ER diagram cannot provide a high quality data model because it is often

insufficient to represent requirements of complex applications, especially development based on

the object-oriented concept. To enhance design quality, data modeling needs more methodology

to support additional semantic concepts, such as specialization/generalization (class and

subclass), aggregation and composition provided by an EER diagram (Connolly and Begg 2010).

Figure 3.2: ER Diagram

Course: Enterprise Systems Professional Page 7 of 10 Assessment 2

Page 8: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

3.3 EER (Enhanced Entity-Relationship) Model

A high-quality database design should be flexible so that it can be adapted to meet the demands

of changing data and information requirements (Rob, Coronel, and Crockett 2008). As the EER

diagram combines modelling concepts between an ER diagram and UML class diagram, there are

several benefits for creating a flexible data model over using only an ER diagram. Firstly, as can

be seen in figure 3.3, the EER diagram includes details of classes and their subclasses e.g.

Student and Tourist classes are subclasses’ Customer class. As a result, using an EER diagram is

more effective in creating relational database with constraints than using only an ER diagram.

Moreover, the constraints, such as {Optional, and}, also enhance data quality of database design.

Secondly, aggregations and compositions improve a database design in terms of data integrity

quality. For instance, composition with the black diamond symbol means that when a parent entity

instance is deleted, all child entity instances are automatically deleted. Finally, EER diagram can

enhance quality of an overall system because it designs a data model for object-oriented concept

which aims to support four software engineering goals namely, abstraction, cohesion, low coupling

and modularity (Polovina 2011).

Figure 3.3: EER Diagram

Course: Enterprise Systems Professional Page 8 of 10 Assessment 2

Page 9: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

4. Contrast the concepts of “correct” and “quality” in terms of a Database Design

These days, a concept of correct and quality in terms of database design is a controversial issue

leading to much debate. There is a widespread perception that a good database design should follow a

data modelling process in order to support all business requirements; however, other takes a different

stance. The discussion here will attempt to contrast both sides.

There are three main basic principles of a correct database design as follows; to minimize redundancy

because it wastes resources, to develop set of relationships that capture all the relevant data efficiently

and effectively, and to capture rules to ensure that correct data are stored -maintain data integrity

(Riordan 2005).

Although a correct database design can support all requirements, eliminate data redundancy, and

improve data integrity, it is insufficient in the real world. There are some issues that should be brought

up. First of all, a correct design may be forced to fit into new business requirements, whereas a quality

database design is flexible to accept changes or new requirements in the future (Olson 2003).

Secondly, the concepts of Total Quality Management (TQM) are maintaining quality and increasing

customer satisfaction. For example, a customer needs to enhance the speed during retrieving data from

a database. A quality database design may be an incorrect design because it needs to perform

denormalization instead of normalization. Although normalization is a design technique to remove

redundancies from tables, and avoid costly, denormalization into a single table can dramatically

improve the speed, and many data warehousing and data mining systems also use this technique

(Burleson 2010).

To summarize, it is true that the concept of correct in terms of a database design brings some

advantages, but the quality outweighs the correct concept. Therefore, a development team should

design a database to be flexible, and be concerned about customer satisfaction.

5. Conclusion

In conclusion, the “Correct Database Design” is processes of producing a data model that can support

customer requirements, improve data accuracy, and reduce duplicate data, whereas the “Quality

Database Design” is more concerned about database flexibility and customer satisfaction.

Although a “Quality Database Design” cannot exactly be evaluated so that software is developed and

done iterative process to fulfil customer requirements, that design can initially be measured by four

suggested criteria; Database Process Quality, Database Data Quality, Database Semantic Quality and

Customer Satisfaction.

Furthermore, the use case model contributes indirectly to a quality design in terms of capturing

business requirements, and the ER model can improve database process quality, data quality, and

semantic quality. However, the ER model is insufficient to represent of complex applications, and needs

the EER model including both the ER and object-oriented concepts to enhance semantic quality.

Course: Enterprise Systems Professional Page 9 of 10 Assessment 2

Page 10: Critical Writing of Quality Database Design

Mr. Traitet Thepbandansuk Student ID: 20043132 Module: Logical Database Design

REFERENCES

1. BAKKER, J.A. (2006). Semantic Data Modelling. [online]. Last accessed 21 January 2012 at:

http://www.jhterbekke.net/SemanticDataModeling.html.

2. BATINI, Carlo and SCANNAPIECO, Monica (2006). Data Quality: Concepts, methodologies and

techniques. [online]. Springer Berlin Heidelberg, New York. Book from Springer last accessed 19 January

2012 at: http://www.springer.com/computer/database+management+%26+information+retrieval/book/978-

3-540-33172-8.

3. BLAKESLEE, Dorothy M. and RUMBLE, John Jr. (2003). The essentials of a database quality process.

[online]. Data Science Journal, 2, 35-46. Article from J-STAGE last accessed 19 January 2011 at:

http://www.jstage.jst.go.jp/article/dsj/2/0/35/_pdf.

4. BURLESON CONSULTING (2010). Oracle Data structure denormalization. [online]. Last accessed 20

January 2012 at: http://www.dba-oracle.com/art_9i_denormal.htm.

5. CARROLL, Jennie (1995). The application of total quality management to software development. [online].

Information Technology & People, 8(4), 35 – 47. Article from Emerald last accessed 20 January 2012 at:

http://www.emeraldinsight.com/journals.htm?articleid=883451&show=pdf.

6. CONNOLLY, Thomas M. and BEGG, Carolyn E. (2010). Database systems: A practical approach to design,

implementation, and management. 5th ed., United States of America, Addison Wesley.

7. D'ORAZIO, Renzo and HAPPEL, Gunter (1996). Practical data modelling for database design: Database

and data modelling. Australia, John Wiley & Sons.

8. HOULDCROFT, Alan (2011). Logical database development notes and exercises. Sheffield, Sheffield

Hallam University.

9. HOXMEIER, John A. (1997). A framework for assessing database quality. [online]. Last accessed 18

January 2012 at: http://osm7.cs.byu.edu/ER97/workshop4/jh.html.

10. KENDAL, Kenneth E. and KENDALL, Julie E. (2011). System analysis and design. 8th ed., United

Kingdom, Pearson Education.

11. OLSON, Jack E. (2003). Data Quality: The accuracy dimension. [online]. United States of America, Morgan

Kaufmann. Book from Google eBook last accessed 18 January 2012 at: http://books.google.co.uk/books?

id=x8ahL57VOtcC&printsec=frontcover.

12. POLOVINA, Simon (2011). Object oriented concepts lecture note: Software engineering goals. Sheffield,

Sheffield Hallam University.

13. REDMAN, T.C. (1995). Improve data quality for competitive advantage. [online]. Sloan Management

Review, 36(2), 99-107. Article from HEC Montreal last accessed 18 January 2012 at:

http://zonecours.hec.ca/documents/E2007-1-1161870.redman_1995.pdf.

14. RIORDAN, Rebecca M. (2005). Designing effective database systems. Massachusetts, Pearson Education.

15. ROB, Peter, CORONEL and Carlos, CROCKETT (2008). Database systems: design, implementation &

management. United Kingdom, Tom Rennie.

16. TEOREY, Toby J. (2009). Database design: Know it all. Burlington, Morgan Kaufmann Publishers.

Course: Enterprise Systems Professional Page 10 of 10 Assessment 2