Capstone Database Design v2.0 – OSMtotal_rate bigInt True total_star bigInt True click_rate float True is_valid tinyInt True User account status so delete created_at timestamp False Date
Trang 1International School
Capstone Project 2
CMU-SE 450 Database Design Version 2 0Date: 05/5/2023
Online Service Market System
Submitted by Quan Tran Anh Khiem Le Do Hoang Phuc Truong Gia Thuan Huynh Van Truong Nguyen Lam Approved by Huy Nguyen Dang Quang M.Sc
Proposal Review Panel Representative:
Capstone Project 2-Mentor:
Trang 2Capstone Database Design v2.0 – OSM
PROJECT INFORMATION Project
acronym Online Service Market System
Project Tittle A marketplace that connects Customers & Service Providers in mservice categories Start Date 21 Feb 2023 End Date 20 May 2023 Lead
Institution International School, Duy Tan University
25211200029 Quan Tran Anh anhquan74.dev@gmail.com 0362474855
25211203121 Khiem Le Do Hoang ledohoangkhiem3k@gmail.com 0348597672
25211217162 Phuc Truong Gia katanan257@gmail.com 0981864173
25214302052 Thuan Huynh Van huynhvanthuan.140921@gmail.com0824644573
25211217426 Truong
Nguyen Lam truongnguyen13052001@gmail.com0353373477
Trang 3Capstone Database Design v2.0 – OSM
PROJECT PLAN DOCUMENT Document Title Project Plan
Quan Tran Anh, Scrum Master
Role Khiem Le Do Hoang Member
Phuc Truong Gia Member
Thuan Huynh Van Member
Truong Nguyen Lam Member
Date 28 Apr 2023 Filename
DatabaseDesignDocument-OSM.docx
C2SE.08-URL
Access Project and CMU Program
Trang 4Capstone Database Design v2.0 – OSM
DOCUMENT HISTORY
V1.0 20 Mar 2023 Draft for comment
V2.0 28 Apr 2023 Update database
V3.0 05 May 2023 Update database
Trang 5Capstone Database Design v2.0 – OSM
CONTENTS
1 Introduction 1
1.1 Purpose 1
1.2 Document Objectives 1
1.3 Intended Audience 1
1.4 Scope 1
1.5 System Overview 2
1.6 Acronyms And Abbreviations 2
2 System Overview 2
2.1 Database Management System Configuration 2
2.2 Database Software Utilities 3
2.3 Support Software 3
3 Database-Wide Design Decisions 3
3.1 Key Factors Influencing Design 3
3.2 Performance And Availability Decisions 3
4 Database Administrative Functions 3
4.1 Responsibility 3
4.2 Applications/Systems Using the Database 3
4.3 Physical Design 4
4.3.1 Detail table 4
5 Entity Mapping 13
6 References 15
Trang 6Capstone Database Design v2.0 – OSM
LIST OF TABLES
Table 1: System Overview 2
Table 2: Acronyms And Abbreviations 2
Table 3: Database Software 3
Table 4: Support Software 3
Table 5: Responsibility 3
Table 6: Systems Using the Database 3
Table 7: User 4
Table 8: Location 5
Table 9: Image 6
Table 10: Post 7
Table 11: Category 8
Table 12: Service 8
Table 13: Package 9
Table 14: Appointment 10
Table 15: Feedback 12
Trang 7Capstone Database Design v2.0 – OSM
TABLE OF FIGURES
Figure 1 Entity Mapping 14
Trang 8Capstone Database Design v2.0 – OSM
• Provides database tables and the relationship between them
• Description designing a database (DB), a collection of data related to storage on
a computer through database management system as a basis for data query relatedsoftware
• Provide the entire needed database for OSM web application
1.2 Document Objectives
The Database Design Document has the following objectives
• To describe the design of a database, that is, a collection of related data stored in one or more computerized files that can be accessed by users or developers via a DBMS
• To serve as a basis for implementing the database and related software units It provides the acquirer visibility into the design and provides information necessary for software development
1.3 Intended Audience
• This document is intended for the following audiences
• Technical developers, who must evaluate the quality of this document
1.4 Scope
• This Database Design Document provides the basic database design of OSM web application
Trang 9Capstone Database Design v2.0 – OSM
o Table, column definitions
o Column and row level validation rules (check constraints)
o Interfaces and dependencies with other components
• This Database Design Document of Online Service Market web application is composed of definitions for database objects derived by mapping entities to tables, attributes to columns, unique identifiers to unique keys and relationship
to foreign keys
1.5 System Overview
Table 1: System Overview System Overview Details
System Name Online Service Market
System Type Web application
Operational Status In development
1.6 Acronyms And Abbreviations
Table 2: Acronyms And Abbreviations
Acronym/Abbreviation Meaning
OSM Online Service Market
RDMS Relational atabase Management System DDBMS Database Management ystem S
Trang 10Capstone Database Design v2.0 – OSM
- Services enabled: Linux Virtual Machine
2.2 Database Software Utilities
Table 3: Database Software Vendor Product Version Comments
Oracle
Corporation
MySQL
Workbench 8.0
This application enables the ability
to manage MySQL database usinGUI
2.3 Support Software
Table 4: Support Software Product Version Purpose
MySQL
Workbench 8.0 Generate ERD diagram of MySQL database
3 Database-Wide Design Decisions
3.1 Key Factors Influencing Design
- The database should be designed independent when the frontend and backend are still being developed
- The database should be designed to meet the data warehouse principles 3.2 Performance And Availability Decisions
We use common dimensional tables for all the fact tables for better performance
4 Database Administrative Functions
4.1 Responsibility
Table 5: Responsibility Role Name Responsibility Email Address Database
Administrator
Khiem Le Do Hoang
ledohoangkhiem3k@gmal.com
4.2 Applications/Systems Using the Database
Table 6: Systems Using the Database
Trang 11Capstone Database Design v2.0 – OSM
System ID Model Version System Code OSM-Web NA In Development NA 4.3 Physical Design
4.3.1 Detail table
4.3.1.1 User
Table 7: User Field Type Constraint Nullable Description
status
Trang 12Capstone Database Design v2.0 – OSM
total_rate bigInt True
total_star bigInt True
click_rate float True
is_valid tinyInt True User account status (so
delete) created_at timestamp False Date and time the
record was created updated_at timestamp False Date and time the
record was last updated4.3.1.2 Location
Table 8: Location Field Type Constraint Nullable Description
id
bigInt,
autoIncrem
ent
PK False The id is the primary key
for location record
user_id bigInt FK False User identification number.
Foreign key to User.id province_id bigInt True The id of the province province_nam
e varchar False The name of the province district_id bigInt True The id of the district
Trang 13Capstone Database Design v2.0 – OSM
district_name varchar True The name of the district ward_id bigInt Tue The id of the ward ward_name varchar True The name of the ward coords_latitud
The latitude of the user’s location
coords_longit
The longitude of the user’s location
is_primary bit
created_at timestamp False Date and time the record
was created
updated_at timestamp False Date and time the record
was last updated 4.3.1.3 Image
Table 9: Image Field Type Constraint Nullable Description
id bigInt,
autoIncrement PK False
The id is the primary key for image record asset_type varchar True Type of file (image) parent_type varchar True Describe what model
this image belongs to.parent_id varchar True Id of parent model delivery_typ
Type of delivery method
public_id varchar True Id of file on cloud
server
Trang 14Capstone Database Design v2.0 – OSM
file_name varchar True Name of the file mime varchar True Type of image file created_at timestamp False Date and time the
record was created
updated_at timestamp False
Date and time the record was last updated
4.3.1.4 Post
Table 10: Post Field Type Constraint Nullable Description
title varchar True The title of the post content text True The content of the post date timestamp True Post creation date tags varchar True The tags of the post is_valid
tinyInt True Post status (soft delete)
created_at timestamp False Date and time the record
was created
updated_at timestamp False Date and time the record
was last updated
Trang 15Capstone Database Design v2.0 – OSM
4.3.1.5 Category
Table 11: Category Field Type Constraint Nullable Description
id bigInt,
autoIncrement PK False
The id is the primary key for category record name varchar True The name of the categorytotal_provid
er int True The number of provider view_priorit
is_valid tinyInt True Category status (soft
delete) created_at timestamp False Date and time the record
was created
updated_at timestamp False Date and time the record
was last updated 4.3.1.6 Service
Table 12: Service Field Type Constraint Nullable Description
Trang 16Capstone Database Design v2.0 – OSM
provider_id bigInt FK False
User identification number Foreign key to User.id
avg_price bigInt True Average price of service max_price bigInt True The highest price of the
total_rate bigInt True
total_star bigInt True
number_of_
packages bigInt True
is_valid tinyInt True Service status (soft deletecreated_at timestamp False Date and time the record
was created
updated_at timestamp False Date and time the record
was last updated 4.3.1.7 Package
Table 13: Package Field Type Constraint Nullable Description
id bigInt,
autoIncrement PK False
The id is the primary key for service record
Trang 17Capstone Database Design v2.0 – OSM
service_id bigInt FK False
Service identification number Foreign key to Service.id
name varchar True The name of the packagedescription text True The description of the
package
price bigInt True The price of the packagetotal_rate bigInt True
total_star bigInt True
is_negotiable tinyInt True
view_priorit
is_valid tinyInt True Package status (soft
delete) created_at timestamp False Date and time the record
was created
updated_at timestamp False Date and time the record
was last updated 4.3.1.8 Appointment
Table 14: Appointment Field Type Constraint Nullable Description
id
bigInt, autoIncreme
nt
PK False
The id is the primary key for appointment record
Trang 18Capstone Database Design v2.0 – OSM
package_id bigInt FK False
Package identification number Foreign key toPackage.id
customer_id bigInt FK False
User identification number Foreign key toUser.id
is_valid tinyInt True Service status (soft
delete) note_for_provid
The note of customer for provider location varchar True The location of the
appointment date timestamp True The time occur of the
appointment price bigInt True The price of the
appointment price_unit varchar True The unit of
appointment’s price status varchar True The status of the
appointment
complete_date timestamp True
The time that the appointment is completed
cancel_date timestamp True
The time when the appointment was rejected
Trang 19Capstone Database Design v2.0 – OSM
offer_date timestamp True The time on which the
appointment is offeredcreated_at timestamp False Date and time the
record was created
updated_at timestamp False
Date and time the record was last updated
4.3.1.9 Feedback
Table 15: Feedback Field Type Constraint Nullable Description
autoIncrement PK False
The id is the primary key for feedback record
appointment_id bigInt FK False
Appointment identification number Foreign key
to Appointment.id
Comment of customer for the appointment reply varchar True Reply of provider for
customer’s comment
Number of star for appointment (customer’s rate)
Trang 20Capstone Database Design v2.0 – OSM
created_at timestamp False Date and time the
record was created
updated_at timestamp False
Date and time the record was last updated
5 Entity Mapping
Trang 21C2SE.08
Figure 1 Entity Mapping
Trang 22Capstone Database Design v2.0 – OSM
6 References
- [SDA] 006 Database Design.docx (Man, Nguyen Duc)
- https://drawsql.app/teams/dac-1/diagrams/osm