Tải bản đầy đủ (.pdf) (62 trang)

Quản lý bán hàng trên nền tảng odoo

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.21 MB, 62 trang )

---

ĐẠI HỌC HUẾ
TRƯỜNG ĐẠI HỌC KINH TẾ
KHOA HỆ THỐNG THÔNG TIN KINH TẾ

in

h

tế
H

uế



cK

KHÓA LUẬN TỐT NGHIỆP

Đ
ại

họ

QUẢN LÝ BÁN HÀNG TRÊN NỀN TẢNG ODOO

Tr

ườ



ng

PHAN THỊ QUỲNH HƯƠNG

Huế, tháng 4 năm 2019


---

ĐẠI HỌC HUẾ
KHOA HỆ THỐNG THÔNG TIN KINH TẾ

cK

in

h

tế
H



uế

TRƯỜNG ĐẠI HỌC KINH TẾ

KHÓA LUẬN TỐT NGHIỆP


Đ
ại

họ

QUẢN LÝ BÁN HÀNG TRÊN NỀN TẢNG ODOO

Sinh viên thực hiện:

GVHD: Th.S Nguyễn Hữu Hoàng Thọ

Phan Thị Quỳnh Hương

ng

Lớp: K49A THKT

Tr

ườ

MSV: 15K4081054

Huế, tháng 04 năm 2019


---

LỜI CÁM ƠN


Đểthực hiện khóa luận này, em xin gửi lời cám ơn chân thành đến

uế

trường Đại Học Kinh Tế- Đại Học Huế, tồn bộ thầy cơ giáo và đặc

biệt là các thầy cô khoa Hệ Thống Thông Tin Kinh Tế đã dạy dỗ,

tế
H

truyền đạt kiến thức vô cùng quý báu, làm cơ sở cho em làm bài khóa
luận này.

Em cũng xin gửi lời cám ơn chân thành tới Thạc sĩ Nguyễn Hữu

h

Hồng Thọ trong suốt thời gian qua khơng quản ngại khó khan, ln

in

ln tận tình giúp đỡ để em có thể hồn thành khóa luận một cách tốt
nhất.

cK

Em cũng xin gửi lời cám ơn đến Công ty TNHH MTV khai thác dữ
diệu sốbData, em cám ơn anh Đặng Hàn Tiên, anh Lê Gia Đức cùng các


họ

anh chị trong cơng ty đã nhiệt tình giúp đỡ và truyền đạt nhiều kinh
nghiệm quý báu trong suốt thời gian em thực tập tại cơng ty.
Mặc dù đã cốgắng hồn thành đềtài tốt nhất, nhưng do thời gian

Đ
ại

và kiến thức còn hạn chếnên em sẽkhơng thểtránh khỏi những thiếu
sót nhất định, rất mong nhận được sự cảm thông, chia sẻ và tận tình
đóng góp chỉbảo của thầy cơ cũng như các bạn

ng

Em xin chân thành cám ơn!

ườ

Huế, tháng 1 năm 2019

Tr

Sinh viên
Phan ThịQuỳnh Hương

i


---


MỤC LỤC
DANH MỤC HÌNH VẼ................................................................................................iv
DANH MỤC BẢNG BIỂU ...........................................................................................v
DANH MỤC SƠ ĐỒ ....................................................................................................vi

uế

PHẦN I: MỞ ĐẦU ........................................................................................................1
1.Lý do chọn đề tài ..........................................................................................................1

tế
H

2.Mục tiêu nghiên cứu, nhiệm vụ ....................................................................................1
2.1.Mục tiêu nghiên cứu ..................................................................................................1
2.2.Nhiệm vụ ...................................................................................................................1
3.Đối tượng, phạm vi nghiên cứu....................................................................................1

h

4.Phương pháp nghiên cứu ..............................................................................................2

in

5.Cấu trúc đề tài...............................................................................................................3
PHẦN II: NỘI DUNG NGHIÊN CỨU........................................................................4

cK


CHƯƠNG I: CƠ SỞ LÝ THUYẾT .............................................................................4
1.1.Tổng quan về odoo ....................................................................................................4
1.2.Tổng quan về ngơn ngữ lập trình Python ..................................................................5

họ

1.3.Cơng cụ lập trình Pycharm ........................................................................................6
1.4.Tổng quan về hệ cơ sở dữ liệu PGAdmin .................................................................8

Đ
ại

1.5.Biểu đồ UML.............................................................................................................9
1.5.1.Sơ lược về sơ đồ Use Case ...................................................................................10
1.5.1.1.Khái niệm biểu đồ Use Case .............................................................................10
1.5.1.2.Tác nhân (Actor), Use Case và các mối liên hệ giữa các Actor và Use Case ...10

ng

1.5.2.Sơ lược về Class Diagram ....................................................................................13
1.5.2.1.Khái niệm ..........................................................................................................13

ườ

1.5.2.2.Các thành phần chính trong Class Diagram ......................................................13
1.5.2.3.Mối quan hệ giữa các lớp ..................................................................................14

Tr

1.5.3.Sơ lược về Sequence Diagram (Sơ đồ tuần tự) ....................................................15

1.5.3.1.Khái niệm ..........................................................................................................15
1.5.3.2.Các thành phần của Sequence Diagram ............................................................15
CHƯƠNG II: GIỚI THIỆU MIDDUA SHOP, PHÂN TÍCH VÀ THIẾT KẾ
MODUL QUẢN LÝ BÁN HÀNG ..............................................................................19
2.1. Giới thiệu MIDDUA shop ......................................................................................19
ii


---

2.2. Mơ tả bài tốn .........................................................................................................19
2.3. Phân tích chức năng quản lý bán hàng ...................................................................20
2.3.1. Mô tả chức năng hệ thống ...................................................................................20
2.3.1.1. Quản lý hệ thống ..............................................................................................20

uế

2.3.1.2. Quản lý thông tin ..............................................................................................20
2.3.1.3. Tìm kiếm...........................................................................................................21

tế
H

2.3.1.4. Quản lý giao dịch..............................................................................................21
2.4. Thiết kế hệ thống ....................................................................................................23
2.4.1. Sơ đồ Use Case cho quản lý bán hàng ................................................................23
2.4.2. Sơ đồ Use Case cho quản lý sản phẩm................................................................24

h


2.4.3. Sơ đồ Use Case cho quản lý danh mục sản phẩm ...............................................25

in

2.4.4. Sơ đồ Use Case cho quản lý nhà cung cấp ..........................................................26
2.4.5. Sơ đồ Use Case cho quản lý khách hàng.............................................................27

cK

2.4.6. Sơ đồ Use Case cho quản lý nhân viên ...............................................................28
2.4.7. Sơ đồ Use Case cho quản lý hóa đơn ..................................................................30
2.4.8. Sơ đồ Use Case cho quản lý tài khoản ................................................................31

họ

2.5. Thiết kế cơ sở dữ liệu .............................................................................................32
2.5.1 Cấu trúc bảng và các ràng buộc............................................................................32

Đ
ại

2.5.2. Sơ đồ tuần tự (Sequence Diagram)......................................................................38
CHƯƠNG III: THIẾT KẾ GIAO DIỆN HỆ THỐNG ............................................43
3.1. Quá trình thực hiện .................................................................................................43
3.2. Giao diện phần mềm quản lý bán hàng tại MIDDUA Shop ..................................43

ng

PHẦN 3: KẾT LUẬN..................................................................................................48
1.Thành tựu đạt được.....................................................................................................48


ườ

2.Hạn chế .......................................................................................................................49
3.Hướng phát triển.........................................................................................................49

Tr

DANH MỤC TÀI LIỆU THAM KHẢO ...................................................................52

iii


---

DANH MỤC HÌNH VẼ

Hình 1: Giao diện Odoo ...................................................................................................... 5

uế

Hình 2: Giao diện PyCharm ................................................................................................ 7
Hình 3: Giao diện code Python trong Pycharm................................................................... 7

tế
H

Hình 4: Giao diện PGAdmin 4 ............................................................................................ 8
Hình 5: Giao diện trang Facebook MIDDUA Shop.......................................................... 19
Hình 6: Giao diện đăng nhập vào hệ thống ....................................................................... 43


h

Hình 7: Giao diện tài khoản............................................................................................... 44

in

Hình 8: Giao diện quản lý sản phẩm ................................................................................. 44
Hình 9: Giao diện quản lý nhà cung cấp ........................................................................... 45

cK

Hình 10: Giao diện quản lý danh mục sản phẩm .............................................................. 45
Hình 11: Giao diện quản lý khách hàng ............................................................................ 46
Hình 12: Giao diện quản lý nhân viên............................................................................... 46

họ

Hình 13: Giao diện quản lý hóa đơn.................................................................................. 47
Hình 14: Demo Website bán hàng của MIDDUA Shop ................................................... 50

Đ
ại

Hình 15: Giao diện bán hàng MIDDUA SHOP ................................................................ 50

Tr

ườ


ng

Hình 16: Giao diện thanh toán của Website...................................................................... 51

iv


---

DANH MỤC BẢNG BIỂU

Bảng 1: Bảng phân tích hệ thống quản lý.....................................................................21

uế

Bảng 2: Quản lý hệ thống .............................................................................................22
Bảng 3: Quản lý các danh mục......................................................................................22

tế
H

Bảng 4: Quản lý giao dịch ............................................................................................23
Bảng 5: User .................................................................................................................32
Bảng 6: Hóa đơn...........................................................................................................32

h

Bảng 7: Khách hàng .....................................................................................................33

in


Bảng 8: Nhân viên ........................................................................................................33
Bảng 9: Nhà cung cấp...................................................................................................34

cK

Bảng 10: Danh mục sản phẩm......................................................................................34

Tr

ườ

ng

Đ
ại

họ

Bảng 11: Sản phẩm.......................................................................................................35

v


---

DANH MỤC SƠ ĐỒ

uế


Sơ đồ 1: Sơ đồ Use Case cho quản lý bán hàng ................................................................ 23
Sơ đồ 2: Sơ đồ Use Case của gói quản lý sản phẩm ........................................................ 24

tế
H

Sơ đồ 3: Sơ đồ Use Case của gói quản lý danh mục sản phẩm......................................... 25
Sơ đồ 4: Sơ đồ Use Case của gói quản lý nhà cung cấp.................................................... 26
Sơ đồ 5: Sơ đồ Use Case gói quản lý khách hàng ............................................................. 27

h

Sơ đồ 6: Sơ đồ Use Case gói quản lý nhân viên................................................................ 28

in

Sơ đồ 7: Sơ đồ Use Case gói quản lý thơng tin cá nhân của nhân viên ............................ 29
Sơ đồ 8: Sơ đồ Use Case gói quản lý hóa đơn .................................................................. 30

cK

Sơ đồ 9: Sơ đồ Use Case của gói quản lý tài khoản .......................................................... 31
Sơ đồ 10: Sơ đồ lớp quản lý bán hàng thể hiện liên kết giữa các lớp ............................... 36

họ

Sơ đồ 11: Sơ đồ lớp quản lý bán hàng thể hiện mối quan hệ giữa các lớp ....................... 37
Sơ đồ 12: Sơ đồ tuần tự đăng nhập vào hệ thống.............................................................. 38
Sơ đồ 13: Sơ đồ tuần tự tìm kiếm sản phẩm...................................................................... 39


Đ
ại

Sơ đồ 14: Sơ đồ tuần tự thêm sản phẩm ............................................................................ 40
Sơ đồ 15: Sơ đồ tuần tự sửa sản phẩm .............................................................................. 41

Tr

ườ

ng

Sơ đồ 16: Sơ đồ tuần tự xóa sản phẩm .............................................................................. 42

vi


ng

ườ

Tr
Đ
ại
h

in

cK


họ

uế

tế
H

---

vii


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

PHẦN I: MỞ ĐẦU
1.Lý do chọn đề tài
Ngày nay, sự bùng nổ thông tin đã gây ra hiện tượng bùng nổ thông tin. Từ đây,
kỷ nguyên mới cho ngành công nghệ thông tin ngày càng phát triển. Với lượng dữ liệu

uế

được tạo ra hằng ngày, hằng giờ tạo nên nhiều cơ hội cho doanh nghiệp tiếp cận gần

tế
H


hơn với khách hàng.

Trong kinh doanh chẳng ai muốn “bé” mãi. Ai cũng cần mở rộng quy mô và phát
triển thêm các chi nhánh cửa hàng khác. Khi bạn khơng chịu mở lịng tiếp cận những
công nghệ mới, và không sẵn sàng bỏ ra một khoản phí để đầu tư giải pháp cơng nghệ,

h

bạn sẽ mãi nhỏ bé như vậy. Chúng ta chỉ nhìn được cái lợi trước mắt, nhưng khơng

in

nhìn xa, nên những thiệt hại gây ra cho bạn đang có chi phí gấp hàng tram lần

cK

Hiểu được các vấn đề trên, hiểu được tầm quan trọng của phần mềm quản lý bán
hàng của doanh nghiệp, bản thân em đã nhận ra được việc lập trình một phần mềm

mềm quản lý bán hàng”.

họ

quản lý bán hàng mang lại nhiều lợi ích. Từ đó, em đã chọn đề tài: “Xây dựng phần

2.Mục tiêu nghiên cứu, nhiệm vụ

Đ
ại


2.1.Mục tiêu nghiên cứu

- Nắm rõ mã nguồn mở Odoo

- Xây dựng thành công phần mềm quản lý bán hàng

ng

2.2.Nhiệm vụ

- Nghiên cứu kĩ lý thuyết và ứng dụng của Odoo, tìm hiểu về ngơn ngữ Python

ườ

để xây dựng thành cơng phần mềm.

Tr

- Phân tích, xây dựng cơ sở dữ liệu của phần mềm quản lý bán hàng.
- Xây dựng đầy đủ các chức năng trong CSDL bán hàng.
- Tạo các chức năng mới nhằm nâng cao tính sang tạo cho phần mềm.

3.Đối tượng, phạm vi nghiên cứu
- Đối tượng: Quy trình bán hàng tại MIDDUA shop và Cơng ty TNHH MTV
khai thác dữ diệu số bData
SVTH: Phan Thị Quỳnh Hương

1



---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

- Phạm vi:
 Không gian: Thực hiện tại Công ty TNHH MTV khai thác dữ diệu số bData
 Thời gian: Từ ngày 16/01/2019 đến ngày 21/04/2019
4.Phương pháp nghiên cứu

uế

Để nghiên cứu quy trình bán hàng và xây dựng phần mềm bán hàng phù hợp với

tế
H

yêu cầu của MIDDUA shop, tác giả đã sử dụng các hương pháp thu thập thông tin
trong quá trình thực hiện đề tài:

- Phương pháp nghiên cứu tài liệu: chủ động tìm kiếm và nghiên cứu các tài liệu
liên quan đến đề tài thực hiện, để từ đó nắm vững quy định về bán hàng và xây dựng

h

phần mềm đạt yêu cầu. Nghiên cứu các tài liệu giáo viên hương dẫn đưa về ngôn ngữ

in


Python, odoo để học và các phần mềm tương tự để đánh giá ưu nhược điểm, tìm hiểu

cK

cách thức hoạt động của modul quản lý bán hàng. Từ đó, có một modul quản lý bán
hàng bằng ngơn ngữ Python chính xác, khách quan.

- Phương pháp quan sát: trực tiếp quan sát hệ thống bán hàng tại MIDDUA shop,

họ

để phân tích ưu nhược điểm, các quy trình cơ bản đối với hệ thống bán hàng.
- Phương pháp phỏng vấn: phỏng vấn về quá trình bán hàng hiện tại của shop,

Đ
ại

cũng như yêu cầu và mong muốn của nhân viên và quản lý của shop trong công việc
bán hàng và xây dựng phần mềm đáp ứng được nhu cầu, nguyện vọng của người sử
dụng.

- Phướng pháp mơ hình hóa: sử dụng các mơ hình, sơ đồ để mơ tả lại các quy

ng

trình, nghiệp vụ quản lý bán hàng tại shop.
- Phương pháp phát triển hệ thống thông tin: dựa trên những thông tin thu được

ườ


để tiến hành phân tích, thiết kế phần mềm bao gồm những chức năng chính của phần
mềm sẽ xây dựng thơng qua q trình mơ hình hóa, chuẩn hóa cơ sở dữ liệu và mã hóa

Tr

để đưa ra sản phẩm phù hợp với yêu cầu.
- Phương pháp lập trình hướng đối tượng: Sau khi tiến hành phân tích, thiết kế

bằng Odoo sẽ lựa ngơn ngữ lập trình Python để quản lý.

SVTH: Phan Thị Quỳnh Hương

2


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

- Phương pháp tổng hợp: Hồn thiện khóa luận trên bằng những kiến thức cơ bản
đã thu thập được trong quá trình học tập cũng như nghiên cứu tài liệu, những kiến thức
tích lũy được trong q trình chủ động học hỏi và tìm kiếm.
5.Cấu trúc đề tài

uế

Nội dung bài khóa luận gồm có 3 phần:


tế
H

- Phần I: Phần mở đầu
- Phần II: Phần nội dung nghiên cứu
 Chương I: Cơ sở lý luận

 Chương II: Giới thiệu về MIDDUA shop và phân tích thiết kế hệ thống quản lý

in

 Chương III: Thiết kế giao diện

h

bán hàng

Tr

ườ

ng

Đ
ại

họ

cK


- Phần III: Phần kết luận

SVTH: Phan Thị Quỳnh Hương

3


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

PHẦN II: NỘI DUNG NGHIÊN CỨU
CHƯƠNG I: CƠ SỞ LÝ THUYẾT
1.1.Tổng quan về odoo

uế

- Odoo [1] là một phần mềm quản lý tất cả trong một, cung cấp một loạt các ứng

tế
H

dụng kinh doanh tạo thành một bộ hoàn chỉnh các ứng dụng quản lý doanh nghiệp,

nhắm đến các công ty thuộc mọi quy mô. Odoo là một phần mềm kinh doanh tất cả
trong một bao gồm CRM, trang web/ thương mại điện tử, thanh toán, kế toán, xuất
kho, kho- quản lý dự án và hàng tồn kho.


h

- Từ khi thành lập, Odoo SA / OpenERP SA đã phát hành phần mềm dưới dạng

in

nguồn mở nhưng bắt đầu với phiên bản V9.0, cơng ty đã chuyển sang mơ hình lõi
mở cung cấp phần mềm doanh nghiệp độc quyền dựa trên thuê bao và phần mềm lưu

cK

trữ đám mây dưới dạng dịch vụ và một phiên bản cộng đồng cắt giảm.
- Lợi ích chính của Odoo là kiến trúc mở rộng của nó. Một số lượng lớn các dịch

họ

giả tự do và tổ chức phát triển ứng dụng hoặc modul Odoo và đặt chúng trên thị trường
để bán hoặc được tải xuống miễn phí. Các thành phần chính của Odoo là khung
OpenObject, khoảng 30 mơ-đun lõi (cịn gọi là mơ-đun chính thức) và hơn 5000 mô-

Đ
ại

đun cộng đồng. Hầu hết các mô-đun Odoo đều có sẵn trên thị trường của Odoo SA nơi
cộng đồng có thể mua hoặc tải xuống nhiều mơ-đun miễn phí. Theo ngày 9 tháng 7
năm 2018,15759 Ứng dụng hoặc mơ-đun đã được tìm thấy trên thị trường trong các

ng

danh mục khác nhau. Hầu hết các mô-đun được phục vụ trong tất cả các phiên bản

hoạt động của 9.0, 10.0 và 11.0.

ườ

- Odoo sử dụng Python scripting và PostgreSQL cơ sở dữ liệu. Phần mềm được

truy cập thơng qua trình duyệt web trong ứng dụng một trang được phát triển

Tr

bằng JavaScript. Kho lưu trữ phiên bản Cộng đồng có trên GitHub.

SVTH: Phan Thị Quỳnh Hương

4


---

GVHD: ThS. Nguyễn Hữu Hồng Thọ

in

h

tế
H

uế


Khóa Luận Tốt Nghiệp

Hình 1: Giao diện Odoo

cK

1.2.Tổng quan về ngơn ngữ lập trình Python

- Python [2] là ngơn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, một ngơn

họ

ngữ lập trình bậc cao cho các mục đích lập trình đa năng, được tạo ra bởi Guido van
Rossum

- Python được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ. Python là

Đ
ại

ngơn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập
trình.

- Nó được sử dụng cho:

ng

 Phát triển web (phía máy chủ)
 Phát triển phần mềm


ườ

 Toán học

 Kịch bản hệ thống

Tr

-

Python có thể làm gì

 Python có thể được sử dụng trên một máy chủ để tạo các ứng dụng web.
 Python có thể được sử dụng cùng với phần mềm để tạo quy trình cơng việc.
 Python có thể kết nối với các hệ thống cơ sở dữ liệu. Nó cũng có thể đọc và sửa

đổi các tập tin.
 Python có thể được sử dụng để sử lý dữ liệu lớn và thực hiện toán học phức tạp.
SVTH: Phan Thị Quỳnh Hương

5


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

 Python có thể được sử dụng để tạo mẫu nhanh hoặc để phát triển phần mềm sẵn

sang sản xuất.
-

Tại sao nên chọn Python

 Python hoạt động trên các nền tảng khác nhau (Windows, Mac, Linux,

uế

Paspberry Pi, …)
 Python có một cú pháp đơn giản tương tự như ngôn ngữ tiếng Anh.

tế
H

 Python có cú pháp cho phép các nhà phát triển viết chương trình với ít dịng
hơn một số ngơn ngữ lập trình khác.

 Python chạy trên một hệ thống thơng dịch, nghĩa là mã có thể được thực hiện
ngay khi được viết. Điều này có nghĩa là tạo mẫu có thể rất nhanh.

in

h

 Python có thể được xử lý theo cách thủ tục, cách hướng dẫn đối tượng hoặc
cách chức năng.

Cú pháp Python so với các ngơn ngữ lập trình khác


cK

-

 Python được thiết kế để dễ đọc và có một số điểm tương đồng với ngôn ngữ
tiếng Anh với ảnh hưởng từ tốn học.

họ

 Python sử dụng các dịng mới để hoàn thành 1 lệnh, trái ngược với các ngơn
ngữ lập trình khác thường sử dụng dấm chấm phẩy hoặc dấu ngoặc đơn

Đ
ại

 Python dựa vào thụt lề, sử dụng khoảng trắng, để xác định phạm vi, chẳng hạn
như phạm vi của các vòng lặp, chức năng và các lớp. Các ngơn ngữ lập trình khác
thường sử dụng dấu ngoặc nhọn cho mục đích này.

ng

1.3.Cơng cụ lập trình Pycharm

- Pycharm [3] là một mơi trường phát triển tích hợp (IDE) được sử dụng

ườ

trong lập trình máy tính , đặc biệt dành cho ngôn ngữ Python.
- Hỗ trợ và phân tích mã hóa , với việc hồn thành mã , tơ sáng cú pháp và lỗi,


Tr

tích hợp kẻ nói dối và sửa lỗi nhanh
- Điều hướng dự án và mã: chế độ xem dự án chuyên biệt, chế độ xem cấu trúc

tệp và chuyển nhanh giữa các tệp, lớp, phương thức và tập quán
- Tái cấu trúc Python : bao gồm đổi tên, phương thức trích xuất, giới thiệu biến,
giới thiệu hằng, kéo lên, đẩy xuống và các thứ khác
- Hỗ trợ cho các khung web: Django , web2py và Flask
SVTH: Phan Thị Quỳnh Hương

6


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

- Trình gỡ lỗi Python tích hợp
- Kiểm thử đơn vị tích hợp , với phạm vi bảo hiểm mã theo từng dịng
- Phát triển Python của Google App Engine
- Tích hợp kiểm soát phiên bản: giao diện người dùng thống nhất

họ

cK

in


h

tế
H

uế

cho Mercurial , Git , Subversion , Perforce và CVS với các thay đổi và hợp nhất.

Tr

ườ

ng

Đ
ại

Hình 2: Giao diện PyCharm

Hình 3: Giao diện code Python trong Pycharm
SVTH: Phan Thị Quỳnh Hương

7


---

Khóa Luận Tốt Nghiệp


GVHD: ThS. Nguyễn Hữu Hồng Thọ

1.4.Tổng quan về hệ cơ sở dữ liệu PGAdmin
- PostgreSQL [4] là một hệ thống quản trị cơ sở dữ liệu quan hệ-đối tượng
(object-relational database management system) có mục đích chung, hệ thống cơ sở dữ
liệu mã nguồn mở tiên tiến nhất hiện nay.

uế

- PostgreSQL được thiết kế để chạy trên các nền tảng tương tự UNIX. Tuy nhiên,
PostgreSQL sau đó cũng được điều chỉnh linh động để có thể chạy được trên nhiều

tế
H

nền tảng khác nhau như Mac OS X, Solaris và Windows.

- Là hệ thống quản lý cơ sở dữ liệu quan hệ đối tượng, PostgreSQL cho phép
thêm vào các tính năng tùy chỉnh được phát triển bằng các ngơn ngữ chương trình
khác nhau như C/C, Java, ...

h

- PostgreSQL là một phần mềm mã nguồn mở miễn phí. Mã nguồn của phần

in

mềm khả dụng theo license của PostgreSQL, một license nguồn mở tự do. Theo đó,
bạn sẽ được tự do sử dụng, sửa đổi và phân phối PostgreSQL dưới mọi hình thức.


cK

- PostgreSQL tn theo tiêu chuẩn SQL nhưng khơng mâu thuẫn với các tính
năng truyền thống hay có thể dẫn đến các quyết định kiến trúc gây hại. Nhiều tính
hơi khác một chút.

họ

năng theo tiêu chuẩn SQL được hỗ trợ, tuy nhiên đơi khi có thể có cú pháp hoặc hàm
- Trên thị trường, có nhiều cơng ty đã xây dựng và cung cấp các sản phẩm, giải

Đ
ại

pháp sử dụng PostgreSQL. Một số công ty nổi bật trong số đó là Apple, Fujitsu, Red

Tr

ườ

ng

Hat, Cisco, Juniper Network, v.v.

Hình 4: Giao diện PGAdmin 4
SVTH: Phan Thị Quỳnh Hương

8



---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

1.5.Biểu đồ UML
- UML [5] là ngơn ngữ mơ hình hóa thống nhất (tiếng Anh: Unified Modeling
Language, viết tắt thành UML), gồm các kí hiệu đồ họa mà các phương pháp hướng đối
tượng sử dụng để thiết kế các hệ thống thông tin một cách nhanh chóng

uế

- Cách xây dựng các mơ hình trong UML phù hợp mơ tả các hệ thống thông tin cả
về cấu trúc cũng như hoạt động. Cách tiếp cận theo mơ hình của UML giúp ích rất

tế
H

nhiều cho những người thiết kế và thực hiện hệ thống thơng tin cũng như những người

sử dụng nó; tạo nên một cái nhìn bao quát và đầy đủ về hệ thống thơng tin dự định xây
dựng. Cách nhìn bao qt này giúp nắm bắt trọn vẹn các yêu cầu của người dùng; phục
vụ từ giai đoạn phân tích đến việc thiết kế, thẩm định và kiểm tra sản phẩm ứng dụng

in

h


công nghệ thông tin.

- UML sử dụng một hệ thống ký hiệu thống nhất biểu diễn các Phần tử mô hình

cK

(model elements). Tập hợp các phần tử mơ hình tạo thành các Sơ đồ UML (UML
diagrams). Có các loại sơ đồ UML chủ yếu sau:
- Sơ đồ lớp (Class Diagram)

họ

- Sơ đồ đối tượng (Object Diagram)

- Sơ đồ tình huống sử dụng (Use Case Diagram)

Đ
ại

- Sơ đồ trình tự (Sequence Diagram)

- Sơ đồ cộng tác (Collaboration Diagram hay là Composite Structure Diagram)
- Sơ đồ trạng thái (State Machine Diagram)

ng

- Sơ đồ thành phần (Component Diagram)
- Sơ đồ hoạt động (Activity Diagram)

ườ


- Sơ đồ triển khai (Deployment Diagram)
- Sơ đồ gói (Package Diagram)

Tr

- Sơ đồ liên lạc (Communication Diagram)
- Sơ đồ tương tác (Interaction Overview Diagram- UML 2.0)
- Sơ đồ phối hợp thời gian (Timing Diagram- UML 2.0)

SVTH: Phan Thị Quỳnh Hương

9


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

1.5.1.Sơ lược về sơ đồ Use Case
1.5.1.1.Khái niệm biểu đồ Use Case
Use Case Diagram [6] chỉ ra một số lượng các tác nhân ngoại cảnh và mối
liên kết của chúng đối với Use case mà hệ thống cung cấp. Một Use case là một lời

uế

miêu tả của một chức năng mà hệ thống cung cấp. Lời miêu tả Use case thường là một
văn bản tài liệu, nhưng kèm theo đó cũng có thể là một biểu đồ hoạt động. Các Use


tế
H

case được miêu tả duy nhất theo hướng nhìn từ ngồi vào của các tác nhân (hành vi của
hệ thống theo như sự mong đợi của người sử dụng), không miêu tả chức năng được
cung cấp sẽ hoạt động nội bộ bên trong hệ thống ra sao. Các Use case định nghĩa các
yêu cầu về mặt chức năng đối với hệ thống.

in

h

1.5.1.2.Tác nhân (Actor), Use Case và các mối liên hệ giữa các Actor và Use Case

cK

 Tác nhân được dùng để hiển thị thay người dùng, thiết bị phần cứng hoặc một hệ

ườ

ng

hoặc

Đ
ại

họ


thống phần mềm khác, ... được kí hiệu:

Tr

 Các use case: Đây là thành phần cơ bản của biểu đồ use case. Các use case được
biểu diễn bởi các hình elip. Tên các use case thể hiện một chức năng xác định
của hệ thống.

Các Use case được kí hiệu bằng hình elips.

SVTH: Phan Thị Quỳnh Hương

10


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

 Mối liên hệ:
 Giữa các Actor với nhau:

cK

in

h


tế
H

uế

khái quát hóa

Đ
ại

họ

giao tiếp

Tr

ườ

ng

Giữa Actor và Use Case: Giao tiếp

 Giữa các Use Case với nhau: Generalization (khái quát hóa), include (bao
hàm), extent (mở rộng).

SVTH: Phan Thị Quỳnh Hương

11



---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

Generalization: được sử dụng để thể hiện quan hệ thừa kế giữa các Actor
hoặc giữa các Use Case với nhau.

in

h

tế
H

uế

Ví dụ quan hệ Generalization

cK

Include: là quan hệ giữa các Use Case với nhau, nó mơ tả việc một Use
Case lớn được chia ra thành các Use Case nhỏ để dễ cài đặt (module hóa) hoặc thể

Tr

ườ

ng


Đ
ại

Ví dụ quan hệ include

họ

hiện sự dùng lại.

Extent: Extend dùng để mô tả quan hệ giữa 2 Use Case. Quan hệ Extend

được sử dụng khi có một Use Case được tạo ra để bổ sung chức năng cho một Use
Case có sẵn và được sử dụng trong một điều kiện nhất định nào đó.

SVTH: Phan Thị Quỳnh Hương

12


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

tế
H

uế


Ví dụ quan hệ extent:

h

Nguồn: />
in

1.5.2.Sơ lược về Class Diagram

cK

1.5.2.1.Khái niệm

Class Diagram [7]là một trong những bản vẽ quan trọng nhất của thiết kế phần
mềm, nó cho thấy cấu trúc và quan hệ giữa các thành phần tạo nên phần mềm.Đây là

họ

loại sơ đồ cấu trúc tĩnh, mô tả cấu trúc của hệ thống bằng cách hiển thị các lớp của hệ
thống, thuộc tính, hoạt động của chúng và mối quan hệ giữa các đối tượng.

ườ

ng

Đ
ại

1.5.2.2.Các thành phần chính trong Class Diagram


Trong đó:

Tr

Class Name: là tên của lớp
Attributes (thuộc tính): mơ tả tính chất của các đối tượng
Method (phương thức): chỉ các hành động mà đối tượng này có thể thực hiện

trong hệ thống. Nó thể hiện hành vi của các đối tượng do lớp này tạo ra.

SVTH: Phan Thị Quỳnh Hương

13


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

1.5.2.3.Mối quan hệ giữa các lớp
 Association
- Là quan hệ giữa 2 lớp với nhau, thể hiện chúng có liên quan với nhau.

tế
H

uế


Association thể hiện qua các quan hệ như “has”: “có”, “own”: “sở hữu”.

 Aggregation

họ

cK

in

sống (cùng sinh ra hoặc cùng chết đi ).

h

- Là một loại quan hệ của Association nhưng mạnh hơn. Nó có thể cùng thời gian

Ví dụ quan hệ trên thể hiện lớp Window (cửa sổ) được lắp trên Khung cửa hình

Đ
ại

chữ nhật. Nó có thể cùng sinh ra cùng lúc.
 Composition

- Composition là một loại mạnh hơn của Aggregation thể hiện quan hệ class này

Tr

ườ


ng

là một phần của class kia nên dẫn đến cùng tạo ra hoặc cùng chết đi.

Ví dụ trên class địa chỉ khách hàng là một phần của class khách hàng nên chỉ khi
nào có đối tượng khách hàng thì mới phát sinh đối tượngđịa chỉ khách hàng.
SVTH: Phan Thị Quỳnh Hương

14


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

 Generalization
- Là quan hệ thừa kế được sửa dụng rộng rãi trong lập trình hướng đối tượng
1.5.3.Sơ lược về Sequence Diagram (Sơ đồ tuần tự)
1.5.3.1.Khái niệm

uế

Sequence Diagram [8] là bản vẽ mô tả sự tương tác của các đối tượng để tạo nên

tế
H


các chức năng của hệ thống. Bản vẽ này mô tả sự tương tác theo thời gian nên rất phù
hợp với việc sử dụng để thiết kế và cài đặt chức năng cho hệ thống phần mềm.
1.5.3.2.Các thành phần của Sequence Diagram
 Objects

Mô tả một đối tượng trong hệ thống. Để phân biệt với Class ta dùng dấu

h

-

Kí hiệu

họ

cK

-

in

“:” trước mỗi Object

Đ
ại

Đường gạch chấm bên dưới đối tượng thể hiện thời gian sống của đối tượng
 Stimulus

ng


- Thể hiện thông điệp từ một đối tượng này tương tác với một đối tượng khác

ườ

- Kí hiệu

Tr

 Axes
- Trục tọa độ, trục ngang thể hiện các đối tượng, trục đứng thể hiện thời gian.

SVTH: Phan Thị Quỳnh Hương

15


---

Khóa Luận Tốt Nghiệp

GVHD: ThS. Nguyễn Hữu Hồng Thọ

1.6.Các cơng trình liên quan
-

Hà Thị Thanh [9] áp dụng mã nguồn mở OpenERP xây dựng hệ thống quản lý
mua- bán hàng của một cửa hàng bán lẻ các thiết bị điện tử. Được xây dựng
theo hình thức lắp ghép module (modularity), việc phát triển Open ERP rất dễ


uế

dàng và nhanh chóng, cho phép bất kỳ công ty nào lựa chọn các chức năng phù
hợp với yêu cầu riêng từ một kho khổng lồ, với mỗi module tương ứng với một

tế
H

hoạt động trong công ty. Cũng như đa số các phần mềm nguồn mở khác, tính

thuận tiện, linh hoạt và đơn giản là những tiêu chuẩn quan trọng khi phát triển
Open ERP. Kinh nghiệm thực tế đã chứng minh rằng không cần phải tập huấn
người dùng hàng tháng trời, đơn giản vì họ có thể tự tải nó về và dùng trực tiếp.

in

h

Tích hợp tồn bộ ứng dụng quản lý, sản xuất kinh doanh vào một hệ thống duy
nhất. Có thể tự động hóa các quy trình quản lý. Giam chi phí cho doanh nghiệp,

cK

tăng tính cạnh tranh cao, đêm lại cho doanh nghiệp lợi ích lâu dài. Năng suất
lao động tăng do các dữ liệu đầu vào chỉ phải nhập một lần cho mọi giao dịch
liên quan, đồng thời các báo cáo được thực hiện nhanh hơn, chính xác hơn. Có

họ

khả năng kiểm sốt tốt hơn về hàng tồn kho, cơng nợ, chi phí, doanh thu, lợi

nhuận. Cài đặt các phần mềm chuyên dụng phục vụ cho quản lý hàng hóa, bán

Đ
ại

hàng, hóa đơn giảm gánh nặng cho người quản lý cũng như người bán hàng
trong cửa hàng. Đây là đề tài có ứng dụng cao, có thể áp dụng ngay vào thực tế.
Tận dụng 1 số ưu điểm của Odoo như tính liên kết cao giữa các modul, có thể

ng

dễ dàng cài đặt trên các môi trường khác nhau, khai thác hiệu quả các quy trình
bán hàng.

Đỗ Duy Thanh [10] quản lý bán hàng (bán lẻ ) trên nền tảng Odoo. Hiện nay

ườ

-

công nghệ thông tin ngày càng phát triển mạnh mẽ và phổ biến, tác động đến

Tr

mọi mặt của xã hội. Nắm được xu thế này các doanh nghiệp đã ứng dụng công
nghệ thông tin vào việc quản lý, kinh doanh của mình và đạt được một số lợi
ích nhất định. Việc quản lý bán hàng gồm các công đoạn: nhập hàng gồm nhập
sản phẩm theo lô, xác định giá bán lẻ, phân khúc theo giá bán; bán lẻ gồm chọn
hàng, số lượng, xuất hóa đơn. Với cơng nghệ mới, sẽ tạo điều kiện thuận lợi để
hòa nhập với nền kinh tế trên thế giới, đặc biệt trong giai đoạn tồn cầu hóa


SVTH: Phan Thị Quỳnh Hương

16


×