Đồ án Công nghệ phần mềm Đề tài về Du lịch 9.5 điểm

61 219 0
Đồ án Công nghệ phần mềm  Đề tài về Du lịch 9.5 điểm

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC ĐÀ NẴNGTRƯỜNG ĐẠI HỌC BÁCH KHOAKHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁNCÔNG NGHỆ PHẦN MỀMĐỀ TÀIXây dựng Website hỗ trợ việc tìm kiếm địa điểm vui chơi, du lịch và chia sẻ trải nghiệm du lịch tại thành phố Đà Nẵng GVHD: TS. Lê Thị Mỹ HạnhNhóm:16Nh14 SVTH:Nguyễn Hữu Hoàng HưngNguyễn Trần HậuĐoàn Văn KhánhLê Trần Hồng PhúcNguyễn Phước PhiVõ Xuân Hùng Đà Nẵng, 2019MỤC LỤCLỜI NÓI ĐẦU4PHÂN CÔNG CÔNG VIỆC5CHƯƠNG 1: GIỚI THIỆU HỆ THỐNG6MỤC ĐÍCH6PHẠM VI HỆ THỐNG6CHƯƠNG 2: XÂY DỰNG HỆ THỐNG7PHÂN TÍCH YÊU CẦU7TỔNG QUAN7Tác nhân7Sơ đồ ca sử dụng8MÔ TẢ CHỨC NĂNG11Xác thực người dùng11Xem thông tin địa điểm, dịch vụ18Tìm kiếm dịch vụ, địa điểm19Đánh giá dịch vụ, địa điểm21Yêu cầu cập nhật dịch vụ, địa điểm22Báo cáo dịch vụ, địa điểm25Xem blog26Viết blog29Đánh giá (bình luận) blog30Báo cáo blog31Phê duyệt yêu cầu tạo mới và cập nhật dịch vụ, địa điểm sẵn có33Xử lý báo cáo về dịch vụ, địa điểm34Xem thông tin và phân quyền35YÊU CẦU PHI CHỨC NĂNG38Hiệu suất38Tương thích38Tính ứng dụng39Tính tin cậy39An toàn thông tin39THIẾT KẾ40Sơ đồ lớp40Cơ sở dữ liệu41Sơ đồ cơ sở dữ liệu41Cấu trúc bảng41CÀI ĐẶT50KIỂM THỬ51CHƯƠNG 3: KẾT QUẢ TRIỂN KHAI HỆ THỐNG53XÁC THỰC NGƯỜI DÙNG53Đăng nhập53Xem thông tin cá nhân54DỊCH VỤ, ĐỊA ĐIỂM54Tìm kiếm dịch vụ, địa điểm54Xem thông tin dịch vụ, địa điểm55Đánh giá dịch vụ, địa điểm56Yêu cầu cập nhật dịch vụ, địa điểm56BLOG58Xem blog58Báo cáo blog59Viết blog mới60QUẢN LÝ NGƯỜI DÙNG61PHÊ DUYỆT YÊU CẦUBÁO CÁO62Phê duyệt yêu cầu cập nhậtthêm dịch vụ, địa điểm62Xử lý báo cáo về dịch vụ, địa điểm62CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN63THUẬN LỢI VÀ KHÓ KHĂN63THÀNH QUẢ ĐẠT ĐƯỢC63HƯỚNG PHÁT TRIỂN63 LỜI NÓI ĐẦUĐồ án chuyên ngành công nghệ phần mềm là đồ án quan trọng của sinh viên chuyên ngành công nghệ phần mềm. Sau khi được học các môn học về phần mềm như công nghệ phần mềm, phân tích và thiết kế hướng đối tượng thì có thể nói đây là phần quan trọng để sinh viên hiểu rõ hơn về thế nào là một dự án phần mềm. Đồ án này là một cột mốc mà các kỹ năng và khả năng lập trình của sinh viên lại lên một bước mới vì những mảng kiến thức đã xuất hiện trong các môn học, sinh viên sẽ áp dụng vào dự án này.Và nhóm em xin tỏ lòng cảm ơn tới cô Lê Thị Mỹ Hạnh – giảng viên khoa Công nghệ thông tin, Trường Đại học Bách Khoa, Đại học Đà Nẵng đã trực tiếp hướng dẫn em hoàn thành đề tài này.Trong quá trình làm khó có thể tránh khỏi các thiếu sót, kính mong nhận được ý sự góp ý của quý thầy cô để đề tài trở nên hoàn thiện hơn.Nhóm em xin chân thành cảm ơn PHÂN CÔNG CÔNG VIỆCSTTThành viênNội dung công việc1Nguyễn Hữu Hoàng HưngPhân tích và thiết kế databasePhân tích và thiết kế toàn hệ thốngCrawl dữ liệuViết báo cáo Kiểm tra tiến độ từng thành viên trong nhóm2Đoàn Văn KhánhPhân tích và thiết kế databasePhân tích và thiết kế hệ thống API cho hệ thốngReview phần Backend cho toàn hệ thốngDeploy website và quản lý cloud server3Nguyễn Trần HậuPhân tích và thiết kế hệ thống API cho hệ thốngPhân tích và thiết kế sơ đồ lớp cho hệ thốngCoding phần Backend cho toàn hệ thốngReview phần frontend của trang admin4Nguyễn Phước PhiPhân tích và thiết kế UXUI cho trang blog, service và quản lý.Coding phần frontend cho blogReview phần frontend cho serviceThiết kế testcase cho trang service5Lê Trần Hồng PhúcPhân tích và thiết kế UXUI cho trang blog, service.Coding phần frontend cho serviceReview phần frontend cho blogThiết kế testcase cho trang blog6Võ Xuân HùngPhân tích và thiết kế UXUI cho trang quản lý.Coding phần frontend cho adminThiết kế testcase cho trang adminCHƯƠNG 1: GIỚI THIỆU HỆ THỐNGI.MỤC ĐÍCHMục đích của hệ thống là hỗ trợ người dùng có thể tìm kiếm các trải nghiệm về du lịch Đà Nẵng bao gồm địa điểm ăn uống, vui chơi và giải trí tại thành phố Đà Nẵng.Hệ thống hỗ trợ và cho phép người dùng tìm kiếm và đánh giá các địa điểm, dịch vụ đã có sẵn trên hệ thống cũng như đóng góp các địa điểm, dịch vụ mới vào hệ thống. Hệ thống cũng cho phép người dùng có thể đăng tải các bài viết về trải nghiệm du lịch của mình để chia sẻ với cộng đồng.II.PHẠM VI HỆ THỐNGHệ thống website gợi ý trải nghiệm, địa điểm vui chơi, du lịch tại thành phố Đà Nẵng chạy trên nền web giúp việc tìm kiếm các địa điểm ăn uống, vui chơi, giải trí được tiến hành một cách nhanh chóng và tiện lợi. Hệ thống ra đời nhằm đáp ứng nhu cầu du lịch tại thành phố Đà Nẵng ngày càng tăng cao, nhằm giúp khách du lịch và người dân địa phương có thể dễ dàng lựa chọn được những dịch vụ phù hợp.Hệ thống phục vụ cho 3 đối tượng user chính:Người du lịch (traveler)Người điều hành (moderator)Quản trị viên (admin)Website cho phép người dùng tìm kiếm các dịch vụ và địa điểm theo từ khoá (tên quán, địa chỉ, số điện thoại, mô tả) hoặc theo loại (nhà hàng, quán cà phê, chỗ lưu trú, phương tiện di chuyển). Bên cạnh đó, người dùng có thể đánh giá phản hồi các dịch vụ hoặc địa điểm có trên hệ thống. Ngoài ra thì hệ thống còn cho phép người dùng cập nhật các thông tin liên quan đến dịch vụ hoặc địa điểm (thêm địa điểm mới chưa có trên hệ thống, sửa các thông tin về dịch vụ đã có trên hệ thống) dưới sự quản lý của admin và moderator. Cuối cùng, hệ thống cho phép user chia sẻ và khám phá các trải nghiệm Đà Nẵng dưới nhiều góc nhìn khác nhau thông qua các bài blog.CHƯƠNG 2: XÂY DỰNG HỆ THỐNGI.PHÂN TÍCH YÊU CẦUI.1.TỔNG QUANI.1.1.Tác nhânTác nhânMô tảNgười du lịch (Traveler)Có quyền đăng nhập, đăng ký, chỉnh sửa và xem chi tiết thông tin cá nhân.Có quyền tìm kiếm các dịch vụ và địa điểm trên hệ thống bằng từ khóa hoặc bằng loại dịch vụ.Có quyền xem, đánh giá, đề nghị cập nhật và thêm mới các dịch vụ và địa điểm trên hệ thống.Có quyền xem và bình luận blog chia sẻ trải nghiệm tại Đà Nẵng của người dùng khác.Có quyền viết blog để chia sẻ trải nghiệm.Có quyền báo cáo các dịch vụ, điểm điểm và các bài viết blog không phù hợp.Người trung gian (Moderator)Có quyền đăng nhập, chỉnh sửa, xem chi tiết thông tin cá nhân.Có các quyền tương tự như user.Có quyền phê duyệt các đề nghị cập nhật và thêm mới của user.Có quyền xử lý các báo cáo từ user (xoá, chặn).Quản trị viên (Admin)Có các quyền tương tự như Moderator.Có quyền phân quyền cho user và Moderator.Có quyền chặn (block) user, Moderator. I.1.2.Sơ đồ ca sử dụngI.1.2.1.Sơ đồ tổng quát I.1.2.2.Chức năng xác thực người dùng I.1.2.3.Chức năng tìm kiếm dịch vụ địa điểm I.1.2.4.Chức năng đánh giá dịch vụ địa điểm I.1.2.5.Chức năng cập nhật dịch vụ địa điểm I.1.2.6.Chức năng viết blog I.1.2.7.Chức năng quản lý dịch vụ I.1.2.8.Chức năng quản lý blog I.1.2.9.Chức năng quản lý người dùng I.2.MÔ TẢ CHỨC NĂNGI.2.1.Xác thực người dùngI.2.1.1.Đăng nhập Screen Đăng nhậpDescriptionCho phép user đăng nhập bằng usernameScreen AccessUser nhấn vào login ở headerScreen ContentItemTypeDataDescriptionLoginlabeltiêu đề usernameinputusernametrường input để nhập username của userpasswordinputpasswordtrường input để nhập password của userloginbutton đăng nhậpScreen ActionsAction NameDescriptionSuccessFailuređăng nhậpsau khi bấm nút login, user có thể đăng nhập vào tài khoản của mìnhchuyển trang về trang userthông báo lỗi nếu đăng nhập không thành công (usernamepassword sai)I.2.1.2.Đăng ký Screen Đăng kýDescriptionCho phép user đăng ký tài khoảnScreen AccessUser nhấn vào nút Sign up ở màn hình loginScreen ContentItemTypeDataDescriptionSign uplabeltiêu đề usernameinputusernametrường input để nhập username của userpasswordinputpasswordtrường input để nhập password của useremailinputemailtrường input để nhập email của userfull nameinputfull nametrường input để nhập full name của usersign upbutton đăng kýScreen ActionsAction NameDescriptionSuccessFailuresign upSau khi nhấn nút sign up, thông tin tài khoản của user sẽ được lưu vào hệ thống và user có thể bắt đầu login sử dụng tài khoản.thông báo sign up thành công, chuyển trang về màn hình đăng nhậpthông báo lỗi nếu đăng ký không thành công (username trùng, email trùng, dữ liệu của các input không hợp lệ)I.2.1.3.Đăng xuất Screen Đăng xuấtDescriptionCho phép user đăng xuất khỏi tài khoảnScreen Accessuser nhấn vào biểu tượng user trên header và chọn logoutScreen ContentItemTypeDataDescriptionlogoutbutton đăng xuấtScreen ActionsAction NameDescriptionSuccessFailurelogoutsau khi nhấn nút logout, hệ thống sẽ hủy bỏ session hiện tại của userchuyển trang về trang chủthông báo lỗi nếu logout không thành côngI.2.1.4.Xem thông tin cá nhân ScreenXem chi tiết thông tin cá nhânDescriptionCho phép user xem chi tiết thông tin cá nhân của mình và số lượng bài viết đã đăngScreen accessSau khi đăng nhập user chọn vào menu thông tin cá nhân để truy cậpScreen ContentItemTypeDataDescriptionTênLabelString Hiển thị tên của userNgày sinhLabelDate Hiển thị ngày sinh của userSdtLabelNumber Hiển thị số điện thoại của userEmailLabelString Hiển thị email của userFacebookLabelString Hiển thị facebook của userInstagramLabelString Hiển thị instagram của userPOSTLabelString Hiển thị số lượng bài viết user đã viếtImageImage Thumbnail của các bài viếtĐổi mật khẩuButton Có chức năng đổi mật khẩu cho tài khoản của userChỉnh sửaButton Cập nhật lại các thông tin cá nhân trừ mật khẩuScreen ActionsAction NameDescriptionSuccessFailureĐổi mật khẩuUser click vào nút đổi mật khẩu để thực hiện đổi mật khẩuHiển thị ra form để đổi mật khẩuKhông hiện form đổi mật khẩuChỉnh sửaUser click vào nút chỉnh sửa để thực hiện cập nhật thông tinHiện ra form cập nhật thông tinKhông hiện form cập nhật thông tinI.2.1.5.Cập nhật thông tin cá nhân ScreenCập nhật thông tin cá nhânDescriptionCho phép user cập nhật thông tin cá nhânScreen accessUser click vào nút chỉnh sửaScreen ContentItemTypeDataDescriptionTênTextInput Nhập tên mớiNgày sinhDate Nhập ngày sinh mớiSdtTextInput Nhập số điện thoại mớiEmailTextInput Nhập email mớiFacebookTextInput Nhập facebook mớiInstagramTextInput Nhập instagram mớiLưu thay đổiButton Xác nhận thay đổiScreen ActionsAction NameDescriptionSuccessFailureLưu thay đổiUser nhấn vào nút “Lưu thay đổi” để thực hiện việc thay đổi thông tinThông báo chỉnh sửa thành công, quay lại trang trướcTải lại trang, thông báo lỗi nếu lưu không thành công (dữ liệu input không hợp lệ) ScreenĐổi mật khẩuDescriptionCho phép user cập đổi mật khẩuScreen accessUser click vào nút đổi mật khẩuScreen ContentItemTypeDataDescriptionMật khẩu cũTextInput Nhập mật khẩu cũMật khẩu mớiTextInput Nhập mật khẩu mớiXác nhận mật khẩu mớiTextInput Nhập lại mật khẩu mớiLưu thay đổiButton Xác nhận thay đổiScreen ActionsAction NameDescriptionSuccessFailureLưu thay đổiUser nhấn vào “Lưu thay đổi” để thực hiện việc thay đổiThông báo đổi mật khẩu thành công, quay lại trang trướcThông báo lỗi nếu đổi mật khẩu thất bạiI.2.2.Xem thông tin địa điểm, dịch vụ Screen Xem chi tiết địa điểm, dịch vụDescriptionCho phép user xem thông tin chi tiết về một địa điểm hoặc một dịch vụ cụ thểScreen AccessUser nhấn vào một địa điểm hoặc dịch vụ ở danh sáchScreen ContentItemTypeDataDescriptionnametexttên địa điểm, dịch vụ addresstextđịa chỉ ratingnumberxếp hạng descriptiontextmô tả về địa điểm, dịch vụ imagesimage1 số hình ảnh của địa điểm, dịch vụ related blogbuttonblog liên quan tới địa điểmnhấn để xem blogScreen ActionsAction NameDescriptionSuccessFailurexem blogSau khi nhấn nút xem blog, user sẽ xem chi tiết blog đóchuyển trang tới trang chi tiết blogthông báo lỗi nếu không tìm thấy blogI.2.3.Tìm kiếm dịch vụ, địa điểm Screen Tìm kiếm địa điểm, dịch vụDescriptioncho phép user tìm kiếm địa điểm, dịch vụScreen Accessuser nhấn vào thanh tìm kiếm ở headerScreen ContentItemTypeDataDescriptionsearch barinputtên địa điểm, dịch vụinput để nhập nội dung cần tìmsearchbutton nhấn để tìm kiếm địa điểm, dịch vụfilterbutton nhấn để lọc khi tìm kiếm địa điểm, dịch vụScreen ActionsAction NameDescriptionSuccessFailuresearchsau khi nhấn nút search, danh sách kết quả sẽ hiện ra ở dropdownkết quả hiện ra ở dropdownhiện ra kết quả rỗng nếu không tìm thấy kết quả nàofiltersau khi nhấn nút filter, kết quả tìm kiếm sẽ được giới hạn lạikết quả tìm kiếm giới hạn lạihiện ra thông báo lỗi nếu filter không hợp lệI.2.4.Đánh giá dịch vụ, địa điểm Screen Đánh giá địa điểm, dịch vụDescriptionCho phép user đánh giá địa điểm, dịch vụScreen Accessuser nhấn vào nút đánh giá ở trang địa điểm, dịch vụScreen ContentItemTypeDataDescriptiontitletext tiêu đềratingnumberratingrating tương ứng với chất lượng cũng như sự hài lòng của user đối với địa điểm, dịch vụdescriptiontextmô tả về địa điểm, dịch vụlý do và nội dung của bài đánh giáratebutton nhấn để rateScreen ActionsAction NameDescriptionSuccessFailureratesau khi nhấn nút rate, user sẽ gửi đánh giá về địa điểm, dịch vụ để lưu vào hệ thốngthông báo thành công, trở về trang địa điểmthông báo lỗi khi không thể rateI.2.5.Yêu cầu cập nhật dịch vụ, địa điểmI.2.5.1.Cập nhật dịch vụ và địa điểm có sẵn ScreenYêu cầu cập nhật dịch vụ, địa điểmDescriptionCho phép user gửi đề nghị cập nhật lại địa điểm, dịch vụScreen accessUser xem địa điểm, dịch vụ sau đó click vào cập nhậtScreen ContentItemTypeDataDescriptionThuộc tính cần cập nhậtLabelString Mô tả thuộc tính cần cập nhậtĐịa điểmTextInput Địa chỉ của địa điểm, dịch vụ đóThời gian hoạt độngTextInput Thời gian hoạt động của địa điểm, dịch vụ đóƯu đãiTextInput Ưu đãi của địa điểm, dịch vụ đóHình ảnhButton Hình ảnh của địa điểm, dịch vụ đóNội dung cập nhậtTextField Mô tả chi tiết thông tin hơn về nội dung cập nhậtGửiButton Gửi yêu cầuScreen ActionsAction NameDescriptionSuccessFailureGửiUser click vào để thực hiện việc gửi yêu cầuThông báo gửi yêu cầu thành côngTải lại trang, thông báo lỗiI.2.5.2.Thêm mới dịch vụ và địa điểm ScreenYêu cầu thêm mới địa điểm dịch vụDescriptionCho phép user gửi đề nghị thêm vào địa điểm, dịch vụScreen accessUser click vào menu yêu cầu thêm mới địa điểm,dịch vụScreen ContentItemTypeDataDescriptionTên gọiTextInput Tên địa điểm, dịch vụĐịa chỉTextInput Địa chỉ của địa điểm, dịch vụ đóLoại hình dịch vụCombobox Chọn loại hình ví dụ như cafe, nhà hàng...Giờ hoạt độngTextInput Giờ hoạt độngGiá cả trung bìnhTextInput Giá cả trung bình của địa điểm, dịch vụ đóMô tảTextInput Mô tả chi tiết thông tin hơn về địa điểm đóHình ảnhButton Upload ảnh về địa điểm nếu cóSubmitButton Submit yêu cầuScreen ActionsAction NameDescriptionSuccessFailureLoại hình dịch vụUser click vào để thực hiện chọn loại hình ví dụ như cafe, nhà hàng... Hình ảnhUser click vào để upload ảnh về địa điểm nếu có SubmitUser click vào để thực hiện việc submit yêu cầuQuay lại trang chủ, thông báo thành côngTải lại trang, thông báo lỗiI.2.6.Báo cáo dịch vụ, địa điểm ScreenXem chi tiết bài viếtDescriptionCho phép user báo cáo bài viếtScreen accessUser click vào thumbnail bài viết ở trang trướcScreen ContentItemTypeDataDescription. . .Icon Chọn yêu cầu đối với bài viếtBáo cáo bài viếtIcon Chọn để báo cáo bài viếtVui lòng chọn vấn đề báo cáoLabelString Hiển thị window report bài viếtLý do 1Icon Lý do report 1Lý do 2Icon Lý do report 2Lý do 3Icon Lý do report 3Lý do 4Icon Lý do report 4Lý do 5Icon Lý do report 5GửiButton Gửi lý do reportScreen ActionsAction NameDescriptionSuccessFailureChọn lý doUser click vào để chọn các lý do 1,2,3,4,5 để báo cáo GửiUser click vào để gửi các lý do vừa chọnThông báo gửi thành côngTải lại trang, thông báo gửi thất bạiI.2.7.Xem blogI.2.7.1.Xem nội dung blog ScreenXem các bài viếtDescriptionCho phép user xem các bài viết đánh giáScreen accessUser click vào menu bài viếtScreen ContentItemTypeDataDescriptionThumbnailImage Thumbnail của các bài viết1Number Trang 12Number Trang 23Number Trang 3NextButton Tiến 1 trangPreviousButton Lùi 1 trangScreen ActionsAction NameDescriptionSuccessFailureNextUser click vào để tiến 1 trangTiến 1 trangTải lại trangPreviousUser click vào để lùi 1 trangLùi 1 trangTải lại trangClick vào thumbnailUser click vào để xem chi tiết bài viếtHiển thị chi tiết bài viếtTải lại trang, thông báo lỗi ScreenXem chi tiết bài viếtDescriptionCho phép user xem chi tiết bài viếtScreen accessUser click vào thumbnail bài viết ở trang trướcScreen ContentItemTypeDataDescriptionImageImage Ảnh chụp về các địa điểm,dịch vụTiêu đềText Tiêu đề bài viếtNội dungText Nội dung chi tiết bài viếtScreen ActionsAction NameDescriptionSuccessFailure I.2.8.Viết blog ScreenViết bàiDescriptionCho phép user viết bài cảm nhận hay đánh giá về một địa điểm, dịch vụScreen accessUser click vào menu bài viết chọn tạo mớiScreen ContentItemTypeDataDescriptionTiêu đềTextInput Tiêu đề bài viếtGiới thiệuTextField Giới thiệu bài viếtNội dungTextField Nội dung bài viếtHình ảnhButton Upload các hình ảnh cho bài viếtGửiButton Submit bài viếtScreen ActionsAction NameDescriptionSuccessFailureGửiUser click vào để submit bài viếtThông báo gửi thành côngTải lại trang, thông báo gửi thất bạiI.2.9.Đánh giá (bình luận) blog ScreenXem chi tiết bài viếtDescriptionCho phép user xem chi tiết bài viết và bình luận về bài viếtScreen accessUser click vào thumbnail bài viết ở trang trướcScreen ContentItemTypeDataDescriptionBình luậnTextField Hiển thị các bình luận về bài viếtNội dung bình luậnTextInput Nhập nội dung bình luậnĐăngButton Đăng bình luậnScreen ActionsAction NameDescriptionSuccessFailureĐăngUser click vào để đăng bình luậnHiển thị bình luận vừa mới đăng lên phái trênTải lại trang, thông báo lỗiI.2.10.Báo cáo blog ScreenXem chi tiết bài viếtDescriptionCho phép user báo cáo bài viếtScreen accessUser click vào thumbnail bài viết ở trang trướcScreen ContentItemTypeDataDescription. . .Icon Chọn yêu cầu đối với bài viếtBáo cáo bài viếtIcon Chọn để báo cáo bài viếtVui lòng chọn vấn đề báo cáoLabelString Hiển thị window report bài viếtLý do 1Icon Lý do report 1Lý do 2Icon Lý do report 2Lý do 3Icon Lý do report 3Lý do 4Icon Lý do report 4Lý do 5Icon Lý do report 5GửiButton Gửi lý do reportScreen ActionsAction NameDescriptionSuccessFailureChọn lý doUser click vào để chọn các lý do 1,2,3,4,5 để báo cáo GửiUser click vào để gửi các lý do vừa chọnThông báo gửi thành côngTải lại trang, thông báo gửi thất bạiI.2.11.Phê duyệt yêu cầu tạo mới và cập nhật dịch vụ, địa điểm sẵn có ScreenQuản lý các request từ người dùngDescriptionCho phép xác nhận các requestScreen accessAdmin chọn Quản lý request ở thanh menu bên tráiScreen ContentItemTypeDataDescriptionDanh sách requestTableDanh sách các requestBảng chứa danh sách các requestId requestLabel – Stringid của requestCác ô mã id của requestId userLabel – StringId của người requestCác ô mã id của người gửi requestTrạng tháiLabel – StringTrạng thái của requestLoại requestLabel – StringLoại của requestPhân loại ra các requestid serviceLabel – String Id của dịch vụMã id của dịch vụThời gianLabel – StringThời gian tạo request Có thể xem thời gian requestXác nhậnButtonChấp nhận request Có thể chấp nhận requestSubmitTìm kiếmButton Có thể nhấn để hiển thị kết quả tìm kiếmI.2.12.Xử lý báo cáo về dịch vụ, địa điểm ScreenQuản lý các report từ người dùngDescriptionCho phép xác nhận xử lý các reportScreen accessAdmin chọn Quản lý report thanh menu bên tráiScreen ContentItemTypeDataDescriptionDanh sách reportTableDanh sách các reportBảng chứa danh sách các reportId reportLabel – Stringid của reportCác ô mã id của reportId userLabel – StringId của người reportCác ô mã id của người gửi reportTrạng tháiLabel – StringTrạng thái của reportLoại requestLabel – StringLoại của requestPhân loại ra các requestid serviceLabel – String Id của dịch vụMã id của dịch vụThời gianLabel – StringThời gian tạo request Có thể xem thời gian reportXác nhậnButtonCó thể chấp nhận reportI.2.13.Xem thông tin và phân quyền Screen Danh sách các tài khoản user (user và mod)DescriptionCho phép admin có thể xem chi tiết thông tin, cấp quyền hoặc chặn userScreen AccessAdmin chọn Quản lý user hoặc Quản lý moderator ở thanh menu bên tráiScreen ContentItemTypeDataDescriptionDanh sách userTableDanh sách các userBảng chứa danh sách các userTênLabel – StringHọ và tên userCác ô chứa họ và tên userEmailLabel – StringEmail của userCác ô chứa emailSố điện thoạiLabel – StringSố điện thoại userCác ô chứa số điện thoạiNgày tạoLabel – StringNgày tạo tài khoảnChứa ngày tạo tài khoảnPhân quyềnSelect User ModeratorCấp quyền cho userTùy chỉnhLink Có thể nhấn để xem chi tiết tài khoảnTìm kiếmTextbox String Có thể nhập tên hoặc email để tìm kiếm thông tin userSubmitTìm kiếmButton Có thể nhấn để hiển thị kết quả tìm kiếmScreen ActionsAction NameDescriptionSuccessFailureXem chi tiết danh sách thông tin userSau khi nhấn vào mục Quản lý user hoặc Quản lý moderator, sẽ gửi request lên server để lấy dữ liệu sau đó render ra danh sách thông tin chi tiết các user.Hiển thị danh sách tất cả các thông tin user nếu không có user nào thì để trống.Request lên server bị lỗi hoặc dữ liệu server trả về bị lỗi sẽ hiển thị ra “Không có user nào”Cấp quyền cho userMặc định khi user đăng ký tài khoản thì tài khoản sẽ là tài khoản khách(user). Khi Admin select để cấp quyền cho user, Nếu chọn quyền moderator thi tài khoản đó sẽ có các quyền của Moderator. Và tài khoản sẽ bị xoá khỏi danh sách user, di chuyển sang danh sách moderator.Chuyển sang trang danh sách các moderator. Và có tất cả quyền của moderator.Vẫn select được nhưng tài khoản vẫn ở tại danh sách user và chưa có quyền nào.Xem chi tiết thông tin từng tài khoảnKhi Admin nhấn vào xem chi tiết sẽ di chuyển sang trang mới hiển thị ra chi tiết thông tin của user, xem chi tiết các bài đăng của user, các request, các report,...Sẽ di chuyển đến trang mới hiển thị ra thông tin userNhấn vào xem chi tiết vị vô hiệu.Tìm kiếm thông tin userKhi gõ vào ô tìm kiếm. và nhấn vào nút Tìm kiếm. Admin có thể tìm kiếm thông tin user một cách nhanh chóng bằng cách tìm kiếm theo Tên hoặc email userHiển thị ra danh sách thông tin user cần tìm kiếmkết quả trả về từ server thất bại nhấn vào nút tìm kiếm không có kết quả.Thay đổi trạng thái của userMặc định trạng thái sẽ là Vô hiệu hóa.Khi nhấn vào nút vô hiệu hóa thì trạng thái vô hiệu hóa sẽ được kích hoạt tài khoản của user bị block khỏi hệ thống, user sẽ bị đăng xuất khi đang ở trạng thái đăng nhập và sẽ không thể đăng nhập cho đến khi được mở và hiện thông báo “tài khoản của bạn đã bị khóa”.Nếu user đang ở trạng thái bị Vô hiệu hóa, Admin có thể nhấn Hoạt động để tài khoản user hoạt động trở lại.Tài khoản user bị vô hiệu hóa không thể đăng nhập. Hoặc trở lại hoạt động bình thường.Không thể chuyển trạng thái, không bị vô hiệu hóa hoặc hoạt động.I.3.YÊU CẦU PHI CHỨC NĂNGI.3.1.Hiệu suấtSTTYêu cầu1Cho phép nhiều tài khoản truy cập vào hệ thống cùng một lúc (scale tự động dựa trên dịch vụ của Google Cloud)2Người dùng có thể truy cập đến website thông qua internet2Yêu cầu về thời gian chờ kết quả: hiển thị nhanh 1 trang web (thời gian tải 1 trang chậm nhất là 3s nếu đường truyền internet ổn định)3Tài nguyên sử dụng: Tiết kiệm tài nguyên,đảm bảo sử dụng hợp lý bộ nhớ4Yêu cầu linh động: Thao tác với phần mềm đơn giản,không quá phức tạpI.3.2.Tương thíchSTTYêu cầu1Chạy trên được nhiều trình duyệt (Google Chrome, Safari, Firefox, Cốc cốc, Opera)I.3.3.Tính ứng dụngSTTYêu cầu1Phù hợp với nhu cầu tìm kiếm dịch vụ du lịch của người dân du lịch2Nội dung bằng tiếng Anh nên phù hợp với người nước ngoài3Giao diện đơn giản + đẹp mắt với người sử dụngI.3.4.Tính tin cậySTTYêu cầu1Bảo trì định kỳ (trung bình 1 tuần 1 lần)2Nhiều chức năng đáp ứng 3Khả năng phục hồi sao lưu dữ liệuI.3.5.An toàn thông tinSTTYêu cầu1Bảo mật thông tin tốt2Toàn vẹn dữ liệu khi có sự cố xảy ra (mất nguồn điện)3Chức năng xác thực (các thay đổi dữ liệu đều được quản trị viên xác thực)II.THIẾT KẾII.1.Sơ đồ lớp II.2.Cơ sở dữ liệuII.2.1.Sơ đồ cơ sở dữ liệu II.2.2.Cấu trúc bảngII.2.2.1.Bảng UserBảng UserTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã thông tin người dùngInteger11Khóa chínhusernameTên đăng nhậpVarchar255Độc nhấtpasswordMật khẩuVarchar255Mã hóa BcryptemailEmailVarchar255fullnameHọ tên đầy đủVarchar255 tokenMã định danh người gọi APIVarchar 255 role_idMã phân quyềnInteger 11Khóa ngoạiII.2.2.2.Bảng RoleBảng RoleTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã phân quyềnInteger11Khóa chínhrole_nameTên quyềnVarchar255II.2.2.3.Bảng ServiceBảng ServiceTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã thông tin người dùngInteger11Khóa chínhnameTên dịch vụVarchar255street_addressĐịa chỉ đườngVarchar255extended_addressĐịa chỉ mở rộngVarchar255mobileSố điện thoạiVarchar255view_statusTrạng thái hiển thịVarchar255total_ratingTổng số lượt đánh giáIntegeravg_ratingĐiểm đánh giá trung bìnhRealcategory_idMã loại dịch vụInteger11Khoá ngoạiauthor_idMã người tạoInteger11Khoá ngoạiII.2.2.4.Bảng Service_CategoryBảng Service_CategoryTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã loại dịch vụInteger11Khóa chínhnameTên loại dịch vụVarchar255prop_table_nameTên bảng thuộc tínhVarchar255II.2.2.5.Bảng Service_HotelBảng Service_HotelTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã khách sạnInteger11Khóa chínhproperty_amenitiesDanh sách tiện nghi chỗ ở Varchar255priceGiá một đêmVarchar255service_idMã dịch vụInteger11Khoá ngoạiII.2.2.6.Bảng Service_RestaurantBảng Service_RestaurantTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã nhà hàngInteger11Khóa chínhfood_categoryDanh sách loại thức ăn được phục vụ tại nhà hàngVarchar255special_dietChế độ ăn đặc biệt được phục vụ tại nhà hàngVarchar255mealBữa ăn nhà hàng phục vụVarchar255service_idMã dịch vụInteger11Khoá ngoạiII.2.2.7.Bảng Service_AttractionBảng Service_AttractionTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã địa điểm du lịchInteger11Khóa chínhnoteChú thích về địa điểmVarchar255service_idMã dịch vụInteger11Khoá ngoạiII.2.2.8.Bảng Service_TransportationBảng Service_TransportationTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã phương tiện di chuyểnInteger11Khóa chínhwebsiteĐường dẫn liên kết đến website của dịch vụ vận chuyển Varchar255appĐường dẫn liên kết đến ứng dụng của dịch vụ vận chuyểnVarchar255service_idMã dịch vụInteger11Khoá ngoạiII.2.2.9.Bảng Service_ReviewBảng Service_ReviewTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã đánh giá dịch vụInteger11Khóa chínhtimeThời gian đánh giá dịch vụTimestampratingĐánh giá dịch vụVarchar255(15)commentBình luận về dịch vụVarchar255service_idMã dịch vụInteger11Khoá ngoạiauthor_idMã tác giảInteger11Khoá ngoạiII.2.2.10.Bảng Service_Related_KeysBảng Service_Related_KeysTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã bảng quan hệInteger11Khóa chínhkeyTừ khóa liên quan đến dịch vụTextservice_idMã dịch vụInteger11Khoá ngoạiII.2.2.11.Bảng Service_ImageBảng Service_ImageTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã đánh giá dịch vụInteger11Khóa chínhsrcDãy nhị phân biểu diễn hình ảnhblobservice_idMã dịch vụInteger11Khoá ngoạiauthor_idMã tác giảInteger11Khoá ngoạiII.2.2.12.Bảng Service_ReportBảng Service_ReportTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã đánh giá dịch vụInteger11Khóa chínhtimeThời gian tạo báo cáoTimestampreasonLý do báo cáoVarchar255statusTrạng thái xử lý báo cáoVarchar255service_idMã dịch vụInteger11Khoá ngoạiauthor_idMã tác giảInteger11Khoá ngoạimoderator_idMã quản trị viênInteger11Khoá ngoạiII.2.2.13.Bảng Service_RequestBảng Service_RequestTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã đánh giá dịch vụInteger11Khóa chínhtimeThời gian tạo yêu cầu cập nhậtTimestampstatusTrạng thái của yêu cầu cập nhậtVarchar255service_old_idMã dịch vụ liên kết đến dịch vụ đã tồn tại trong trường hợp cập nhật thông tin của dịch vụ đã cóInteger11Khoá ngoại(Nếu thêm dịch vụ mới thì bằng NULL)service_new_idMã dịch vụ liên kết đến dịch vụ mới trong trường hợp cập nhật và thêm mới.Integer11Khoá ngoạiauthor_idMã tác giảInteger11Khoá ngoạimoderator_idMã quản trị viênInteger11Khoá ngoạiII.2.2.14.Bảng Contact_FormBảng Contact_FormTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã form liên hệInteger11Khóa chínhtimeThời gian tạo form liên hệTimestampcontentNội dung liên hệVarchar255emailEmail người liên hệVarchar255nameTên người liên hệVarchar255II.2.2.15.Bảng BlogBảng BlogTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã blogInteger11Khóa chínhtitleTiêu đề của blogVarchar255overviewMô tả ngắn về blogVarchar255contentNội dung blogtexttimeThời gian tạo blogTimestampthumbnailHình ảnh đại diện của blogVarchar255author_idMã tác giảInteger11Khoá ngoạiII.2.2.16.Bảng Blog_FeedbackBảng Blog_FeedbackTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã blogInteger11Khóa chínhtimeThời gian tạo phản hồi TimestampcommentNội dung bình luậnVarchar255author_idMã tác giảInteger11Khoá ngoạiblog_idMã blogInteger11Khoá ngoạiII.2.2.17.Bảng Blog_ReportBảng Blog_ReportTên cộtGiải thíchKiểu dữ liệuMaxlengthGhi chúidMã báo cáo blogInteger11Khóa chínhtimeThời gian báo cáo blogTimestampreasonLý do báo cáoVarchar255statusTình trạng xử lý báo cáoVarchar255author_idMã người báo cáoInteger11Khoá ngoạiblog_idMã blogInteger11Khoá ngoạimoderator_id Mã quản trị viên xử lý báo cáoInteger11Khoá ngoạiIII.CÀI ĐẶTFrontend: HTML, CSS, JavaScript, JQuery, Bootstrap, React JSBackend: NodeJS, Express.jsDatabase: PostgreSQLServer: Google CloudIV.KIỂM THỬNoModule codePassFailUntestedNANumber of test cases1Đăng nhập700072Đăng ký11000113Đăng xuất100014Xem thông tin cá nhân500055Cập nhật thông tin cá nhân300036Tìm kiếm thông tin dịch vụ, địa điểm16000167Xem thông tin dịch vụ, địa điểm48000488Đánh giá dịch vụ, địa điểm12000129Cập nhật thông tin dịch vụ, địa điểm đã có trên hệ thống540005410Thêm thông tin dịch vụ, địa điểm mới540005411Xem blog130001312Viết blog mới4000413Báo cáo blog3000314Quản lý người dùng141415Hiển thị chi tiết service(admin)282816Hiển thị chi tiết blog (admin)3317Phê duyệt yêu cầu cập nhật dịch vụ, địa điểm sẵn có110001118Phê duyệt yêu cầu thêm dịch vụ, địa điểm mới110001119Xử lý báo cáo về dịch vụ, địa điểm111120Xử lý báo cáo về blog2221Xử lý phân trang cho service4444822Xử lý phân trang cho review1021223Xử lý phân trang cho blog10210Sub total373080381Test coverage97,90%Test successful coverage97,90%CHƯƠNG 3: KẾT QUẢ TRIỂN KHAI HỆ THỐNGI.XÁC THỰC NGƯỜI DÙNGI.1.Đăng nhập I.2.Xem thông tin cá nhân II.DỊCH VỤ, ĐỊA ĐIỂMII.1.Tìm kiếm dịch vụ, địa điểm II.2.Xem thông tin dịch vụ, địa điểm II.3.Đánh giá dịch vụ, địa điểm II.4.Yêu cầu cập nhật dịch vụ, địa điểmII.4.1.Cập nhật thông tin dịch vụ, địa điểm sẵn có II.4.2.Thêm dịch, địa điểm mới III.BLOGIII.1.Xem blog III.2.Báo cáo blog III.3.Viết blog mới IV.QUẢN LÝ NGƯỜI DÙNG V.PHÊ DUYỆT YÊU CẦUBÁO CÁOV.1.Phê duyệt yêu cầu cập nhậtthêm dịch vụ, địa điểm V.2.Xử lý báo cáo về dịch vụ, địa điểm  CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂNI.THUẬN LỢI VÀ KHÓ KHĂNI.1.Thuận lợiCác thành viên đều nắm khá rõ quy trình phát triển phần mềmCó nhiều công cụ và thư viện hỗ trợ cho việc quản lý công việc, xây dựng các chức năng và deploy sản phẩm.Các thành viên đều có kiến thức chuyên môn vững vàng, tinh thần trách nhiệm tốt và luôn hoàn thành công việc.I.2.Khó khănChưa được tiếp xúc với môi trường thực tế nên hệ thống có thể chưa đáp ứng được tất cả các yêu cầu phù hợp thực tế.Nghiệp vụ của hệ thống khá phức tạp, đặc biệt là trong việc tối ưu hóa các chức năng.II.THÀNH QUẢ ĐẠT ĐƯỢCChất lượng sản phẩm đáp ứng được yêu cầu đề raDeploy thành công sản phẩm.Thực hiện đầy đủ quy trình phát triển phần mềmNâng cao kỹ năng làm việc nhómIII.HƯỚNG PHÁT TRIỂNĐưa sản phẩm đến người dùng.Liên tục nhận các đánh giá và phản hồi từ người dùng để hoàn thiện sản phẩm ngày càng tốt hơn.Quản lý và bảo dưỡng sản phẩm thường xuyên.

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN - BÁO CÁO ĐỒ ÁN CÔNG NGHỆ PHẦN MỀM ĐỀ TÀI Xây dựng Website hỗ trợ việc tìm kiếm địa điểm vui chơi, du lịch chia sẻ trải nghiệm du lịch thành phố Đà Nẵng GVHD: TS Lê Thị Mỹ Hạnh Nhóm: 16Nh14 SVTH: Nguyễn Hữu Hồng Hưng Nguyễn Trần Hậu Đoàn Văn Khánh Lê Trần Hồng Phúc Nguyễn Phước Phi Võ Xuân Hùng Đà Nẵng, 2019 MỤC LỤC Đồ án chuyên ngành Công nghệ phần mềm Đồ án chun ngành Cơng nghệ phần mềm LỜI NĨI ĐẦU Đồ án chuyên ngành công nghệ phần mềm đồ án quan trọng sinh viên chuyên ngành công nghệ phần mềm Sau học môn học phần mềm cơng nghệ phần mềm, phân tích thiết kế hướng đối tượng nói phần quan trọng để sinh viên hiểu rõ dự án phần mềm Đồ án cột mốc mà kỹ khả lập trình sinh viên lại lên bước mảng kiến thức xuất môn học, sinh viên áp dụng vào dự án Và nhóm em xin tỏ lòng cảm ơn tới cô Lê Thị Mỹ Hạnh – giảng viên khoa Công nghệ thông tin, Trường Đại học Bách Khoa, Đại học Đà Nẵng trực tiếp hướng dẫn em hồn thành đề tài Trong q trình làm khó tránh khỏi thiếu sót, kính mong nhận ý góp ý q thầy để đề tài trở nên hồn thiện Nhóm em xin chân thành cảm ơn! Đồ án chuyên ngành Công nghệ phần mềm PHÂN CÔNG CÔNG VIỆC STT Thành viên Nguyễn Hữu Hồng Hưng Nội dung cơng việc - Phân tích thiết kế database - Phân tích thiết kế toàn hệ thống - Crawl liệu - Viết báo cáo - Kiểm tra tiến độ thành viên nhóm Phân tích thiết kế database - Phân tích thiết kế hệ thống API cho hệ thống Đoàn Văn Khánh - Review phần Backend cho toàn hệ thống - Deploy website quản lý cloud server Phân tích thiết kế hệ thống API cho hệ thống Nguyễn Trần Hậu - Phân tích thiết kế sơ đồ lớp cho hệ thống - Coding phần Backend cho toàn hệ thống - Review phần frontend trang admin Phân tích thiết kế UX/UI cho trang blog, service quản lý Nguyễn Phước Phi - Coding phần frontend cho blog - Review phần frontend cho service - Thiết kế testcase cho trang service Phân tích thiết kế UX/UI cho trang blog, service Lê Trần Hồng Phúc - Coding phần frontend cho service - Review phần frontend cho blog Thiết kế testcase cho trang blog - Phân tích thiết kế UX/UI cho trang quản lý - Võ Xuân Hùng - Coding phần frontend cho admin - Thiết kế testcase cho trang admin Đồ án chuyên ngành Công nghệ phần mềm CHƯƠNG 1: GIỚI THIỆU HỆ THỐNG I MỤC ĐÍCH - Mục đích hệ thống hỗ trợ người dùng tìm kiếm trải nghiệm du lịch Đà Nẵng bao gồm địa điểm ăn uống, vui chơi giải trí thành phố Đà Nẵng - Hệ thống hỗ trợ cho phép người dùng tìm kiếm đánh giá địa điểm, dịch vụ có sẵn hệ thống đóng góp địa điểm, dịch vụ vào hệ thống - Hệ thống cho phép người dùng đăng tải viết trải nghiệm du lịch để chia sẻ với cộng đồng II PHẠM VI HỆ THỐNG - Hệ thống website gợi ý trải nghiệm, địa điểm vui chơi, du lịch thành phố Đà Nẵng chạy web giúp việc tìm kiếm địa điểm ăn uống, vui chơi, giải trí tiến hành cách nhanh chóng tiện lợi Hệ thống đời nhằm đáp ứng nhu cầu du lịch thành phố Đà Nẵng ngày tăng cao, nhằm giúp khách du lịch người dân địa phương dễ dàng lựa chọn dịch vụ phù hợp - Hệ thống phục vụ cho đối tượng user chính: Người du lịch (traveler) Người điều hành (moderator) Quản trị viên (admin) - Website cho phép người dùng tìm kiếm dịch vụ địa điểm theo từ khoá (tên quán, địa chỉ, số điện thoại, mô tả) theo loại (nhà hàng, quán cà phê, chỗ lưu trú, phương tiện di chuyển) Bên cạnh đó, người dùng đánh giá phản hồi dịch vụ địa điểm có hệ thống Ngồi hệ thống cho phép người dùng cập nhật thông tin liên quan đến dịch vụ địa điểm (thêm địa điểm chưa có hệ thống, sửa thơng tin dịch vụ có hệ thống) quản lý admin moderator Cuối cùng, hệ thống cho phép user chia sẻ khám phá trải nghiệm Đà Nẵng nhiều góc nhìn khác thơng qua blog Đồ án chuyên ngành Công nghệ phần mềm CHƯƠNG 2: XÂY DỰNG HỆ THỐNG I PHÂN TÍCH YÊU CẦU I.1 TỔNG QUAN I.1.1 Tác nhân Tác nhân Người du lịch (Traveler) Mơ tả - Có quyền đăng nhập, đăng ký, chỉnh sửa xem chi tiết thơng tin cá nhân - Có quyền tìm kiếm dịch vụ địa điểm hệ thống từ khóa loại dịch vụ - Có quyền xem, đánh giá, đề nghị cập nhật thêm dịch vụ địa điểm hệ thống - Có quyền xem bình luận blog chia sẻ trải nghiệm Đà Nẵng người dùng khác - Có quyền viết blog để chia sẻ trải nghiệm - Có quyền báo cáo dịch vụ, điểm điểm viết blog không phù hợp Người trung gian (Moderator) - Có quyền đăng nhập, chỉnh sửa, xem chi tiết thơng tin cá nhân - Có quyền tương tự user - Có quyền phê duyệt đề nghị cập nhật thêm user - Có quyền xử lý báo cáo từ user (xoá, chặn) Quản trị viên (Admin) - Có quyền tương tự Moderator - Có quyền phân quyền cho user Moderator - Có quyền chặn (block) user, Moderator Đồ án chuyên ngành Công nghệ phần mềm I.1.2 Sơ đồ ca sử dụng I.1.2.1 Sơ đồ tổng quát I.1.2.2 Chức xác thực người dùng Đồ án chuyên ngành Công nghệ phần mềm I.1.2.3 Chức tìm kiếm dịch vụ/ địa điểm I.1.2.4 Chức đánh giá dịch vụ/ địa điểm I.1.2.5 Chức cập nhật dịch vụ/ địa điểm Đồ án chuyên ngành Công nghệ phần mềm I.1.2.6 Chức viết blog I.1.2.7 Chức quản lý dịch vụ Đồ án chuyên ngành Công nghệ phần mềm I.1.2.8 Chức quản lý blog I.1.2.9 Chức quản lý người dùng 10 Đồ án chuyên ngành Công nghệ phần mềm moderator_id Mã quản trị viên Integer II.2.2.14 11 Khoá ngoại Bảng Contact_Form Bảng Contact_Form Tên cột Giải thích Kiểu liệu Maxlength Ghi id Mã form liên hệ Integer time Thời gian tạo Timestamp form liên hệ content Nội dung liên hệ Varchar 255 email Email người liên Varchar hệ 255 name Tên người liên Varchar hệ 255 II.2.2.15 11 Khóa Bảng Blog Bảng Blog Tên cột Giải thích Kiểu liệu Maxlength Ghi id Mã blog Integer title Tiêu đề blog Varchar 255 overview Mô tả ngắn Varchar blog 255 content Nội dung blog time Thời gian tạo Timestamp blog thumbnail Hình ảnh 11 Khóa text đại Varchar 255 47 Đồ án chuyên ngành Công nghệ phần mềm diện blog author_id Mã tác giả II.2.2.16 Integer 11 Khoá ngoại Bảng Blog_Feedback Bảng Blog_Feedback Tên cột Giải thích Kiểu liệu Maxlength Ghi id Mã blog Integer time Thời gian tạo Timestamp phản hồi comment Nội dung bình Varchar luận 255 author_id Mã tác giả Integer 11 Khoá ngoại blog_id Mã blog Integer 11 Khố ngoại II.2.2.17 11 Khóa Bảng Blog_Report Bảng Blog_Report Tên cột Giải thích Kiểu liệu Maxlength Ghi id Mã báo cáo blog Integer time Thời gian báo Timestamp cáo blog reason Lý báo cáo Varchar 255 status Tình trạng xử lý Varchar báo cáo 255 author_id Mã người báo Integer cáo 11 11 Khóa Khố ngoại 48 Đồ án chun ngành Cơng nghệ phần mềm blog_id Mã blog Integer 11 Khoá ngoại moderator_id Mã quản trị viên Integer xử lý báo cáo 11 Khoá ngoại III IV CÀI ĐẶT - Front-end: HTML, CSS, JavaScript, JQuery, Bootstrap, React JS - Back-end: NodeJS, Express.js - Database: PostgreSQL - Server: Google Cloud KIỂM THỬ Fai Unteste N/ No Module code Pass l d A Number of test cases Đăng nhập 0 Đăng ký 11 0 11 Đăng xuất 0 Xem thông tin cá nhân 0 0 16 0 16 48 0 48 Cập nhật thông tin cá nhân Tìm kiếm thơng tin dịch vụ, địa điểm Xem thông tin dịch vụ, địa điểm Đánh giá dịch vụ, địa điểm 12 0 12 Cập nhật thông tin 54 0 54 dịch vụ, địa điểm 49 Đồ án chuyên ngành Công nghệ phần mềm có hệ thống Thêm thơng tin dịch 10 vụ, địa điểm 54 0 54 11 Xem blog 13 0 13 12 Viết blog 0 13 Báo cáo blog 0 14 Quản lý người dùng 14 14 28 28 3 Hiển 15 thị chi tiết service(admin) Hiển thị chi tiết blog 16 (admin) Phê duyệt yêu cầu cập nhật dịch vụ, địa điểm 17 sẵn có 11 0 11 11 0 11 Phê duyệt yêu cầu thêm dịch vụ, địa điểm 18 Xử lý báo cáo dịch 19 vụ, địa điểm 11 11 20 Xử lý báo cáo blog 2 Xử lý phân trang cho 21 service 44 48 10 12 10 10 Xử lý phân trang cho 22 review Xử lý phân trang cho 23 blog 50 Đồ án chuyên ngành Công nghệ phần mềm Sub total 373 Test coverage 97,90% Test successful coverage 97,90% 381 CHƯƠNG 3: KẾT QUẢ TRIỂN KHAI HỆ THỐNG I XÁC THỰC NGƯỜI DÙNG I.1 Đăng nhập 51 Đồ án chuyên ngành Công nghệ phần mềm I.2 Xem thông tin cá nhân II DỊCH VỤ, ĐỊA ĐIỂM II.1 Tìm kiếm dịch vụ, địa điểm 52 Đồ án chuyên ngành Công nghệ phần mềm II.2 Xem thông tin dịch vụ, địa điểm 53 Đồ án chuyên ngành Công nghệ phần mềm II.3 Đánh giá dịch vụ, địa điểm II.4 Yêu cầu cập nhật dịch vụ, địa điểm II.4.1 Cập nhật thông tin dịch vụ, địa điểm sẵn có 54 Đồ án chuyên ngành Công nghệ phần mềm II.4.2 Thêm dịch, địa điểm 55 Đồ án chuyên ngành Công nghệ phần mềm III BLOG III.1 Xem blog 56 Đồ án chuyên ngành Công nghệ phần mềm III.2 Báo cáo blog 57 Đồ án chuyên ngành Công nghệ phần mềm III.3 Viết blog 58 Đồ án chuyên ngành Công nghệ phần mềm IV QUẢN LÝ NGƯỜI DÙNG 59 Đồ án chuyên ngành Công nghệ phần mềm V PHÊ DUYỆT YÊU CẦU/BÁO CÁO V.1 Phê duyệt yêu cầu cập nhật/thêm dịch vụ, địa điểm V.2 Xử lý báo cáo dịch vụ, địa điểm 60 Đồ án chuyên ngành Công nghệ phần mềm CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN I THUẬN LỢI VÀ KHÓ KHĂN I.1 Thuận lợi - Các thành viên nắm rõ quy trình phát triển phần mềm - Có nhiều cơng cụ thư viện hỗ trợ cho việc quản lý công việc, xây dựng chức deploy sản phẩm - Các thành viên có kiến thức chun mơn vững vàng, tinh thần trách nhiệm tốt ln hồn thành cơng việc I.2 Khó khăn - Chưa tiếp xúc với môi trường thực tế nên hệ thống chưa đáp ứng tất yêu cầu phù hợp thực tế - Nghiệp vụ hệ thống phức tạp, đặc biệt việc tối ưu hóa chức II III THÀNH QUẢ ĐẠT ĐƯỢC - Chất lượng sản phẩm đáp ứng yêu cầu đề - Deploy thành cơng sản phẩm - Thực đầy đủ quy trình phát triển phần mềm - Nâng cao kỹ làm việc nhóm HƯỚNG PHÁT TRIỂN - Đưa sản phẩm đến người dùng - Liên tục nhận đánh giá phản hồi từ người dùng để hoàn thiện sản phẩm ngày tốt - Quản lý bảo dưỡng sản phẩm thường xuyên 61 .. .Đồ án chuyên ngành Công nghệ phần mềm Đồ án chun ngành Cơng nghệ phần mềm LỜI NĨI ĐẦU Đồ án chuyên ngành công nghệ phần mềm đồ án quan trọng sinh viên chuyên ngành công nghệ phần mềm Sau... (block) user, Moderator Đồ án chuyên ngành Công nghệ phần mềm I.1.2 Sơ đồ ca sử dụng I.1.2.1 Sơ đồ tổng quát I.1.2.2 Chức xác thực người dùng Đồ án chuyên ngành Công nghệ phần mềm I.1.2.3 Chức tìm... Access Đánh giá dịch vụ, địa điểm Đánh giá địa điểm, dịch vụ Cho phép user đánh giá địa điểm, dịch vụ user nhấn vào nút đánh giá trang địa điểm, dịch vụ 20 Đồ án chuyên ngành Công nghệ phần mềm Screen

Ngày đăng: 04/01/2020, 20:31

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan