Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 15

CHAPTER FOUR

SOFTWARE DESIGN

4.0 INTRODUCTION

Software design is the process of preparing the plan for a software application
while satisfying a problem’s functional requirements and not violating its non-
functional constraints. During this process, tradeoffs need to be made, like the
tradeoff between performance and resource consumption, so that the application is
optimized to meet the non-functional requirements. There can be no tradeoffs among
functional requirements because they all need to be met. (gery, 2013)
Simply Software Design is the process of defining software methods,
functions, objects, and the overall structure and interaction of your code so that the
resulting functionality will satisfy your user’s requirements. Oriented Analysis
Design techniques in particular, seem to be taking the software world by storm.
(quora.com)
This chapter topic was discussing about the software design of the Design and
Implementation of Wedding Hall Booking and Reservation Management System.
Designing is the most significant phase of software development; it requires a careful
planning and philosophy on the part of the system designer

47
4.1 ARCHITECTURAL DESIGN

Software architecture for a program or computing system consists of the


structure or structures of that system, which comprise elements, the externally visible
properties of those elements, and the relationships among them The Wedding Hall
Booking and Reservation Management System. Management System the Following
features:

Customers User Registration


Login Form
Employees form

Hall Booking
wedding Payment

Figure 4.1 Architectural design

4.2 USER INTERFACE DESIGN

The user interface (UI) is the point of human-computer interaction and


communication in a device. This can include display screens, keyboards, a mouse
and the appearance of a desktop. It is also the way through which a user interacts
with an application or a website. The growing dependence of many businesses on
web applications and mobile applications has led many companies to place increased
priority on UI in an effort to improve the user's overall experience.

48
Figure 4.2 User Interface Design

4.3 DATABASE STORAGE DESIGN

MySQL, the most popular Open Source SQL database management system,
is developed, distributed, and supported by Oracle Corporation.
A database is a structured collection of data. It may be anything from a simple
shopping list to a picture gallery or the vast amounts of information in a corporate
network. To add, access, and process data stored in a computer database, you need a
database management system such as MySQL Server. Since computers are very good
at handling large amounts of data,
Database Design is a collection of processes that facilitate the designing,
development, implementation and maintenance of enterprise data management
systems. Properly designed database are easy to maintain, improves data consistency
and are cost effective in terms of disk storage space The purpose of every database is
to store information, texts, images, even media files. All dynamic modern websites
rely on one or more databases for storing articles and other published content,
information about the users, contact information, connections to other websites.

49
4.4 Database Design

Database design is the process of producing a detailed data model of


database. This data model contains all the needed logical and physical design choices
and physical storage parameters needed to generate a design in a data definition
language, which can then be used to create a database.

You should always start creating a database model with a description of a


system. In a classroom situation, a system description is given to you by a teacher. In
real life, preparing a description is a process in its own right. I will just assume that
you have the description. It doesn’t matter whether it was given to you by your client,
your boss, your teacher, or you wrote it up yourself.

Figure 4.3 Database design

4.4.1 DATABASE NORMALIZATION

Database normalization is the process of organizing data into tables in such a


way that the results of using the database are always unambiguous and as intended.
Such normalization is intrinsic to relational database theory. It may have the effect of
duplicating data within the database and often results in the creation of additional
tables.

50
Normalization degrees of relational database tables have been defined and include:
• First Normal Form(1NF),
• Second Normal Form(2NF)
• Third Normal Form(3NF)

4.4.1.1 FIRST NORMAL FORM (1NF)

First normal form (1NF). This is the "basic" level of database normalization,
and it generally corresponds to the definition of any database, namely. It contains
two-dimensional tables with rows and columns. Each column corresponds to a sub
object or an attribute of the object represented by the entire table. Each row
represents a unique instance of that sub object or attribute and must be different in
some way from any other row (that is, no duplicate rows are possible).
All entries in any column must be of the same kind.

Table4.1 FIRST NORMAL FORM (1ST N F)


user ID emp_id usern password image status date
ame

Customer custom fristname lastna phone city state date


er_id me

booking b_id customer hall_i w_id start_ti End_time Total_ Total_ bookin
_id d me Guest price g_date
s

Employee emp_id emp_first emp_ address title_id branch_id date


_name last_
Name name

51
Hall hall_id hall_nam price address reg_date
e

4.4.1.2 SECOND NORMAL FORM (2NF)

Second normal form (2NF).At this level of normalization, each column in a


table that is not a determiner of the contents of another column must itself be a
function of the other columns in the table.
To convert a relation with partial dependencies to second normal form, the
following steps are required: Create a new relation for each primary key attribute (or
combination of attributes) that is a determinant in a partial dependency. That attribute
is the primary key in the new relation. Move the non-key attributes that are
dependent on this primary key attribute (or attributes) from the old relation to the
new relation.
A database is in second normal form if it satisfies the following conditions:
• It is in first normal form
• All non-key attributes are fully functional dependent on the primary key.

Table4.2 SECOND NORMAL FORM (2ND N F)


wedding w_id male_name female wedding_d
_name ate
Hall hall_id hall_name price address reg_date

Booking b_id customer_id hall_id w_id start_tim End_tim Total_ Total_pric booking_
e e Guests e date
peyment payme customer_id amount payment_ account_ date
nt_id method_id id

52
4.4.1.3 THIRD NORMAL FORM (3NF)

Third normal form (3NF). At the second normal form, modifications are still
possible because a change to one row in a table may affect data that refers to this
information from another table.
The database is in Third normal form if it satisfies following conditions:
• It is in Second normal form.
• There is no transitive functional dependency.

Table4.3 THIRD NORMAL FORM (3RD N F)


wedding w_id male_na female_ wedding_d
me name ate
Hall hall_id hall_nam price address reg_date
e
Booking b_id customer hall_id w_id start_time End_tim Total_ Total_pric booking_
_id e Guests e date
peyment payme customer amount payment_m account_id date
nt_id _id ethod_id

4.4.1.4 NORMALIZED TABLES OF THE PROPOSED SYSTEM

Database normalization is a database schema design technique, by which an


existing schema is modified to minimize redundancy and dependency of data.
Normalization split a large table into smaller tables and define relationships between
them to increases the clarity in organizing data.

53
4.4.2 TRANSFORMING E-R DIAGRAMS INTO RELATIONS

Figure 4.4 ERD Transforming

4.4.3 DATA DICTIONARY

A data dictionary contains metadata i.e data about the database. The data
dictionary is very important as it contains information such as what is in the database,
who is allowed to access it, where is the database physically stored etc. The users of
the database normally don't interact with the data dictionary, it is only handled by the
database administrators. (www.coca-cola.com, 2020).
The data dictionary in general contains information about the following:
 Names of all the database tables and their schemas.
 Details about all the tables in the database, such as their owners, their security
constraints, when they were created etc.
 Physical information about the tables such as where they are stored and how.
 Table constraints such as primary key attributes, foreign key information etc.
 Information about the database views that are visible.

Table 4.4: USERS TABLE

Column Data Type Length

ID (PRIMARY KEY) INT 11

54
emp_id INT 11
Username Varchar 100
Password Varchar 100
image Varchar 100
status Varchar 100
date date

Table 4.6 CUSTOMERS TABLE

Column Data Type Length

ID (PRIMARY KEY) INT 11


fristname Varchar 50
lastname Varchar 50
phone Varchar 50
city Varchar 50
state Varchar 50
date date

Table 4.7 EMPLOYEE TABLE

Column Data Type Length

ID (PRIMARY KEY) INT 11


emp_first_name VARCHAR 45

emp_last_name VARCHAR 45

Phone VARCHAR 48

55
address VARCHAR 45

title_id INT 11

branch_id INT 11

Hire date DATE

Table 4.8 BOOKING TABLE

Column Data Type Length

ID (PRIMARY KEY) INT 11


customer_id INT 11

hall_id INT 11

wedding_id INT 11

start_time DATE

End_time DATE

Total_Guests VARCHAR 45

Total_price VARCHAR 45

booking_date DATE

Table 4.9 HALL TABLE


Column Data Type Length

ID (PRIMARY KEY) INT 11

56
VARCHAR 45
Hall_name
price VARCHAR 45

address VARCHAR 45

reg_date DATE

4.5 DESIGNING FORMS AND REPORTS

System inputs and outputs are produced at the end of the analysis phase
• Precise appearance of forms and reports was not defined during this phase.
• During analysis, you focused on which forms and reports need to exist and their
contents.
The design of data entry screens shall consist of the following forms.
1. Login Form
2. Account Form
3. Customer Form
4. wedding Form
5. Users Form
6. Employee Form
7. Bill Form
8. Branch Form
9. booking Form
10. Payment Form
11. Hall Form
12. Reports

57
Figure 4.5 Login form

This is the first login from system without login and it won't open without a user and
password.

Figure 4.6 Customer form

58
This form will register Customers Information

Figure 4.7 Employee form


This form will register Employee Information

59
Figure 4.8 This form registers user Information form

Figure 4.9 hall info form

Figure 4.10 wedding form

60
4.6 CHAPTER SUMMARY

This chapter discussed system design of the Wedding Hall Booking and
Reservation management system including Architectural Design, user interface
design, Data storage design, database design, Normalization, Transforming E-R
diagram into relations, data dictionaries, design forms and finally chapter summary.

61

You might also like