Tải bản đầy đủ (.pdf) (53 trang)

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

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 (852.35 KB, 53 trang )

Đ I H C QU C GIA HÀ N I
TRƯ NG Đ Iz C CÔNG NGH
H

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

HÀ N I - 2010


Đ 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



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 hồ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 q trình nghiên c u và
hồ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 hồ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 q 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


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 tố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.


M CL 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 TỐN................................................................................................ 3
2.1.

Bài tố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
3.1.

................................................................................................................. 11

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.
3.2.

Đ i tư ng s d ng .............................................................................................. 12
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

3.4.1.

Các ch c năng c a ng d ng ............................................................................ 17


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
4.1.

D NG ..................................................................... 29


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

4.3.

4.3.1.

Cơng ngh b n đ .................................................................................................. 38
nh SVG ............................................................................................................. 38


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


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 khn 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 đ khn 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
ng d ng phía Client là thi t b di ñ ng. Server s d ng công ngh J2EE, WSDL. Tìm
hi u các cơng ngh đ k t n i t ng d ng trên thi t b di ñ ng ñ n Web server.
1


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.

2



CHƯƠNG 2.

BÀI TỐN

2.1. Bài tốn
Khn 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 khn 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 q kh .
Tính di đ ng
V i m t thi t b di đ ng có h tr Java, ngư i dùng có th s d ng chương trình

b t kỳ đâu, vào b t kỳ th i gian nào.
Tĩnh ng c nh
V i ng c nh ngư i dùng, ng c nh môi trư ng, lư ng thông tin cung c p s
khác nhau.

3


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 q 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.

H th ng
Thông tin
yêu c u

X lý
thông tin

Thông tin
ng c nh

Ngư i dùng
Lu t l a ch n
thông tin


N i dung theo
ng c nh

Thông tin
Trư ng, khoa

Hình 2.1. Mơ hình đ xu t xây d ng h th ng

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:

4


Th i gian

Ví tr

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

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 xun 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
c a m t th c th . Th c th là m t ngư i, ñ a ñi m, ho c ñ i tư ng ñó ñư c coi là có

5


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 q trình ho t đ ng.
Ng c nh chương trình:

6


-

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.

7


1

2

nút

4

6

nút

nút

nút

nút



nút








nút

nút

nút

Chia ra 2 nhánh tương
ng v i ki u ngư i dùng



nút

3

5

Đ nh ñư c g n v i m t
trư ng, khoa

Đ nh cây

M c topic: chia ra
nhi u topic khác




M c thơng tin 1:
Tóm t t t ng ph n.

M c thơng tin 2:
Tiêu đ các đo n





M c thơng tin 3:
N i dung các đo n

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

-

Đ 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.

8


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. Ngồ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:
root
A

A

A

A


A

A

A

Hình 2.4. Cài đ t cây b i m ng con tr

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 .

9


root
A

B

C

D

E

F


G

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
đó.
Đ i v i t ng ki u ngư i dùng s ñi theo nhánh tương ng
topic khác nhau m c 3.

m c 2. Ta s có các

Khi l a ch n m t topic v i th i gian tương ng, thông tin s ñư c l y
c a topic như sau:
-

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.

10

nhánh


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 đ

Khn 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 khn 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.

11


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:

12


location
locID
locName
image
ownerID
description

user
usrID
varchar(30)
passwd varchar(30)
usrType int

varchar(20)
varchar(50)
blob
<fk >
int
varchar(500)

logID

ownerID
usrID
topicID
level

infoID
content
childID
brotherI

ownerID
ownerName
topInfoID
logo

log

int
<fk>
int
varchar(30)<fk>
varchar(10)
int

info
varchar(10)
varchar(500)
varchar(10) <fk >
varchar(10) <fk >


owner

int
varchar(50)
varchar(10)
blob

: Primary key, Khóa chính
<fk>: Foreign key, Khóa ngồi
Hình 3.1. Sơ đ bi u di n các b ng trong cơ s d

li u

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

Tên field
usrID
passwd
usrType


Ki u d li u
varchar(30)
varchar(30)
int

Mô t
Đ nh danh ngư i dùng
M t kh u
Ki u ngư i dùng, 1: Sinh viên, 2: Khách tham quan

13


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

Tên field
ownerID
ownerName
topInfoID
logo

Ki u d li u
int
varchar(50)
varchar(10)
blob

Mô t
Đ nh danh trư ng, khoa

Tên trư ng, khoa
Nút info ñ nh cây lưu tr thông tin
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à

Tên field
locID
locName
image
ownerID
description

Ki u d li u
varchar(20)
varchar(50)
blob
int
varchar(500)

Mơ t
Đ nh danh đ a đi m
Tên ñ a ñi m
nh c a ñ a ñi m
Đ nh danh c a trư ng, khoa qu n lý đ a đi m này
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


Tên field
infoID
content
childID
brotherID

Ki u d li u
varchar(10)
varchar(500)
varchar(10)
varchar(10)

Mô t
Đ nh danh nút info.
N i dung c a m t nút
Đ nh danh c a nút con trư ng
Đ 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

Tên field
logID
ownerID
usrID

Ki u d li u
int
int

varchar(30)

topicID

varchar(10)

ngư i dùng

Mô t
Đ nh danh l ch s , t ñ ng thêm vào.
Đ nh danh trư ng, khoa
Đ nh danh ngư i dùng
Đ 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.

14


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
infoID
content
brotherID

childID

info
infoID
content
brotherID
childID

info
infoID
content
brotherID
childID

info
infoID
content
brotherID
childID

info
infoID
content
brotherID
childID

info
infoID
content
brotherID

childID



Hình 3.2. Mơ hình t ch c cây thông tin

15



info
infoID
content
brotherID
childID




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.

16


3.4. Ch c năng c a ng d ng Midlet
3.4.1. Các ch c năng c a ng d ng

Hình 3.4. Bi u ñ phân rã ch c năng

Khi ngư i dùng m

ng d ng, chương trình s hi n th màn hình ch trong m t

kho ng th i gian, sau đó s vào màn hình đăng nh p. Sau khi đăng nh p, chương trình
s chuy n đ n màn hình chính hi n th b n đ khn viên Đ i h c Qu c Gia Hà N i.
Các ch c năng chính:
-

Đăng ký: Ngư i dùng m i s d ng c n có tài kho n ñ s d ng chương trình s
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.

-

Tìm trư ng, khoa: Hi n th danh sách các trư ng, khoa trong cơ s d li u, khi
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.

17


-

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 đ .

-

Tr giúp: Hi n th các thơng tin v chương trình và tr giúp.

3.4.2. Lu ng x

lý chương trình

(File nh flow.png)

18



×