Có 3 tùy chọn cập nhật thông tin –trạng thái tuyến đường:
Chỉ cho admin: chỉ cho phép admin cập nhật trực tiếp trên hệ
thống.
Cho phép tất cả cập nhật: Tất cả các số điện thoại nhắn tin đến
tổng đài theo đúng cú pháp đều được phép cập nhật thông tin –
trạng thái tuyến đường.
Giới hạn các số: Chỉ cho phép các số có trong danh sách và ở
trạng thái cho phép cập nhật. Chọn biểu tượng trạng thái để thay
đổi.
63 trang |
Chia sẻ: lylyngoc | Lượt xem: 2572 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Luận văn Hệ thống thông tin giao thông sử dụng SMS (SMS Server), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
u hoạt động tới giờ thực sự
mang lại hiệu quả rất tốt, cung cấp thông tin giao thông cho người dân, thông tin về
những tuyến đường bị tắc, sửa chữa, về những tuyến đường bị cấm khi có những sự
kiện quan trọng…Những người tham gia giao thông thì không phải ai cũng mang theo
bên mình đài AM/FM hoặc có những điện thoại thu được sóng FM. Nên thông tin
chưa được rộng rãi tới người tham gia giao thông.
Chúng ta hiện nay đã quen thuộc với những chiếc điện thoại di động, nó gần
như là vật bất ly thân. Và hơn thế nữa, chúng ta cũng đã quen với các tổng đài nhắn
tin. Ví dụ: nhắn tin tới tổng đài để bầu chọn, để nhận thông tin giá vàng,hay nhắn tin
để tải nhạc chuông hình ảnh…
Vì thế sử dụng SMS vào hệ thống thông tin giao thông là khả thi. Người tham
gia giao thông cần biết thông tin về những tuyến đường mình cần qua, để có thể lưu
thông thuận tiện hơn. Với những người truy cập internet thì có thể tra cứu thông tin
trực tiếp tại website, hay chỉ với phần mềm nhỏ trên điện thoại di động hoặc với một
tin nhắn tới tổng đài người tham gia giao thông đã có thể biết thông tin về đoạn đường
mình cần đi qua.
Khóa luận gồm các nội dụng như sau:
Chương 1. Mở đầu: Giới thiệu về đề tài khóa luận, ý nghĩa và tính khả thi của
đề tài.
Chương 2. Kiến thức cơ bản về SMS: Trình bày tóm tắt các kiến thức cơ bản
về SMS, SMS Gateway và cách xây dựng ứng dụng SMS trong khóa luận.
Chương 3. Tổng quan về hệ thống thông tin giao thông sử dụng SMS: Giới
thiệu tổng quan về hệ thống thông tin giao thông sử dụng SMS, các yêu cầu đề ra về
hệ thống, các giải pháp liên quan.
Chương 4. Phân tích: Bao gồm các tài liệu liên quan tới quá trình phân tích
của hệ thống. Các mô hình ca sử dụng và tài liệu đặc tả, các mô hình lớp, thiết kế lớp
cho từng chức năng.
Chương 5. Thiết kế: Bao gồm các tài liệu liên quan tới thiết kế hệ thống: Biểu
đồ tuần tự, biểu đồ lớp chi tiết, thiết kế các chức năng, thiết kế cơ sở dữ liệu và thiết kế
giao diện.
Chương 6: Cài đặt và triển khai: Trình bài các vấn đề liên quan đến việc cài
đặt và triển khai hệ thống. Kết quả đạt được khi chạy thử hệ thống.
Chương 7. Tổng kết: Trình bày tóm tắt các kết quả đạt được. Hướng mở rộng,
phát triển hệ thống.
2
Chương 2. Kiến thức cơ bản về SMS
2.1 Giới thiệu SMS
SMS là viết tắt của Short Message Service, là một giao thức viễn thông cho
phép gửi các thông điệp không quá 160 ký tự. SMS được hỗ trợ trên tất cả các điện
thoại công nghệ GSM(Global System for Mobile Communications), CDMA(Code
Division Multiple Access)
Một tin nhắn SMS có thể chứa tối đa 140 byte (1120 bit) dữ liệu, nhưng với
công nghệ mới có thể kết hợp nhiều tin nhắn SMS để có thể gửi được nội dung lớn
hơn, tin nhắn SMS cũng hỗ trợ đa ngôn ngữ. Nó cũng hoạt động tốt với tất cả các ngôn
ngữ sử dụng bộ mã Unicode.
Mỗi mạng di động đều sử dụng một hoặc nhiều trung tâm tin nhắn viết tắt là
SMSC. Nhiệm vụ của các trung tâm tin nhắn này là xử lý hoạt động của các tin nhắn.
Gửi một tin nhắn nội mạng, hoặc ngoại mạng- với những mạng cùng sử
dụng công nghệ:
Tin nhắn được gửi từ một điện thoại di động, và đến trung tâm nhắn tin của
mạng viễn thông đó. Từ trung tâm nhắn tin, tin nhắn sẽ được gửi đến điện thoại người
nhận. Nếu điên thoại người nhận không trực tuyến, thì tin nhắn sẽ được lưu lại trên
trung tâm tin nhắn, nó sẽ được gửi khi điện thoại người nhận trực tuyến, bị xóa nếu
quá một khoảng thời gian nhất định.
Hình 1: Quá trình gửi tin nhắn cùng chuẩn trung tâm tin nhắn
Gửi một tin nhắn ngoại mạng với hai mạng sử dụng hai công nghệ khác
nhau:
Ví dụ như một mạng sử dụng CDMA(mạng Sfone), một mạng sử dụng GSM(mạng
vinahone).
Tin nhắn được gửi từ một điện thoại di động, đến trung tâm tin nhắn của mạng
viễn thông đó. Từ trung tâm nhắn tin này, tin nhắn được xác định sẽ gửi đi trung tâm
nhắn tin nào dựa trên thông tin địa chỉ đến trong tin nhắn. Và tin nhắn được gửi từ
trung tâm nhắn tin của bên nhận đến điện thoại của người nhận. Tin nhắn cũng được
lưu lại ở đây nếu người người nhận không trực tuyến và bị xóa nếu trong một khoảng
thời gian nếu người nhận không trực tuyến.
3
Hình 2: Quá trình gửi tin nhắn khác chuẩn trung tâm tin nhắn
Một tin nhắn có thể cài đặt được chế độ thông báo, thông báo khi tin nhắn đã
gửi đến trung tâm nhắn tin, điện thoại người nhận. Người dùng điện thoại di động còn
có thể tùy chọn thời gian lưu lại trên trung tâm nhắn tin nếu người nhận không trực
tuyến.
2.2 SMS Gateway
Các trung tâm tin nhắn được phát triển bởi các công ty khác nhau với những
giao thức khác nhau. Cũng không thể kết nối hai trung tâm nhắn tin nếu không cùng
chung một giao thức. Giải pháp ở đây là sử dụng một SMS Gateway để chuyển tiếp
giữa hai trung tâm tin nhắn. SMS gateway hỗ trợ các giao thức khác nhau của các
SMSC, đồng thời nó cũng hỗ trợ các giao thức như http hay với cả https và nhiều giao
thức khác.
Hình 3: SMS gateway
Từ đó ta cũng có thể xây dựng một ứng dụng tin nhắn.Kết nối tới SMS
Gateway thông qua giao thức http/https từ đó có thể gửi đi các mạng viễn thông khác.
4
Hình 4: Ứng dụng SMS gateway
2.3 Xây dựng ứng dựng SMS
Câu hỏi đầu tiên đặt ra khi xây dựng một ứng dụng SMS là làm thế nào để gửi
và nhận một tin nhắn SMS từ máy tính tới điện thoại?
Có nhiều cách để gửi và nhận tin nhắn từ máy tính tới điện thoại. Như kết nối
máy tinh tới một điện thoại có chức năng GSM modem, hoặc kết nối tới GSM/GPRS
modem. Sau đó dùng máy tính và sử dụng lệnh AT để hướng dẫn điện thoại hoặc
GSM/GPRS modem gửi SMS hoặc kết nối tới một SMS Gateway của một công ty
dịch vụ viên thông.
Trong khóa luận này tôi sử dụng phương pháp kết nối tới một SMS Gateway
của công ty cổ phần Xích Việt, với đầu số tổng đài 8x27 từ khóa: VG TTGT.
Hoạt động của một SMS Gateway khi sử dụng chung đầu số tổng đài: Một SMS
Gateway hoạt động với một đầu số, nhiều ứng dụng sử dụng chung đầu số đó, với mỗi
ứng dụng sử dụng một từ khóa. Khi một tin nhắn được gửi tới tổng đài, thì SMS
Gateway sẽ dựa vào từ khóa để chuyển tiếp các tin nhắn tới ứng dụng đăng ký sử dụng
từ khóa đó, từ các ứng dụng đó tin nhắn phản hồi sẽ qua SMS Gateway và được gửi đi.
Thanh toán dịch vụ với các ứng dụng tin nhắn SMS cũng rất thuận tiện. Tin
nhắn SMS hỗ trợ thanh toán ngược, nghĩa là người nhắn tin đến tổng đài sẽ phải trả chi
phí dịch vụ thông qua trả chi phí cho tin nhắn đó.
Một thuận lợi nữa khi xây dựng các dụng SMS là được hỗ trợ bởi hầu hết các
điện thoại di động và tất cả các mạng viễn thông di động tại Việt Nam.
5
Chương 3. Tổng quan về hệ thống thông tin giao
thông sử dụng SMS
3.1 Tổng quan về hệ thống
Người dân khi tham gia giao thông đều muốn biết thông tin về các tuyến đường
mình sẽ đi qua, để có phương án di chuyển một cách thuận tiện hơn. Bài toán đặt ra là
làm sao để người dân có được thông tin về các tuyến đường nhanh chóng, đơn giản và
thuận tiện. Những công cụ nhanh nhất và hiệu quả để có thể thực hiện điều đó là
Internet và mạng viễn thông di động. Người sử dụng có thể truy cập vào website, sử
dụng phần mềm trên điện thoại di động để xem thông tin, hay đơn giản là gửi một tin
nhắn SMS đến tổng đài để có thông tin về tuyến đường mình quan tâm.
Một tin nhắn SMS có thể chứa được 160 ký tự, đủ để chứa thông tin về một
tuyến đường, hơn nữa việc sử dụng tin nhắn SMS cũng rất linh hoạt, người dùng có
thể nhắn tin mọi lúc mọi nơi. Hệ thống cũng đáp ứng được với các thuê bao di động ở
các mạng viễn thông di động.
Hệ thống thông tin giao thông sử dụng SMS gồm 2 phần: server và client. Phạm
vi của khóa luận này tập trung vào phát triển phần Server.
Hình 5: Tồng quan hệ thống
Phần Client: Phần mềm trên điện thoại di động
Người sử dụng hệ thống có thể cài phần mềm trên điện thoại di động của mình,
sử dụng phần mềm đó để tra cứu thông tin giao thông về những tuyến đường mình đi.
Với những tiện ích: tự động cập nhật, tra cứu mã số để tự nhắn tin tới tổng đài khi truy
vấn thông tin.
Phần Server: Server hệ thống
Phần server thực hiện xử tin nhắn truy vấn: tra cứu thông tin tuyến đường- nút
giao thống. Cập nhật tình trạng về tuyền đường – nút giao thông trực tiếp trên hệ
thống, hoặc sử dụng SMS từ điện thoại di động để cập nhật.
Trên website hiển thị các tin tức, thông tin giao thông, hướng dẫn sử dụng hệ
thống cho những người truy cập, thông tin dự báo thời tiết để người tham gia giao
6
thông thuận tiện hơn cho việc tham gia giao thông. Hỗ trợ trực tuyến để giúp đỡ kỹ
thuật với người sử dụng.
3.2 Các yêu cầu
3.2.1 Yêu cầu về người sử dụng
Người dân khi tham gia giao thông muốn biết thông tin về các tuyến đường
mình sẽ đi qua như: Tuyến đường đó có lưu thông bình thường không? Nếu tắc thì khi
nào có thể lưu thông được? hoặc nếu tuyến đường đó bị cấm thì có thể đi qua tuyến
đường nào?
Người sử dụng có thể truy cập và website để xem thông tin về các tuyến đường
trong từng khu vực, xem tin tức về giao thông, dự báo thời tiết. Người dùng cũng có
thể sử dụng hệ thống qua các mạng viễn thông di động bằng cách sử dụng phần mềm
trên điện thoại di động, hoặc nhắn tin tới tổng đài để biết thông tin về tuyến đường
mình sẽ đi qua.
3.2.2 Yêu cầu về quản trị
Người quản trị có thể đăng nhập ở bất cứ đâu để quản trị hệ thống. Họ có quyền
kiểm soát tất cả hoạt động của hệ thống như: quản lý các tuyến đường, khu vực, các
bài viết tin tức, chế độ cập nhật thông tin vào cơ sở dữ liệu. Cụ thể như thêm, xóa, sửa
các khu vực, các tuyến đường hay viết bài, chỉnh sửa nội dung các bài tin tức.
7
Chương 4. Phân tích
4.1 Phân tích yêu cầu
4.1.1 Yêu cầu chức năng
4.1.1.1 Chức năng quản lý khu vực
Với chức năng này người quản trị có thể quản lý được những khu vực có trong
hệ thống. Chức năng quản lý khu vực có những chức năng nhỏ:
Thêm mới một khu vực: Với chức năng này hệ thống sẽ hiển thị một
form nhập để người quản trị nhập thông tin, dữ liệu trên form khi nhập
xong được đưa vào cơ sở dữ liệu để xử lý.Hai khu vực trùng mã sẽ
không được đưa vào cơ sở dữ liệu.
Sửa thông tin một khu vực: Chức năng này người quản trị có thể sửa
thông tin của một khu vực đã có trên hệ thống.
Xóa một khu vực: Người quản trị có thể chọn xóa một hay nhiều khu
vực khi cần thiết.
Hình 6: Mô hình hóa chức năng quản lý khu vực
Quản lý khu
vực
Kết thúc
Chọn chức
năng
Thêm mới khu
vực
Cập nhật
CSDL
Xóa
Sửa thông
tin
8
4.1.1.2 Chức năng quản lý tuyến đường
Người quản trị quản lý những tuyến đường, nút giao thông trong hệ thống.
Chức năng quản lý tuyến đường có những chức năng nhỏ:
Thêm mới một tuyến đường: Người quản trị hệ thống nhập thông
tin về tuyến đường, chọn khu vực cho tuyến đường đó. Kiểm tra
xem tuyến đường có trùng với tuyến đường đã có trên hệ thống.
Sửa thông tin một tuyến đường: Người quản trị có thể sửa những
thông tin về tuyến đường,chọn lại khu vực của tuyến đường đó.
Xóa tuyến đường: Người quản trị có thể xóa một hoặc nhiều
tuyến đường khi cần thiết.
Cập nhật trạng thái cho tuyến đường: Người quản trị cập nhật
trạng thái của tuyến đường, nút giao thông. Hệ thống sẽ hiển thị
một form nhập dữ liệu trạng thái: tuyến đường lưu thông bình
thường, tuyến đường bị tắc(thời gian dự kiến lưu thông bình
thường, lý do hoặc hướng dẫn di chuyển nếu tuyến đường bị
cấm).
Hình 7: Mô hình hóa chức năng quản lý tuyến đường
Quản lý
tuyến đường
Kết thúc
Chọn chức
năng
Thêm mới
tuyến đường
Cập nhật
CSDL
Xóa
Sửa thông
tin
Cập nhật
trạng thái
9
4.1.1.3 Chức năng quản lý tin tức
Chức năng này giúp người quản trị quản lý các bài viết tin tức giao thông trên
hệ thống. Chức năng này cũng có những chức năng nhỏ:
Thêm mới một bài viết: Hệ thống hiển thị một form nhập, hỗ trợ người
quản trị soạn thảo bài viết: căn chỉnh font, màu,size, hình ảnh …
Sửa thông tin bài viết: Hệ thống cho phép người quản trị sửa những
thông tin liên quan tới bài viết.
Xóa bài viết: Chức năng này cho phép người quản trị xóa một hay nhiều
bài viết đã có trên hệ thống.
Hình 8: Mô hình hóa chức năng quản lý tin tức
Quản lý tin tức
Kết thúc
Chọn chức
năng
Thêm mới bài
viết
Cập nhật CSDL
Xóa
Sửa bài viết
10
4.1.1.4 Chức năng quản lý việc cập nhật thông tin vào cơ sở dữ liệu
Người quản trị quản lý tùy chọn cho phép những ai cập nhật thông tin vào cơ sở
dữ liệu: Giới hạn những số điện thoại, hay cho phép tất cả các số điện thoại nhắn tin
SMS để cập nhật thông tin vào cơ sở dữ liệu. Chức năng này cũng có những chức năng
nhỏ để quản lý danh sách những số điện thoại trong danh sách giới hạn số điện
thoại(những số điện thoại được phép cập nhật thông tin vào cơ sở dữ liệu qua nhắn tin
SMS): Thêm, sửa, xóa các bài viết.
Hình 9: Mô hình hóa chức năng quản lý cập nhật
4.1.1.5 Hiển thị trạng thái các tuyến đường, tin tức giao thông trên website
Các tuyến đường được sắp xếp theo từng khu vực để tìm kiếm thuận tiện hơn.
Quản lý cập nhật
thông tin vào
CSDL
Kết thúc
Tùy chọn cho
phép cập nhật
Chỉ có Admin
được cập nhật
Admin + giới hạn
các số điện thoại
cập nhật
Tất cả được
phép cập nhật
Lưu tùy chọn
vào CSDL
11
4.1.1.6 Cung cấp thông tin qua tin nhắn SMS
Hệ thống cung cấp thông tin trạng thái tuyến đường qua tin nhắn SMS: Khi
người sử dụng hệ thống nhăn tin SMS theo cú pháp để truy vấn thông tin về một tuyến
đường. Hệ thống xử lý và trả lại thông tin trạng thái tuyến đường đó, thông tin này sẽ
được gửi qua tin nhắn SMS đến số điện thoại đã nhắn tin tới.
4.1.1.7 Cập nhật trạng thái tuyến đường qua SMS vào cơ sở dữ liệu
Khi người quản trị cho phép một số điện thoại (hoặc tất cả các số điện thoại)
được cập nhật thông tin trạng thái tuyến đường vào cơ sở dữ liệu. Tin nhắn SMS theo
cú pháp từ số điện thoại đó tới hệ thống, hệ thống kiểm tra và cập nhật thông tin vào
cơ sở dữ liệu, và gửi thông báo tới số điện thoại đã nhắn tin.
4.1.2 Yêu cầu hệ thống
- Chỉ cho phép truy cập vào hệ thống với vai trò người quản trị.
- Các chức năng chính xác rõ ràng, không gây nhầm lẫn cho người sử dụng hệ
thống.
- Website đơn giản thuận tiện cho người sử dụng.
4.1.3 Yêu cầu phi chức năng
- Lợi ích tới đối tượng người sử dụng: Thân thiện, dễ sử dụng, đảm bảo việc
truy xuất nhanh.
- Hỗ trợ tốt trên các trình duyệt: IE 8 trở lên hoặc Mozilla firefox
- Có khả năng mở rộng.
4.2 Biểu đồ ca sử dụng
Biểu đồ ca sử dụng biểu diễn sơ đồ chức năng của hệ thống. Từ tập yêu cầu của
hệ thống, biểu đồ ca sử dụng sẽ phải chỉ ra hệ thống cần phải thực hiện điều gì để thỏa
mãn các yêu cầu của người dùng hệ thống đó. Biểu đồ ca sử dụng chỉ ra sự tương tác
giữa các tác nhân và hệ thống qua các ca sử dụng.
Một biểu đồ ca sử dụng là một tập hợp các tác nhân, các ca sử dụng và các mỗi
quan hệ giữa chúng. Các ca sử dụng trong biểu đồ ca sử dụng có thể được phân ra theo
nhiều mức khác nhau.
Bảng 1 : Các phần tử mô hình ca sử dụng
Phần tử mô
hình
Ý nghĩa Cách biểu diễn Ký hiệu biểu đồ
Ca sử dụng
Biểu diễn một chức
năng xác định của hệ
thống
Hình ellip chưa
tên của ca sử
dụng
Ca sử dụng
12
Tác nhân
Là một đối tượng bên
ngoài hệ thống tương
tác trực tiếp với các ca
sử dụng
Biểu diễn bở
một hình người
tượng trưng
Mối quan hệ
giữa các ca sử
dụng
Tùy từng dạng quan hệ
Extend và
include có dạng
các mũi tên đứt
nét
Quan hệ giữa
tác nhân và ca
sử dụng dạng
đường thẳng
>
>
Biên của hệ
thống
Tách biệt phần bên
trong và bên ngoài hệ
thống
Được biểu diễn
bởi một hình
chữ nhật rỗng
System
4.2.1 Biểu đồ ca sử dụng tổng quát
4.2.1.1 Biểu đồ
System
Quan tri
Dang nhapQuan ly khu vuc
Quan ly tuyen duong
Quan ly cap nhat
Quan ly tin tuc
Thoat
>
>
>
>
>
>
Nguoi dung
Thong tin giao thong
Tin tuc
Cap nhat thong tin
>
>
>
Hình 10: Biểu đồ ca sử dụng tổng quát
13
4.2.1.2 Mô tả luồng sự kiện
1. Người quản trị bắt đầu đăng nhập hệ thống
Bảng 2: Mô tả ca đăng nhập hệ thống
Tên Use Case Đăng nhập
Tác nhân chính Người quản trị
Kích hoạt Người quản trị đăng nhập hệ thống
Luồng sự kiện chính:
- Người quản trị đăng nhập hệ thống
- Hiển thị nhập ID và Password
- Đăng nhập thành công
- Đăng nhập thất bại
- Hệ thống hiển thị các chức năng quản trị
Luồng sự kiện phụ:
- Hiện thị thông báo khi chưa điền ID và Password.
2. Người quản trị chọn chức năng quản lý khu vực
Bảng 3: Mô tả ca sử dụng quản lý khu vực
Tên Use Case Quản lý khu vực
Tác nhân chính Người quản trị
Kích hoạt Người quản trị chọn chức năng quản lý
khu vực
Luồng sự kiện chính:
- Người quản trị chọn chức năng quản lý khu vực
- Hiển thị các chức năng của quản lý khu vực.
- Thêm, xóa, sắp xếp,hiển thị, sửa thông tin của khu vực.
- Kiểm tra khu vực đó đã có trong csdl hay chưa?
- Hệ thống cập nhật cơ sở dữ liệu
Luồng sự kiện phụ:
- Hiển thị thông báo khi nhập trùng khu vực, chưa chọn đối tượng khi xóa.
3. Người quản trị chọn quản lý tuyến đường – nút giao thông:
Bảng 4:Mô tả ca sử dụng quản lý tuyến đường – nút giao thông
Tên Use Case Quản lý tuyến đường – nút giao thông
Tác nhân chính Người quản trị
14
Kích hoạt Người quản trị chọn chức năng quản lý
tuyến đường – nút giao thông
Luồng sự kiện chính:
- Người quản trị chọn quản lý tuyến đường – nút giao thông
- Hiển thị các chức năng của quản lý tuyến đường
- Nhập thông tin của tuyến đường, kiểm tra mã đó đã có chưa?
- Sửa, xóa, sắp xếp, thông tin của tuyến đường đó.
- Hiển thị tuyến đường – nút giao thông theo khu vực, theo trạng thái, trang.
- Cập nhật trang thái trực tiếp trên hệ thống.
- Hệ thống trả về trạng thái lưu thông khi đến thời gian time-out
- Hệ thống cập nhật cơ sở dữ liệu
Luồng sự kiện phụ:
- Hiển thị thông báo khi nhập trùng mã tuyến đường, chưa chọn đối tượng khi xóa.
4. Người quản trị chọn chức năng quản lý cập nhật
Bảng 5: Mô tả ca sử dụng quản lý cập nhật
Tên Use Case Quản lý cập nhật
Tác nhân chính Người quản trị
Kích hoạt Người quản trị chọn chức năng quản lý
cập nhật
Luồng sự kiện chính:
- Người quản trị chọn quản lý cập nhật
- Hiển thị các chức năng của quản lý cập nhật
- Thêm, xóa các số điện thoại trong danh sách giới hạn cập nhật
- Tùy chọn cho phép cập nhật vào cơ sở dữ liệu: Chỉ có admin cập nhật, giới hạn
các số hoặc cho phép tất cả các số đt và admin cập nhật.
- Hệ thống cập nhật cơ sở dữ liệu
Luồng sự kiện phụ:
- Hiển thị thông báo khi nhập trùng mã, chưa chọn đối tượng khi xóa.
5. Người quản trị chọn chức năng quản lý tin tức
Bảng 6: Mô tả ca sử dụng quản lý tin tức
Tên Use Case Quản lý tin tức
Tác nhân chính Người quản trị
Kích hoạt Người quản trị chọn quản lý tin tức
Luồng sự kiện chính:
- Người quản trị chọn quản lý tin tức
- Hiển thị các chức năng của quản lý tin tức
15
- Thêm các bài viết, hình ảnh. Chỉnh sửa, xóa bài viết. Hiển thị, ẩn các bài.
- Hệ thống cập nhật cơ sở dữ liệu
Luồng sự kiện phụ:
- Hiển thị thông báo khi nhập, chưa chọn đối tượng khi xóa.
6. Người dùng truy vấn thông tin giao thông các tuyến đường
Bảng 7: Mô tả ca sử dụng truy vấn thông tin các tuyến đường – nút giao thông
Tên Use Case Thông tin giao thông
Tác nhân chính Người dùng
Kích hoạt Người dùng vào website xem thông tin
giao thông trực tiếp, hoặc gửi tin nhắn
truy vấn đến tổng đài
Luồng sự kiện chính:
- Người dùng vào website xem thông tin các tuyến đường.
- Người dùng gửi tin nhắn theo cú pháp đến tổng đài.
- Chọn theo trong từng khu vực, chọn các tuyến – nút giao thông cần tra cứu.
- Gửi tin nhắn theo cú pháp, với mã là mã các tuyến đường.
- Hiển thị thông tin các tuyến đường – nút giao thông trên website.
- Trả về SMS kết quả trạng thái tuyến đường - nút giao thông.
Luồng sự kiện phụ:
- Hiển thị các lỗi nếu có khi truy cập website.
- Trả về tin nhắn thông báo nếu nhắn tin sai cú pháp, sai tổng đài, sai mã đường-
nút giao thông.
7. Người dùng xem tin tức giao thông
Bảng 8: Mô tả ca sử dụng xem tin tức
Tên Use Case Tin tức
Tác nhân chính Người dùng
Kích hoạt Người dùng vào website đọc tin tức
giao thông.
Luồng sự kiện chính:
- Người dùng vào website đọc tin tức giao thông
- Hiển thị nội dung tóm tắt và tiêu đề tin tức
- Hiển thị chi tiết tin tức.
16
Luồng sự kiện phụ:
- Hiển thị các lỗi nếu có khi người dùng truy cập website.
8. Người dùng gửi tin cập nhật trạng thái tuyến đường – nút giao thông
Bảng 9: Mô tả ca cập nhật trang thái tuyến đường
Tên Use Case Cập nhật thông tin
Tác nhân chính Người dùng
Kích hoạt Người dùng gửi tin nhắn theo cú pháp
tới tổng đài.
Luồng sự kiện chính:
- Người dùng gửi tin nhắn theo cú pháp tới tổng đài
- Kiểm tra số điện thoại có được phép cập nhật không?
- Kiểm tra cú pháp tin nhắn có đúng không?
- Kiểm tra mã tuyến đường có đúng không?
- Cập nhật vào cơ sở dữ liệu trạng thái tuyến – nút giao thông.
- Trả về SMS thông báo.
Luồng sự kiện phụ:
- Trả về các thông báo khi sai tổng đài, cú pháp, mã đường-nút giao thông.
4.2.2 Biểu đồ ca sử dụng phân rã
Biểu đồ ca sử dụng phân rã theo từng ca sử dụng.
4.2.2.1 Chức năng quản lý khu vực
Them khu vuc Xoa khu vuc
Chinh sua thong tin
Quan ly khu vuc
>
>
>
Hình 11: Biều đồ ca sử dụng quản lý khu vực
4.2.2.2 Chức năng quản lý tuyến đường – nút giao thông
17
Quan ly tuyen duong - nut giao thong
Them tuyen duong - nut
Chinh sua thong tin tuyen - nut Xoa tuyen- nut
>
>
>
Hình 12: Biều đồ ca sử dụng quản lý tuyến đường – nút giao thông
4.2.2.3 Chức năng quản lý cập nhật
Tuy chon cap nhat
Admin
Gioi han so
Tat ca cac so va Admin
Them so
Xoa
>
>
>
>
>
Hình 13: Biểu đồ ca sử dụng quản lý cập nhật
4.2.2.4 Chức năng quản lý tin tức
18
Chinh sua thong tin
Them bai viet Xoa bai vietQuan ly bai viet
>
>
>
Hình 14: Biểu đồ ca sử dụng quản lý tin tức
4.2.2.5 Chức năng người dùng truy vấn thông tin giao thông qua SMS
Xem thong tin giao thong
Gui sms den tong dai Xem thong tin tren web
>
>
Hình 15: Biểu đồ ca sử dụng truy vấn thông tin tuyến đường – nút giao thông.
4.2.2.6 Chức năng người dùng cập nhật thông tin tuyến đường
Cap nhat trang thai tuyen duongGui sms den tong dai
>
Hình 16: Biểu đồ ca sử dụng cập nhật thông tin tuyến đường – nút giao thông.
4.2.2.7 Chức năng người dùng xem tin tức
Tin tucXem tin tuc tren web
>
Hình 17: Biểu đồ ca sử dụng xem tin tức.
19
4.3 Biểu đồ lớp
Biểu đồ lớp là biểu đồ dạng mô hình tĩnh nhằm mô tả hướng nhìn tĩnh về một
hệ thống bằng các khái niệm lớp, các thuộc tính, phương thức của lớp và mỗi quan hệ
giữa chúng.
Bảng 10 : Các thành phần trong biểu đồ lớp
Phần tử mô hình Ý nghĩa Cách biểu diễn Ký hiệu trong biểu
đồ
Lớp Biểu diễn tên lớp,
các thuộc tính và
các phương thức
của lớp đó
Một hình chữ nhật
gồm 3 phần tách
biệt
ten lop
+thuoc tinh
+Phuong thuc()
Mối quan hệ giữa
các lớp
Tùy từng mối quan
hệ
Biểu diễn bởi hình
mũi tên
Biểu đồ lớp phân tích:
20
tbl_user
+id
+username
+passwd
+get_username()
+get_passwd()
tbl_road
+id
+pos_id
+name
+desc
+ordering
+publish
+status
+code
+delayTime
+startTime
+minutes
+set_codePos()
+set_name()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_startTime()
+get_minutes()
+get_codePos()
tbl_content
+ID
+Publish
+Title
+Summary
+Contents
+theDate
+set_Title()
+get_Title()
+get_Summary()
+set_Content()
+get_Content()
+get_theDate()
tbl_position
+id
+parent_id
+name
+ordering
+publish
+wooden_leg
+codePos
+set_name()
+set_wooden_leg()
+set_codePos()
+get_name()
+get_wooden_leg()
+get_codePos()
tbl_tel
+id
+telnum
+status
+cpstatus
+setStt
+set_telnum()
+set_status()
+set_cpstatus()
+get_telnum()
+get_cpstatus()
+get_status()
Hình 18: Biểu đồ lớp phần phân tích.
4.4 Thiết kế cho từng chức năng
Với mỗi chức năng, pha thiết kế sẽ xác đinh:
- Các lớp giao diện tương ứng
- Lớp điều khiển.
- Lớp thực thể.
21
Bảng 11: các kiểu lớp
Kiểu lớp Ký hiệu
Lớp thực thể
Lớp Biên
Lớp điều khiển
4.4.1 Chức năng quản lý khu vực
Form quan ly khu vuc DK
tbl_position
+id
+parent_id
+name
+ordering
+publish
+wooden_leg
+codePos
+set_name()
+set_wooden_leg()
+set_codePos()
+get_name()
+get_wooden_leg()
+get_codePos()
Hình 19: Thiết kế lớp cho chức năng quản lý khu vực
22
4.4.2 Chức năng quản lý tuyến đường – nút giao thông
Form quan ly tuyen duong DK
tbl_road
+id
+pos_id
+name
+desc
+ordering
+publish
+status
+code
+delayTime
+startTime
+minutes
+set_codePos()
+set_name()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_startTime()
+get_minutes()
+get_codePos()
Hình 20: Thiết kế lớp cho chức năng quản lý tuyến đường – nút giao thông
4.4.3 Chức năng quản lý cập nhật
Form quan ly cap nhat DK
tbl_tel
+id
+telnum
+status
+cpstatus
+setStt
+set_telnum()
+set_status()
+set_cpstatus()
+get_telnum()
+get_cpstatus()
+get_status()
Hình 21: Thiết kế lớp cho chức năng quản lý cập nhật
23
4.4.4 Chức năng quản lý tin tức
Form quan ly tin tuc DK
tbl_content
+ID
+Publish
+Title
+Summary
+Contents
+theDate
+set_Title()
+get_Title()
+get_Summary()
+set_Content()
+get_Content()
+get_theDate()
Hình 22: Thiết kế lớp cho chức năng quản lý tin tức
4.4.5 Chức năng đăng nhập
Form dang nhap
DK Dang nhap
tbl_user
+id
+username
+passwd
+get_username()
+get_passwd()
Hình 23: Thiết kế lớp cho chức năng đăng nhập
24
4.4.6 Chức năng người dùng cập nhật thông tin tuyến đường
Nguoi dung
Tong dai SMS
tbl_road
+id: int
+pos_id: string
+name: string
+desc: string
+ordering: sting
+publish: string
+status: string
+code: string
+delayTime: string
+startTime: string
+minutes: int
+set_codePos()
+set_name()
+set_publish()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_publish()
+get_startTime()
+get_minutes()
+get_codePos()
DK cap nhat
Hình 24: Thiết kế lớp cho chức năng cập nhật thông tin tuyến đường
4.4.7 Chức năng người dùng xem thông tin giao thông
Nguoi dung
Tong dai SMS
tbl_road
+id: int
+pos_id: string
+name: string
+desc: string
+ordering: sting
+publish: string
+status: string
+code: string
+delayTime: string
+startTime: string
+minutes: int
+set_codePos()
+set_name()
+set_publish()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_publish()
+get_startTime()
+get_minutes()
+get_codePos()
Dk truy van
Hình 25: Thiết kế lớp cho chức năng xem thông tin
25
4.4.8 Chức năng người dùng xem tin tức giao thông
Nguoi dung
Form
DK
tbl_content
+ID: int
+Publish: string
+Title: string
+Summary: string
+Contents: string
+theDate: string
+set_Title()
+get_Title()
+set_publish()
+get_Summary()
+set_Content()
+get_Content()
+get_publish()
+get_theDate()
Hình 26: Thiết kế lớp cho chức năng xem tin tức
26
Chương 5. Thiết kế
5.1 Biểu đồ tuần tự
Biểu đồ tuần tự biểu diễn mối quan hệ giữa các đối tượng, giữa các đối tượng
và tác nhân theo thứ tự thời gian. Biểu đồ tuần tự nhấn mạnh thứ tự thực hiện của các
tương tác.
Thành phần cơ bản của một biểu đồ tuần tự là:
- Các đối tượng: được biểu diễn bởi một hình chữ nhật, bên trong là tên
của đối tượng. Nét đứt bên dưới đối tượng thể hiện đường sống của đối tượng, các đối
tượng chỉ xuất hiện(về thời gian) khi thực sự tham gia vào tương tác, và nó được thể
hiện bằng các hình chữ nhật trên đường sống.
- Các message được biểu diễn bằng các mũi tên giữa các đối tượng, hoặc
với đến chính đối tượng đó. Nó thể hiện một lời gọi từ đối tượng này tới đối tượng kia,
hoặc giá trị trả về.
Bảng 12 : Các thành phần trong biểu đồ tuần tự
Phần tử mô hình Ký hiệu trong biểu đồ
Đối tượng
doi tuong
Message Message()
27
5.1.1 Biểu đồ tuần tự ca sử dụng đăng nhập hệ thống
Nguoi quan tri Form dang nhap Dk dang nhap tbl_user
1 : Yeu cau dang nhap()
2 : Yeu cau nhap ID, Passwd()
3 : Nhap tai khoan()
4 : Tien hanh dang nhap()
5 : Kiem tra tai khoan()
6 : Ket qua kiem tra()
7 [Neu khong dung] : Thong bao nhap lai()
8 [Neu dung] : Xac thuc dang nhap()
Hình 27: Biểu đồ tuần tự ca sử dụng đăng nhập hệ thống
28
5.1.2 Biểu đồ tuần tự ca sử dụng quản lý khu vực
Form quan ly khu vuc DKNguoi quan tri tbl_position
1 : Yeu cau them khu vuc()
2 : Gui yeu cau them khu vuc()
3 : Kiem tra()
4 : Tra lai ket qua()
5 [Neu da co] : Thong bao nhap lai()
6 [neu dung] : Cap nhap vao csdll()
7 : Xac thuc cap nhat()
8 : Thong bao thanh cong()
9 : Yeu cau xoa khu vuc()
10 : Kiem tra da chon khu vuc chua()
11 : Gui yeu cau xoa khu vuc()
12 : Cap nhat vao csdl()
13 : Xac thuc cap nhat()
14 : Thong bao xoa thanh cong()
15 : Yeu cau sua thong tin khu vuc()
16 : Gui yeu cau sua thong tin()
17 : Cap nhat vao csdl()
18 : Xac thuc cap nhat()
19 : Thong bao thanh cong()
Hình 28: Biều đồ tuần tự ca sử dụng quản lý khu vực
29
5.1.3 Biểu đồ tuần tự ca sử dụng quản lý tuyến đường – nút giao thông
Nguoi quan tri Form quan ly tuyen duong DK tbl_road
1 : Yeu cau them tuyen duong()
2 : Gui yeu cau them tuyen duong()
3 : Kiem tra()
4 : Ket qua()
5 [Neu da co] : Yeu cau nhap lai()
6 : Cap nhat csdl()
7 : Xac thuc cap nhat()
8 : Thong bao thanh cong()
9 : Yeu cau xoa tuyen duong()
10 : Kiem tra da chon tuyen duong can xoa()
11 : Gui yeu cau xoa()
12 : Cap nhat csdl()
13 : xac thuc()
14 : Thong bao thanh cong()
15 : Yeu cau sua thong tin tuyen duong()
16 : Gui yeu cau sua thong tin()
17 : Cap nhat csdl()
18 : Xac thuc()
19 : Thong bao thanh cong()
20 : Yeu cau cap nhat trang thai()
21 : Gui yeu cau cap nhat trang thai()
22 : Cap nhat csdl()
23 : Xac thuc()
24 : Thong bao thanh cong()
Hình 29: Biều đồ tuần tự ca sử dụng quản lý tuyến đường – nút giao thông
30
5.1.4 Biều đồ tuần tự ca sử dụng quản lý cập nhật
Nguoi quan tri Form quan ly cap nhat DK tbl_tel
1 : Yeu cau chi cho Admin cap nhat()
2 : Gui yeu cau()
3 : Cap nhat csdl()
4 : Xac thuc()
5 : Thong bao trang thai()
6 : Yeu cau gioi han cap nhat()
7 : Gui yeu cau()
8 : Cap nhat csdl()
9 : Xac thuc()
10 : Thong bao trang thai()
11 : Yeu cau tat ca duoc cap nhat()
12 : Gui yeu cau()
13 : Cap nhat csdl()
14 : Xac thuc()
15 : Thong bao trang thai()
Hình 30: Biều đồ tuần tự ca sử dụng quản lý cập nhật
5.1.5 Biều đồ tuận tự ca sử dụng quản lý tin tức
31
Nguoi quan tri Form quan ly tin tuc DK tbl_content
1 : Yeu cau them bai viet()
2 : Gui yeu cau()
3 : Cap nhat csdl()
4 : Xac thuc()
5 : Thong bao da cap nhat()
6 : Yeu cau xoa bai viet()
7 : Gui yeu cau()
8 : Cap nhat csdl()
9 : Xac thuc()
10 : Thong bao da cap nhat()
11 : Yeu cau hien thi()
12 : Gui yeu cau()
13 : Cap nhat csdl()
14 : Xac thuc()
15 : Thong bao()
Hình 31: Biểu đồ tuần tự ca sử dụng quản lý tin tức
32
5.1.6 Biều đồ tuần tự ca sử dụng truy vấn thông tin giao thông
Nguoi dung Tong dai sms DK truy van tbl_road
1 : Gui tin yeu cau()
2 [sai cu phap] : Gui sms thong bao() 3 [Neu dung] : Gui den trang xu ly()
4 : Kiem tra nd tin nhan()
5 : Truy van csdl()
6 : Ket qua()
7 : Ket qua()
8 : Gui sms()
Hình 32: Biểu đồ tuần tự ca sử dụng truy vấn thông tin
33
5.1.7 Biều đồ tuần tự ca sử dụng cập nhật thông tin tuyến đường
Nguoi dung Tong dai SMS DK cap nhat tbl_road
1 : Gui tin sms yeu cau()
2 [Neu sai cu phap] : tra lai thong bao() 3 [Neu dung] : gui den trang xu ly()
4 : Kiem tra sms()
5 : Cap nhat csdl()
6 : ket qua()
7 : Gui thong bao()
8 : Gui sms thong bao()
Hình 33: Biểu đồ tuần tự ca sử dụng cập nhật thông tin tuyến đường – nút giao thông
5.1.8 Biều đồ tuần tự ca sử dụng người dùng xem tin tức
Nguoi dung Form DK tbl_content
1 : Yeu cau xem tin tuc()
2 : Gui yeu cau xem tin tuc()
3 : Truy van csdl()
4 : Ket qua()
5 : Hien thi ket qua()
Hình 34: Biều đồ tuần tự ca sử dụng xem tin tức
34
5.2 Biểu đồ lớp chi tiết phần thiết kế
Hoàn thiện chi tiết biểu đồ lớp từ biểu đồ lớp phần phân tích: Xác định mối
quan hệ giữa các lớp và hoàn thiện các thuộc tính và phương thức của các lớp.
tbl_user
+id: int
+username: string
+passwd: string
+get_username()
+get_passwd()
tbl_road
+id: int
+pos_id: string
+name: string
+desc: string
+ordering: sting
+publish: string
+status: string
+code: string
+delayTime: string
+startTime: string
+minutes: int
+set_codePos()
+set_name()
+set_publish()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_publish()
+get_startTime()
+get_minutes()
+get_codePos()
tbl_content
+ID: int
+Publish: string
+Title: string
+Summary: string
+Contents: string
+theDate: string
+set_Title()
+get_Title()
+set_publish()
+get_Summary()
+set_Content()
+get_Content()
+get_publish()
+get_theDate()
tbl_position
+id: int
+parent_id: int
+name: string
+ordering: string
+publish: string
+wooden_leg: string
+codePos: string
+set_name()
+set_wooden_leg()
+set_publish()
+set_codePos()
+get_name()
+get_publish()
+get_wooden_leg()
+get_codePos()
tbl_tel
+id: int
+telnum: string
+status: string
+cpstatus: string
+setStt: string
+set_telnum()
+set_status()
+set_publish()
+set_cpstatus()
+get_telnum()
+get_cpstatus()
+get_status()
+get_publish()
1..n
1
1..n
1..*
1..n
1..*
1..n
1..*
Hình 35: Biểu đồ lớp chi tiết phần thiết kế
5.3 Thiết kế chức năng
Thiết kế cho từng chức năng trong hệ thống: Thiết kế thực thể, phương thức cho
từng lớp, quan hệ giữa các kiểu lớp.
35
5.3.1 Đăng nhập hệ thống
tbl_user
+id: int
+username: string
+passwd: string
+get_username()
+get_passwd()
DK dang nhap
+Xac thuc nguoi dung()
Form dang nhap
Hình 36: Biểu đồ thiết kế đăng nhập hệ thống
5.3.2 Quản lý khu vực
DK quan ly khu vuc
+Yeu cau them khu vuc()
+yeu cau xoa khu vuc()
+yeu cau sua khu vuc()
+Yeu cau an hien()
Form quan ly khu vuc
tbl_position
+id: int
+parent_id: int
+name: string
+ordering: string
+publish: string
+wooden_leg: string
+codePos: string
+set_name()
+set_wooden_leg()
+set_publish()
+set_codePos()
+get_name()
+get_publish()
+get_wooden_leg()
+get_codePos()
Hình 37: Biểu đồ thiết kế quản lý khu vực
36
5.3.3 Quản lý tuyến đường – nút giao thông
Form quan ly tuyen duong
DK quan ly tuyen duong
+Them tuyen duong()
+Xoa tuyen duong()
+sua thong tin tuyen duong()
+Cap nhat trang thai()
+Yeu can hien thi()
tbl_road
+id: int
+pos_id: string
+name: string
+desc: string
+ordering: sting
+publish: string
+status: string
+code: string
+delayTime: string
+startTime: string
+minutes: int
+set_codePos()
+set_name()
+set_publish()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_publish()
+get_startTime()
+get_minutes()
+get_codePos()
tbl_position
+id: int
+parent_id: int
+name: string
+ordering: string
+publish: string
+wooden_leg: string
+codePos: string
+set_name()
+set_wooden_leg()
+set_publish()
+set_codePos()
+get_name()
+get_publish()
+get_wooden_leg()
+get_codePos()
Hình 38: Biểu đồ thiết kế quản lý tuyến đường – nút giao thông
5.3.4 Quản lý cập nhật
tbl_tel
+id: int
+telnum: string
+status: string
+cpstatus: string
+setStt: string
+set_telnum()
+set_status()
+set_publish()
+set_cpstatus()
+get_telnum()
+get_cpstatus()
+get_status()
+get_publish()
Form quan ly cap nhat
DK quan ly cap nhat
+chi Admin cap nhat()
+gioi han cap nhat()
+cho tat ca cap nhat()
+Yeu cau hien thi()
Hình 39: Biểu đồ thiết kế quản lý cập nhật
37
5.3.5 Quản lý tin tức
Form quan ly tin tuc
DK quan ly tin tuc
+yeu cau them bai viet()
+yeu cau xoa bai viet()
+yeu cau an hien()
tbl_content
+ID: int
+Publish: string
+Title: string
+Summary: string
+Contents: string
+theDate: string
+set_Title()
+get_Title()
+set_publish()
+get_Summary()
+set_Content()
+get_Content()
+get_publish()
+get_theDate()
Hình 40: Biểu đồ thiết kế quản lý tin tức
5.3.6 Người dùng xem tin tức
Form
DK xem tin tuc
+yeu cau xem tin tuc()
tbl_content
+ID: int
+Publish: string
+Title: string
+Summary: string
+Contents: string
+theDate: string
+set_Title()
+get_Title()
+set_publish()
+get_Summary()
+set_Content()
+get_Content()
+get_publish()
+get_theDate()
Hình 41: Biểu đồ thiết kế xem tin tức
38
5.3.7 Người dùng truy vấn thông tin giao thông qua SMS
Tong dai sms
DK truy van
+Yeu cau truy van()
tbl_road
+id: int
+pos_id: string
+name: string
+desc: string
+ordering: sting
+publish: string
+status: string
+code: string
+delayTime: string
+startTime: string
+minutes: int
+set_codePos()
+set_name()
+set_publish()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_publish()
+get_startTime()
+get_minutes()
+get_codePos()
Hình 42: Biểu đồ thiết kế truy vấn thông tin
5.3.8 Người dùng cập nhật thông tin giao thông qua SMS
Tong dai sms
DK cap nhat
+Yeu cau cap nhat()
tbl_road
+id: int
+pos_id: string
+name: string
+desc: string
+ordering: sting
+publish: string
+status: string
+code: string
+delayTime: string
+startTime: string
+minutes: int
+set_codePos()
+set_name()
+set_publish()
+set_code()
+set_startTime()
+set_minutes()
+set_status()
+get_name()
+get_code()
+get_publish()
+get_startTime()
+get_minutes()
+get_codePos()
Hình 43: Biểu đồ thiết kế cập nhật thông tin qua SMS
39
5.4 Thiết kế cơ sở dữ liệu
Mô hình dữ liệu tổng thể:
tbl_road
+id
+name
+desc
+publish
+posid
+status
+code
+delayTime
+startTime
+minutes
tbl_tel
+id
+telnum
+status
+cpstatus
+setStt
tbl_user
+id
+name
+passwd
tbl_position
+id
+parent_id
+name
+ordering
+publish
+wooden_leg
+codePos
tbl_content
+id
+publish
+title
+summary
+contents
+theDate
Hình 44 : Mô hình dữ liệu tổng thể
5.4.1 Bảng tbl_user
Mô tả: Lưu trữ thông tin người quản trị.
Các thành phần lưu trữ: id, username, passwd. Khóa chính là id.
Bảng 13: tbl_user - lưu trữ tài khoản quản trị
Attribute
(Thuôc
tính)
Tên
trường
Key
type
Null
Value
Data
type
Max
Data
length
Remarks
id PK int 9 Mã người quản trị
username varchar 50 Tên đăng nhập
passwd varchar 50 Mật khẩu đăng nhập
5.4.2 Bảng tbl_road
Mô tả: Lưu trữ thông tin về tuyến đường – nút giao thông.
Các thành phần lưu trữ: id, posid, name, desc, publish, status, code, delayTime.
Khóa chinh là id.
40
Bảng 14: tbl_road - lưu trữ thông tin về tuyến đường – nút giao thông
Attribute
(Thuôc
tính)
Tên
trường
Ke
y
typ
e
Null
Value
Data
type
Max
Data
length
Remarks
id PK None bigint 20 Mã tuyến đường
posid FK varchar 20 Mã khu vực
name varchar 255 Tên tuyến đường – nút giao
thông
desc varchar 255 Thứ tự trong khu vực
publish varchar 1 Hiển thị/ Ẩn tuyến đường
status Varchar 1 Trạng thái tuyến đường
code Varchar 255 Mã tin nhắn
delayTi
me
Varchar 11 Thời gian có thể lưu thông
startTim
e
Varchar 11 Thời gian bắt đầu tắc
minutes Int 20 Thời gian dự kiến tắc đường
5.4.3 Bảng tbl_position
Mô tả: Lưu trữ thông tin khu vực
Các thành phần lưu trữ: id, parent_id, name, ordering, publish, wooden_leg,
codePos. Khóa chính là id.
Bảng 15: tbl_posotion - lưu trữ thông tin khu vực
Attribute
(Thuôc tính)
Tên trường
Key
type
Null
Value
Data
type
Max
Data
length
Remarks
id PK bigint 20 Mã khu vực
parent_id bigint 20 Mã khu vực gốc
name Varchar 255 Tên khu vực
41
ordering Varchar 255 Thứ tự trong khu vực gốc
publish varchar 1 Hiển thị/Ẩn khu vực
Wooden_leg Varchar 255 Thứ tự bản ghi ban đầu
CodePos Varchar 255 Mã nhắn tin
5.4.4 Bảng tbl_tel
Mô tả: Lưu trữ danh sách các số điện thoại
Các thành phần lưu trữ: id, telnum, status, cpstatus, setStt. Khóa chính là id.
Bảng 16: tbl_lưu trữ số điện thoại và tùy chọn cập nhật
Attribute
(Thuôc
tính)
Tên
trường
Key
type
Null
Value
Data
type
Max
Data
length
Remarks
id PK int 20 Mã
telnum Varchar 14 Số điện thoại
status Varchar 1 Tùy chọn cho phép cập nhật
của số điện thoại
cpstatus varchar 1 Lưu trạng thái cập nhật trước
của số điện thoại
setStt Varchar 20 Tùy chọn cập nhật vào csdl.
5.4.5 Bảng tbl_content
Mô tả: Lưu trữ thông tin bài viết tin tức giao thông.
Các thành phần lưu trữ: id, publish, title, summary, contents, thedate. Khóa
chính là id.
Bảng 17: tbl_content - lưu trữ thông tin về tin tức
Attribute
(Thuôc
tính)
Tên
trường
Key
type
Null
Value
Data
type
Max
Data
length
Remarks
id PK int 20 Mã
Publish Varchar 1 Hiển thị/Ẩn bài viết
42
Title text Tiều đề bài viết
Summary text Tóm tăt bài viết
Contents text Nội dung chi tiết
theDate varchar 11 Thời gian đăng bài
5.5 Thiết kế giao diện
Thiết kế giao diện dựa trên các yêu cầu về chức năng của hệ thống.
5.5.1 Đăng nhập hệ thống
Hình 45: Thiết kế giao diện đăng nhập
5.5.2 Quản lý khu vực
Thiết kế giao diện quản lý khu vực với chức năng thêm, xóa, sửa thông tin khu
vực.
Hình 46: Thiết kế giao diện quản lý khu vực
43
5.5.3 Quản lý tuyến đường – nút giao thông
Thiết kế giao diện quản lý tuyến đường – nút giao thông với chức năng thêm,
xóa, sửa thông tin , cập nhật trạng thái cho tuyến đường.
Hình 47: Thiết kế giao diện quản lý tuyến đường – nút giao thông
5.5.4 Quản lý cập nhật
Thiết kế giao diện quản lý cập nhật trạng thái tuyến đường vào cơ sở dữ liệu.
Chức năng thêm, xóa, sửa danh sách các số điện thoại.
Hình 48: Thiết kế giao diện quản lý cập nhật
5.5.5 Quản lý tin tức
Thiết kế trang quản lý tin tức với các chức năng thêm, xóa, sửa, hiển thị các bài
viết.
44
Hình 49: Thiết kế giao diện quản lý tin tức
5.5.6 Giao diện trang chủ
Thiết kế giao diện trang chủ khi người dùng truy cập vào website xem thông tin
các tuyến đường.
45
Hình 50: Thiết kế giao diện trang chính
5.5.7 Giao diện trang tin tức
Thiết kế giao diện trang tin tức.
46
Hình 51: Thiết kế giao diện trang tin tức
47
5.5.8 Giao diện trang giới thiệu
Hình 52: Thiết kế giao diện trang giới thiệu
5.6 Cấu trúc tin nhắn SMS giao tiếp với hệ thống
Tin nhắn không phân biệt chữ hoa chữ thường, không bao gồm dấu “[” , “]”.
5.6.1 Cấu trúc tin nhắn SMS truy vấn thông tin tuyến đường
Cấu trúc tin nhắn SMS truy vấn thông tin tuyến đường:
VG TTGT [ma]
[ma] – là mã nhắn tin của tuyến đường – nút giao thông.
Cấu trúc tin nhắn SMS trả về:
48
- Nếu tuyến đường đang trong trạng thái lưu thông bình thường.
[ma] – Luu thong binh thuong
- Nếu tuyến đường đang trong trạng thái tắc:
[ma] – Duong dang tac – Tu [startTime] den khoang [delayTime] [lydo]
Với [startTime] – là thời gian bắt đầu tắc, [delayTime] – là thời gian dự kiến hết
tắc, [lydo] – Lý do tắc đường, hoặc thông báo, hướng dẫn.
- Nếu tin nhắn gửi đến không đúng mã tuyến đường.
Khong tim thay trong he thong. Vui long soan dung cu phap: VG TTGT
[diadiem]
5.6.2 Cấu trúc tin nhắn SMS cập nhật thông tin vào cơ sở dữ liệu
Cấu trúc tin nhắn SMS cập nhật trạng thái cho tuyến đường:
VG TTGT [ma],TAC,[thoigiantac],[lydo]
VG TTGT [ma],THONG
Với [ma]- là mã tuyến đường – nút giao thông, [thoigiantac] – là thời
gian dự kiến sẽ hết tắc đường(đơn vị là phút), [lydo] – thông báo hoặc hướng
dẫn người tham gia đi đường khác nếu có thể.
Cấu trúc tin nhắn SMS trả về:
- Nếu cập nhật thành công:
Cap nhat thanh cong. TTGT cam on ban rat nhieu
- Nếu số điện thoại không được phép cập nhật:
Ban khong co quyen thuc hien viec nay
- Nếu tin nhắn không đúng mã tuyến đường:
Khong tim thay trong he thong. Vui long soan dung cu phap:
VG TTGT [diadiem],THONG
Khong tim thay trong he thong. Vui long soan dung cu phap:
VG TTGT [diadiem],TAC,[so phut]
- Nếu tin nhắn không đúng cú pháp:
Tin nhan khong hop le, lam on thu lai.
49
Chương 6. Cài đặt và triển khai
6.1 Công nghệ và các công cụ hỗ trợ
- Ngôn ngữ lập trình: php 5.0, html, css, sql.
- Database System Manager: Mysql .
- Liên kết sử dụng SMS gateway của VIETGUY S.J.C – Công ty cổ phần Xích
Việt( Tổng đài 8x27).
- Các công cụ hỗ trợ: notepad++v5.6.8, photoshop cs3, paint, xampp v1.7.3,
CuteFTP 8 Professional.
- Chương trình có sử dụng mã nguồn mở:
CKeditor – [2] tham khảo tại trang:
Jquery.treeview –[3] tham khảo tại trang :
6.2 Cài đặt và cấu hình
6.2.1 Cài đặt
- Phần cứng: Máy chủ có chip xử lý từ P4 2.0 trở lên, RAM tối thiểu: 1Gb, có
kết nối internet.
- Phần mềm:Linux server, hoặc windows 2003 trở lên. Cài đặt Apache Server
modul PHP, hệ quản trị cơ sở dữ liệu MySQL.
6.2.2 Cấu hình server
- Sử dụng bộ cài đặt Xampp. Dowload tại:
- Sửa trong file php.ini trong thư mục php của Xampp. Bỏ dấu “ ; ” ở trước
dòng extension=php_curl.dll ( dòng 952)
Hình 53: sửa file php.ini
- Giải nén file chứa mã nguồn vào thư mục: htdocs của Xampp
- Import CSDL:
- Sử dụng phpmyadmin có sắn của Xampp.
- Mở trình duyệt, vào trang:
50
- Tạo một db có tên: ttgt và import file ttgt.sql trong thư mục database lên hệ
thống.
6.2.3 Kiểm tra
6.2.3.1 Kiểm tra chức năng đăng nhập
Mở chương trình Xampp, khởi động Apache và MySql.
Vào trang với ID: admin Pass: abc123
6.2.3.2 Kiểm tra chức năng quản lý khu vực
Chọn nút “Thêm” để thêm một khu vực mới, đánh dấu và chọn xóa với những
khu vực muốn xóa khỏi danh sách. Hai khu vực không trùng mã.
Chọn “Trạng thái” để hiển thị hoặc ẩn khu vực trên trang chính của hệ thống.
6.2.3.3 Kiểm tra chức năng quản lý tuyến đường – nút giao thông
Chọn nút “Thêm” để thêm mới một tuyến đường – nút giao thông. Hai tuyến
đường không cùng mã. Đánh dấu và chọn xóa với những tuyến đường muốn loại khỏi
danh sách.
Trên trang quản lý tuyến đường cho phép hiển thị tuyến đường theo khu vực,
theo trạng thái(Tắc đường hay lưu thông bình thường).
Cập nhật trạng thái – thông tin tuyến đường: Chọn vào biểu tượng trạng thái để
cập nhật cho tuyến đường đó.
Chọn vào biểu tượng ẩn/hiện để hiển thị hoặc ẩn tuyến đường đó trên trang
chính của hệ thống.
Phần sắp xếp trong quản lý tuyến đường được sắp xếp theo khu vực.
6.2.3.4 Kiểm tra chức năng quản lý cập nhật
Có 3 tùy chọn cập nhật thông tin – trạng thái tuyến đường:
Chỉ cho admin: chỉ cho phép admin cập nhật trực tiếp trên hệ
thống.
Cho phép tất cả cập nhật: Tất cả các số điện thoại nhắn tin đến
tổng đài theo đúng cú pháp đều được phép cập nhật thông tin –
trạng thái tuyến đường.
Giới hạn các số: Chỉ cho phép các số có trong danh sách và ở
trạng thái cho phép cập nhật. Chọn biểu tượng trạng thái để thay
đổi.
6.2.3.5 Kiểm tra chức năng quản lý tin tức
Chọn nút “thêm” để thêm một bài viết mới. Phần tóm tắt là phần thể hiện trước
khi đọc tin. Nội dung chính là phần thể hiện chi tiết khi người dùng chọn xem bài viết.
Đánh dấu và chọn xóa với những bài viết cần loại bỏ, đặt trạng thái để hiển thị
hoặc ẩn bài viết. Ngày tạo sẽ lấy tự đông theo giờ của hệ thống.
51
6.3 Thử nghiệm và kết quả
6.3.1 Thử nghiệm
Sử dụng dịch vụ SMSgateways của công ty cổ phần Xích Việt, với tổng đài tin
nhắn: 8x27. Đăng ký sử dụng trên tổng đài số 8027 và 8127 với cú pháp nhắn tin: VG
TTGT.
Tên miền hệ thống sử dụng: vntester.net
6.3.2 Kết quả
Kết quả nhắn tin tới tổng đài 8027, 8127. Trên hệ thống đang để chế độ chỉ cho
phép một số số điện thoại nhắn tin cập nhật thông tin.
Bảng 18: Bảng kết quả thử nghiệm nhắn tin
Số đt Nội dung tin nhắn gửi đi Nội dung tin nhắn trả về
84912384633 Vg ttgt hotungmau [hotungmau] - Luu thong
binh thuong
84912384633 Vg ttgt thaiha,tac,3,dang
sua duong
Cap nhat thanh cong. TTGT
cam on ban rat nhieu.
84912841252 Vg ttgt thaiha [thaiha] - Duong dang tac -
Tu 09:26:23 den khoang
09:29:23 dang sua duong
84912384633 Vg ttgt thaiha,thong Cap nhat thanh cong. TTGT
cam on ban rat nhieu.
Kết quả:
Tổng đài, hệ thống hoạt động tốt.
Chú ý: Để cập nhật thông tin vào hệ thống số điện thoại đó phải được người quản trị
cho phép cập nhật.
52
Chương 7. Tổng kết
7.1 Kết luận
Xây dựng ứng dựng dựa trên SMS có những thú vị song cũng không ít thử
thách. Mặc dù các ứng dụng SMS không phải là mới nhưng việc xây dựng một ứng
dụng có giá trị thực tiễn không phải là đơn giản. Và đây cũng là một cơ hội để tôi làm
việc với ngôn ngữ PHP để xây dựng một ứng dụng web, sử dụng công nghệ nhắn tin
SMS. Qua đây cũng đã cho tôi nhiều kinh nghiệm hơn về ngôn ngữ PHP, sử dụng các
kỹ thuật lập trình kết hợp ajax, jquery.
Được làm quen với phong cách làm việc chuyên nghiệp hơn: Phát triển các ứng
dụng web cần làm việc với các framework để có chất lượng tốt hơn, thời gian phát
triển nhanh hơn.
Nâng cao kỹ năng phân tích, thiết kế hệ thống, sử dụng các ngôn ngữ PHP,
HTML, CSS, SQL.
7.2 Hướng phát triển
Hệ thống hướng tới lợi ích chung của xã hội. Ứng dụng có thể triển khai thực tế
để phục vụ nhu cầu của người dân. Mang tính thực tiễn cao, có thể triển khai ở nhiều
thành phố, khu vực giao thông trọng điểm.
Hệ thống sẽ hoạt động tốt hơn nữa khi được phát triển trên các nền điện thoại di
động khác nhau. Phát triển hệ thống thông tin cả trên GPRS, hay với cả GPS để hỗ trợ
người dùng hơn nữa.
Mở rộng hệ thống với những tiện ích khác: Đăng ký nhận tin theo thời gian,
tuyến đường – nút giao thông. Phát triển hệ thống để có thể thích hợp với nhiều trình
duyệt khác nhau, hỗ trợ với cả trình duyệt trên điện thoại di động.
Xây dựng giao diện thân thiện hơn như: Hiển thị các thông tin trên bản đồ. Cho
phép người quản trị cập nhật trực tiếp bằng cách click chọn địa điểm trên bản đồ.
53
Tài liệu tham khảo
[1] Kiến thức cơ bản về SMS, Developer’s home.
[2] Ckeditor - Bộ soạn thảo văn bản cho web.
[3] Jquery.treeview - Tham khảo về sử dụng Jquery.
[4] Tài liệu về dịch vụ VIETGUYS SMS Gateway.
Các file đính kèm theo tài liệu này:
- LUẬN VĂN-HỆ THỐNG THÔNG TIN GIAO THÔNG SỬ DỤNG SMS (SMS SERVER).pdf