SlideShare a Scribd company logo
1 of 16
Download to read offline
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN
MÔN: PHÁT TRIỂN PHẦN MỀM HƯỚNG DỊCH VỤ
I.
II. Giới thiệu bài toán
III. Giới thiệu dịch vụ sử dụng/ hoặc tự dây dựng
Website bán sách Book Store sử dụng : Java Servlet .java; Java JSP .java; Jdbc .java;
MySQL
Các phương thức:
 getAll():List<T> : Lấy tất cả đối tượng T trong database
 getOption(key:int):T : Lấy đối tượng T có ID là key
 save(t:T):void : Lưu đối tượng T vào database
 update(t:T):void : Cập nhật đối tượng T vào database
 delete(t:T):void : Xoá đối tượng T khỏ database
 getItemByName(String s): Item : Tìm kiếm đối tượng trong database theo tên
Phục vụ các chức năng thêm sửa xoá Sách, Giỏ hàng, Đơn hàng và thống kê
Hoá đơn
IV. Phân tích thiết kế hệ thống hướng đối tượng
1. Biểu Use Case
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Mô tả:
 Đăng ký: UC này cho phép khách hàng đăng ký tài khoản cá nhân
 Đăng nhập: UC này cho phép khách hàng và nhân viên đăng nhập vào hệ thống
 Xem sách: UC này cho phép khách hàng xem thông tin các quyển sách có bán
tại hệ thống
 Thêm sách vào giỏ hàng: UC này cho phép khách hàng thêm sách vào giỏ hàng
 Tạo Order: UC này cho phép khách hàng đặt hàng từ giỏ hàng
 Tìm sách: UC này cho phép khách hàng và nhân viên tìm kiếm sách theo tên
 Quản lý sách: UC này cho phép nhân viên quản lý sách gồm thêm sửa xoá
 Quản lý Order: UC này cho phép nhân viên quản lý Order, kiểm tra trạng thái
Order
2. Biểu đồ lớp
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
3. Biểu đồ hoạt động
Khách hàng:
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Nhân viên:
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
4. Biểu đồ CSDL
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
5. Biểu đồ lớp DAO
6. Biểu đồ gói
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
7. Biểu đồ tuần tự
Kịch bản v3 cho khách hàng xem sách, thêm giỏ hàng và tạo Order:
1. Sau khi đăng nhập, khách hàng chọn xem sách
2. Lớp LoginCustomer.jsp gọi lớp Item.jsp để hiển thị
3. Lớp Item.jsp gọi lớp ItemDAO để lấy danh sách Item
4. Lớp ItemDAO gọi hàm getAll()
5. Hàm getAll() gọi lớp Item để đóng gói dữ liệu
6. Lớp Item đóng gói dữ liệu
7. Lớp Item trả kết quả cho hàm getAll()
8. Hàm getAll() trả kết quả cho lớp Item.jsp
9. Lớp Item.jsp hiển thị danh sách thông tin sách cho khách hàng
10. Khách hàng chọn thêm 1 quyển sách vào giỏ hàng
11. Lớp Item.jsp gọi lớp Cart.jsp
12. Lớp Cart.jsp gọi lớp CartDAO để lưu Item vào giỏ hàng
13. Lớp CartDAO gọi hàm save()
14. Hàm save() gọi lớp Cart để đóng gói thông tin
15. Lớp Cart đóng gói thông tin
16. Lớp Cart trả kết quả cho lớp CartDAO
17. Lớp CartDAO trả kết quả cho lớp Cart.jsp
18. Lớp Cart.jsp thông báo cho khách hàng đã thêm thành công
19. Khách hàng chọn tạo Order
20. Lớp Cart.jsp gọi lớp MakeOrder.jsp
21. Lớp MakeOrder.jsp gọi lớp getShippingAddress.jsp
22. Lớp getShippingAddress.jsp gọi lớp PersonDAO
23. Lớp PersonDAO gọi hàm getAddress()
24. Hàm getAddress() gọi lớp Person
25. Lớp Person đóng gói thông tin
26. Lớp Person trả kết quả cho lớp PersonDAO
27. Lớp PersonDAO trả kết quả cho lớp getShippingAddress.jsp
28. Lớp getShippingAddress.jsp trả kết quả cho lớp MakeOrder.jsp
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
29. Lớp MakeOrder.jsp gọi lớp Payment.jsp
30. Lớp Payment.jsp gọi lớp PersonDAO
31. Lớp PersonDAO gọi hàm getPayment()
32. Hàm getPayment() gọi lớp Person
33. Lớp Person đóng gói thông tin
34. Lớp Person trả kết quả cho lớp PersonDAO
35. Lớp PersonDAO trả kết quả cho lớp Payment.jsp
36. Lớp Payment.jsp trả kết quả cho lớp MakeOrder.jsp
37. Lớp MakeOrder.jsp hiển thị thông tin đơn hàng cho khách hàng
38. Khách hàng chọn thanh toán
39. Lớp MakeOrder.jsp gọi lớp OrderDAO
40. Lớp OrderDAO gọi hàm save()
41. Hàm save() gọi lớp Order
42. Lớp Order đóng gói thông tin
43. Lớp Order trả kết quả cho lớp OrderDAO
44. Lớp OrderDAO trả kết quả cho lớp MakeOrder.jsp
45. Lớp MakeOrder.jsp thông báo cho khách hàng tạo đơn hàng thành công
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Kịch bản v3 cho nhân viên thêm sách, quản lý Order:
1. Sau khi đăng nhập, nhân viên chọn thêm sách
2. Lớp LoginEmployee.jsp gọi lớp AddItem.jsp
3. Lớp AddItem.jsp hiển thị
4. Nhân viên điền thông tin sách, chọn Thêm
5. Lớp AddItem.jsp gọi lớp ItemDAO
6. Lớp ItemDAO gọi hàm save()
7. Hàm save() gọi lớp Item
8. Lớp Item đóng gói thông tin
9. Lớp Item trả kết quả cho lớp ItemDAO
10. Lớp ItemDAO trả kết quả cho lớp AddItem.jsp
11. Lớp AddItem.jsp thông báo thêm sách thành công
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
12. Nhân viên chọn quay lại
13. Lớp AddItem.jsp gọi lớp LoginEmployee.jsp
14. Lớp LoginEmployee.jsp hiển thị
15. Nhân viên chọn quản lý Order
16. Lớp LoginEmployee.jsp gọi lớp ProcessOrder.jsp
17. Lớp ProcessOrder.jsp hiển thị
18. Nhân viên nhập Id, chọn Tìm
19. Lớp ProcessOrder.jsp gọi lớp OrderDAO
20. Lớp OrderDAo gọi hàm getOrder()
21. Hàm getOrder() gọi lớp Order
22. Lớp Order đóng gói thông tin
23. Lớp Order trả kết quả cho lớp OrderDAO
24. Lớp OrderDAO trả kết quả cho lớp ProcessOrder.jsp
25. Lớp ProcessOrder.jsp hiển thị cho nhân viên
26. Nhân viên chọn trạng thái Order, chọn Update
27. Lớp ProcessOrder.jsp gọi lớp OrderDAO
28. Lớp OrderDAO gọi hàm save()
29. Hàm save() gọi lớp Order
30. Lớp Order đóng gói thông tin
31. Lớp Order trả kết quả cho lớp OrderDAO
32. Lớp OrderDAO trả kết quả cho lớp ProcessOrder.jsp
33. Lớp ProcessOrder.jsp thông báo cho nhân viên
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
V. Cài đặt
1. Các lớp Entities chính:
Account.java.java; Address.java; FullName.java; Person.java; Payment.java;
Item.java; Book.java; Cart.java; Order, Bill.java; Category.java; Author.java;
Shipment
2. Các lớp DAO:
DAO.java; BaseDAO.java; PersonDAO.java; BookDAO.java; ItemDAO.java;
CartDAO.java; OrderDAO.java; CategoryDAO.java; AuthorDAO.java;
BillDAO
3. Các lớp View:
Index.jsp; stafflogin.jsp; login.jsp; logout.jsp; register.jsp; bookstore.jsp;
cart.jsp; items.jsp; getShippingAddress.jsp; payment.jsp; onlineorder.jsp;
shipping.jsp; processorder.jsp; result.jsp
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
4. Các lớp Servlet:
LoginServlet.java; RegisterServler.java; ImageServlet.java; CartServlet.java;
MakeOrderServlet.java; onlineOrderServlet.java; ShippingAddressServlet.java
5. Chạy demo
Giao diện chính
Giao diện đăng ký
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Sau khi đăng nhập với vai trò khách hàng
Chọn xem tất cả sách
Thêm vào giỏ hàng thành công
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Xem giỏ hàng
Chọn Make Order để thanh toán
Chọn phương thức thanh toán
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Thanh toán thành công
Giao diện chính của nhân viên bán hàng
Tìm Order qua id
Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT
Xác minh Order
VI. Kết luận
Do còn nhiều hạn chế về thời gian cũng như trình độ kiến thức, sản phẩm mà nhóm
em xây dựng còn rất sơ sài. Tổng quan hệ thống chưa đầy đủ các chức năng cần thiết, chỉ
gồm các chức năng xem danh sách các cuốn sách trong database, thêm sách vào giỏ hàng,
xem giỏ hàng và tạo Order. Đối với nhân viên, chỉ có chức năng xác minh các Order của
khách thông qua ID, chưa có chức năng thêm sách mà cần phải thêm trực tiếp từ database,
chưa có chức năng xem thống kê.
VII. Tài liệu tham khảo
1. https://www.tutorialspoint.com/servlets/servlets-server-response.htm
2. https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes-
connect-drivermanager.html
3. https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes-
statements.html
4. https://openplanning.net/10979/servlet-jsp

More Related Content

What's hot

Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhBáo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhnataliej4
 
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên nataliej4
 
Hệ thống quản lý rạp chiếu phim
Hệ thống quản lý          rạp chiếu phimHệ thống quản lý          rạp chiếu phim
Hệ thống quản lý rạp chiếu phimvennguyennoinho
 
Báo cáo phân tích thiết kế đồ án game
Báo cáo phân tích thiết kế đồ án game Báo cáo phân tích thiết kế đồ án game
Báo cáo phân tích thiết kế đồ án game Tạ Thành Đạt
 
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...Long Kingnam
 
Hệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng onlineHệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng onlineHan Nguyen
 
Báo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởBáo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởThuyet Nguyen
 
Báo cáo xây dựng và phát triển phần mềm
Báo cáo xây dựng và phát triển phần mềmBáo cáo xây dựng và phát triển phần mềm
Báo cáo xây dựng và phát triển phần mềmytthuan
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit Thanh Huong
 
BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...
BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...
BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...nataliej4
 
Do an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tuDo an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tuThiênĐàng CôngDân
 
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidBáo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidDlinh Truong
 
Báo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngBáo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngJojo Kim
 
Phân tích thiết kế hệ thống thông tin PTIT
Phân tích thiết kế hệ thống thông tin PTIT Phân tích thiết kế hệ thống thông tin PTIT
Phân tích thiết kế hệ thống thông tin PTIT NguynMinh294
 

What's hot (20)

Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhBáo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
 
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
 
Hệ thống quản lý rạp chiếu phim
Hệ thống quản lý          rạp chiếu phimHệ thống quản lý          rạp chiếu phim
Hệ thống quản lý rạp chiếu phim
 
Báo cáo phân tích thiết kế đồ án game
Báo cáo phân tích thiết kế đồ án game Báo cáo phân tích thiết kế đồ án game
Báo cáo phân tích thiết kế đồ án game
 
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
 
Mau bao cao project 1
Mau bao cao project 1Mau bao cao project 1
Mau bao cao project 1
 
Hệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng onlineHệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng online
 
Báo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởBáo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mở
 
Báo cáo xây dựng và phát triển phần mềm
Báo cáo xây dựng và phát triển phần mềmBáo cáo xây dựng và phát triển phần mềm
Báo cáo xây dựng và phát triển phần mềm
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit
 
BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...
BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...
BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HỆ THỐNG: Hệ thống quản lý phòng máy thực hành...
 
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOTĐề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
 
Do an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tuDo an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tu
 
Cơ sở dữ liệu nâng cao
Cơ sở dữ liệu nâng caoCơ sở dữ liệu nâng cao
Cơ sở dữ liệu nâng cao
 
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidBáo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
 
Báo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngBáo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thống
 
Phân tích thiết kế hệ thống thông tin PTIT
Phân tích thiết kế hệ thống thông tin PTIT Phân tích thiết kế hệ thống thông tin PTIT
Phân tích thiết kế hệ thống thông tin PTIT
 
Đề tài: Xây dựng phần mềm quản lý nhà hàng ăn uống
Đề tài: Xây dựng phần mềm quản lý nhà hàng ăn uốngĐề tài: Xây dựng phần mềm quản lý nhà hàng ăn uống
Đề tài: Xây dựng phần mềm quản lý nhà hàng ăn uống
 
Báo cáo Quản lý dự án phần mềm PTIT
Báo cáo Quản lý dự án phần mềm PTITBáo cáo Quản lý dự án phần mềm PTIT
Báo cáo Quản lý dự án phần mềm PTIT
 
Đề tài: Chương trình quản lý cho thuê nhà của cơ sở dịch vụ, HOT
Đề tài: Chương trình quản lý cho thuê nhà của cơ sở dịch vụ, HOTĐề tài: Chương trình quản lý cho thuê nhà của cơ sở dịch vụ, HOT
Đề tài: Chương trình quản lý cho thuê nhà của cơ sở dịch vụ, HOT
 

More from Popping Khiem - Funky Dance Crew PTIT

Cách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác cao
Cách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác caoCách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác cao
Cách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác caoPopping Khiem - Funky Dance Crew PTIT
 
Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT
Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT
Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT Popping Khiem - Funky Dance Crew PTIT
 
Ngân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQA
Ngân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQANgân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQA
Ngân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQAPopping Khiem - Funky Dance Crew PTIT
 
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAGiải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAPopping Khiem - Funky Dance Crew PTIT
 

More from Popping Khiem - Funky Dance Crew PTIT (20)

Java core
Java coreJava core
Java core
 
Giải Cơ sở dữ liệu phân tán - PTIT
Giải Cơ sở dữ liệu phân tán - PTITGiải Cơ sở dữ liệu phân tán - PTIT
Giải Cơ sở dữ liệu phân tán - PTIT
 
Tieng Anh chuyen nganh CNTT
Tieng Anh chuyen nganh CNTTTieng Anh chuyen nganh CNTT
Tieng Anh chuyen nganh CNTT
 
Data Structures and Algorithms Gụidance
Data Structures and Algorithms GụidanceData Structures and Algorithms Gụidance
Data Structures and Algorithms Gụidance
 
Cách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác cao
Cách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác caoCách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác cao
Cách tăng 100k like trong vòng 30 ngày và duy trì chỉ số tương tác cao
 
Tài liệu CCNA - Lưu hành nội bộ
Tài liệu CCNA  - Lưu hành nội bộTài liệu CCNA  - Lưu hành nội bộ
Tài liệu CCNA - Lưu hành nội bộ
 
Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT
Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT
Phân tích và thiết kế & Đảm bảo chất lượng phần mềm PTIT
 
KHO DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU PTIT
KHO DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU PTITKHO DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU PTIT
KHO DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU PTIT
 
Hệ Cơ Sở Dữ Liệu Đa Phương Tiện PTIT
Hệ Cơ Sở Dữ Liệu Đa Phương Tiện PTITHệ Cơ Sở Dữ Liệu Đa Phương Tiện PTIT
Hệ Cơ Sở Dữ Liệu Đa Phương Tiện PTIT
 
Chuyên Đề Công Nghệ Phần Mềm PTIT
Chuyên Đề Công Nghệ Phần Mềm PTITChuyên Đề Công Nghệ Phần Mềm PTIT
Chuyên Đề Công Nghệ Phần Mềm PTIT
 
Ngân hàng hệ thống nhúng PTIT
Ngân hàng hệ thống nhúng PTITNgân hàng hệ thống nhúng PTIT
Ngân hàng hệ thống nhúng PTIT
 
Ngân hàng hệ thống phân tán PTIT
Ngân hàng hệ thống phân tán PTITNgân hàng hệ thống phân tán PTIT
Ngân hàng hệ thống phân tán PTIT
 
Các Hệ Thống Phân Tán PTIT
Các Hệ Thống Phân Tán PTITCác Hệ Thống Phân Tán PTIT
Các Hệ Thống Phân Tán PTIT
 
Online system Desgin
Online system Desgin Online system Desgin
Online system Desgin
 
Phân tích thiết kế hệ thống thông tin PTIT
Phân tích thiết kế hệ thống thông tin PTITPhân tích thiết kế hệ thống thông tin PTIT
Phân tích thiết kế hệ thống thông tin PTIT
 
15 Design pattern - Kiến trúc và thiết kế phần mềm PTIT
15 Design pattern - Kiến trúc và thiết kế phần mềm PTIT15 Design pattern - Kiến trúc và thiết kế phần mềm PTIT
15 Design pattern - Kiến trúc và thiết kế phần mềm PTIT
 
Phát triển hệ thống thương mại điện tử PTIT
Phát triển hệ thống thương mại điện tử PTITPhát triển hệ thống thương mại điện tử PTIT
Phát triển hệ thống thương mại điện tử PTIT
 
Giải ngân hàng Hệ thống nhúng PTIT - thầy Cước
Giải ngân hàng Hệ thống nhúng PTIT - thầy CướcGiải ngân hàng Hệ thống nhúng PTIT - thầy Cước
Giải ngân hàng Hệ thống nhúng PTIT - thầy Cước
 
Ngân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQA
Ngân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQANgân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQA
Ngân hàng đảm bảo chất lượng phần mềm PTIT - Chuẩn SQA
 
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAGiải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
 

Bài tập lớn Phát triển phần mềm hướng dịch vụ PTIT

  • 1. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN MÔN: PHÁT TRIỂN PHẦN MỀM HƯỚNG DỊCH VỤ I. II. Giới thiệu bài toán III. Giới thiệu dịch vụ sử dụng/ hoặc tự dây dựng Website bán sách Book Store sử dụng : Java Servlet .java; Java JSP .java; Jdbc .java; MySQL Các phương thức:  getAll():List<T> : Lấy tất cả đối tượng T trong database  getOption(key:int):T : Lấy đối tượng T có ID là key  save(t:T):void : Lưu đối tượng T vào database  update(t:T):void : Cập nhật đối tượng T vào database  delete(t:T):void : Xoá đối tượng T khỏ database  getItemByName(String s): Item : Tìm kiếm đối tượng trong database theo tên Phục vụ các chức năng thêm sửa xoá Sách, Giỏ hàng, Đơn hàng và thống kê Hoá đơn IV. Phân tích thiết kế hệ thống hướng đối tượng 1. Biểu Use Case
  • 2. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Mô tả:  Đăng ký: UC này cho phép khách hàng đăng ký tài khoản cá nhân  Đăng nhập: UC này cho phép khách hàng và nhân viên đăng nhập vào hệ thống  Xem sách: UC này cho phép khách hàng xem thông tin các quyển sách có bán tại hệ thống  Thêm sách vào giỏ hàng: UC này cho phép khách hàng thêm sách vào giỏ hàng  Tạo Order: UC này cho phép khách hàng đặt hàng từ giỏ hàng  Tìm sách: UC này cho phép khách hàng và nhân viên tìm kiếm sách theo tên  Quản lý sách: UC này cho phép nhân viên quản lý sách gồm thêm sửa xoá  Quản lý Order: UC này cho phép nhân viên quản lý Order, kiểm tra trạng thái Order 2. Biểu đồ lớp
  • 3. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 3. Biểu đồ hoạt động Khách hàng:
  • 4. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Nhân viên:
  • 5. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 4. Biểu đồ CSDL
  • 6. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 5. Biểu đồ lớp DAO 6. Biểu đồ gói
  • 7. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 7. Biểu đồ tuần tự Kịch bản v3 cho khách hàng xem sách, thêm giỏ hàng và tạo Order: 1. Sau khi đăng nhập, khách hàng chọn xem sách 2. Lớp LoginCustomer.jsp gọi lớp Item.jsp để hiển thị 3. Lớp Item.jsp gọi lớp ItemDAO để lấy danh sách Item 4. Lớp ItemDAO gọi hàm getAll() 5. Hàm getAll() gọi lớp Item để đóng gói dữ liệu 6. Lớp Item đóng gói dữ liệu 7. Lớp Item trả kết quả cho hàm getAll() 8. Hàm getAll() trả kết quả cho lớp Item.jsp 9. Lớp Item.jsp hiển thị danh sách thông tin sách cho khách hàng 10. Khách hàng chọn thêm 1 quyển sách vào giỏ hàng 11. Lớp Item.jsp gọi lớp Cart.jsp 12. Lớp Cart.jsp gọi lớp CartDAO để lưu Item vào giỏ hàng 13. Lớp CartDAO gọi hàm save() 14. Hàm save() gọi lớp Cart để đóng gói thông tin 15. Lớp Cart đóng gói thông tin 16. Lớp Cart trả kết quả cho lớp CartDAO 17. Lớp CartDAO trả kết quả cho lớp Cart.jsp 18. Lớp Cart.jsp thông báo cho khách hàng đã thêm thành công 19. Khách hàng chọn tạo Order 20. Lớp Cart.jsp gọi lớp MakeOrder.jsp 21. Lớp MakeOrder.jsp gọi lớp getShippingAddress.jsp 22. Lớp getShippingAddress.jsp gọi lớp PersonDAO 23. Lớp PersonDAO gọi hàm getAddress() 24. Hàm getAddress() gọi lớp Person 25. Lớp Person đóng gói thông tin 26. Lớp Person trả kết quả cho lớp PersonDAO 27. Lớp PersonDAO trả kết quả cho lớp getShippingAddress.jsp 28. Lớp getShippingAddress.jsp trả kết quả cho lớp MakeOrder.jsp
  • 8. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 29. Lớp MakeOrder.jsp gọi lớp Payment.jsp 30. Lớp Payment.jsp gọi lớp PersonDAO 31. Lớp PersonDAO gọi hàm getPayment() 32. Hàm getPayment() gọi lớp Person 33. Lớp Person đóng gói thông tin 34. Lớp Person trả kết quả cho lớp PersonDAO 35. Lớp PersonDAO trả kết quả cho lớp Payment.jsp 36. Lớp Payment.jsp trả kết quả cho lớp MakeOrder.jsp 37. Lớp MakeOrder.jsp hiển thị thông tin đơn hàng cho khách hàng 38. Khách hàng chọn thanh toán 39. Lớp MakeOrder.jsp gọi lớp OrderDAO 40. Lớp OrderDAO gọi hàm save() 41. Hàm save() gọi lớp Order 42. Lớp Order đóng gói thông tin 43. Lớp Order trả kết quả cho lớp OrderDAO 44. Lớp OrderDAO trả kết quả cho lớp MakeOrder.jsp 45. Lớp MakeOrder.jsp thông báo cho khách hàng tạo đơn hàng thành công
  • 9. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Kịch bản v3 cho nhân viên thêm sách, quản lý Order: 1. Sau khi đăng nhập, nhân viên chọn thêm sách 2. Lớp LoginEmployee.jsp gọi lớp AddItem.jsp 3. Lớp AddItem.jsp hiển thị 4. Nhân viên điền thông tin sách, chọn Thêm 5. Lớp AddItem.jsp gọi lớp ItemDAO 6. Lớp ItemDAO gọi hàm save() 7. Hàm save() gọi lớp Item 8. Lớp Item đóng gói thông tin 9. Lớp Item trả kết quả cho lớp ItemDAO 10. Lớp ItemDAO trả kết quả cho lớp AddItem.jsp 11. Lớp AddItem.jsp thông báo thêm sách thành công
  • 10. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 12. Nhân viên chọn quay lại 13. Lớp AddItem.jsp gọi lớp LoginEmployee.jsp 14. Lớp LoginEmployee.jsp hiển thị 15. Nhân viên chọn quản lý Order 16. Lớp LoginEmployee.jsp gọi lớp ProcessOrder.jsp 17. Lớp ProcessOrder.jsp hiển thị 18. Nhân viên nhập Id, chọn Tìm 19. Lớp ProcessOrder.jsp gọi lớp OrderDAO 20. Lớp OrderDAo gọi hàm getOrder() 21. Hàm getOrder() gọi lớp Order 22. Lớp Order đóng gói thông tin 23. Lớp Order trả kết quả cho lớp OrderDAO 24. Lớp OrderDAO trả kết quả cho lớp ProcessOrder.jsp 25. Lớp ProcessOrder.jsp hiển thị cho nhân viên 26. Nhân viên chọn trạng thái Order, chọn Update 27. Lớp ProcessOrder.jsp gọi lớp OrderDAO 28. Lớp OrderDAO gọi hàm save() 29. Hàm save() gọi lớp Order 30. Lớp Order đóng gói thông tin 31. Lớp Order trả kết quả cho lớp OrderDAO 32. Lớp OrderDAO trả kết quả cho lớp ProcessOrder.jsp 33. Lớp ProcessOrder.jsp thông báo cho nhân viên
  • 11. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT V. Cài đặt 1. Các lớp Entities chính: Account.java.java; Address.java; FullName.java; Person.java; Payment.java; Item.java; Book.java; Cart.java; Order, Bill.java; Category.java; Author.java; Shipment 2. Các lớp DAO: DAO.java; BaseDAO.java; PersonDAO.java; BookDAO.java; ItemDAO.java; CartDAO.java; OrderDAO.java; CategoryDAO.java; AuthorDAO.java; BillDAO 3. Các lớp View: Index.jsp; stafflogin.jsp; login.jsp; logout.jsp; register.jsp; bookstore.jsp; cart.jsp; items.jsp; getShippingAddress.jsp; payment.jsp; onlineorder.jsp; shipping.jsp; processorder.jsp; result.jsp
  • 12. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT 4. Các lớp Servlet: LoginServlet.java; RegisterServler.java; ImageServlet.java; CartServlet.java; MakeOrderServlet.java; onlineOrderServlet.java; ShippingAddressServlet.java 5. Chạy demo Giao diện chính Giao diện đăng ký
  • 13. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Sau khi đăng nhập với vai trò khách hàng Chọn xem tất cả sách Thêm vào giỏ hàng thành công
  • 14. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Xem giỏ hàng Chọn Make Order để thanh toán Chọn phương thức thanh toán
  • 15. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Thanh toán thành công Giao diện chính của nhân viên bán hàng Tìm Order qua id
  • 16. Youtube.com/PoppinKhiem - Sân chơi giới trẻ PTIT Xác minh Order VI. Kết luận Do còn nhiều hạn chế về thời gian cũng như trình độ kiến thức, sản phẩm mà nhóm em xây dựng còn rất sơ sài. Tổng quan hệ thống chưa đầy đủ các chức năng cần thiết, chỉ gồm các chức năng xem danh sách các cuốn sách trong database, thêm sách vào giỏ hàng, xem giỏ hàng và tạo Order. Đối với nhân viên, chỉ có chức năng xác minh các Order của khách thông qua ID, chưa có chức năng thêm sách mà cần phải thêm trực tiếp từ database, chưa có chức năng xem thống kê. VII. Tài liệu tham khảo 1. https://www.tutorialspoint.com/servlets/servlets-server-response.htm 2. https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes- connect-drivermanager.html 3. https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes- statements.html 4. https://openplanning.net/10979/servlet-jsp