Sds - Touret
Sds - Touret
Sds - Touret
Date:27/12/2023
1
Table of contents
1. Introduction........................................................................................................................ 6
1.1 Purpose........................................................................................................................ 6
1.2 General Overview.........................................................................................................6
1.3 Development Methods & Contingencies...................................................................... 6
2. System Architecture.......................................................................................................... 7
2.1 Subsystem decomposition........................................................................................... 7
2.2 Hardware/software mapping........................................................................................ 8
3. Object Model......................................................................................................................8
3.1 Class Diagram..............................................................................................................8
3.2 Sequence Diagram.....................................................................................................10
Figure: x Figure: Sequence Diagram for `Add to Cart`.....................................................16
4. Detailed Design................................................................................................................ 16
References............................................................................................................................30
2
List of Tables
3
List of figures
4
1. Introduction
1.1 Purpose
This document outlines the system design for a tourism management system. The system is designed
to provide a comprehensive solution for managing the various aspects of a tourism business, such as
customer(visitor) management,package management, and booking management. The system will be
used by tourism businesses to manage their operations and provide a better customer experience.
It’s software architecture designed to provide a comprehensive solution for managing the operations
of a tourism business. The system will be built using a three-tier architecture, consisting of a
presentation layer, a business layer, and a data access layer. The presentation layer will be
responsible for displaying the user interface and handling user interactions. The business logic layer
will be responsible for processing user requests and performing business log. The data access layer
will be responsible for connection to the database and performing data operations. It is designed to
provide a unified platform for managing all aspects of the tourism business. The system is designed
to be highly scalable and customizable, allowing businesses to tailor the system to their specific
needs. The goal of it is to provide a comprehensive, integrated solution for managing the operations
of a tourism business.
5
2. System Architecture
2.1 Subsystem decomposition
6
2.2 Hardware/software mapping
3. Object Model
3.1 Class Diagram
7
Figure. Class diagram
8
3.2 Sequence Diagram
Show how processes operate with one another and in what order. Depict the objects and classes
involved in the scenario and the sequence of messages exchanged between the objects needed to
carry out the functionality of the scenario.
9
Figure:Sequence diagram for sign up
10
Figure: Sequence Diagram for `Explore Package`
11
Figure: Sequence Diagram for `Write Review`
12
Figure: Sequence Diagram for `Logout`
13
Figure: Sequence Diagram for `Reserve package`
14
Figure: x Figure: Sequence Diagram for `Add to Cart`
4. Detailed Design
Here show the identified class in detail for example: -Assume a system has a Mobile Client Class
then describe about the class in the following manner.
The classes represented here are the ones identified on your class diagram. But you must add the
methods and classes identified in sequence and state chart diagrams.
15
Table: Admin class
Admin class
- Name:String
- id:String
- email:String
- password: String
- phone_no: int
✔ Position of @ >1
✔ Position of (dot)>position of @ + 2
16
# Must contain special characters
# Must be 8 or above characters in total
phone_no int Private PhoneNumber <> NULL must be 10 digits and must start by
+251/09
17
Table: Visitors class
Visitors
+ ID:String
+ Name:String
+ Username:String
+ PhoneNumber:Integer
- Email:String
- Password:String
logIn(Email, Password):void
signUp(Username, Password, email):void
addToCart(Package_id):void
checkout():void
logOut():void
explorePackage():void
giveReview():void
✔ Position of @ >1
✔ Position of (dot)>position of @ + 2
18
Password String Private Password <> NULL
# Must contain letters
# Must contain numbers
# Must contain special characters
# Must be 8 or above characters in total
19
Table: Hotel class
Hotel class
-Name:String
- Location:String
-description:String
-Image:Arraylist<String>
-Available room:Integer
-Services:String
-create ():void
-update ():void
-delete hotel ():void
-update room():void
Service String Private Service <> NULL and it must contain 4 to 20 list it consists
20
Create hotel private void . No inserted value to Add hotel or hotel
the hotel exist
Update room private void The room is still The booked room
available or the are available or
room is still booked the available
room are booked
Booking class
- Id:String
- userId:String
+ date:Date
+ packageId:String
+ totalPrice :Integer
+ pay_method: Array List<string>
- placeBooking ():void
- cancelBooking ():void
21
userId String Private userId<>NULL and must refer to a valid user.
pay_method Array List<String> Public pay_Method <> NULL , must be one of accepted
payment methods.
Payment class
22
- Id:String
- order_id:String
- paid:boolean
- detail:String
- pay_option :Array List<string>
- makeTransaction ():void
- confirmTransaction ():void
- getPaymentDetail():String
id string private id <> NULL and must be unique and shouldn’t contain
special characters
order_id
string private Order_id <> NULL and must be unique and shouldn’t
contain special characters
paid boolean private Paid <> NULL and it can be whether true or false
detail string private Detail <> NULL and it must be between 10 to 50 characters
Pay_option string private Pay_option <> NULL, must be one of the accepted payment
options.
23
Operation Visibility Return Argument Pre-Condition Post Condition
type
Wishlist
-Id:String
-UserId:String
+packageId:String
+packageName:String
- create_wishlist ():void
- remove_wishlist ():void
24
Attributes description for wishlist class
25
Table: 7 Operation description for wishlist class
-
remove_wishlist public Void A wishlist The wishlist is
exists in removed from
database storage.
Comment
-id:String
-user_id: String
-package_id: String
-user_name: String
-comment: String
-usefulness: boolean
26
-num_star: integer
27
Must be boolean
Must be an integer
28
References
Bibliography
Web resource
29