Tải bản đầy đủ (.docx) (31 trang)

Đồ án WEB(có cả soure CODE) Xây dựng website mạng xã hội lưu trữ chia sẻ tài liệu

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.45 MB, 31 trang )

LỜI CẢM ƠN
Qua ba năm học tập và rèn luyện tại trường Trường Cao đẳng Công nghệ thông
tin hữu nghị Việt - Hàn, được sự chỉ bảo và giảng dạy nhiệt tình của quý thầy cô, đặc
biệt là quý thầy cô Khoa Công nghệ thông tin đã truyền đạt cho em những kiến thức về
lý thuyết và thực hành trong suốt thời gian học ở trường.. Cùng với sự nổ lực của bản
thân, em đã hoàn thành đồ án tốt nghiệp của mình.
Từ những kết quả đạt được này, em xin chân thành cám ơn Quý thầy cô trường
Trường Cao đẳng Công nghệ thông tin hữu nghị Việt - Hàn, đã truyền đạt cho em
những kiến thức bổ ích trong thời gian qua. Đặc biệt, là thầy Ths. Trần Văn Đại đã tận
tình hướng dẫn em hoàn thành tốt đồ án tốt nghiệp này.
Do kiến thức còn hạn hẹp nên không tránh khỏi những thiếu sót trong cách làm
đồ án, lỗi trình bày. Em rất mong nhận được sự đóng góp ý kiến của quý thầy cô và
ban lãnh đạo nhà trường, để đồ án tốt nghiệp đạt được kết quả tốt hơn.
Em xin chân thành cảm ơn !
Đà Nẵng, tháng 06 năm 2017
Sinh viên thực hiện

Đoàn Đình Ý

1


MỤC LỤC

2


DANH MỤC HÌNH ẢNH

3



Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

LỜI MỞ ĐẦU
Ngày nay, ứng dụng công nghệ thông tin và việc tin học hóa được xem là một
trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức,
cũng như của các công ty, nó đóng vai trò hết sức quan trọng, có thể tạo ra những bước
đột phá mạnh mẽ.
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, công
nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hết
đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản phẩm có giá trị
hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính
cho sự truyền tải, trao đổi thông tin và thanh toán trên toàn cầu
Với sự phát triển của công nghệ thông tin, việc tìm tòi học hỏi, tìm kiếm tài liệu,
… nhu cầu ngày càng tăng cao. Tìm kiếm tài liệu hiện nay khá đơn giản vì kho tài
liệu được phân chia riêng biệt theo từng ... chia sẻ tài liệu trực tuyến được nhiều người
biết đến. Việc tạo ra các diễn đàn để học hỏi lẫn nhau là thiết yếu.
Với mong muốn phát triển hệ thống chia sẽ tài liệu, cũng là bước khởi đầu trong
sự nghiệp, chúng em đặt ra mục tiêu và mong muốn phát triển hệ thống này tiến xa
hơn nữa và trong tương lai sẽ là một trang web uy tín và thành công.

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 4


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN
1.1.

Giới thiệu sản phẩm


 Xuất phát từ nhu cầu quản lý, lưu trữ và chia sẻ các tập tin học tập trong môi trường
sinh viên thì sản phẩm mang tên “Website lưu trữ và chia sẻ tài liệu” được ra đời.
Toàn bộ giao diện sản phẩm được ứng dụng Font-end Framework Bootstrap điều
này giúp sản phẩm hoạt động và hiển thị ổn định trên mọi hệ điều hành và các đời
máy, đó là tính năng Responsive của Bootstrap.

 Sản phẩm còn được ứng dụng công nghệ Ajax, giúp người dùng thao tác nhanh hơn,
mượt mà hơn, tiết kiệm thời gian duyệt web.

 Sản phẩm mang tới cho người sử dụng các giải pháp lưu trữ, chia sẻ, xem trực tiếp,
backup tài liệu … mọi thứ đều rất dễ dàng.

 Sản phẩm đã được chạy online bằng địa chỉ:
1.2.

Giới thiệu chung về mô hình MVC

1.2.1. Mô hình kiến trúc MVC
Trong MVC, dữ liệu được nhận bởi View, View sẽ chuyển cho Controller cập
nhật vào Model, rồi sau đó dữ liệu trong Model sẽ được đưa lại cho View mà không
thông qua Controller, do vậy luồng xử lý này có hình tam giác.

Hình 1.1. Mô hình kiến trúc MVC

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 5


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu


• Model
Đây là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy xuất
database, đối tượng mô tả dữ liệu như các Class, hàm xử lý...

• View
Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa tất cả các
đối tượng GUI như textbox, images...Hiểu một cách đơn giản, nó là tập hợp các form
hoặc các file HTML - Hyper Text Markup Language.

• Controller
Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng những
phương thức xử lý chúng... Chẳng hạn thành phần này sẽ nhận request từ url và form
để thao tác trực tiếp với Model.
1.2.2. MVC làm việc như thế nào?
Nhìn lại sơ đồ phía trên, ta thấy có mũi tên nét liền và những mũi tên nét đứt.
Những mũi tên nét đứt được hình thành trên quan điểm của người dùng mà không phải
là của những nhà thiết kế phần mềm thực sự. Do đó chúng ta chỉ quan tâm đến những
mũi tên còn lại.
Đây là một cách đơn giản để mô tả lại luồng sự kiện được xử lý trong MVC:

• User tương tác với View, bằng cách click vào button, user gửi yêu cầu đi.
• Controller nhận và điều hướng chúng đến đúng phương thức xử lý ở
Model.
• Model nhận thông tin và thực thi các yêu cầu.
• Khi Model hoàn tất việc xử lý, View sẽ nhận kết quả từ Model và hiển thị
lại cho người dùng.

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 6



Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

Hình 2 Mô hình xử lý trong kiến trúc MVC
1.2.3. Ưu điểm và nhược điểm của kiến trúc MVC

• Ưu điểm:
Thể hiện tính chuyên nghiệp trong lập trình, phân tích thiết kế. Do được chia
thành các thành phần độc lập nên giúp phát triển ứng dụng nhanh, đơn giản, dễ nâng
cấp, bảo trì…

• Nhược điểm :
Đối với dự án nhỏ việc áp dụng mô hình MVC gây cồng kềnh, tốn thời gian
trong quá trình phát triển. Tốn thời gian trung chuyển dữ liệu của các thành phần.

1.3.

Giới thiệu chung về Bootstrap Framework

1.3.1. Bootstrap là gì ?
Bootstrap là một framework cho phép thiết kế website reponsive nhanh hơn và
dễ dàng hơn.
Bootstrap là bao gồm các HTML templates, CSS templates và Javascript tao ra
những cái cơ bản có sẵn như: typography, forms, buttons, tables, navigation, modals,
image carousels và nhiều thứ khác. Trong bootstrap có thêm các plugin Javascript
trong nó. Giúp cho việc thiết kế reponsive của bạn dễ dàng hơn và nhanh chóng hơn.
1.3.2. Tại sao phải sử dụng Bootstrap ?
Bootstrap có các ưu điểm nổi bật hơn so với các framework khác như:

 Rất dễ để sử dụng: Nó đơn giản vì nó được base trên HTML, CSS và Javascript chỉ
cẩn có kiến thức cơ bản về 3 cái đó là có thể sử dụng bootstrap tốt.


SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 7


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

 Điều đặc biệt là Bootstrap chuẩn HTML5 và CSS3, Boostrap rất phổ biến và được
đông đảo lập trình viên sử dụng.

Hình 1.1. Logo HTML5 và CSS3
Một vài website sử dụng Bootstrap: fshare.vn, tenlua.vn, itc.viethanit.edu.vn …

 Tính năng Responsive: Với Bootstrap, việc phát triển giao diện website để phù hợp
với đa thiết bị trở nên dễ dàng hơn bao giờ hết. Đây là xu hướng phát triển giao diện
website đang rất được ưu chuộng trên thế giới.
Bản demo các mẫu giao diện được hiển thị trên các thiết bị:

Hình 1.2. Công nghệ Responsive

 Tương thích với trình duyệt: Nó tương thích với tất cả các trình duyệt (Chrome,
Firefox, Internet Explorer, Safari, and Opera) nhưng lưu ý vì IE vẫn rất hạn chế với IE
phiên bản cũ vì thế việc IE9 hay IE8 đổ xuống không hỗ trợ là điều đáng lo ngại.

 Tiết kiệm thời gian: Boostrap giúp người thiết kế giao diện website tiết kiệm rất nhiều
thời gian. Các thư viện Bootstrap có những đoạn mã sẵn sàng cho bạn áp dùng vào
website của mình. Bạn không phải tốn quá nhiều thời gian để tự viết code cho giao
diện của mình.

 Tùy biến cao: Bạn hoàn toàn có thể dựa vào Bootstrap và phát triển nền tảng giao diện
của chính mình. Bootstrap cung cấp cho bạn hệ thống Grid System mặc định bao gồm


SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 8


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

12 bột và độ rộng 940px. Bạn có thể thay đổi, nâng cấp và phát triển dựa trên nền tảng
này.
Với những ưu thế nổi bật trên thì Bootstrap cũng có những hạn chế nhất định.

 Sản phẩm nặng, tốc độ tối ưu chưa cao: nên nếu dự án của bạn đòi hỏi sản phẩm nhẹ
thì việc sử dụng bootstrap sẽ là cả một gánh nặng cho web.

 Chưa hoàn thiện: Bootstrap chưa đầy đủ các thư viện cần thiết. Các phát triển chưa thể
tạo ra một framework riêng hoàn hảo, do đó một số trang web vẫn phải dùng phiên bản
dành riêng cho mobile.

 Quá nhiều code thừa: Không thể phủ nhận rằng Bootstrap có rất nhiều ưu điểm khi nó
cũng cấp gần như đầy đủ những tính năng cơ bản của một trang web responsive hiện
đại. Tuy nhiên, mặt trái của việc này là website của bạn sẽ phải tải thêm rất nhiều dòng
code không cần thiết khi mà bạn chỉ cần chưa đến 10% những gì Bootstrap cung cấp.

 Bootstrap không khuyến khích sáng tạo: Chỉ cần nhét Bootstrap vào themes sẵn có,
gọi ra cái .class từ stylesheet và thế là bạn đã có một trang web responsive trông cũng
ổn ổn. Sự tiện dụng và dễ dàng của Bootstrap nhiều khi sẽ khuyễn khích tính lười sáng
tạo, vốn luôn thường trực trong mỗi chúng ta. Kết quả là, chúng ta thướng thoả hiệp
những gì mình thực sự muốn cho website để đổi lấy sự tiện dụng và tiết kiệm thời gian
mà Bootstrap mang lại.

Hình 1.3. Logo Bootstrap Framework

1.3.3. Cách cài đặt Framework Bootstrap
Twitter Bootstrap giúp chúng ta giảm thiểu thời gian thiết kết html và css.Twitter
Bootstrap định nghĩa sẳn các class css công việc của chúng ta chỉ là sử dụng các class
đó vào mục đích của mình.
 Bước 1: Tải về Bootstrap tại đây: />SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 9


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

Sau khi tải về, sẽ có một file Zip. Tiến hành giải nén ta có một thư mục có tên
bootstrap, bên trong có 3 thư mục: css, img, js

Hình 1.4. Cây thư mục của Bootstrap
 Bước 2: Chúng ta tạo 1 file html có tên là index.html ở trong thư mục bootstrap vừa giải
nén phía trên.

Hình 1.5. Code trong trang index.html

1.4.

Giới thiệu chung về công nghệ Ajax

1.4.1. AJAX là gì?
AJAX là cụm từ viết tắt của Asynchronous JavaScript and XML, nghĩa là
JavaScript và XML không đồng bộ.

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 10


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu


Hình 1.3. Logo công nghệ Ajax
AJAX không phải là một ngôn ngữ mới, nhưng nó là một cách thức mới bao gồm
việc sử dụng một nhóm nhiều công công nghệ với nhau nhằm giúp ích cho việc tạo ra
các ứng dụng web có tính năng trao đổi dữ liệu với server mà không cần phải tải lại
toàn bộ trang web như cách thông thường.
1.4.2. Các công nghệ được sử dụng trong AJAX
AJAX sử dụng XHTML để tạo nội dung, CSS để trình bày, DOM(Document
Object Model) và Javascript để tạo các nội dung động. Vì vậy, trước khi làm quen với
AJAX, người lập trình cần có các kiến thức cơ bản nhất định về HTML, CSS và
Javascript.
AJAX cũng sử dụng đối tượng XMLHttpRequest để trao đổi dữ liệu không đồng
bộ với máy chủ.
1.4.3. Một số ví dụ về các website sử dụng AJAX
Hiện nay thì hầu hết các website nổi tiếng đều đã và đang sử dụng AJAX. Có thể
kể tên một số trang web như sau:
Các trang mạng xã hội như Facebook, Twitter sử dụng AJAX để load các tin bài
mới mà không khiến người dùng phải tải lại toàn bộ trang web.
Google map: người dùng có thể di chuyển trong google map bằng việc kéo con
chuột đến vị trí cần tìm thay vì phải nhấn vào bất kỳ nút nào.
1.4.4. Ưu điểm khi sử dụng Ajax
- Nó giúp việc thiết kế web đa dạng hơn và tăng tính tương tác của website với
người dùng
- Nó sử dụng các công nghệ đã có sẵn nên dễ học và sử dụng
- Nhờ tính phổ biến của nó, đã khuyến khích việc phát triển các khuôn mẫu mà
sẽ giúp lập trình viên tránh khỏi các vết xe đổ trước.
- Được hỗ trợ trong các trình duyệt phổ biến hiện nay
1.4.5. Hạn chế khi sử dụng Ajax
SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 11



Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

Bạn không thể bookmark nó vào favourite trên trinh duyệt hay gởi link đến cho
bạn bè, vì tất cả quá trình nó thực hiện ngầm và không hiển thị trên address
- Không thể hiện thị nội dung trên các trang tìm kiếm vì các trang tìm kiếm hiện
nay vẫn chưa hỗ trợ tìm vì rất khó tìm và gần như không thể tìm đc.
- Không thể sử dụng nút back vì back cũng là chính nó
- Với một số trình duyệt, do nhu cầu bảo mật, sẽ tắt chức năng thực hiện
javascript nên ajax không thể chạy, hay trong một vài host, không hỗ trợ vào sâu cấu
hình server nên hay bị lỗi “Access denied”
Nhưng với những điểm hạn chế nói trên thì AJAX vẫn đang được các lập trình
viên sử dụng rộng rãi và đang nghiên cứu để cải thiện nó, ví dụ như vừa update thông
tin trên web, vừa thay đổi trên thanh address để có thể sử đung một số chức năng liên
quan tới địa chỉ tuyệt đối này.

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 12


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

CHƯƠNG 2. PHÂN TÍCH VÀ THIẾT KẾ
2.1.

Khảo sát hệ thống

2.1.1. Khảo sát hiện trạng
Hiện nay, các trang lưu trữ chia sẻ tài liệu trên mạng rất nhiều và được ưu chuộng
như tailieu.vn, fshare.vn, hay doc24.vn. Mặc dù được sử dụng nhiều nhưng những
trang trên vẫn còn hạn chế như sau:


- Không cho phép các thành viên trò chuyện với nhau
- Hệ thống tìm kiếm tài liệu khó khăn
- Không thể bình luận hoặc nhận xét tài liệu được đăng tải
Vì vậy việc cấp thiết giải quyết những vấn đề trên là cần một website vừa có thể
đăng tải tài liệu, vừa có sự tương tác giữa các thành viên với nhau hay hệ thống tìm
kiếm nhanh gọn nhẹ.
2.1.2. Yêu cầu chức năng của hệ thống

- Xây dựng hệ thống website lưu trữ và chia sẻ tài liệu
- Tạo sự tương tác giữa các thành viên với nhau
- Quản lý và cập nhật các tài liệu một cách dễ dàng
2.1.3. Yêu cầu phi chức năng

2.2.

Giao diện đẹp mắt, phù hợp với các loại màn hình, hệ điều hành
Rút gọn các bước thao tác, giảm tối thiểu lần tải lại trang
Tốc độ truy cập nhanh chóng
Bảo mật tốt cho trang web chống lại hacker
Mô hình hóa yêu cầu

2.2.1. Xác định các tác nhân
- Quantrivien (Quản trị viên): Là người điều hành hệ thống.
- Thanhvien (Thành viên): Là người sử dụng các chức năng của website
2.2.2. Trường hợp sử dụng
2.2.2.1.












Liệt kê các trường hợp sử dụng
Đăng ký
Đăng nhập/ Đăng xuất
Quên mật khẩu
Tìm kiếm
Chat tổng
Trang cá nhân
Trang xem tài liệu
Lịch sử hoạt động
Danh sách theo dõi
SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 13


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu









2.2.2.2.

Nhắn tin
Thông báo
Link yêu thích
Chuyên mục cho tài liệu
Tin tức
Cài đặt
Quản trị của Admin
Đặc tả các trường hợp sử dụng

 Đăng ký
• Tác nhân: Thành viên
- Mô tả: Nơi tạo tài khoản mới, Sử dụng html5 và các hàm php để kiểm tra dữ liệu đăng
ký, kiểm tra trùng lặp thành viên.

• Tham chiếu tới: Danh sách thành viên
 Đăng nhập/Đăng xuất
• Tác nhân: Quản trị viên, Thành viên
- Mô tả: Tác nhân cần phải đăng nhập tài khoản và mật khẩu để được sử dụng các chức
năng riêng cho thành viên. Kiểm tra tài khoản và mật khẩu trong cơ sở dữ liệu nếu
đúng thì sử dụng cookie để lưu id của tài khoản và hoàn tất đăng nhập.

• Tham chiếu tới: Danh sách thành viên
 Quên mật khẩu
• Tác nhân: Quản trị viên, Thành viên
- Mô tả: Được sử dụng trong trường hợp người dùng quên mật khẩu, kiểm tra tên đăng
nhập và mail của người quên mật khẩu, nếu tên tài khoản và mail đúng thì gửi 1 mail
chứa link khôi phục mật khẩu về mail đã nhập. Link khôi phục được mã hóa bằng một
chuỗi md5 và tồn tại trong 10 phút, quá 10 phút link khôi phục sẽ mất hiệu lực. Trong

thời gian chờ khôi phục, không thể yêu cầu thêm lệnh khôi phục












Tham chiếu tới: Danh sách link khôi phục, Danh sách thành viên
Tìm kiếm
Tác nhân: Quản trị viên, Thành viên
Mô tả: Cho phép tác nhân tìm kiếm tài liệu và thành viên có trong hệ thống
Tham chiếu tới: Danh sách tài liệu, Danh sách thành viên
Chat tổng
Tác nhân: Quản trị viên, Thành viên
Mô tả: Cho phép tất cả các thành viên viên được trò chuyện với nhau
Tham chiếu tới: Danh sách chat tổng
Trang cá nhân
SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 14


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

• Tác nhân: Quản trị viên, Thành viên
• Mô tả: Mỗi tác nhân đều có trang cá nhân riêng. Là nơi quản lý thư mục và tài liệu của






mình
Tham chiếu tới: Danh sách thành viên, Danh sách thư mục, Danh sách tài liệu
Trang xem tài liệu
Tác nhân: Quản trị viên, Thành viên
Mô tả: Là nơi xem tài liệu trực tuyến, tác nhân có thể thích hoặc bình luận tài liệu tại






trang này
Tham chiếu tới: Danh sách tài liệu
Lịch sử hoạt động
Tác nhân: Quản trị viên, Thành viên
Mô tả: Lưu lại những lần tương tác của tác nhân với các thành viên khác hay thư muc






và tài liệu
Tham chiếu tới: Danh sách lịch sử hoạt động
Danh sách theo dõi

Tác nhân: Quản trị viên, Thành viên
Mô tả: chứa danh sách tất cả thành viên đã theo dõi, mỗi khi các thành viên này tải lên










tài liệu người theo dõi sẽ nhận được thông báo
Tham chiếu tới: Danh sách theo dõi
Nhắn tin
Tác nhân: Quản trị viên, Thành viên
Mô tả: Là nơi nhắn tin riêng giữa hai người với nhau
Tham chiếu tới: Danh sách tin nhắn
Thông báo
Tác nhân: Quản trị viên, Thành viên
Mô tả: Hiển thị thông báo khi những người nằm trong danh sách theo dõi đăng tài liệu











mới hoặc có người khác theo dõi hay thích tài liệu của mình
Tham chiếu tới: Danh sách thông báo
Link yêu thích
Tác nhân: Quản trị viên, Thành viên
Mô tả: Những tài liệu đã được nhấn yêu thích sẽ được hiển thị ở đây
Tham chiếu tới: Danh sách link yêu thích
Chuyên mục cho tài liệu
Tác nhân: Quản trị viên
Mô tả:: phân loại các tập tin vào các chuyên mục, tạo sự thuận lợi cho việc tìm kiếm

cũng như quản lý.
• Tham chiếu tới: Danh sách các chuyên mục
 Tin tức
• Tác nhân: Quản trị viên

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 15


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu













Mô tả: Hiển thị các tin tức do quản trị viên đăng tải
Tham chiếu tới: Danh sách tin tức
Cài đặt
Tác nhân: Quản trị viên, Thành viên
Mô tả: Cho phép tác nhân thay đổi hình đại diện, chỉnh sửa hồ sơ và thay đổi mật khẩu
Tham chiếu tới: Danh sách thành viên
Quản trị cho Admin
Tác nhân: Quản trị viên,
Mô tả: Tác nhân có tất cả các chức năng để quản trị cả hệ thống
Tham chiếu tới: Danh sách thành viên, Danh sách chuyên mục, Danh sách tin tức

2.2.3. Biểu đồ trường hợp sử dụng (Diagram)

Hình 2.1. Biểu đồ trường hợp sử dụng

2.3.

Mô hình khái niệm

2.3.1. Xác định các lớp đối tượng
Dựa vào việc áp dụng các phương pháp khác nhau, chúng tôi đã xác định được
các lớp đối tượng của hệ thống diễn đàn như sau:

 TaiKhoan (Tài khoản): là lớp chứa các thông tin tài khoản ( username, password)
người sử dụng hệ thống (Quản trị viên, thành viên).
 ChuyenMuc (Chuyên mục): là lớp chứa các chuyên mục của tài liệu (ID chuyên mục,
tên chuyên mục).
SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 16



Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

 Tocao (Tố cáo): là lớp chứa các nội dung sai phạm của tài liệu mà người dùng tố giác
cho quản trị viên.
 Thongbao (Thông báo): là lớp chứa các thông báo đến từ sự tương tác của thành viên








với hệ thống và với các thành viên khác
Tintuc (Tin tức): là lớp chứa các tin tức do quản trị viên đăng tải
Tinnhan (Tin nhắn): là lớp chứa các tin nhắn riêng gửi hai người với nhau
Thich (Thích): là lớp chứa trạng thái thích cho tài liệu được đăng tải
Lichsu (Lịch sử): là lớp chứa hoạt động của người dùng
Theodoi (Theo dõi): là lớp chứa trạng thái theo dõi của người dùng với nhau
Thumuc (Thư mục): là lớp chứa các thư mục của người dùng (id thư mục, id người






tạo)
Tailieu (Tài liệu): là lớp chứa các tài liệu mà người dùng đăng tải

Ghimbai (Ghim bài): là lớp chứa tài liệu đã được ghim
Binhluan (Bình luận): là lớp chứa bình luận của người dùng cho tài liệu
Chattong (Chat tổng): là lớp chứa tin nhắn chat tổng

2.3.2. Mối quan hệ giữa các lớp
STT

Lớp quan hệ

Tên mối quan hệ

1

Thich – Tailieu

Thuộc

2

Binhluan – Tailieu

Thuộc

3

Ghimbai_Tailieu

Thuộc

4


Tailieu_Thumuc

Thuộc

5

Tailieu_Chuyenmuc

Thuộc

2.3.3. Các gói trong hệ thống
2.3.3.1.

Các lớp biên

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 17


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

FrmDangNhap

FrmDangKy

FrmCapNhatAnhDaiDien FrmDangTaiLieu

FrmTimKiem

FrmDoiMatKhau


FrmChinhSuaHoSo

FrmBinhLuanTaiLieu

FrmKhoiPhucMatKhau

FrmTaoThuMuc

FrmChatTong

FrmNhantin

FrmCapNhatChuyenMuc Frm CapNhatTinTuc

Hình 2.2. Các lớp biên
2.3.3.2.

Các lớp điều khiển

CtlDangky

CtlDoiMatKhau

CtlChinhSuaHoSo

CtlCapNhatAnhDaiDien

CtlDangTaiLieu


CtlBinhLuanTaiLieu

CtlTaoThuMuc

CtlTimKiem

CtlKhoiPhucMatKhau

CtlChatTong

CtlNhanTin

CtlDangnhap

CtlCapNhatChuyenMuc

CtlCapNhatTinTuc

Hình 2.3. Các lớp điều khiển
2.3.3.3.

Biểu đồ lớp mức phân tích

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 18


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu
<<entity>>
ToCao
id_user : Int

id_link : varchar
time : int

<<entity>>
GhimBai
user_id : int
id_link : varchar
1

*

*

*

<<entity>>
BinhLuan
id_file : int
user_id : int
text : varchar

1
1

<<entity>>
ThuMuc
name_folder : varchar
pass : varchar
user_id : int


1

1
1

1
1

<<entity>>
TinTuc
id_user : Int
Text : varchar
Time : Int
*

*

1
1
<<entity>>
TaiKhoan
name3
1..*
name2
name : varchar
password : varchar 1
fullname : varchar
sex : char
1
rights : tinyint

mail : varchar
phone : varchar 1

*

*

1

<<entity>>
ThongBao
form_id : int
user_id : int
file : varchar
content : int
time : int

<<entity>>
NhanTin
id_sent : int
id_contact : int
time : int
text : varchar

<<entity>>
ChatTong
user_id : int
text : varchar
1


<<entity>>
LichSu
user_id : int
type : int
id_link : varchar
time : int
text : varchar

*

1

*
*

<<entity>>
TaiLieu
folder_id : int
name_file : varchar
id_type : int

1
1
*

1
<<entity>>
Thich
file_id : Int
file_from : int

user_id : int

1

1

*
<<entity>>
ChuyenMuc
nametype : varchar
type : varchar

<<entity>>
TheoDoi
user_follow : int
user_id : int

Hình 2.4. Biểu đồ lớp mức phân tích

2.4.

Mô hình hóa tương tác đối tượng

2.4.1. Biểu đồ trình tự
2.4.1.1.

Biểu đồ trình tự đăng nhập

: Quan tri vien


: FrmDangNhap

: Thanh Vien

: TaiKhoan

: CtlDangnhap

1: Nhap tai khoan, mat khau()
2: Nhap tai khoan, mat khau()

3: Dang nhap (tai khoan, mat khau)
4: Kiem tra()
5: Thong bao ket qua

6: Dong()

Hình 2.5. Biểu đồ trình tự đăng nhập
2.4.1.2.

Biểu đồ trình tự tải lên tài liệu
SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 19


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

: Quan tri vien

: Thanh Vien
1: Chon tai lieu tai len()


: FrmDangTaiLieu

: CtlDangTaiLieu

2: Chon tai lieu tai len()

3: Thuc hien()
4: Kiem tra()
5: Thong bao ket qua()

Hình 2.6. Biểu đồ trình tử tải lên tài liệu

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 20

: TaiLieu


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

2.4.1.3.

Biểu đồ trình tự tìm kiếm

: Quan tri vien

: Thanh Vien
1: Nhap key tim kiem()

: FrmTimKiem


: TaiLieu

: CtlTimKiem

: TaiKhoan

2: Nhap key tim kiem()

3: Yeu cau tim kiem()

4: Xu ly tim kiem
5: Tao truy van
6: Cung cap TT()
7: Cung cap TT()
8: Tra ve ket qua()

Hình 2.7. Biểu đồ trình tự tìm kiếm
2.4.2. Biểu đồ cộng tác
2.4.2.1.

Biểu đồ cộng tác tạo thư mục

2: Dat ten cho thu muc()
: Quan tri vien

: Thanh Vien

1: Dat ten cho thu muc()


6: Thong bao ket qua()

: FrmTaoThuMuc

4: Kiem tra()
3: Thuc hien()

5: Kiem tra trung ten thu muc()

: CtlTaoThuMuc

Hình 2.8. Biểu đồ cộng tác tạo thư mục

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 21

: ThuMuc


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

2.4.2.2.

Biểu đồ cộng tác nhắn tin

2: Nhap noi dung tin nhan()
: Thanh Vien

4: Kiem tra du lieu dau vao

5: Luu tin nhan


3: Thuc hien()

1: Nhap noi dung tin nhan()

: FrmNhantin

6: Hien thi tin nhan

: NhanTin

: CtlNhanTin

: Quan tri vien

Hình 2.9. Biều đồ cộng tác nhắn tin

2.5.

Mô hình hóa hành vi

2.5.1. Biểu đồ trạng thái thành viên chỉnh sửa hồ sơ
Nhap tiep

Nhap thong tin chinh sua

Thanh vien chinh sua thong tin ho so Cho de chinh
sua ho so

Nhap thong

tin ho so

Ket thuc nhap

Xu ly ket qua thong bao
Ket thuc chinh sua
Thong bao ket
qua chinh sua

Xu ly thong tin chinh sua ho so

Cho xu li thong
tin ho so

Hình 2.10. Biểu đồ trạng thái thành viên chỉnh sửa hồ sơ

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 22


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

2.5.2. Biểu đồ hoạt động thống kê

Chon TT can
thong ke

Xu li thong
ke

Xu li ket qua

thong ke

Hien thi ket
qua thong ke

Hình 2.11. Biểu đồ hoạt động thống kê

2.6.

Thiết kế kiến trúc vật lý

2.6.1. Biểu đồ thành phần

Hình 2.12. Biều đồ thành phần

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 23


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

2.6.2. Biểu đồ triển khai

Hình 2.13. Biều đồ triển khai

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 24


Ứng dụng mô hình MVC trong xây dựng mạng xã hội lưu trữ và chia sẻ tài liệu

CHƯƠNG 3. GIAO DIỆN SẢN PHẨM

3.1.

Giới thiệu chương trình

 Hệ thống bao gồm 2 phần:
• Phần hỗ trợ cho quản trị viên: cho phép sử dụng tất cả các chức năng website. Trong
đó có chức năng đặc biệt dành “Quản trị của Admin” gồm các xử lý như:

 Cập nhật chuyên mục cho tài liệu
 Cập nhật tin tức
 Xử phạt các thành viên bị tố giác sai phạm
 Quản lý tất cả các file, thư mục
 Bật tắt hiển thị các chức năng (Chat tổng, Tin tức, Danh sách thành viên mới)
 Quản lý chức năng bảo mật (Quét các tập tin php)
 Quản lý Backup
• Phần hỗ trợ cho thành viên: sử dụng hầu hết được tất cả chức năng của website trừ
chức năng “Quản trị của Admin”

3.2. Giao diện chương trình
- Giao diện đăng nhập

Hình 3.1. Giao diện đăng nhập

- Giao diện đăng ký

SVTH: Đoàn Đình Ý – Lớp CCLT08A Trang 25


×