Luận văn Hệ thống thông tin giao thông sử dụng SMS (SMS Server)

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.

pdf63 trang | Chia sẻ: lylyngoc | Lượt xem: 2572 | Lượt tải: 2download
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:

  • pdfLUẬN VĂN-HỆ THỐNG THÔNG TIN GIAO THÔNG SỬ DỤNG SMS (SMS SERVER).pdf