Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 51 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
51
Dung lượng
1,34 MB
Nội dung
i
TRƯỜNG ………………….
KHOA……………………….
Báo cáo tốt nghiệp
Đề tài:
XÂY DỰNGỨNGDỤNGCLIENTCHOHỆ
THỐNG THÔNGTINGIAOTHÔNG
ii
LỜI CÁM ƠN
Khóa luận này là thành quả lớn nhất trong những năm học đại học của em. Để hoàn
thành được khóa luận, ngoài sự cố gắng của bản thân, em đã nhận được sự giúp đỡ của rất
nhiều người.
Đầu tiên con xin cám ơn bố mẹ đã sinh thành và nuôi dưỡng con đến ngày hôm nay.
Em xin cám ơn các thầy cô Khoa Công Nghệ ThôngTin và các thầy cô giảng dạy tại
trường Đại học Công Nghệ đã tận tình giảng dạy, truyền đạt cho em rất nhiều kiến thức
trong suốt 4 năm đại học.
Em xin cám ơn Tiến sĩ, cô giáo Trần Thị Minh Châu – Giảng viên khoa Công nghệ
thông tin trường Đại học Công nghệ đã tận tình hướng dẫn và giúp đỡ em trong quá trình
thực hiện khóa luận này.
Xin cám ơn các anh chị khóa trước đã giải đáp rất nhiều thôngtin giúp em có thể
hoàn thành tốt khóa luận.
Khóa luận của em sẽ không thể thành công nếu không có sự giúp đỡ của mọi người.
Xin cám ơn tất cả.
iii
TÓM TẮT KHÓA LUẬN
Giao thông đang thực sự là vấn đề được rất nhiều người quan tâm. Đặc biệt ở nước
ta, khi mật độ các phương tiện giaothông gia tăng mạnh mẽ trong những năm gần đây.
Với mong muốn góp phần giảm thiểu tình trạng ùn tắc giao thông, giúp người dân chủ
động hơn khi tham gia giao thông, mục tiêu của khóa luận này là xâydựngứngdụng
Client chohệthốngthôngtingiao thông. Ứngdụng được cài đặt trên điện thoại di động
cho phép người dùng tìm kiếm các địa điểm mà họ tham gia giaothông và gửi tin nhắn tra
cứu đến Server giải đáp.
Khóa luận sẽ trình bày một số kiến thức cơ bản về J2ME và SMS, các công nghệ
được sử dụng để xâydựngứng dụng. Phần sau của khóa luận sẽ trình bày các bước phân
tích, thiết kế, xâydựng và các hướng dẫn triển khai ứngdụng trên thiết bị di động giả lập.
iv
Mục lục
LỜI CÁM ƠN i
TÓM TẮT KHÓA LUẬN iii
Chương 1. Mở đầu 1
Chương 2. Lập trình ứngdụngcho điện thoại di động với J2ME 3
2.1. Tổng quan về J2ME 3
2.1.1. Giới thiệu J2ME 3
2.1.2. Kiến trúc của J2ME 4
2.2. Cấu trúc ứngdụng MIDlet 7
2.2.1. JAD và JAR 7
2.2.2 Vòng đời của một MIDLet 8
2.3. Đồ họa trong J2ME 10
2.3.1. Đồ họa mức cao (High Level Graphics) : 11
2.4. Lưu trữ dữ liệu với Record Management System (RMS) 12
2.4.1. Các thao tác mở, đóng hay xóa bản ghi 13
2.4.2. Thao tác với các bản ghi 13
2.4.3. Sử dụng hiệu quả RMS qua các lớp tiện ích 15
2.5. Kết nội mạng cơ bản trong J2ME 15
2.5.1. Cơ chế kết nối Client – Server 15
2.5.2. Tìm hiểu CLDC Generic Connection Framework 16
Chương 3. Dịch vụ tin nhắn SMS 18
3.1. Lịch sử của SMS 18
v
3.2. Lợi ích của dịch vụ tin nhắn SMS 18
3.3 Mô hình dịch vụ tin nhắn SMS 19
Chương 4. Ứngdụnghệthốnggiaothôngcho thiết bị di động sử dụng SMS 20
4.1. Mô tả hoạt động của hệ thống: 20
4.2. Hoạt động và các chức năng chính của Client 21
Chương 5. Phân tích thiết kế ứngdụng 22
5.1 Biểu đồ ca sử dụng 22
5.1.1. Lược đồ các ca sử dụng chính 22
5.1.2. Mô tả các ca sử dụng: 24
5.2. Biểu đồ lớp 27
5.2.1. Biểu đồ lớp mức tổng thể: 27
5.2.2. Các biểu đồ lớp chi tiết. 27
Chương 6. Các màn hình chính và hướng dẫn demo ứngdụng 34
6.1. Demo các chức năng xem danh sách địa điểm hay khu vực 34
6.2. Demo chức năng quản lý địa điểm: 36
6.3. Demo chức năng Tìm kiếm địa điểm. 36
6.4. Demo chức năng thiết lập cấu hình: 37
6.5. Demo chức năng nhắn tin tra cứu: 38
6.6 Demo chức năng Nhắn tin cập nhật. 40
6.7 Demo chức năng Hướng dẫn sử dụng: 42
Chương 7. Kết luận 43
Tài liệu tham khảo 44
vi
DANH SÁCH HÌNH VẼ
Hình 1: Kiến trúc J2ME 4
Hình 2: Cơ chế hoạt động của máy ảo Java 5
Hình 3: Máy ảo Java trong các phiên bản của Java 6
Hình 4. Vòng đời một MIDLet 9
Hình 5: Đồ họa trong J2ME 11
Hình 6: Cấu trúc phân cấp các lớp đồ họa mức cao 12
Hình 7: Cơ chế lưu trữ trong một kho chứa các bản ghi 14
Hình 8: Cơ chế kết nối giữa thiết bị di động và Web server 16
Hình 9: Mối quan hệ giữa các giao diện hỗ trợ cho lập trình mạng trong J2ME 16
Hình 10: Mô hình dịch vụ SMS 19
Hình 11: Các thành phần của hệthống 20
Hình 12: Biểu đồ các ca sử dụng 23
Hình 13: Biểu đồ lớp mức tổng thể 27
Hình 14: Biểu đồ lớp Location 28
Hình 15: Biểu đồ lớp Zone 28
Hình 16: Biểu đồ lớp DataRMS 29
Hình 17: Biểu đồ lớp DisplayManager 29
Hình 18: Cơ chế hoạt động của Stack 30
Hình 19: Biểu đồ lớp BaseForm 30
Hình 20: Các lớp kế thừa từ BaseForm 31
Hình 21: Biểu đồ lớp SettingForm 32
Hình 22: Biểu đồ lớp DetailForm 32
vii
Hình 23: Biểu đồ các lớp Sender và Receiver 33
Hình 24: Màn hình chính của SMS Gateway giả lập 34
Hình 25: Màn hình chính ứngdụngClient 35
Hình 26: Màn hình xem danh sách địa điểm và khu vực 35
Hình 27: Màn hình quản lý địa điểm 36
Hình 28: Màn hình tìm kiếm địa điểm 37
Hình 29: Màn hình thiết lập cấu hình 38
Hình 30: Màn hình chờtin nhắn đến trên SMS Gateway 39
Hình 31: Tin nhắn nhận được trên SMS Gateway 39
Hình 32: Hiển thị tin nhắn nhận được lên màn hình 40
Hình 33: Màn hình chọn tình trạng địa điểm 41
Hình 34: Cú pháp tin nhắn cập nhật địa điểm 41
Hình 35: Màn hình hướng dẫn sử dụng 42
DANH SÁCH BẢNG
Bảng 1: Danh sách các ca sử dụng 24
Bảng 2: Mô tả ca sử dụng Danh sách địa điểm 24
Bảng 3: Mô tả ca sử dụng Danh sách địa điểm khu vực 25
Bảng 4: Mô tả ca sử dụng Tìm kiếm địa điểm 25
Bảng 5: Mô tả ca sử dụng Quản lý địa điểm 26
Bảng 6: Mô tả ca sử dụng Gửi tin nhắn SMS 26
Bảng 7: Mô tả ca sử dụng Hướng dẫn sử dụng 26
1
Chương 1. Mở đầu
Giao thông thực sự đang là một vấn đề mà cả xã hội đang rất quan tâm. Hiện nay,
dân số tập trung quá nhiều các khu vực thành thị, nội đô cũng như mật độ các phương tiện
giao thông gia tăng một cách chóng mặt trong khi cơ sở hạ tầng hiện tại đang trong giai
đoạn từng bước quy hoạch lại. Vấn đề này kéo theo hệ quả của nó là tình hình giaothông
ở các khu vực thành phố phát triển luôn trong tình trạng căng thẳng. Điều này cũng là dễ
hiểu đối với một đất nước đang phát triển như chúng ta.
Trong khi chờ đợi cơ sở hạ tầng được qui hoạch tốt hơn, thì hằng ngày chúng ta vẫn
phải lo lắng mỗi lần tham gia giao thông. Hiện nay có không ít giải pháp hỗ trợ cho việc
thông tin đến người tham gia giaothông tình hình giaothông ở những điểm nóng mà họ
quan tâm, trong số đó phổ biến nhất có lẽ là thông qua đài tiếng nói Việt Nam, kênh VOV
Giao thông. Không thể phủ nhận những hiệu quả mà kênh thôngtin này làm được. Tuy
nhiên, không phải bất kỳ ai cũng có có điều kiện theo dõi radio mọi lúc mọi nơi được.
Với mong muốn có thể đưa được thôngtin tình hình giaothông tới nhiều người dân
để giúp họ chủ động hơn trong việc tham gia giao thông, chúng tôi lựa chọn đề tài “Hệ
thống thôngtingiaothông qua SMS” với mục tiêu xâydựng một hệthống cung cấp thông
tin về các địa điểm, các tuyến đường cho người sử dụngthông qua hệthốngtin nhắn
SMS. Chúng ta thấy rằng hiện nay điện thoại di động đã thực sự trở thành thiết bị cá nhân
rất phổ biến. Tin nhắn SMS cũng rất quen thuộc với người dùng di động, vì mức độ đơn
giản của nó.
Khóa luận này sẽ nghiên cứu tìm hiểu công nghệ lập trình ứngdụngcho điện thoại
di động J2ME, các kiến thức cơ bản về dịch vụ nhắn tin SMS. Sau đó ở phần cuối ứng
dụng sẽ xâydựng phần Clientchohệthốngthôngtingiao thông.
Mặc dù để triển khai ứngdụng đi vào thực tế, sẽ còn nhiều vấn đề cần xem xét giải
quyết, tuy nhiên khóa luận cũng đã giới thiệu đầy đủ những kiến thức cần thiết về J2ME
để có thể xâydựng một ứngdụng đơn giản. Chương trình demo phần Client của hệthống
thông tingiaothông đã được cài đặt và cho kết quả tốt trên thiết bị giả lập.
Khóa luận được chia thành 7 chương:
2
Chương 1 giới thiệu tổng quan về mục đích và ý nghĩa của khóa luận.
Chương 2 sẽ trình bày một cách khái quát về J2ME. Trong phạm vi khóa luận, tôi
chỉ giới thiệu các vấn đề đã nghiên cứu, tìm hiểu trong quá trình xâydựngứngdụng
Client.
Chương 3 sẽ dành để nói về dịch vụ tin nhắn SMS, lịch sử, hiệu quả kinh tế, và cơ
chế hoạt động của dịch vụ này.
Các chương 4,5,6 trình bày về quá trình phân tích, thiết kế để xâydựngứng dụng.
Chương 7 kết luận những vấn đề đã giải quyết được hay hướng phát triển, triển khai
cho hệ thống.
3
Chương 2. Lập trình ứngdụngcho điện thoại di động với J2ME
2.1. Tổng quan về J2ME
2.1.1. Giới thiệu J2ME
Java là một ngôn ngữ lập trình bậc cao hướng đối tượng được Sun giới thiệu rộng rãi
từ tháng 5 năm 1995. Sự kiện này đã tạo nên một cuộc cách mạng trong tư duy lập trình
và hướng giải quyết vấn đề của các nhà phát triển. Bộ công cụ phát triển Java (Java
Development Kit) phiên bản đầu tiên cũng được Sun công bố ngay sau đó vào tháng 2
năm 1996, tạo thuận lợi cho việc tạo ra các chương trình Java.
Cùng với sự phát triển lớn mạnh nhờ vào những tính năng ưu việt như hỗ trợ lập
trình hướng đối tượng, đáp ứng đa nền tảng, đến tháng 12 năm 1998, Sun công bố Java 2,
với ba phiên bản khác nhau: Standard Edition (J2SE) cho các máy tính để bàn và xách
tay, Enterprise Edition (J2EE) cho các máy chủ lớn, và Micro Edition (J2ME) cho các
thiết bị nhỏ. Thực chất J2ME được phát triển từ kiến trúc Java Card, Embeded Java và
Personal Java của phiên bản Java 1.1. Đến sự ra đời của Java 2 thì Sun quyết định thay
thế Personal Java và được gọi với tên mới là Java 2 Micro Edition, hay viết tắt là J2ME.
Thực tế, J2ME là một nền tảng, một bộ các công nghệ và các đặc tả được thiết kế cho thị
trường các thiết bị nhỏ khác nhau. Java ME bao gồm cấu hình – configuration, hiện trạng
– profiles và các gói tùy chọn khác. Các cấu hình là các đặc tả chi tiết một máy ảo và một
bộ các giao diện lập trình API cơ sở dùngcho mọt lớp các thiết bị cụ thể. Ví dụ, một cấu
hình được thiết kế cho các thiết bị có bộ nhớ dưới 512KB và một kết nối mạng hay bị
gián đoạn. Máy ảo trong trường hợp này có thể là JVM đầy đủ hoặc một tập con của
JVM.
Hiện trạng được xâydựng trên một cấu hình cụ thể nhưng có bổ sung các đặc tả API
để tạo ra một môi trường hoàn chỉnh cho việc phát triển các ứng dụng. Mặc dù cấu hình
mô tả một máy ảo JVM và một tập API cơ sở, nhưng tự bản thân nó lại không đủ chi tiết
để cho phép xâydựng một ứngdụng hoàn chỉnh. Các cấu hình thường bao gồm các API
cho vòng đời của một ứng dụng, các giao diện người dùng và cơ chế lưu trữ cố định.
Các gói tùy chọn cung cấp các hàm không có trong cấu hình hay hiện trạng cụ thể.
Một ví dụ của gói tùy chọn là Bluetooth API (JSR 82), nó cung cấp các giao diện chuẩn
[...]... thành phần của hệ thốngHệthống thông tingiaothông có hai phần chính: Client và Server Phần Client là một ứngdụng được cài đặt trên điện thoại di động, có giao diện đơn giản cho phép người dùng dễ dàng tìm kiếm các địa điểm và tuyến đường mà họ quan tâm để tra cứu thông tinỨngdụng cũng hướng dẫn người sử dụng có thể nhắn tin thuần văn bản với cú pháp đơn giản tới đầu số của tổng đài hệthống Phần... Server là một ứngdụng được xâydựng trên nền Web Cơ sở dữ liệu cho toàn hệthống sẽ do Server cập nhật và quản lý Ứngdụng Server cũng sẽ cung cấp giao diện web với đầy đủ chức năng cho phép người dùng truy cập tra cứu trực tuyến tình hình giaothông Khi nhận được tin nhắn tra cứu của Clientthông qua tổng đài SMS gateway, Server có nhiệm vụ thông qua gateway này gửi một tin nhắn phản hồi thông báo về... VOV giao thông, một kênh thôngtin đáng tin cậy Ngoài ra, hệthống cũng cho phép nhận tin nhắn góp ý hay thông báo tình hình giaothông từ người dùng di động Khi đó, tin nhắn sẽ được xử lý để tự động cập nhật cơ sở dữ liệu Mặc dù nguồn thôngtin này không thực sự đảm bảo, nhưng nó được xem xét là phương hướng chiến lược để kích thích người dùng sự dụng hệ thống, cũng như làm tăng tính cộng đồng cho. .. với đầy đủ giao diện các chức năng Server và Client sẽ trao đổi thôngtinthông qua giao thức truyền nhận SMS với nhà cung cấp tổng đài thứ 3 Ứngdụng được phân tích, thiết kế và xâydựng theo phương pháp hướng đối tượng Vì lý do độ phức tạp của ứngdụng không lớn, cơ sở dữ liệu chỉ lưu thôngtin về tuyến đường và khu vực ngay trên điện thoại di động nên tôi chỉ sử dụng biểu đồ ca sử dụngcho việc phân... các gói tin ngắn Tuy nhiên lượng thôngtin có thể gửi cùng một lúc được giới hạn trong một kích thước nhất định Điều này còn phụ thuộc vào ngôn ngữ mà thiết bị hỗ trợ, nhưng đối với chữ cái Latinh thì khoảng 150 ký tự 8 Nguồn từ http://www.alexfactoryillustration.com/how-sms-working.html#more-96 19 Chương 4 Ứng dụnghệthống giao thôngcho thiết bị di động sử dụng SMS 4.1 Mô tả hoạt động của hệ thống: ... mức cao (High Level Graphics) : Về mục đích tạo ra một ứngdụng demo đơn giản với đầy đủ chức năng đáp ưng được yêu cầu của hệ thống, khóa luận này chỉ giới hạn nghiên cứu tìm hiểu việc sử dụng các lớp giao diện đồ họa mức cao Còn các lớp xâydựng đồ họa mức thấp phù hợp cho các ứngdụng trò chơi có giao diện động phức tạp Do vậy cơ sở lý thuyết cho phần đồ họa mức thấp sẽ được đề cập đến trong những... Hiện trạng định nghĩa loại của các thiết bị được hỗ trợ bởi ứngdụng của bạn Một cách cụ thể là, nó thêm vào các lớp chuyên dụngcho cấu hình J2ME để định nghĩa các sử dụng xác định cho các thiết bị Hiện trạng được xâydựng ở trên cấu hình Hai hiện trạng được định nghĩa cho J2ME và được xây dựng trên CLDC: Kjava và Hiện trạng thiết bị thôngtin di động (Mobile Information Device Profile – MIDP) Các... MicroEdtion-Configuration // Phiên bản cấu hình Tập tin JAD và tập tin kê khai (manifest.mf) mô tả các đặc điểm của MIDlet Tập tin kê khai được đóng gói trong tập tin JAR trong khi tập tin JAD thì không Việc tách rời tập tin JAD với JAR cho phép thiết bị có thể xác định được đặc điểm của ứngdụng MIDlet trước khi tải tập tin JAR về máy Như vậy, nếu người dùng muốn download một ứngdụng không được thiết bị di động hỗ... một tập tin JAR (Java Archive File) Đây chính là tập tin JAR được tải xuống điện thoại di động Tập tin JAR chứa tất cả các tập tin đã biên dịch thành tập tin class từ một hay nhiều MIDlet, cũng như các tài nguyên cần thiết Hiện tại, MIDP chỉ hỗ trợ định dạng hình png (Portable Network Graphics) Tập tin JAR cũng chứa tập tin kê khai (manifest file) mô tả nội dung của MIDlet cho bộ quản lý ứngdụng Nó... đồng cho người tham gia giaothông 20 Client và Server sẽ giao tiếp với nhau thông qua một tổng đài SMS Đây là mô hình khá phổ biến hiện nay với rất nhiều loại hình dịch vụ giá trị gia tăng sử dụng SMS SMS Gateway là cổng kết nối tới các nhà khai thác mạng viễn thông di động (Vinaphone, MobiFone, Sfone, Viettel, EVN, Beeline ) cho phép các đối tác tổ chức những chương trình sử dụngtin nhắn SMS, MMS làm . giao thông, giúp người dân chủ
động hơn khi tham gia giao thông, mục tiêu của khóa luận này là xây dựng ứng dụng
Client cho hệ thống thông tin giao thông. . thông tin giao thông qua SMS” với mục tiêu xây dựng một hệ thống cung cấp thông
tin về các địa điểm, các tuyến đường cho người sử dụng thông qua hệ thống tin