1. Trang chủ
  2. » Luận Văn - Báo Cáo

nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide

53 711 0

Đ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

Thông tin cơ bản

Tiêu đề Nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
Tác giả Nguyễn Thanh Xuân
Người hướng dẫn ThS. Nguyễn Việt Anh
Trường học Đại Học Quốc Gia Hà Nội
Chuyên ngành Mạng và truyền thông máy tính
Thể loại Khóa luận tốt nghiệp đại học
Năm xuất bản 2010
Thành phố Hà Nội
Định dạng
Số trang 53
Dung lượng 852,35 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ứng dụng ñã ñáp ứng ñược những chức năng cần thiết nhất trong việc xem bản ñồ, cung cấp thông tin theo ngữ cảnh về Đại học Quốc gia Hà Nội... Ngoài ra ứng dụng phải cung cấp thông tin cầ

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Thanh Xuân

NGHIÊN CỨU LẬP TRÌNH ỨNG DỤNG CHO CÁC THIẾT BỊ DI ĐỘNG ÁP DỤNG CHO BÀI TOÁN

Trang 2

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Thanh Xuân

NGHIÊN CỨU LẬP TRÌNH ỨNG DỤNG CHO CÁC THIẾT BỊ DI ĐỘNG ÁP DỤNG CHO BÀI TOÁN

CAMPUS GUIDE

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Mạng và truyền thông máy tính

Cán bộ hướng dẫn: ThS Nguyễn Việt Anh

HÀ NỘI - 2010

Trang 3

LỜI CẢM ƠN

Em xin chân thành cảm ơn các thầy cô giáo trong trường Đại học Công nghệ -

Đại học Quốc gia Hà Nội ñã tận tình giúp ñỡ và truyền ñạt kiến thức cho em trong suốt

4 năm học qua ñể em có ñủ kiến thức hoàn thành khóa luận này

Đặc biệt, em xin gửi lời cảm ơn sâu sắc tới thầy Nguyễn Việt Anh – người ñã

nhiệt tình giúp ñỡ, ñịnh hướng cũng như ñộng viên em trong quá trình nghiên cứu và hoàn thành khóa luận

Em xin cảm ơn sự nhiệt tình chia sẻ kinh nghiệm, ñóng góp ý kiến của nhóm nghiên cứu do thầy Nguyễn Việt Anh hướng dẫn, của các anh chị cao học

Mặc dù ñã rất cố gắng hoàn thành khóa luận này, xong khóa luận sẽ khó tránh khỏi những thiếu sót, kính mong quý thầy cô tận tình chỉ bảo giúp em Một lần nữa em xin cảm ơn tất cả mọi người

Hà Nội, tháng 5 năm 2010

Sinh viên Nguyễn Thanh Xuân

Trang 4

TÓM TẮT

Khóa luận tập trung nghiên cứu và phân tích một số vấn ñề sau:

- Tìm hiểu về công nghệ J2ME, Web service, Servlet, bản ñồ

- Áp dụng xử lý dữ liệu theo ngữ cảnh vào các bài toán thực tế

- Xây dựng thành công chương trình “Hướng dẫn cung cấp thông tin về Đại học Quốc gia Hà Nội - VNU Campus Guide” Ứng dụng ñã ñáp ứng ñược những chức năng cần thiết nhất trong việc xem bản ñồ, cung cấp thông tin theo ngữ cảnh về Đại học Quốc gia Hà Nội

Trang 5

MỤC LỤC

CHƯƠNG 1 MỞ ĐẦU 1

1.1 Lý do chọn ñề tài 1

1.2 Nhiệm vụ nghiên cứu 1

1.3 Bố cục của khóa luận 2

CHƯƠNG 2 BÀI TOÁN 3

2.1 Bài toán 3

2.2 Mô tả 3

2.3 Mô hình ñề xuất 4

2.3.1 Mô hình người sử dụng 4

2.3.2 Yếu tố ngữ cảnh 5

2.3.3 Mô hình nội dung 7

2.3.4 Các cách cài ñặt cây thông tin 9

2.3.5 Luật lựa chọn thông tin cung cấp cho từng người dùng 10

CHƯƠNG 3 PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH VNU CAMPUS GUIDE 11

3.1 Phân tích 11

3.1.1 Phân tích các yêu cầu chức năng 11

3.1.1.a Đăng nhập, ñăng ký 11

3.1.1.b Xem bản ñồ 11

3.1.1.c Tìm kiếm ñịa ñiểm 11

3.1.1.d Danh sách trường, khoa 11

3.1.1.e Trợ giúp 11

3.1.1.f Xem chi tiết 12

3.1.2 Đối tượng sử dụng 12

3.2 Thiết kế cơ sở dữ liệu 12

3.2.1 Sơ ñồ dữ liệu 12

3.2.2 Chi tiết thiết kế cơ sở dữ liệu 13

3.2.3 Mô tả cây thông tin 14

3.3 Mô hình kết nối 16

3.4 Chức năng của ứng dụng Midlet 17

Trang 6

3.4.2 Luồng xử lý chương trình 18

3.4.2.a Các chức năng chính 20

3.4.2.b Luồng chương trình 24

3.5 Chức năng phía Server 25

3.5.1 Web service 25

3.5.2 Servlet 26

3.6 Các Module xử lý 26

3.6.1 Phía client 26

3.6.1.a Gói hello 26

3.6.1.b Gói campusservice 27

3.6.1.c Gói data 27

3.6.2 Phía server 28

3.6.2.a GetMysqlConnection.java 28

3.6.2.b CampusHttpServer.java 28

3.6.2.c Campus.java 28

CHƯƠNG 4 CÔNG NGHỆ SỬ DỤNG 29

4.1 Lĩnh vực ứng dụng không dây với công nghệ Java 29

4.1.1 Các phiên bản Java 2 29

4.1.2 Java 2 Enterprise Edition 29

4.1.3 Java 2 Micro Edition 30

4.1.3.a Các kiểu ứng dụng MIDP 30

4.1.3.b Hạn chế của các thiết bị di ñộng 31

4.2 Lập trình Web Service với MIDP 31

4.2.1 Dịch vụ Web (Web service) 31

4.2.1.a Định nghĩa 31

4.2.1.b Các ñặc ñiểm chính của dịch vụ We: 32

4.2.1.c Tại sao dùng dịch vụ Web 32

4.2.1.d Các thành phần cơ bản 32

4.2.2 WSDL 32

4.2.3 UDDI 35

4.2.4 SOAP 35

Trang 7

4.3.1.a Các thuộc tính của ảnh SVG 38

4.3.1.b Các chức năng và ñặc trưng 39

4.3.1.c Ưu ñiểm 39

4.3.1.d Nhược ñiểm 40

4.3.2 SVG tiny 40

4.3.3 Xử lý các ñối tượng trong ảnh SVG 40

CHƯƠNG 5 CÀI ĐẶT VÀ THỬ NGHIỆM 41

5.1 Yêu cầu 41

5.2 Cài ñặt 41

5.3 Thử nghiệm chương trình 41

CHƯƠNG 6 KẾT LUẬN 45

6.1 Kết quả ñạt ñược 45

6.2 Hướng phát triển 45

TÀI LIỆU THAM KHẢO 46

Trang 8

CHƯƠNG 1 MỞ ĐẦU 1.1 Lý do chọn ñề tài

Công nghệ thông tin là một phần quan trọng của cuộc sống Các thiết bị kỹ thuật cao ngày càng gần gũi với mọi hoạt ñộng của con người Đặc biệt những năm gần ñây, các thiết bị không giây - với ưu thế nhỏ gọn, dẽ mang chuyển, ñã chứng tỏ ñược lợi ích

to lớn cho người sử dụng Trong ñó ñiện thoại di ñộng, với chức năng liên lạc nổi bật lên như một vật bất ly thân Với sự phát triển nhanh chóng của công nghệ sản xuất thiết bị không dây, ñiện thoại di ñộng ñã trở thành phương tiện ña chức năng(nghe nhạc, chơi trò chơi, lịch làm việc ) phục vụ cho nhu cầu giải trí, làm việc, cập nhật thông tin mọi lúc, mọi nơi

Trong cuộc sống, nhu cầu liên lạc, cập nhật thông tin là hết sức cần thiết Hiện nay có rất nhiều phương pháp liên lạc khác nhau như thư ñiện tử, ñiện thoại ñể bàn,

ñiện thoại di ñộng, kết nối Wi-fi, WiMax… Trong ñó, ñiện thoại di ñộng nổi bật với

sự tiện lợi, hữu ích Nhờ chức năng ñàm thoại trực tiếp mọi lúc mọi nơi, mà ñiện thoại

di ñộng ngày càng ñược sử dụng rộng rãi Điện thoại di ñộng là thiết bị phát triển nhanh chóng nhất cả về công nghệ lẫn tính năng, ứng dụng Ngày nay, hầu như mỗi người ñều mang theo bên mình một chiếc ñiện thoại di ñộng

Nhu cầu tìm hiểu về Đại học Quốc Gia Hà Nội cũng như các trường ñại học thành viên là cần thiết Bên cạnh ñó, do khuôn viên rộng, có nhiều tòa nhà ñịa ñiểm nên nhu cầu tìm vị trí tòa nhà là cần thiết Việc phát triển ứng dụng trên ñi dộng cho hướng dẫn trong khuôn viên Đại học Quốc Gia Hà Nội rất hữu ích Người dùng có thể ngay lập tức tìm ñược ñịa ñiểm bất cứ lúc nào

Vì những lý do này, em quyết ñịnh thực hiện ñề tài “VNU Campus Guide – hướng dẫn, thông tin về Đại học Quốc Gia Hà Nội – trên nền J2ME”

1.2 Nhiệm vụ nghiên cứu

Đề tài cần giải quyết những nhiệm vụ sau:

Thứ nhất: Xây dựng ứng dụng chính trên nền J2ME Ứng dụng cần hiển thị ñược

bản ñồ khuôn viên Đại học Quốc Gia Hà Nội, lấy thông tin về trường từ server

Thứ hai: Cần xây dựng một ứng dụng Web server cung cấp, xử lý thông tin cho

Trang 9

Thứ ba: Tìm hiểu thông tin, tổ chức thông tin phù hợp ñể cung cấp cho người

dùng với ngữ cảnh khác nhau:

Người dùng khác nhau (sinh viên, khách tham quan, …)

Thời gian xem thông tin

1.3 Bố cục của khóa luận

Khóa luận gồm 5 chương

- Chương 1 Mở ñầu

Nêu khái quát ñề tài, nhiệm vụ nghiên cứu

- Chương 2 Bài toán

Nêu bài toán, các yếu tố ngữ cảnh, mô hình ñề xuất

- Chương 3 Phân tích thiết kế chương trình VNU Campus Guide

Thiết kế chi tiết mô tả hệ thống VNU Campus Guide

- Chương 4 Công nghệ

Trình bày các công nghệ dùng trong hệ thống VNU Campus Guide: J2ME, J2EE, công nghệ bản ñồ

- Chương 5 Cài ñặt và thử nghiệm

Chi tiết cách cài ñặt, triển khai chương trình, các kết quả thử nghiệm chương trình

Trang 10

CHƯƠNG 2 BÀI TOÁN 2.1 Bài toán

Khuôn viên Đại học Quốc gia Hà Nội rộng với nhiều tòa nhà, một sinh viên mới hay khách tham quan chưa biết ñược vị trí các tòa nhà, ñịa ñiểm Thông tin chi tiết mô

tả về các trường, khoa trong Đại học Quốc gia cũng cần thiết ñối với họ Một bảng chỉ dẫn ñơn thuần không thể thỏa mãn nhu cầu tìm hiểu thông tin

Ngày nay, hầu hết mọi người ñều có bên mình chiếc ñiện thoại di ñộng nhỏ gọn, nhiều chức năng Với sự phát triển công nghệ như ngày nay, các thiết bị di ñộng ngày càng ña dạng, năng lực xử lý càng tăng Việc xây dựng các ứng dụng cho thiết bị di

ñộng ngày càng trở lên dễ dàng hơn

Vì vậy việc một ứng dụng cho phép mọi người dễ dàng xác ñịnh tòa nhà, ñịa

ñiểm ở vị trí nào trong khuôn viên là cần thiết Ngoài ra ứng dụng phải cung cấp thông

tin cần thiết cho người dùng theo ngữ cảnh

2.2 Mô tả

Mục tiêu của chương trình là người dùng tìm kiếm ñịa ñiểm, truy xuất thông tin cần thiết về các trường, khoa trong Đại học Quốc gia nếu họ có ñiều kiện sở hữu một chiếc ñiện thoại di ñộng hỗ trợ ứng dụng Java

Cần có giao diện cho phép người dùng xem bản ñồ khu vực ñể xác ñịnh các tòa nhà, ñịa ñiểm trong Đại học Quốc gia Hà Nội

Mỗi người dùng ñều có nhu cầu tìm hiểu thông tin khác nhau, vì thế lượng thông tin cung cấp cho từng người cũng phải khác nhau

Các thông tin cung cấp phải tùy thuộc vào người dùng và thông tin cũng như lượng thông tin ñã xem trong quá khứ

Trang 11

2.3 Mô hình ñề xuất

Mục tiêu của nghiên cứu là phát triển một ứng dụng giúp mọi người có thể dễ dàng truy cập thông tin, tìm hiểu về Đại học Quốc gia ở bất cứ ñâu, bất cứ lúc nào chỉ với một thiết bị di dộng hỗ trợ Java và có khả năng kết nối Internet

Hệ thống sẽ cung cấp thông tin, hình ảnh, chỉ dẫn phù hợp với ngữ cảnh Bên cạnh ñó trong quá trình hoạt ñộng hệ thống sẽ tự ñộng nhận biết sự thay ñổi ngữ cảnh

ñể thay ñổi nội dung cho phù hợp

Mỗi khi người dùng yêu cầu lấy thông tin, hệ thống sẽ lấy thông tin, yêu cầu của người dùng ñể cập nhật thông tin ngữ cảnh Thông tin ngữ cảnh này sẽ ñược một luật lựa chọn thông tin sử dụng Sau khi chọn lựa ñược thông tin, chương trình sẽ thay ñổi ngữ cảnh như lịch sử xem thông tin …

2.3.1 Mô hình người sử dụng

Mỗi người dùng có nhiều thông tin cá nhân cũng như thông tin về môi trường khác nhau, rất nhiều yếu tố ảnh hưởng nhưng ta chỉ chọn những yếu tố chính, quan trọng ảnh hưởng ñến ngữ cảnh người dùng

Các tác nhân thể hiện ngữ cảnh của người sử dụng:

N ộ i dung theo

ng ữ c ả nh

H ệ th ố ng

Thông tin yêu c ầ u

X ử lý thông tin

Trang 12

Vị trí: là thông tin thực về vị trí hiện tại của người dùng Ta có thể biểu diễn nó

theo kinh ñộ và vĩ ñộ Do vị trí của người dùng thay ñổi thường xuyên nên việc xác

ñịnh vị trí của người dùng là ñược ưu tiên Có nhiều cách ta có thể xác ñịnh ñược vị

trí hiện tại của người sử dụng như sử dụng công nghệ ñịnh vị A-GPS, E-OTD hay Cell-ID hoặc TOA… Ngoài ra, location còn bao gồm cả các thông tin không gian, và

vị trí hiện tại của người sử dụng

Thời gian: Thời gian ở ñây là thời gian sử dụng chương trình, mỗi người dùng

có ñộ tập trung cũng như lượng thời gian có thể dùng ñể xem thông tin khác nhau

Thông tin người dùng: Mỗi người dùng có thông tin khác nhau, lượng thông tin

cung cấp cho các ñối tượng người dùng khác nhau cũng phải khác nhau phù hợp với

ñộ tuổi, sở thích…

Lịch sử xem thông tin: Mỗi khi xem một thông tin rồi thì người dùng thường

không muốn xem tiếp trong lần tiếp theo, do ñó cần lưu trữ lịch sử xem thông tin ñể xử

lý trong những lần tiếp theo

2.3.2 Yếu tố ngữ cảnh

"Bối cảnh là bất kỳ thông tin có thể ñược sử dụng ñể ñặc trưng cho hoàn cảnh

Lịch sử xem thông tin Thông tin

người dùng

Hình 2.2 Mô hình ng ườ i dùng

Trang 13

liên quan ñến sự tương tác giữa người sử dụng và một ứng dụng, bao gồm cả người dùng và ứng dụng chính họ" - Dey, Abowd & Salber [1]

Paul Dourish ñã nói rằng có hai góc nhìn khác nhau về ngữ cảnh [5]:

- Ngữ cảnh như một ñại diện

o Ngữ cảnh là một hình thức của thông tin Nó có thể ñược biết ñến (và do ñó mã hóa và biểu diễn như các thông tin khác trong các hệ thống phần mềm)

o Ngữ cảnh là có khả năng khoanh ñịnh Chúng ta có thể xác ñịnh những gì có giá trị như là bối cảnh của hoạt ñộng mà hỗ trợ ứng dụng

o Ngữ cảnh là ổn ñịnh Mặc dù các yếu tố chính xác của một biểu diễn ngữ cảnh

có thể khác nhau tùy theo ứng dụng, chúng không thay ñổi trong cách thể hiện của một hoạt ñộng hay một sự kiện Xác ñịnh sự liên quan của bất kỳ yếu tố tiềm năng theo ngữ cảnh có thể ñược thực hiện một lần và cho tất cả

o Ngữ cảnh và các hoạt ñộng ñược tách riêng Hoạt ñộng xảy ra “trong” một ngữ cảnh Ngữ cảnh mô tả các ñặc trưng của môi trường trong ñó các hoạt ñộng diễn ra, nhưng ñó là tách biệt với hoạt ñộng

- Ngữ cảnh như một tương tác

o Thay vì xem xét ngữ cảnh ñể ñược thông tin, ngữ cảnh ñược xem như một thuộc tính quan hệ ở giữa các ñối tượng hoặc các hoạt ñộng Nó không ñơn giản là trường hợp cái mà cái gì ñó là ngữ cảnh hoặc không, mà nó có thể hoặc không là theo ngữ cảnh liên quan ñến một số hoạt ñộng cụ thể

o Thay vì xem như ngữ cảnh có thể ñược khoanh ñịnh và ñược xác ñịnh trước, cách nhìn thay thế chỉ ra rằng phạm vi của các tính năng ñược ñịnh nghĩa ñộng

o Thay vì xem ngữ cảnh là ổn ñịnh, bối cảnh ñược xem rằng là cụ thể cho từng lần hoạt ñộng hoặc hành ñộng Bối cảnh là một thuộc tính thời ñiểm, có liên quan ñến các cài ñặt cụ thể, ñặc biệt trường hợp hành ñộng và các phần cụ thể

ñể hành ñộng

o Thay vì ñặt bối cảnh và nội dung thành hai thực thể riêng biệt, xem rằng bối cảnh phát sinh từ hoạt ñộng Bối cảnh không chỉ là “ở ñó”, mà là ñang ñược tạo ra, duy trì và ñưa ra trong quá trình hoạt ñộng

Ngữ cảnh chương trình:

Trang 14

- Thông tin người dùng: mỗi người dùng sẽ có thông tin khác nhau như: tên, kiểu người dùng, lượng thông tin cần xem…

- Vị trí: Vị trí người dùng ñược xác ñịnh dựa trên Location-Based Service hoặc do người dùng chủ ñộng lựa chọn Khi ở ví trị xác ñịnh, thông tin cung cấp sẽ tương

ứng với ñịa ñiểm ñó

- Thời gian xem thông tin: mức ñộ chi tiết của thông tin sẽ dựa vào thời gian người dùng muốn xem, người dùng có nhiều thời gian có thể xem thông tin với mức ñộ chi tiết cao hơn

- Lịch sử xem thông tin: Khi một người ñã xem một thông tin thì không cần thiết phải xem lại, do ñó cần loại bỏ tùy chọn xem thông tin ñó ở những lần sau

2.3.3 Mô hình nội dung

Thông tin sẽ ñược phân cấp theo mức ñộ chi tiết Để phân cấp theo mức ñộ chi tiết, ta chọn mô hình thông tin hình cây Mỗi nút sẽ có một lượng thông tin nhất ñịnh Tùy thuộc vào ngữ cảnh thì sẽ lấy thông tin ở một nhánh các nút khác nhau

Trang 15

- Đỉnh cây là một nút tương ứng với một phần thông tin

- Mức thứ 2 tương ứng với từng kiểu người dùng

- Mức thứ 3 tương ứng với từng topic của cho từng kiểu người dùng

- Mức thứ 4, 5, 6 tương ứng với 3 mức thông tin theo tùy chọn của người dùng

o Mức bốn: Mức thông tin 1, tóm tắt từng phần

o Mức năm: Mức thông tin 2, tiêu ñề từng ñoạn

o Mức sáu: Mức thông tin 3, nội dung từng ñoạn

Hình 2.3 Cây thông tin l ư u tr ữ v ề các tr ườ ng, khoa

Trang 16

2.3.4 Các cách cài ñặt cây thông tin

Thông tin về Trường, khoa cần tổ chức phân cấp theo mức ñộ chi tiết của thông tin Ngoài ra cần chia thông tin theo từng ñối tượng người dùng Do dó nên tổ chức theo mô hình cây

Cây có thể cài ñặt bởi các cách khác nhau Sau ñây, chúng ta trình bày hai phương pháp cài ñặt cây thông dụng nhất

Phương pháp 1: chỉ ra danh sách các ñỉnh con của mỗi ñỉnh

Với mỗi ñỉnh của cây, ta sử dụng một con trỏ trỏ tới một ñỉnh con của nó Và như vậy, mỗi ñỉnh của cây ñược biểu diễn bởi một cấu trúc gồm hai thành phần: một biến data lưu dữ liệu chứa trong ñỉnh ñó và một mảng child các con trỏ trỏ tới các ñỉnh con Cần có một con trỏ ngoài trỏ tới gốc cây root Giả sử mỗi ñịnh có nhiều nhất 4

ñỉnh con, ta có mô hình như sau:

Cách cài ñặt này thường không hiệu quả, tốn bộ nhớ do số lượng nút con của các nút là khác nhau, một nút có thể không có tối ña các nút con, do ñó con trỏ ñể trống

Phương pháp 2: chỉ ra con cả và em liền kề của mỗi ñỉnh

Thay vì sử dụng mảng con trỏ, ta chỉ sử dụng hai con trỏ: con trỏ firstChild trỏ tới ñỉnh con cả và con trỏ nextBrother trỏ tới em liền kề

Trang 17

Hình 2.5 Cài ñặ t cây s ử d ụ ng hai con tr ỏ

Với cách này, cây trong hình 3.1 ñược cài ñặt bởi CTDL như trong hình 3.2 Dễ dàng thấy rằng, xuất phát từ gốc ñi theo con trỏ firstChild hoặc con trỏ nextBrother, ta

có thể truy cập tới ñỉnh bất kỳ trong cây Ta có nhận xét rằng, các con trỏ nextBrother liên kết các ñỉnh tạo thành một danh sách liên kết biểu diễn danh sách các ñỉnh con của mỗi ñỉnh

Cách cài ñặt này hiệu quả hơn vì nó chỉ sử dụng 2 con trỏ, lượng bộ nhớ dư thừa

ít hơn Vì vậy chương trình sẽ dùng cách này ñể biểu diễn thông tin

2.3.5 Luật lựa chọn thông tin cung cấp cho từng người dùng

Khi chọn một trường, khoa thì sẽ ñi theo cây có ñỉnh tương ứng với trường, khoa

- Mức thời gian 1: Lấy tất cả thông tin trong cây ở mức bốn

- Mức thời gian 2: Lấy tất cả thông tin trong cây ở mức bốn và năm

- Mức thời gian 3: Lấy tất cả thông tin trong cây ở mức bốn, năm và sáu

Trang 18

CHƯƠNG 3 PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH VNU

CAMPUS GUIDE 3.1 Phân tích

3.1.1 Phân tích các yêu cầu chức năng

3.1.1.a Đăng nhập, ñăng ký

Thông tin của chương trình cung cấp theo ngữ cảnh Ngữ cảnh bao gồm cả thông tin người dùng, do ñó cần xác thực người dùng ñể ñưa ra lượng thông tin phù hợp Vì vậy cần yêu cầu Đăng nhập

Khi ñăng nhập cần tài khoản người dùng, do ñó cần yêu cầu Đăng ký tài khoản

ñối với người dùng mới

3.1.1.b Xem bản ñồ

Khuôn viên Đại học Quốc gia rộng với nhiều tòa nhà Cần có bản ñồ ñể người dùng có cái nhìn tổng quan, xác ñịnh, tìm kiếm ñịa ñiểm thích hợp Do ñó chương trình có màn hình chính thể hiện bản ñồ với các tương tác cơ bản như: dịch chuyển bản

ñồ, phóng to, thu nhỏ…

3.1.1.c Tìm kiếm ñịa ñiểm

Với nhiều tòa nhà trong khuôn viên thì khó có thể xác ñịnh ngay ñược một ñịa

ñiểm nào ñó, vì vậy cần có chức năng tìm kiếm ñịa ñiểm sau ñó hiển thị trên bản ñồ

3.1.1.d Danh sách trường, khoa

Người dùng có nhu cầu tìm hiểu thông tin có thể trực tiếp chọn Trường, khoa ñể xem thông tin

3.1.1.e Trợ giúp

Người dùng mới của chương trình có thể không quen và chưa biết chức năng nên cần có chức năng Trợ giúp cung cấp thông tin chương trình và hướng dẫn sử dụng

Trang 19

3.1.1.f Xem chi tiết

Khi chọn một ñịa ñiểm trên bản ñồ, người dùng muốn xem thông tin, chương trình cần ñưa ra thông tin về ñịa ñiểm, tòa nhà cũng như Trường, khoa quản lý ñịa

ñiểm ñó

Lượng thông tin cung cấp phải tùy thuộc vào ngữ cảnh: người dùng, lượng thông tin…

3.1.2 Đối tượng sử dụng

Hệ thống ñược xây dựng ñể hỗ trợ cho các nhóm sau:

- Khách tham quan: Những người muốn tham quan tìm hiểu về Đại học Quốc gia

- Sinh viên: Những sinh viên mới chưa biết và tìm hiểu ñược hết thông tin về Trường có thể sử dụng chương trình

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

3.2.1 Sơ ñồ dữ liệu

Cở sở dữ liệu ñược xây dựng trên hệ quản trị cơ sở dữ liệu mySql Các thông tin

về trường, khoa ñược lưu trữ theo hình cây, tương ứng với mỗi người dùng, các mức

ñộ khác nhau thì ñưa ra thông tin khác nhau Dữ liệu của hệ thống là dữ liệu mã

Unicode

Sơ ñồ cơ sở dữ liệu:

Trang 20

Các bảng cơ sở dữ liệu:

user (usrID, passwd, usrType)

owner (ownerID, ownerName, topInfoID, logo)

location (locID, locName, image, ownerID, description)

info (infoID, content, childID, brotherID)

log (logID, ownerID, usrID, topicID, level)

3.2.2 Chi tiết thiết kế cơ sở dữ liệu

Mô tả các bảng cơ sở dữ liệu:

1 user: Bảng lưu ñịnh danh người dùng và thông tin

B ả ng 3.1 H ồ s ơ ng ườ i dùng

usrID varchar(30) Định danh người dùng

Hình 3.1 S ơ ñồ bi ể u di ễ n các b ả ng trong c ơ s ở d ữ li ệ u

<pk>: Primary key, Khóa chính

<fk>: Foreign key, Khóa ngoài

user

usrID passwd usrType

varchar(30) varchar(30) int

varchar(10) varchar(500) varchar(10)

int int varchar(30)

<pk >

topicID varchar(10) level int

<fk>

<fk>

<pk>

logo blob

Trang 21

2 owner: Bảng lưu các trường ñại học và các khoa

B ả ng 3.2 Thông tin tr ườ ng, khoa

ownerID int Định danh trường, khoa

ownerName varchar(50) Tên trường, khoa

topInfoID varchar(10) Nút info ở ñỉnh cây lưu trữ thông tin

logo blob Logo của trường

3 location: Bảng lưu trữ thông tin về các ñịa ñiểm

B ả ng 3.3 Đị a ñ i ể m, tòa nhà

locID varchar(20) Định danh ñịa ñiểm

locName varchar(50) Tên ñịa ñiểm

image blob Ảnh của ñịa ñiểm

ownerID int Định danh của trường, khoa quản lý ñịa ñiểm này

description varchar(500) Mô tả ñịa ñiểm, thông tin các phòng (nếu là tòa nhà)

4 info: Bảng lưu trữ thông tin về các trường, khoa

B ả ng 3.4 Các b ả n ghi thông tin tr ườ ng, khoa

infoID varchar(10) Định danh nút info

content varchar(500) Nội dung của một nút

childID varchar(10) Định danh của nút con trưởng

brotherID varchar(10) Định danh nút em kề

5 log: Bảng lưu trữ lịch sử người dùng xem các topic của các ñịa ñiểm nào

B ả ng 3.5 L ị ch s ử ng ườ i dùng

logID int Định danh lịch sử, tự ñộng thêm vào

ownerID int Định danh trường, khoa

usrID varchar(30) Định danh người dùng

topicID varchar(10) Định danh nút là ñỉnh của 1 cây con chứa thông tin

trong từng topic (các nút trong bảng info)

3.2.3 Mô tả cây thông tin

Tất cả các thông tin về Trường, khoa ñược lưu trong bảng info Tổ chức cơ sở dữ liệu theo hình cây sẽ phân cấp thông tin thành nhiều mức, do ñó tùy người dùng chọn

sẽ xem thông tin theo mức nào

Trang 22

Cây thông tin lưu trữ theo kiểu con trưởng và em kề Mỗi bản ghi trong bảng info tương ứng một nút trong cây Mỗi nút trong cây có thông tin về con trưởng và em kề

Sơ ñồ tổ chức cây như sau:

info

info

infoID content brotherID childID

info

infoID content brotherID childID

info

infoID content brotherID childID

info

infoID content brotherID childID

infoID content brotherID childID

Hình 3.2 Mô hình t ổ ch ứ c cây thông tin

Trang 23

3.3 Mô hình kết nối

Hình 3.3 Mô hình k ế t n ố i

Ứng dụng viết trên ñiện thoại ñóng vai trò là client giao tiếp với server qua giao

thức HTTP Dựa vào giao thức HTTP các request từ phía client chuyển ñến server, server sẽ truy vấn ñến cơ sở dữ liệu MySQL và trả lại response tương ứng Gói tin

ñược ñược máy di ñộng gửi ñến webserver là những gói tin HTTP request, và thiết bị

di ñộng sẽ nhận ñược các HTTP response từ webserver

Các gói tin HTTP request và HTTP response này sẽ chứa bên trong các thông

ñiệp SOAP request và SOAP response tương ứng Các thông ñiệp SOAP sẽ chứa các

operation của web service dùng ñể xử lý kết nối ñến cơ sở dữ liệu tạo thành mô hình truy cập hàm từ xa RPC (Remote Procedure Call)

Đối với dữ liệu nhị phân như hình ảnh, âm thanh, thì việc truyền trực tiếp qua các

gói tin HTTP mà không phải qua giao thức SOAP sẽ nhanh và thuận tiện hơn Hình

ảnh sẽ ñược trả lại qua một servlet

Trang 24

3.4 Chức năng của ứng dụng Midlet

sử dụng chức năng này ñăng ký một tài khoản mới

- Xem chi tiết: Khi người dùng xem bản ñồ và chọn một ñịa ñiểm Sau ñó chọn

Xem chi tiết, chương trình sẽ ñưa ra tùy chọn xem chi tiết mô tả ñịa ñiểm hoặc xem thông tin về Trường, khoa quản lý ñịa ñiểm ñã chọn

người dùng chọn một trường, khoa thì hiển thị các tùy chọn khác ñể hiển thị thông tin

Trang 25

- Tìm ñịa ñiểm: Hiển thị danh sách các ñịa ñiểm trong bản ñồ, có một trường nhập

dữ liệu Khi người dùng nhập dữ liệu thì sẽ lọc ra các ñịa ñiểm phù hợp Khi chọn một ñịa ñiểm thì sẽ hiển thị ñịa ñiểm ñó trên bản ñồ

3.4.2 Luồng xử lý chương trình

(File ảnh flow.png )

Ngày đăng: 18/02/2014, 00:04

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Anind K. Dey, Gregory D. Abowd. Towards a Better Understanding of Context and Context-Awareness. Georgia Institute of Technology, 1999, tr 3-4 Sách, tạp chí
Tiêu đề: Towards a Better Understanding of Context and Context-Awareness
[2] Doug Tidwell, James Snell, Pavel Kulchenko. Programming Web Services with SOAP. 1st Edition, O'Reilly, 2001, tr 6, 15 Sách, tạp chí
Tiêu đề: Programming Web Services with SOAP
[3] Ethan Cerami. Web Services Essentials. 1st Edition, O'Reilly, 2002, tr 103, 135 Sách, tạp chí
Tiêu đề: Web Services Essentials
[4] J. David Eisenberg. SVG Essentials. 1st Edition, O'Reilly, 2002, tr 12 [4.3] Sách, tạp chí
Tiêu đề: SVG Essentials
[5] Paul Dourish. What we talk about when we talk about context. Volume 8 , Issue 1, 2004, tr 20-23 Sách, tạp chí
Tiêu đề: What we talk about when we talk about context

HÌNH ẢNH LIÊN QUAN

2.3. Mơ hình đề xuất - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
2.3. Mơ hình đề xuất (Trang 11)
Hình 2.2. Mơ hình người dùng - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
Hình 2.2. Mơ hình người dùng (Trang 12)
Hình 2.3. Cây thơng tin lưu trữ về các trường, khoa - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
Hình 2.3. Cây thơng tin lưu trữ về các trường, khoa (Trang 15)
theo mơ hình cây. - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
theo mơ hình cây (Trang 16)
Hình 2.5. Cài ñặt cây sử dụng hai con trỏ. - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
Hình 2.5. Cài ñặt cây sử dụng hai con trỏ (Trang 17)
Các bảng cơ sở dữ liệu: - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
c bảng cơ sở dữ liệu: (Trang 20)
Cây thông tin lưu trữ theo kiểu con trưởng và em kề. Mỗi bản ghi trong bảng info tương ứng một nút trong cây - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
y thông tin lưu trữ theo kiểu con trưởng và em kề. Mỗi bản ghi trong bảng info tương ứng một nút trong cây (Trang 22)
3.3. Mơ hình kết nối - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
3.3. Mơ hình kết nối (Trang 23)
Hình 3.4. Biểu ñồ phân rã chức năng - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
Hình 3.4. Biểu ñồ phân rã chức năng (Trang 24)
• signInForm là một Displayable thể hiện dưới dạng Form. Đây là màn hình đăng - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
sign InForm là một Displayable thể hiện dưới dạng Form. Đây là màn hình đăng (Trang 27)
- cmSignUp: Chuyển ñến màn hình đăng ký (signUpForm). - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
cm SignUp: Chuyển ñến màn hình đăng ký (signUpForm) (Trang 27)
• mainMenu là một Displayable thể hiện dưới dạng List. Đây là một màn hình thể - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
main Menu là một Displayable thể hiện dưới dạng List. Đây là một màn hình thể (Trang 28)
- SplashScreen.java: Lớp hiển thị màn hình chờ của chương trình trong một khoảng thời gian nhất ñịnh, thừa kế từ lớp javax.microedition.lcdui.Canvas - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
plash Screen.java: Lớp hiển thị màn hình chờ của chương trình trong một khoảng thời gian nhất ñịnh, thừa kế từ lớp javax.microedition.lcdui.Canvas (Trang 34)
- Hạn chế về kích thước màn hình: Màn hình của ñiện thoại di ñộng thường rất hạn chế về cả ñộ rộng màn hình và độ phân giải - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
n chế về kích thước màn hình: Màn hình của ñiện thoại di ñộng thường rất hạn chế về cả ñộ rộng màn hình và độ phân giải (Trang 38)
Hình 4.2. Kiến trúc dịch vụ Web. - nghiên cứu lập trình ứng dụng cho các thiết bị di động áp dụng cho bài toán campus guide
Hình 4.2. Kiến trúc dịch vụ Web (Trang 39)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w