Các tổ chức, công ty hay các cơ quan cần phải xây dựng hệ thống mạng máy tính cho riêng mình để trao đôi dữ liệu piữa các bộ phận.. 1.2 Tổng quan về mạng máy tính 1.2.1 Khái niệm Mạng m
Trang 1TRUONG DAI HOC CONG NGHE THONG TIN VA
TRUYEN THONG VIET — HAN
KHOA KHOA HOC MAY TINH
Đà nang, thang 12 nim 2023
Trang 2TRUONG DAI HOC CONG NGHE THONG TIN VA
TRUYEN THONG VIET — HAN
KHOA KHOA HOC MAY TINH
Đà năng, tháng 12 năm 2023
Trang 3NHẬN XÉT
(Giảng viên hướng dẫn)
Giảng viên hướng dẫn
[Khoa Khoa hoc may tinh]
Trang 4LOICAM ON
Em xin chân thành cảm ơn các thầy cô khoa Khoa Học Máy Tính và các bạn đã dành thời gian giúp đỡ em trong quá trình thực hiện đồ án này Đặc biệt,
em xin chân thành cảm ơn cô TS.Lê Thị Thu Nga là người đồng ý hướng dẫn
trực tiếp cho dé tài của em Là người tận tỉnh øiúp đỡ em về thông tin của đồ án
môn học này Nhờ vậy mả em đã hoàn chỉnh được đỗ án của mình và quan trong
hơn hết là em đã tiếp thu được những kinh nghiệm trong suốt quá trình thực hiện
đỗ án môn học
Em xin chân thành cảm ơn !
[Khoa Khoa hoc may tinh]
Trang 5DANH MỤC CÁC HÌNH
HH 111 101 1 1v 1 009 11 160093 1 15224 Vv
MỞ ĐẦU _ 0.2200.102 021211 ee 7
1 Sự cần thiết của đề tài wT
2 Phuong PhAp NEHIEN COUL :scesceercessceessecescssccessseessecseeesessessssseessessesssscssessesasessesesseessssaaescesaeaes 7
3 Pham vi nghiên cứu .8
4 Nội dung nghiên cứu .8
CHƯƠNG!I CƠ SỞ LÝ THUYÊT -22-2222+22222+2222E2222211222211221 222 xe 9
1.1 Giới thiệu ngôn ngữ và công cụ hỗ trợ 9 1.1.1 Ngôn ngữ java 9 1.1.2 Hệ quản trị cơ sở dỮ liệU Á (G2 0011630116646336 496311664 1166616680110 60111161616 684.242424 6 9
co nh e 12
1.4.1 — Khái niệm: L +0 HH 110110511121111101101211111011011011112111111101211511011016 5141x224 12
1.4.2 MG NINN 12 1.4.3 Nguyên tắc: 13
CHƯƠNG2 PHẦN TÍCH HỆ THỒNG - 2522222222222 223122231222122222 e2 15
2.1 Mục tiêu 15
VN si is, 15 2.2.1 Phỏng vấn và khảo sát người dùng, 15 2.2.2 Tài liệu yêu cầu 17
2.3 _ Thiết kế hệ thống - c t1 12 19118111911812165111101121111161111101211111511101112011016 121.24 22
2.3.1 In 7 ::‹-+1515,S 22 2.3.2 €-eNsI-ì0i:30/2109)ì0) 0710777 — 31 2.3.3 Cơ sở dữ liệu 35
CHƯƠNG3_ XÂY DỰNG ỨNG DỤNG -2222: 2222222122211 eree 37
3.1 Phát triển: 37 3.1.1 Server mail: 37
[Khoa Khoa hoc may tinh]
Trang 63.1.2 Mail client: 40 3.2 Triển khai: 43 3.2.1 MailServer "¬ 43 3.2.2 MailClient
2 Hướng phát triển website
TÀI LIỆU THAM KHẢO -222 2 2E 252E2E2szs2
[Khoa Khoa hoc may tinh]
Trang 7DANH MỤC CÁC HÌNH
Hình 1-1 Mô hình mạng cục bộ - LAN - 22 22012212 1211211 121112111111 111 121182 tra 10 Hinh 1-2 Kết nối TCP -©22- + 211211211122711112112112111111111112112121211222212 ca 13 Hinh 1-3 Quá trình nhận dữ liệu qua Socket - L2 0222121112112 1 2 111tr rau 14 Hình 2-1 Biểu đồ UseCase tổng quát 2-2 S1 SEE115212112112112121111 2121121 tre 22 Hinh 2-2 Sơ đỗ class 2-1252 12212212214 111211211211211121121121121212122222112 ra 22 Hình 2-3 Biểu đồ hoạt động đăng nhập 5 St 2 SE 1111111212121 22 12g 23 Hình 2-4 Biểu đồ hoạt động đăng ký - ST S2 1212112121211 11 xr 24 Hình 2-5 Biểu đồ hoạt động gửi mailL - c1 12212121121 1351 115312112 111511111111 1111 1 e2 25 Hình 2-6 Biểu đồ hoạt động đọc maiÏ - c2 2212111211221 1121 111111111211 1551 11118211 11 xe 26 Hình 2-7 Biểu đồ hoạt động tìm TT ccccccccccececesseseseeevecscsesesesevevevecstevssseseevevsveees 27 Hình 2-8 Biểu đồ trình tự đăng nhập -2 52221 1 111871211 1111711211212 12 rtg 28 Hình 2-9 Biểu đồ trình tự Đăng ký 5 5 ST 1121211 1211211212282 1 re 29 Hình 2-10 Biéu đồ trình tự Gửi 1malÏ - - - c1 2211122511112 25 111112 1111011111211 621516 xe 29 Hình 2-11 Biểu đồ trình tự Đọc mail 5 2s 32111 1155111115511111221511111 111111111151 xxe 30 Hình 2-12 Biểu đồ trình tự tìm kiếm S2 S111 25151511 1151211111121111212111211 1111222256 30 Hình 2-13 Thiết kế giao diện đăng nhậtp L0 222211211221 12 112115212011 1821 re 31 Hình 2-14 Thiết kế giao didn đăng Kký - L0 2112111211211 1112120111111 2 11111111111 xk 32 Hình 2-15 Thiết kế giao dién ĐỬI IAIÏ - 5: c2 22 221222122511 15112531233 1511155111581 11 E11 xE, 33 Hình 2-16 Thiết kế giao dién đọc ImaiÌ c 2c 2212211121 1121 111115112 12 1118111111811 1x55 34 Hinh 2-17 Cơ sở dữ liệu mysqÌL 2 22 12212221121 1121 1111111111112 11 0111811011118 kg 35 Hình 2-18 Cầu trúc được lưu trong file thư lưu trữ trên server ee eerie 36 Hình 3-1 Kết nối cơ sở dữ liệu S1 St 11121 111512121151112111111211121121112112111211 1152 xx6 37 Hình 3-2 Khởi tạo serversocket - c1 HH 1S 11121111 nn n2 11111 nn 2215121511215 2x22 38 Hình 3-3 Các hàm xử lý sự kiện của S€TV€T - c1 22211121112 12211 1111152111112 x12 39 Hinh 3-4 Tạo session đăng nhập,đổăng ký Q12 0121121111122 121 151111 12k rưu 39 Hinh 3-5 Tao session øử1,nhận maIÏ - 2 22 222122112213 251 1122122231513 111 15211112111 155 40 Hình 3-6 Tạo kết nối client đến server - St 21112111 115111511511111111111112151211 11552 x6 41 Hinh 3-7 Tạo các hàm gửi dữ liệu đến server s1 S g1 1112115111 1n nen 41
Hình 3-9 Tạo hàm kiểm tra đữ liệu 22 HS 11151315111 21512111151511181 2181111 E tre 43
Hình 3-10 Trang chủ của MIall S€TV€T - ác nh S191 1211111111111 111 111 11111 12 rkt 44
Hình 3-11 Mail Server khi có kết nối từ clienit 2-52 s221£EE22E22212512212212221222 222 45 Hinh 3-12 Danh sách người dùng của MallL - 2: 122122112211 1221 1221151111112 x re 46 Hinh 3-13 Giao diện trang đăng nhập của CÏient 2c 22 22211211121 112112 121 re 47 Hình 3-14 Giao diện đăng ký của C Ïlent - 2 2012211221121 1211 12111211111 11122211 k2 48
Hình 3-15 Giao diện gửi mail của C ÏIeTif c2 2221121121111 1 1511111211111 1111181 nghe 49
Hình 3-16 Giao diện xem danh sách thư đến của client 2222255352535 55 52525555552 50 Hinh 3-17 Giao diện xem danh sách thư đã gửi của cÏlent - 2c 2c c2 cccscs>s 51 Hinh 3-18 Giao diện đọc thư của cÏI€ni - - - c c0 000000111 11251 1251155151511 1 11111111511 xy 52 Hinh 3-19 Giao diện quản lý nhóm/công ty cla client ccc 2: 2:3 2c cezsrsses 33 Hinh 3-20 Giao diện tạo nhóm người dủng 5 c2 2 22112211111 12112221 1811181111111 se 54 Hình 3-21 Giao diện chat với AI của client ccccecesnsceccccceceeeeeeeeesececeseneees 55
[Khoa Khoa hoc may tinh]
Trang 8DANH MỤC CÁC BẢNG
Bảng 3-1 Đặc tả ca sử dụng đăng nhập (a) - 222 22112211211 121122 1281118121121 se 18 Bảng 3-2 Đặc tả ca sử dụng đăng nhập (b) 2 2 20112112221 112212211 1111112 grrrey 18 Bang 3-3 Đặc tả ca sử dụng đăng ký (a) 0 2022112111 1112112211121 11111 1g rưu 19 Bảng 3-4 Đặc tả ca sử dụng đăng ký (b) - 020221122212 111211011 1011011 12011 re 19 Bảng 3-5 Bảng đặc tả ca sử dụng gửi malÏ(4) cece 2212111211221 11121 1111211111121 20 Bảng 3-6 Bảng đặc tả ca sử dụng gửi mail (b) - 2 - 0 22222122112 11 2211811112111 x e2 20 Bảng 3-7 Bảng đặc tả ca sử dụng øửI malÏ (C) - - c2 2212211221121 1112111152111 111 1112 20 Bảng 3-8 Bảng đặc tả ca sử dụng đọc emaIÏ (A) - 2c 22 2212121121112 1 15111112 rre 20 Bảng 3-9 Bảng đặc tả ca sử dụng đọc emaIl(b) - c1 12212121121 112111211 2 reo 21 Bang 3-10 Dac ta ca su dung tim kiém NtÝỶÝã 21 Bảng 3-11 Đặc tả ca sử dụng tìm kiếm(b) - 512 111 2121121221211 11g 21
[Khoa Khoa hoc may tinh]
Trang 9MỞ ĐẦU
1 Sự cần thiết của đề tài
Ngày nay, công nghệ thông tin đã và đang được ứng dụng sâu rộng trone mọi lĩnh vực kinh tế - xã hội - y tế Đây là công cụ không thể thiếu cho việc phát triển thương mại, vận hành hệ thông trong các tô chức, doanh nghiệp và phục vụ nhu cầu công việc, giải trí cá nhân Trong đó, mạng máy tính và internet đóng vai trò hết suc quan trong quyét định sự tồn tại của các tô chức, doanh nghiệp Máy tính đã trở thành công cụ đắc lực và không thể thiếu của con người Các tổ chức, công ty hay các cơ quan cần phải xây dựng hệ thống mạng máy tính cho riêng mình để trao đôi
dữ liệu piữa các bộ phận Dữ liệu được truyền đi trên mạng phải đảm bảo dữ liệu được truyền tới đích nhanh chóng và đúng đắn Hầu hết dữ liệu truyền qua mạng là truyền dưới dạng một đoạn văn bản hoặc các loại file
Truyền thông tin qua mạng là một trong những ứng dụng phô biến trên mạng LAN và Internet như: tải xuống các file từ một máy chủ file ở xa, pử1nhận thư điện
tử Truyền file qua mạng dựa trên Socket TCP là một phương pháp truyền file có
độ tin cậy cao bởi vì trước khi truyền nó cần thiết lập thành công kênh truyền dữ
liệu Không phải là phương pháp thay thế hoản toàn những phương pháp truyền file
khác mà ta đã từng sử dụng Bản chất của phương pháp truyền file dựa vào Socket TCP là nhằm tăng thêm hiệu xuất làm việc Đó là lý do chúng em chọn đề tài: “Xây dựng chương trình mail client — server”
2 Phuong phap nghién cứu
e _ Tiến hành thu thập và phân tích những thông tin, tài liệu liên quan đến đề tài dé hình thành nên những ý tưởng tông quan
© Xác định các yêu cầu nhằm phân tích thiết kế hệ thống chương trình cho phủ
hợp
e_ Triển khai chường trình và đánh giá kết quả
[Khoa Khoa hoc may tinh]
Trang 103 Phạm vi nghiên cứu
e Tim hiéu: “Xây dựng chương trình mail client — server”
e Tim hiéu một số công cụ xây dựng hệ thông Mail client — server
® - Quy trình sử1/nhận mail
4 Nội dung nghiên cứu
e _ Xây dựng cơ sở đữ liệu ứng với các thông tin trong hệ thông mail server
e - Liên kết được cơ sở dữ liệu với ứng dụng
e _ Xây dựng hệ thống Mail server
® - Xây dựng ứng dụng Mail client
¢ Slide trinh bay va bao cao tong két
[Khoa Khoa hoc may tinh]
Trang 11CHƯƠNG1 CƠ SỞ LÝ THUYẾT
1.1 Giới thiệu ngôn ngữ và công cụ hỗ trợ
1.1.1 Ngôn ngữ java
Java là một trong những ngôn ngữ lập trình phô biến và mạnh mẽ được sử dụng
rộng rãi trong ngành công nghiệp phần mềm Được phát triển bởi Sun Microsystems
(nay là Oracle Corporation) vào những năm 1990, Java đã trở thành một trong những
ngôn ngữ lập trình ưu tú vả đáng tin cậy dành cho nhiều loại ứng dụng
1.12 Hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở đữ liệu (DBMS) chính là một gói phần mềm được dùng để xác định, thao tác cũng như truy xuất và quản lý dữ liệu Hệ quản trị thường sẽ thao tác với các đữ liệu của chính DBMS Ví dụ như: định dạng dữ liệu, tên của file, cấu trúc
của bản record vả cả cấu trúc của ñle Ngoài ra, hệ quản trị cũng sẽ giúp xác định
những quy tắc nhằm xác thực cũng như thao tác với những đữ liệu này
My§QL là một hệ thống quản trị cơ sở đữ liệu mã nguồn mở (Relational Database Management System, viét tat la RDBMS) hoat d6ng theo mô hình client- server RDBMS là một phần mềm hay dịch vụ dùng để tạo và quản lý các cơ sở đữ liệu (Database) theo hình thức quản lý các mối liên hệ giữa chúng
My§QL là một trong số các phần mềm RDBMS RDBMS và My§QL thường được cho là một vì độ phổ biến quá lớn cha MySQL Cac tng dung web lớn nhất như Facebook, Twitter, YouTube, Google, va Yahoo! déu dùng MySQL cho mục đích lưu trữ dữ liệu Kế cả khi ban đầu nó chỉ được dùng rất hạn chế nhưng giờ nó đã tương thích với nhiều hạ tầng máy tính quan trọng như Linux, macOS, Microsoft Windows,
và Ubuntu
IntelliJ IDEA la m6t mdi truéng phat trien tich hop (IDE) phat triên bởi
JetBrains, được thiết kế đặc biệt đề hỗ trợ quá trình phát triển phần mềm và ứng dụng IDE nay được ưa chuộng trong cộng đồng lập trình viên với nhiều tính năng mạnh mẽ
và khả năng tủy chỉnh cao
[Khoa Khoa hoc may tinh]
Trang 12Hỗ trợ nhiều ngôn ngữ: IntelliJ IDEA hỗ trợ nhiều ngôn ngữ lập trình, bao gồm Java, Kotlin, JavaScript, Python, Ruby, và nhiều ngôn ngữ khác, làm cho nó trở thành một IDE da dạng cho nhiều loại dự án
Tích hợp các tính năng thông minh: IDE cung cấp nhiều tính năng thông minh như gợi ý mã (code completion), kiếm tra lỗi tự động (code inspection), tái cấu trúc
mã nguôn, và tôi ưu hóa hiệu suất đề giúp lập trình viên làm việc hiệu quả
Plugin phong phú: IntelliJ IDEA có một cộng đồng plugin đáng kể, cho phép
bạn mở rộng tính năng của IDE và tùy chỉnh nó theo nhu cầu cụ thé cua dự án
Hỗ trợ dự án lớn: IDE thích hợp cho cả đự án nhỏ và lớn, cung cấp các công cụ mạnh mẽ để quản lý dự án, hỗ trợ đa luồng, và tối ưu hóa mã nguồn
Hỗ trợ đa nền tảng: IntelliJ IDEA có phiên bản cho nhiều hệ điều hành khác nhau, bao gồm Windows, macOS, và Linux Nó cũng hỗ trợ nhiều loại dự án, từ ứng dụng máy tính đến ứng dụng web và đi động
1.2 Tổng quan về mạng máy tính
1.2.1 Khái niệm
Mạng máy tính hay hệ thống mang (computer network hay network system) la
sự kết hợp các máy tính lại với nhau thông qua các thiết bị nối kết mạng và phương tiện truyền thông (giao thức mạng, môi trường truyền dẫn) theo một cầu trúc nào đó
và các máy tính này trao đôi thông tin qua lại với nhau
Trang 131.2.2 Lợi ích của mạng máy tính:
Lợi ích của mạng máy tính như sau:
e Mang tao kha nang dung chung tải nguyên cho các người dùng
e Mang cho phép nang cao d6 tin cay
¢ Mang giup cho công việc đạt hiệu suất cao hơn
e - Tiết kiệm chỉ phí
e Tang cường tính bảo mật thông tin
v Việc phát triển mạng máy tính đã tạo ra nhiều ứng đụng mới 1.3 Tong quan ve TCP/IP
1.3.1 Bộ giao thire lién mang (IP Protocol)
Các giao thức liên mạng là bộ giao thức cho các hệ thông mở nỗi tiếng nhất trên thế giới bởi vì chúng có thế được sử dụng để giao tiếp qua bất kỳ các liên mạng nào cũng như thích hợp cho các giao tiếp trong mạng LAN và mạng WAN Các giao thức liên mạng bao gồm một bộ các giao thức truyền thông, trong đó nối tiếng nhất là Giao thức điều khiến truyền tải (TCP - Transmission Control Protocol) và Giao thức liên mạng (IP
— Internet Protocol) hoạt động ở tầng 4 và tầng 3 trên mô hình OSI Ngoài hai giao thức này, bộ giao thức IP còn đặc tả nhiều giao thức cho tầng ứng dụng, ví dụ như giao thức cho dịch vụ thư điện tử, giao thức mô phỏng thiết bị đầu cuối và giao thức truyền tải tập tin Bộ giao thức liên mạng lần đầu tiên được phát triển vào giữa những năm của thập niên 70 khi Văn phòng các dự án nghiên cứu chuyên sâu của bộ quéc phong My (DARPA-Defense Advanced Research Projects Agency) quan tam đến việc xây dựng một mạng chuyên mạch gói (packetswitched network) cho phép việc trao đổi thông tin giữa các hệ thống máy tính khác nhau của các viện nghiên cứu trở nên đễ dàng hơn Với ý tưởng nối các hệ thông máy tính không đồng nhất lại với
nhau, DARPA đã cấp kinh phí nghiên cứu cho đại học Stanford, Bolt, Beranek, and
Newman (BBN) về vấn đề này Kết quả của những nỗ lực phát triển của dự án này là
bộ giao thức Liên mạng đã được hoàn thành vào những năm cuối của thập niên bảy mươi Sau đó TCP/IP được tích hợp vào hệ điều hanh UNIX phién ban BSD (Berkeley Software Distribution) trở thành nền tảng cho mạng Internet và dịch vụ WWW (World Wide Web)
[Khoa Khoa hoc may tinh]
Trang 14Giao thức liên mạng, thường gọi là ø1ao thức IP (Internet Protocol) la m6t giao thức mạng hoạt động ở tầng 3 của mô hình OSI, nó qui định cách thức định địa chỉ các máy tính và cách thức truyền tải các øói tin qua một liên mạng IP được đặc tả trong bảng báo cáo kỹ thuật có tên REC (Request For Comments) mã số 791 và là giao thức chủ yếu trong Bộ giao thức liên mạng Củng với giao thức TCP, IP trở
thành trái tim của bộ giao thức Internet IP có hai chức năng chính: cung cấp dịch vụ truyền tải dạng không nối kết để chuyên tải các gói tin qua một liên mạng: và phân
mãnh cũng như tập hợp lại các gói tin để hỗ trợ cho tầng liên kết đữ liệu với kích thước đơn vị truyền đữ liệu là khác nhau
1.4 Lập trinh socket
1.4.1 Khai niém:
Một Socket là một điểm cuối của một giao tiếp 2 chiều giữa hai chương trình chạy trên một mạng Socket được gắn với một công cụ thê để tầng TCP có thể định danh được ứng dụng mà đữ liệu gửi tới Địa chỉ Socket có dạng: {IP Address; Port Number}
Các loại Socket:
- Socket hudng két néi (TCP Socket)
- _ Socket không hướng kết nối (UDP Socket)
- Raw Socket 1.4.2 Mô hình:
TCP là một giao thức có liên kết, nghĩa là cân phải thiết lập liên kết piữa hai
thực thê TCP trước khi chúng trao đôi dữ liệu với nhau Một tiến trình ứng dụng trong
một máy tính truy nhập vào các dịch vụ của giao thức TCP thông qua một công port của TCP Số hiệu công TCP được thể hiện bởi 2 bytes
[Khoa Khoa hoc may tinh]
Trang 15Tại phía server:
Thông thường, một chương trình server chạy trên một máy tính cụ thể, chương trình này có một socket (server socket), socket được xác định bởi port number cụ thể Các chương trình cụ thể Các chương tình cụ thé phục vụ trên server chỉ chờ đợi, lắng nghe tai port number cua nó dé phục phục vụ khi có client kết nối
Tat phia client:
Các client biết địa chỉ của máy tính trên đó chương trình server đang chạy và danh sách các công máy chủ đang lắng nghe Đề thực hiện kết nối, Client cố gắng tạo [Khoa Khoa hoc may tinh]
Trang 16một liên kết với máy chủ tại công mà chương trình máy chủ đang lắng nghe Client cũng phải tự định danh chính nó với server để gắn với một cổng địa phương cái sẽ được dùng trong suốt quá trình kết nối này Thông thường nó được gán bởi hệ điều hành Nếu kết nối được chấp nhận, một ô cắm được tạo thành công và Client có thé str dung socket dé giao tiếp với chương trình chủ
getOutputstream() sérver.getinputStream()
getinputStream() getOutputstream()
Hình 1-3 Qua trinh nhan dit liệu qua Socket
[Khoa Khoa hoc may tinh]
Trang 17CHUONG 2 PHAN TICH HE THONG
2.1 Muc tiéu
Mục tiêu chung của dự án "Chương trình Mail Client Server" là phát triển một
hệ thống mail client server đáp ứng nhụ cầu gửi, nhận và quản lý email một cách hiệu quả, bảo mật và tiện lợi Dự an nhằm tạo ra một giải pháp ứng dụng máy tính cá nhân, nơi neười dùng có thé tương tác với hòm thư điện tử của họ một cách thuận tiện và dam bao an toàn thông tin cá nhân Cụ thể các mục tiêu:
¢ Phat trién giao diện người dùng thân thiện: Xây đựng giao diện đễ sử dụng cho
người dùng, cung cấp tính năng viết, đọc, trả lời và chuyền tiếp email
e Phát triển một server có thê thực hiện các thao tác, yêu cầu từ client oui dén
© Quan ly danh ba lién hé: Cung cap kha nang thém, stra, xóa và tìm kiếm trong danh bạ liên hệ cá nhân
¢ Bao mat thong tin cá nhân: Đảm bảo rằng dữ liệu email và thông tin cá nhân
của người dùng được bảo vệ vả không bị xâm nhập
e©_ Tối ưu hóa hiệu suất: Xử lý email nhanh chóng và hiệu quả, đồng thời hỗ trợ
đa luồng và xu ly nhiéu tac vu củng một lúc
¢ Hỗ trợ tìm kiếm va phân loại email: Cung cấp tính năng tìm kiếm email dựa trên nội dung, người gửi, ngày gửi và nhiều yếu tố khác
e© Triển khai trên nhiều nền tảng: Đảm bảo ứng dụng có phiên bản dành cho Windows, macOS và Linux để phục vụ nhiều đối tượng người dùng
2.2 Phân tích yêu cầu
Người dùng cuối của dự án “Chương trình Mail Client- Server” bao gồm người dùng cá nhân và doanh nghiệp
¢ Ban da can hé trợ từ nhả cung cấp mail trong thời gian sử dụng không?
Nếu có, bạn đã có trải nghiệm gì với hỗ trợ từ họ?
[Khoa Khoa hoc may tinh]
Trang 18Số năm sử dung mail client server:
Câu hỏi 1: Bạn sử dụng mail cho mục đích gì chính? (Hãy chọn tất cả các mục bạn áp dụng)
Gửi và nhận email Quản lý lịch và sự kiện Quản lý danh bạ liên hệ Chia sẻ tài liệu và làm việc nhóm
Câu hỏi: Bạn có cách nào để đề xuất hoặc góp ý cho nhà cung cấp của mail
client server không?
Cảm ơn bạn da danh thoi gian tham gia khảo sát của chúng tôi Nêu bạn có điêu
øì muôn thêm hoặc muôn chia sẻ, vui lòng phi dưới đây:
[Khoa Khoa hoc may tinh]
Trang 192.2.2 Tài liệu yêu cầu
Dự án sẽ phục vụ cả người dùng cá nhân và doanh nghiệp Đối tượng người
Dự án có 2 chương trình chính: server và client
2.2.2.1 Mail Client
Các chức năng chính của chương trình:
Đăng nhập: Chức năng này cho phép người dùng đăng nhập vào hệ thống bằng tài khoản đề thực hiện các chức năng của họ
Đăng ký: Chức năng này cho phép người dùng đăng ký tài khoản mới vào hệ thông với thông tin tên đăng nhập, số điện thoại và mật khẩu
Đăng xuất: Chức năng này giúp người dùng có thể đăng xuất ứng dụng khi đã hoản thành công việc của mình
Quên mật khẩu: Chức năng này giúp người dùng có thế lấy lại mật khâu của tai khoản khi vô tình quên đi hay bị mắt
Gửi thư: Chức năng này giúp người dùng gửi thư với một đoạn tin nhắn văn bản hoặc đính kèm file đến server với người nhận chỉ định
Đọc thư : Chức năng này giúp người dùng có thể đọc thông tin thư của mình đã nhận hoặc đã gửi di
Lọc spam: Chức năng nảy giúp người dùng có thê lọc được các thư rác, quảng cáo, spam,
Quản lý thư mục và danh bạ liên hệ: Chức năng này giúp người dùng dễ dàng
thêm, sửa, xóa danh bạ liên hệ của email Quản lý nhóm: Chức năng này cho phép người dùng tạo, sửa, xóa nhóm Các người đùng khác có thể tham gia vào nhóm đã được tạo
Tìm kiếm: Chức năng này cho phép người dùng có thể tìm kiếm các thông tin
về người dùng, thư gửi vả thư nhận
Chat với AI: Chức năng này có thê giúp người dùng tìm kiếm được mẫn thư
cần gửi
2.2.2.2 Mail Server
Mail server đảm nhiệm xử lý thao tác từ người dùng gửi đến Server sẽ xử lý các dữ liệu sửi đên và mã hóa thêm vào cơ sở dữ liệu Người dùng sửi thư đên npười dùng khác thì server đảm nhiệm việc gửi đên đúng người nhận Các tiên trình hoạt động của người dùng sẽ được hiện thị lên một list bên server
Các chức năng chính của chương trình:
Quản lý người dùng: Chức năng này giúp bên server có thể xóa hoặc khóa tài khoản nều tài khoản đó vị phạm hoặc đã bỏ
Trang 20® - Mô tả khái quát: người dùng đăng nhập vào hệ thông
e© Điều kiện đầu vào: Use case bắt đầu khi người dùng muốn đăng nhập vào hệ thống
B2: Người dùng có thé nhập lại hoặc hủy bỏ
việc đăng nhập, khi đó use case sẽ kết thúc
® - Mô tả khái quát: người dùng đăng ký tài khoản vào hệ thống
e©_ Điều kiện đầu vào: Use case bắt đầu khi người dùng muốn đăng ký vào hệ thống
Trang 21B2: Người dùng có thé nhập lại hoặc hủy bỏ
việc đăng ký, khi đó use case sẽ kết thúc
Trang 22
thông báo thành công đến người dùng
B7: Người dùng được thông
báo gửi thành công
B2: Người dùng có thê điền lại từ khóa hoặc
hủy bỏ thao tác, khi đó use case kết thúc
Bảng 3-6 Bảng đặc tả ca sử dụng gửi mail (b)
B2: Người dùng được thông báo đề gửi lại
email hoặc hủy
® Mộ tả khái quát: Người dùng muốn được một thư nảo đó của mình
e©_ Điều kiện đầu vào: Người dùng đã đăng nhập vào hệ thống và đã thao tác ít nhắn 1 lần gửi thư hoặc nhận một thư
B3: Người dùng xem
được các thông của
Trang 23| khi đọc email này |
Bảng 3-9 Bảng đặc tả ca sử dụng doc email(b) Hậu điều kiện: Người dùng đọc email muốn đọc thành công
2.2.2.3.5 Tìm kiếm
« Actor: Nguoi dung
« - Mô tả khái quát: Người dùng nhập thông tin cần tìm kiếm và hệ thông hiến thị thông tin cần tìm
« - Điều kiện đầu vào: Use case bắt đầu khi người dùng truy cập vào website của
hệ thống và chọn tìm kiếm Sau đó người dùng điền từ khóa và hệ thông sẽ kiểm tra nếu từ khóa hợp lệ:
BI: Hệ thông hiển thị thông báo Từ khóa
không hợp lệ hoặc không thê tìm thây
được
B2: Người dùng có thê điền lại từ khóa
hoặc hủy bỏ tìm kiêm, khi đó use case
Bang 3-11 Dac ta ca swe dung tim kiém(b)
¢ Hau diéu kién: Người dùng tìm được thông tin cần tìm
2.2.2.4 Biéu dé ca sir dung
[Khoa Khoa hoc may tinh]
Trang 24= Email E User = MemberGroup = Group
+ field: integer nh + ide integer = 0 user inkeger PB ——- ake
+ teuce: String +tendangahap: Sting + idgreup: integer ~ tengroup: String
+ noidurg: String + matkha Sting + vaitro: boolean ~ tenntien: Sting
+ ngdung: Strng + sat Sting + joinGroup\tengroup} boolean epee ere
+ time: String + trangthai: boolean + ụ 5 boolean
CN Ấn + recister(idn, mk, siti: boolean
+ guimail(jsonobject): boolean + checkuser(tdn mk, sdt): boolean
+ list!) Arraylist + doimatkhauitdh, mk: boolean
+ docmail(dmail): JsonObject + querrmafkhau(tdn, sdf\: boolean
+ locspanjsoncbject} boolean
Hình 2-5 Sơ đồ class 2.3.1.2 Biểu đồ hoạt động
[Khoa Khoa hoc may tinh]
Trang 25Hình 2-6 Biểu đồ hoạt động đăng nhập
[Khoa Khoa hoc may tinh]
Trang 26Hình 2-7 Biếu đồ hoạt động đăng ký
[Khoa Khoa hoc may tinh]
Trang 27Hình 2-8 Biểu đồ hoạt động gửi mail
[Khoa Khoa hoc may tinh]
Trang 28Hình 2-9 Biểu đồ hoạt động dọc mail
[Khoa Khoa hoc may tinh]
Trang 29
Hình 2- 10 Biểu đồ hoạt dong tim kiém
[Khoa Khoa hoc may tinh]