Đồ Án Tốt Nghiệp Công Nghệ Thông Tin: Hướng Dẫn Xây Dựng Website Mạng Xã Hội Social Network

Đồ án tốt nghiệp công nghệ thông tin xây dựng website mạng xã hội social network, hướng dẫn chi tiết từ thiết kế đến triển khai, phù hợp cho sinh viên IT.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2024

128
13
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: Giới thiệu về đề tài

1.1. Lý do chọn đề tài

1.2. Mục tiêu của đề tài

1.3. Đối tượng nghiên cứu

1.4. Phạm vi nghiên cứu

1.5. Ý nghĩa khoa học và thực tiễn

2. CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG

2.1. Các ứng dụng tương tự đề tài và ưu nhược điểm của các ứng dụng đó

2.2. Yêu cầu bài toán của đề tài

3. CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG

3.1. Xác định yêu cầu

3.2. Yêu cầu chức năng

3.3. Yêu cầu phi chức năng

3.4. Định hướng phát triển

3.5. Mô hình hóa yêu cầu

3.6. Sơ đồ phân rã chức năng

3.7. Lược đồ usecase tổng quan

3.8. Lược đồ usecase chi tiết

3.9. Phân tích UseCase và Sequence

3.10. Thiết kế cơ sở dữ liệu

4. CHƯƠNG 4: KIẾN TRÚC HỆ THỐNG VÀ CÁC CÔNG NGHỆ SỬ DỤNG

4.1. Kiến trúc chung của hệ thống

4.2. Các công nghệ sử dụng

4.3. Google Cloud VM

4.4. Nginx

5. CHƯƠNG 5: THIẾT KẾ GIAO DIỆN

5.1. Trang đăng nhập

5.2. Trang quên mật khẩu

5.3. Trang đặt lại mật khẩu

5.4. Trang bạn bè

5.4.1. Tab bạn bè

5.4.2. Tab lời mời kết bạn

5.4.3. Tab gợi ý kết bạn

5.4.4. Tab tất cả

5.5. Trang nhắn tin

5.5.1. Tab bài viết

5.5.2. Tab bạn bè

5.5.3. Tab thông tin

5.5.4. Tab bộ sưu tập

5.5.5. Tab hoạt động (Chỉ hiện ở trang cá nhân của bản thân)

5.5.6. Tab bảo mật (chỉ hiện ở trang cá nhân của bản thân)

5.6. Trang đăng nhập Admin

5.7. Trang chủ Admin

5.8. Trang danh sách người dùng

5.8.1. Trang chi tiết người dùng

5.8.1.1. Tab thông tin
5.8.1.2. Tab lịch sử hoạt động

5.9. Trang danh sách quản trị viên

5.10. Trang danh sách báo cáo

5.10.1. Trang chi tiết báo cáo

5.11. Trang danh sách

5.11.1. Trang chi tiết danh sách

6. CHƯƠNG 6: KIỂM THỬ PHẦN MỀM

6.1. Cài đặt hệ thống

6.2. Truy cập bằng web đã được deploy

6.3. Yêu cầu hệ thống

6.4. Cài đặt phần mềm

6.5. Kế hoạch kiểm thử

6.6. Kết quả kiểm thử

7. CHƯƠNG 7: KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN

7.1. Kết quả đạt được

7.2. Nhược điểm

7.3. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Giới thiệu về đề tài

Đề tài 'Đồ Án Tốt Nghiệp CNTT: Xây Dựng Website Mạng Xã Hội Social Network' được thực hiện nhằm phát triển một nền tảng mạng xã hội mới, phục vụ nhu cầu kết nối và chia sẻ thông tin của người dùng. Mạng xã hội hiện nay đã trở thành một phần không thể thiếu trong cuộc sống hàng ngày, giúp người dùng duy trì mối quan hệ và cập nhật thông tin một cách nhanh chóng. Việc xây dựng một website mạng xã hội không chỉ là một thử thách kỹ thuật mà còn là cơ hội để nhóm nghiên cứu và áp dụng các công nghệ mới như NodeJS, Express, và MongoDB. Mục tiêu chính là tạo ra một giao diện thân thiện, dễ sử dụng, và đáp ứng được các yêu cầu cơ bản của một mạng xã hội hiện đại.

1.1. Lý do chọn đề tài

Mạng xã hội đã trở thành một phần quan trọng trong cuộc sống hiện đại, giúp người dùng kết nối và chia sẻ thông tin. Việc phát triển một mạng xã hội mới không chỉ đáp ứng nhu cầu của người dùng mà còn tạo ra một không gian giao lưu, học hỏi và phát triển. Nhóm đã phân tích các mạng xã hội hiện có để tìm ra những điểm mạnh và yếu, từ đó đưa ra ý tưởng cho một nền tảng mới, thân thiện và phù hợp với người dùng Việt Nam.

1.2. Mục tiêu của đề tài

Mục tiêu của đề tài là phát triển một website mạng xã hội với các tính năng như đăng hình ảnh, bài viết, bình luận và nhắn tin. Website sẽ được thiết kế với giao diện hấp dẫn, dễ sử dụng, nhằm đáp ứng nhu cầu kết nối và chia sẻ thông tin của người dùng. Các chức năng như tìm kiếm, tạo và tương tác bài viết sẽ được tích hợp để tạo ra một trải nghiệm người dùng tốt nhất.

1.3. Đối tượng nghiên cứu

Đối tượng nghiên cứu của đề tài bao gồm các chức năng cơ bản của một mạng xã hội như đăng ký, đăng nhập, đăng bài, bình luận và nhắn tin. Nhóm sẽ áp dụng các công nghệ như NodeJS, ExpressJS, và MongoDB để xây dựng hệ thống, đồng thời sử dụng Socket để phát triển các tính năng realtime, giúp người dùng có trải nghiệm tốt hơn.

1.4. Phạm vi nghiên cứu

Phạm vi nghiên cứu tập trung vào các chức năng cơ bản của một mạng xã hội, bao gồm tương tác giữa người dùng, quản lý người dùng và quản lý nội dung. Nhóm sẽ phát triển các tính năng như nhắn tin, kết bạn, đăng bài viết và các tương tác xã hội khác, nhằm tạo ra một môi trường kết nối và giao tiếp dễ dàng cho người dùng.

1.5. Ý nghĩa khoa học và thực tiễn

Đề tài không chỉ có tính ứng dụng cao mà còn góp phần vào sự phát triển của mạng xã hội tại Việt Nam. Nhóm đã áp dụng nhiều công nghệ mới trong quá trình thực hiện, từ đó nâng cao kỹ năng và kiến thức cho bản thân. Đề tài này hy vọng sẽ là tài liệu hữu ích cho các sinh viên và những ai quan tâm đến lĩnh vực công nghệ thông tin.

II. KHẢO SÁT HIỆN TRẠNG

Khảo sát hiện trạng là bước quan trọng trong quá trình phát triển website mạng xã hội. Nhóm đã tiến hành phân tích các ứng dụng tương tự để hiểu rõ hơn về ưu nhược điểm của chúng. Việc này giúp nhóm xác định được các yêu cầu cần thiết cho hệ thống, từ đó đưa ra giải pháp tối ưu cho website. Các ứng dụng như Facebook, Zalo, và Instagram đã được xem xét kỹ lưỡng. Mỗi ứng dụng đều có những tính năng nổi bật và hạn chế riêng, từ đó nhóm có thể học hỏi và cải tiến cho sản phẩm của mình.

2.1. Các ứng dụng tương tự đề tài và ưu nhược điểm của chúng

Các ứng dụng mạng xã hội hiện nay như Facebook và Zalo đều có những ưu điểm nổi bật như giao diện thân thiện, tính năng phong phú và khả năng kết nối người dùng nhanh chóng. Tuy nhiên, chúng cũng gặp phải một số vấn đề như bảo mật thông tin và quản lý nội dung không hiệu quả. Nhóm đã phân tích những điểm này để tìm ra giải pháp cho website của mình, nhằm tạo ra một nền tảng an toàn và hiệu quả hơn cho người dùng.

2.2. Yêu cầu bài toán của đề tài

Yêu cầu bài toán của đề tài bao gồm việc phát triển một hệ thống mạng xã hội với các tính năng cơ bản như đăng ký, đăng nhập, đăng bài, bình luận và nhắn tin. Hệ thống cần phải đảm bảo tính bảo mật, khả năng mở rộng và hiệu suất cao. Nhóm sẽ sử dụng các công nghệ hiện đại để đáp ứng các yêu cầu này, từ đó tạo ra một sản phẩm chất lượng cho người dùng.

III. PHÂN TÍCH THIẾT KẾ HỆ THỐNG

Phân tích thiết kế hệ thống là bước quan trọng để đảm bảo rằng tất cả các yêu cầu của người dùng được đáp ứng. Nhóm sẽ xác định các yêu cầu chức năng và phi chức năng, từ đó mô hình hóa yêu cầu và thiết kế cơ sở dữ liệu. Việc này giúp đảm bảo rằng hệ thống hoạt động hiệu quả và đáp ứng được nhu cầu của người dùng.

3.1. Xác định yêu cầu

Xác định yêu cầu là bước đầu tiên trong quá trình thiết kế hệ thống. Nhóm sẽ thu thập thông tin từ người dùng để hiểu rõ hơn về nhu cầu và mong muốn của họ. Các yêu cầu này sẽ được phân loại thành yêu cầu chức năng và phi chức năng, từ đó giúp nhóm có cái nhìn tổng quan về hệ thống cần phát triển.

3.2. Mô hình hóa yêu cầu

Mô hình hóa yêu cầu giúp nhóm hình dung rõ hơn về cách thức hoạt động của hệ thống. Nhóm sẽ sử dụng các công cụ như sơ đồ use case và sơ đồ phân rã chức năng để mô tả các tương tác giữa người dùng và hệ thống. Điều này không chỉ giúp nhóm hiểu rõ hơn về yêu cầu mà còn tạo điều kiện thuận lợi cho việc phát triển hệ thống sau này.

3.3. Thiết kế cơ sở dữ liệu

Thiết kế cơ sở dữ liệu là một phần quan trọng trong quá trình phát triển hệ thống. Nhóm sẽ xác định các bảng dữ liệu cần thiết và mối quan hệ giữa chúng. Việc này giúp đảm bảo rằng dữ liệu được lưu trữ một cách hiệu quả và dễ dàng truy xuất. Nhóm sẽ sử dụng MongoDB để lưu trữ dữ liệu người dùng, từ đó tạo ra một hệ thống linh hoạt và mạnh mẽ.

21/02/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1. Giới thiệu về đề tài Ngày nay mạng xã hội là một công cụ quan trọng và vô cùng hữu ích cho con người chúng ta. Nó giúp chúng ta cập nhật thông tin một cách liên tục, nhanh chóng và tiện lợi. Không những thế nó còn giúp chúng ta liên lạc với nhau.

Và với điều đó nhóm đã xây dựng một website mạng xã hội Social Network nhằm tạo nên một trải nghiệm mới lạ và thú vị. Website này cho ta kết nối đến mọi người internet cũng như chia sẻ các nội dung của mình và người khác trên đó ngoài ra nó còn là một nền tảng mạng xã hội nơi ta có thể giao lưu học hỏi và phát triển. Lý do chọn đề tài Công nghệ nói chung và công nghệ thông tin nói riêng là lĩnh vực đang phát triển vô cùng nhanh chóng nó còn có ảnh hưởng to lớn đến nhiều lĩnh vực trong cuộc sống hiện nay. Nó giúp chúng ta kết nối, học tập, giải trí một cách tiện lợi và thú vị hơn.

Và một thứ nổi trội của công nghệ thông tin trong thời kỳ của chúng ta đó chính là mạng xã hội. Mạng xã hội là một nơi cho phép chúng ta chia sẻ và tương tác với những người khác trên không gian mạng. Nó đặc biệt quan trọng trong xã hội ngày này nó giúp ta duy trì các mối quan hệ với gia đình, bạn bè, không những thế nó còn là nguồn thông tin vô cùng đa dạng về các lĩnh vực trên đời sống. Ngoài ra nó còn là nơi để ta thể hiện cá tính, sở thích, và sáng tạo của bản thân.

Hiện nay thì có vô vàn mạng xã hội lớn và nổi tiếng trên thế giới như Facebook, Twitter, Instagram, … Nhưng nhóm vẫn muốn thử sức bản thân để tạo ra một mạng xã hội mới với mục tiêu là tạo nên một mạng xã hội thân thiện với người dùng Việt Nam. Sau khi phân tích ưu và nhược điểm của các mạng xã hội khác để phân tích ra các yêu cầu và tính năng cho website của nhóm, thì nhóm hi vọng website sẽ là một nơi bổ ích và thú vị cho mọi người 1. Mục tiêu của đề tài Mục tiêu của nhóm là phát triển được một website mạng xã hội mới với mục đích kết nối mọi người với nhau với các tính năng như đăng hình ảnh, bài viết, bình luận 17 và chia sẻ chúng với nhau ngoài ra còn các tính năng như nhắn tin hay kết bạn. Website được thiết kế với giao diện hấp dẫn và dễ sử dụng, nhằm đáp ứng được các yêu cầu cơ bản của một mạng xã hội hiện đại.

Các mục tiêu của nhóm bao gồm: - Tạo được một website với giao diện trực quan và thân thiện với người dùng. - Các chức năng như đăng hình ảnh, bài viết, bình luận, nhắn tin, kết bạn, … - Đáp ứng được các yêu cầu của một mạng xã hội như tìm kiếm, tạo,tương tác và chia sẻ bài viết, nhắn tin riêng hay nhóm. - Có khả năng chịu tải với lượng người dùng có khả năng sẽ ngày càng mở rộng trong tương lai. Tóm gọn lại, mục tiêu của nhóm là tạo ra được một mạng xã hội dễ dàng sử dụng đầy đủ tính năng cơ bản cho người dùng trên nó.

Đối tượng nghiên cứu Để xây dựng website này thì nhóm hướng đến mục tiêu tạo ra một website cho mọi người tương tác, chia sẻ và thể hiện sự sáng tạo của bản thân. Đối tượng nghiên cứu của nhóm bao gồm những điều dưới đây: - Các chức năng cơ bản của một mạng xã hội, như đăng ký, đăng nhập, đăng bài, bình luận, thích, theo dõi, tìm kiếm, nhắn tin, thông báo,. - Công nghệ NoSQL nhằm lưu trữ data một cách linh hoạt và hiệu quả - Công nghệ NodeJS, ExpressJS để thiết kế và triển khai hệ thống API cho phép truy cập thông tin một cách nhanh chóng - Công nghệ NextJS giúp xây dựng giao diện người dùng thân thiện và trực quan - Công nghệ Socket giúp xây dụng realtime giữa 2 phần API và client cho các đối tượng theo thời gian thực như thông báo, tin nhắn, … - Công nghệ Redis để tối ưu hóa hiệu xuất của hệ thống cũng như trong việc quản lý dữ liệu cache 1. Phạm vi nghiên cứu Nhóm tập trung vào các chức năng cơ bản nhất của một mạng xã hội bao gồm: - Tương tác giữa người dùng: Tập trung vào vấn để phát triển giao diện và các tính năng như nhắn tin, kết bạn, đăng bài viết và các tương tác xã hội 18 khác.

Mục tiêu để tạo ra ra một môi trường kết nối, giao tiếp một cách dễ dàng và linh hoạt cho người dùng - Quản lý người dùng: Thực hiện các chức năng quản lý người dùng như đăng ký, đăng nhập, quên/đổi mật khẩu. Với mong muốn xác thực tài khoản và quản lý người dùng một cách hiệu quả. - Quản lý nội dung: Triển khai các chức năng đăng bài viết, bình luận và tương tác với bài viết. Mục tiêu mong muốn là người dùng có thể chia sẻ nội dung, tương tác và thể hiện cá tình của một cách tiện lợi.

Với những vấn đề đó thì nhóm sẽ sẽ tập trung phát triển các chức năng cơ bản của một mạng xã hội, từ quản lý người dùng, tương tác xã hội và quản lý nội dung. Mục tiêu là xây dựng được một mạng xã hội với đầy đủ các tính năng, tối ưu, đáp ứng được đầy đủ yêu cầu của người dùng. Ý nghĩa khoa học và thực tiễn Đề tài “Xây dựng website mạng xã hội social network” của nhóm là một đề tài thú vị và có tính ứng dụng cao. Là một nền tảng cho phép người dùng chia sẻ, trao đổi trò chuyện với nhau.

Múc tiêu của đề tài này là xây dựng thành công một hệ thống mạng xã hội đặc biệt, hiện đại, an toàn, tiện lợi và thân thiện với người dùng.Và để thực hiện đề tài, thì nhóm đã tìm hiểu và áp dụng được nhiều công nghệ mới như: NodeJS, MongoDB, NextJS, Socket, … Trong quá trình thực hiện thì nhóm đã được rèn luyện được nhiều kỹ năng cũng như học hỏi được nhiều kiến thức mới, đặc biệt là các công nghệ mới thịnh hành hiện nay. Nhóm mong đề tài của mình sẽ góp phần vào sự phát triển của mạng xã hội, cũng như làm tư liệu hữu ích giúp nâng cao tinh thần nghiên cứu và sáng tạo của sinh viên. KHẢO SÁT HIỆN TRẠNG 2. Các ứng dụng tương tự đề tài và ưu nhược điểm của các ứng dụng đó 2.

Giao diện tổng quan Zalo Ưu điểm: - Là một trong những ứng dụng liên lạc phổ biến nhất hiện nay tại Việt Nam, dễ dàng sử dụng cho cả người lớn tuổi. - Có thể tìm kiếm bạn bè qua số điện thoại hay QR. - Chỉ có thể xem các bài đăng khi đã là bạn bè nên tính bảo mật và riêng tư rất cao. Tính năng chia sẻ QR trên Zalo Nhược điểm: - Zalo chỉ tập chung vào chức năng nghe gọi nhắn tin hơn là một mạng xã hội kết nối mọi người với nhau.

- Chức năng sao lưu của Zalo phải thực hiện thủ công nên dễ mất thông tin và hình ảnh khi đồng bộ qua các thiết bị khác. - Hiện nay một số chức năng của zalo đã tình phí. Zing Me (12 Triệu người dùng) Zing Me là mạng xã hội do VNG phát triển, tập trung vào các dịch vụ giải trí và cộng đồng game thủ. Giao diện tổng quan Zing me Ưu điểm: - Zing Me cung cấp nhiều nội dung giải trí như âm nhạc, video và trò chơi trực tuyến, thu hút người dùng trẻ.

- Ứng dụng này đặc biệt phổ biến trong cộng đồng game thủ Việt Nam, cung cấp nền tảng để kết nối và chia sẻ kinh nghiệm chơi game. - Zing Me tích hợp các dịch vụ khác của VNG như Zing Mp3, Zing TV, giúp người dùng truy cập dễ dàng vào nhiều loại hình giải trí. Hình ảnh trò chơi trên Zing me Nhược điểm: 22 - Một số người dùng cho rằng giao diện của Zing Me có thể phức tạp và khó sử dụng đối với người mới. - Có những lo ngại về bảo mật thông tin cá nhân của người dùng trên nền tảng này.vn là một mạng xã hội tập trung vào công nghệ và đánh giá sản phẩm công nghệ, được phát triển tại Việt Nam.

Tổng quan giao diện tinhte Ưu điểm: - Tinhte.vn là nơi lý tưởng cho những người yêu thích công nghệ, cung cấp thông tin chi tiết và đánh giá về các sản phẩm công nghệ mới nhất. - Cộng đồng người dùng của Tinhte.vn rất chuyên sâu, chia sẻ kinh nghiệm và kiến thức về công nghệ, giúp người dùng có thể học hỏi lẫn nhau.vn thường xuyên cập nhật tin tức công nghệ, giúp người dùng nắm bắt nhanh chóng các xu hướng và sản phẩm mới. Bài viết về chủ để chia sẻ trên tinh te Nhược điểm: - Do tập trung vào lĩnh vực công nghệ, Tinhte.vn không hấp dẫn đối với những người không quan tâm đến công nghệ. - Giao diện khó sử dụng và không thân thiện với người dùng.

Yêu cầu bài toán của đề tài - Chú trọng vào trải nghiệm của người dùng, xây dựng giao diện dễ nhìn thân thiện, dễ sử dụng và có đầy đủ các tính năng như chia sẻ ảnh, video, trò chuyện nhóm, các tương tác bài viết, … - Bảo mật thông tin người dùng, không hiển thị quá nhiều thông tin của người dùng lên mạng xã hội, cho phép tùy chỉnh quyền riêng tư của các bài đăng và thông tin cá nhân. PHÂN TÍCH THIẾT KẾ HỆ THỐNG 3. Xác định yêu cầu 3. Yêu cầu chức năng Mục tiêu của đề tài là xây dựng ra được một website mạng xã hội nơi mà người dùng có thể kết nối với nhau.

Và nó sẽ có các chức năng sau: - Quản lý tài khoản: Người dùng có thể đăng nhập, đăng ký, đặt lại mật khẩu nếu quên hay là còn có thể sửa mật khẩu hay thông tin cá nhân và các quyền riêng tư của bản thân - Quản lý bạn bè: Người dùng có thể gửi, chấp thuận hay từ chối các yêu cầu kết bạn và còn xem danh sách bạn bè, hủy bạn bè. - Quản lý kênh trò chuyện: Người dùng có thể tạo kênh với một hay nhiều người dùng khác và chỉnh sửa các thông tin của kênh như tên, ảnh hay là biệt danh hoặc là quyền của người dùng trong kênh, nhắn tin trong kênh. Và quan trọng nhất là các tin nhắn sẽ được mã hóa đầu cuối để tăng tính bảo mật. - Quản lý bài viết: Người dùng có thể tạo, chỉnh sửa, xóa bài viết của bản thân, bình luận bài viết, thả cảm xúc với các bình luận và bài viết.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Đồ Án Tốt Nghiệp CNTT: Xây Dựng Website Mạng Xã Hội Social Network là một tài liệu chuyên sâu tập trung vào quá trình thiết kế và phát triển một nền tảng mạng xã hội từ góc độ kỹ thuật. Tài liệu này cung cấp cái nhìn chi tiết về các yếu tố cốt lõi như kiến trúc hệ thống, quản lý cơ sở dữ liệu, bảo mật thông tin, và trải nghiệm người dùng. Đặc biệt, nó nhấn mạnh việc áp dụng các công nghệ hiện đại để tối ưu hóa hiệu suất và khả năng mở rộng của website. Đây là nguồn tài liệu hữu ích cho sinh viên CNTT, nhà phát triển web, và những ai quan tâm đến việc xây dựng các nền tảng mạng xã hội chuyên nghiệp.

Nếu bạn muốn khám phá thêm về các công nghệ liên quan, hãy xem Nghiên cứu xây dựng cloud storage và vpn trong điện toán đám mây sử dụng devstack luận văn thạc sĩ để hiểu rõ hơn về việc tích hợp các dịch vụ đám mây. Bên cạnh đó, Luận văn thạc sĩ khoa học máy tính nghiên cứu các phương pháp trích xuất thông tin trong ảnh tài liệu và ứng dụng sẽ cung cấp thêm kiến thức về xử lý dữ liệu, một yếu tố quan trọng trong phát triển mạng xã hội. Cuối cùng, Luận văn thạc sĩ khoa học máy tính hỗ trợ suy luận trong điều khiển truy xuất dữ liệu gis sẽ giúp bạn hiểu sâu hơn về quản lý và truy xuất dữ liệu hiệu quả.