Xây dựng ứng dụng tìm đường đi xe buýt trên smartphone

đang tải dữ liệu....

Nội dung tài liệu: Xây dựng ứng dụng tìm đường đi xe buýt trên smartphone

TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN CHUYÊN NGÀNH CƠ SỞ DỮ LIỆU ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG TÌM ĐƯỜNG ĐI XE BUÝT TRÊN SMARTPHONE. GIÁO VIÊN HƯỚNG DẪN: TS. LÊ XUÂN TRƯỜNG SINH VIÊN THỰC HIỆN: BÙI BẢO ANH 0851010004 NGUYỄN THỊ HỒNG ĐẾN 0851010061 THÁNG 2 / 2012 LỜI CÁM ƠN Cám ơn sự quan tâm, giúp đỡ nhiệt tình của thầy Trường trong thời gian qua, giúp chúng em thực hiện tốt đồ án này. Cám ơn khoa Công nghệ thông tin đã tạo điều kiện cho chúng em thực hiện đồ án, qua đó học hỏi được nhiều kiến thức mới, tiếp cận những công nghệ mới. Cám ơn thầy Trường đã đưa ra đề tài hay, và chúng em cảm thấy rất vinh hạnh khi thực hiện đề tài này. Và chúng em xin hứa sẽ đem kiến thức học được để áp dụng vào đời sống. * Nhóm sinh viên thực hiện * NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. MỤC LỤC TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH .......................................................................1 KHOA CÔNG NGHỆ THÔNG TIN .....................................................................................................1 BÁO CÁO ĐỒ ÁN CHUYÊN NGÀNH CƠ SỞ DỮ LIỆU .....................................................................1 LỜI CÁM ƠN ............................................................................................................................................2 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN .......................................................................................3 MỤC LỤC ....................................................................................................................... 4 I. TỐNG QUAN 1) Giới thiệu chung: Lịch sử hình thành hệ thống vận chuyển công cộng (omnibus) có thể bắt đầu ở Nantes (Pháp). Vào năm 1826 bằng những chuyến xe ngựa thuê để chạy theo các tuyến đã định trước chở hành khách và hàng hóa gọi là voiture omnibus hay còn gọi là xe dành cho tất cả mọi người. Sau đó, hình thức vận chuyển công cộng này lan rộng khắp nước Pháp, Hoa Kỳ và các thành thị trên thế giới. Omnibus có tác động rất lớn đến cộng đồng. Về mặt xã hội omnibus trở thành một phương tiện vận chuyển công cộng đầu tiên rất tiện lợi, an toàn cho cư dân. Ngày nay phương tiện này đã phổ biến khắp thế giới, đóng một vai trò quan trọng trong cơ cấu xã hội ở nhiều nước và trở thành một phần thiết yếu trong cuộc sống thường ngày của các công dân thành phố. Từ những thập niên trước, phương tiện vận chuyển hành khách công cộng này đã trở nên rất phổ biến. Đây cũng là tiền thân của xe buýt ngày nay. Hiện nay, hầu như đi đâu ta cũng đều thấy xe buýt, từ những quốc gia kém phát triển ở Châu Phi đến những cường quốc như Mỹ, Anh….Và vì đó xe buýt đã trở thành phương tiện đi lại công cộng phổ biến nhất thế giới. Ở nước ta, Chính Phủ đã có chủ trương phát triển mạng lưới giao thông công cộng phục vụ nhân nhân đặc biệt với chủ trương trợ giá xe buýt đồng thời mở các lớp tập huấn đào tạo lại đội ngũ lái xe, phụ lái và tiếp viên. Xe buýt đang dần trở nên hấp dẫn với mọi người hơn. Trong tình hình kinh tế khó khăn hiện nay, mọi thứ đều đắt đỏ và đương nhiên không ai bàn cải về giá cả xăng dầu hiện nay, hơn 20.300 vnd / lít, đó không phải là một cái giá dễ chịu cho hầu hết mọi người. Do đó, đi lại bằng phương tiện công cộng là sự lựa chọn tốt nhất hiện nay. Với những chính sách trợ giá của nhà nước, người dân sẽ an tâm hơn trong việc đi lại mà không cần lo lắng cho “túi tiền” của mình. Ngoài ra, lý do để bạn nên di chuyển bằng phương tiện công cộng là vì nó rất an toàn. Có thể dễ dàng hơn khi bạn đi lại bằng xe riêng, nhưng ở Việt Nam hiện nay có hơn 99% người dân sử dụng xe máy hai bánh. Vì không có sự bảo vệ bên ngoài nào nên đi xe máy trở nên nguy hiểm rất nhiều, đặt biệt là tình hình giao thông ở nước ta. Xe buýt chính là giải pháp an toàn cho bạn, chỉ cần lên xe và tận hường chuyến đi. Theo website Giao thông Vận tải, hiện nay đã có ít nhất 5 tuyến xe buýt đặc biệt phục vụ người khuyết tật và 10 xe buýt hai tầng đã được đưa vào sử dụng nhằm đa dạng hóa hình thức phục vụ. Công ty quảng cáo Đất Việt với chiến dịch "Nào Ta Cùng Buýt" được giao bởi Sở Giao thông Công chánh TP.HCM với các khẩu hiệu và hình ảnh thiết thực đã rất thành công trong việc đề xướng và cổ động người người tham gia giao thông bằng xe buýt. Tình hình giao thông ở nước ta hiện nay được đánh giá là không tốt, xe quá nhiều mà đường xá lại không nâng cấp. Băng việc đi lại bằng xe buýt bạn đã góp phần giải quyết hiện trạng xấu này. Và không chỉ thế, đi xe buýt thay vì đi xe riêng là bạn đã góp phần chống ô nhiễm không khí và môi trường. Tại các thành phố lớn ở nước ta, xe buýt đã hoạt động rất có hiệu quả. Hầu như các tuyến xe buýt đã được bố trí cho chạy xuyên suốt mọi địa điểm trong thành phố. Với số lượng xe buýt và mật độ dày đặt, chắc chắn xe buýt là sự lựa chon số một trong việc đi lại bằng phương tiện công cộng hiện nay. Trong một cuộc thăm dò ý kiến các tầng lớp nhân dân vế mức độ hài lòng đối với các dịch vụ hành chính công thì xe buýt là một trong những dịch vụ được mọi người đánh giá cao nhất. Ngoài việc phục vụ người dân tốt, xe buýt cũng được phục vụ kinh doanh quảng cáo để tạo nguồn thu tái đầu tư phục vụ cộng đồng. Xe buýt quảng cáo còn là một transit media rất có ích trong việc quảng cáo đại chúng. Tuy hình thức quảng cáo này hiện nay đã rất phổ biến trên thế giới nhưng ở nước ta thực sự nó chưa được thực hiện rộng rãi. 2) Mục đích nghiên cứu: Hoạt động của xe buýt ở TP.HCM bắt đầu nhộn nhịp vào năm 2003. Vào thời điểm ấy, hơn 3.000 xe buýt mới xuất hiện nhờ ba nguồn - vốn cho vay hỗ trợ của Chính phủ, ngân sách thành phố và khoản đầu tư của một số doanh nghiệp vận tải. Mục đích của việc đầu tư ào ạt này rất rõ ràng: “giải quyết nạn tắc đường do có quá nhiều phương tiện cá nhân tham gia giao thông, góp phần giảm bớt tai nạn giao thông và xây dựng văn minh lịch sự đô thị”. Một viễn cảnh tươi sáng đã được vẽ ra trong cái bức tranh giao thông đô thị ảm đạm khi đó. Những trạm dừng có người lên xuống nhiều nhất là bến xe liên tỉnh, bệnh viện, trường học, chợ… Khoảng 90% khách đi xe buýt là học sinh, sinh viên, khách ngoại tỉnh,.… Khách thường xuyên đi xe buýt gồm những người không được phép đi xe gắn máy, không điều khiển được xe, không có xe và không biết đường. Như vậy mục tiêu phát triển xe buýt để hạn chế xe cá nhân nhằm giải quyết nạn tắc đường, kẹt xe xem như không đạt được. Với sự bố trí các tuyến xe buýt chưa hơp lý thì hiện tượng ít người sử dụng là chuyện bình thường đặt biệt là đối với người có ít thời gian. Tram dừng thì đặt ở quá xa những nơi “cao điểm” khiếng không ít người ngại đi bộ ngoài trời. Đối với người ít đi xe buýt, việc xác định tuyến đi và đường đi là cả một vấn đề, chính điều này đã ảnh hưởng không tốt đến xe buýt. Để giải quytế hiện trang không tốt này, cần phải có những biện pháp hiệu quả. Để xe buýt trở thành phương tiện thông dụng và được sử dụng rộng rãi, cần phải cải thiện, sửa đổi các tuyền xe cho hợp lý, tạo sự tiện lợi và nhanh chóng cho người sử dụng. Vì vậy, để có thể đi lại thuận tiện, bạn không chỉ cần xe bus thôi mà bạn cần một chỉ dẫn hợp lý các tuyến xe bus để có thể di chuyển nhanh chóng, tiện lợi. Với mục đích mang lại sự thuận tiện trong việc lựa chọn các tuyến xe buýt thích hợp, nhằm cải thiện việc đi lại của mọi người, nhóm đã nghiên cứu, xây dựng chương trình tìm đường đi với các tuyến xe buýt trong thành phố, giúp ích cho xã hội và góp phần phát triển đất nước ta. Mục tiêu chính của việc nghiên cứu là tìm cho ra được giải pháp xác định đường đi ngắn nhất, tiết kiệm nhất với các tuyến xe buýt thích hợp cho hành khách. 3) Phương pháp nghiên cứu: ◦ Phân tích các yêu cầu đặt ra. xác định các thành phần cơ bản, chức năng đòi hỏi của ứng dụng. ◦ Nghiên cứu các công nghệ có liên quan, hỗ trợ cho việc xây dựng hệ thống: hệ điều hành Android, điện toán đám mây Google App Engine … ◦ Tìm hiểu cơ chế hoạt động của mô hình client – server, truyền thông qua giao thức HTTP, để tạo giao tiếp giữa ứng dụng android với ứng dụng server. ◦ Thiết kế cơ sở dữ liệu và tìm hiểu cơ chế lưu trữ, truy xuất ở phía server (điện toán đám mây). ◦ Sử dụng bộ công cụ Android 4.0.3 SDK và Android Virtual Device để phát triển ứng dụng phía client (smartphone). ◦ Sử dụng bộ App Engine Java SDK đế phát triển và đưa ứng dụng server lên đám mây. 4) Phạm vi nghiên cứu: ◦ Tìm hiểu các công nghệ có liên quan đến hệ thống như: hệ điều hành Android, điện toán đám mây Google App Engine … ◦ Tạo cơ sở dữ liệu và đưa dữ liệu lên server thông qua một ứng dụng trung gian, có thể thêm và cập nhật thông tin. ◦ Thiết kế giao diện và chức năng của ứng dụng client (smartphone). ◦ Tạo được kết nối giữa client (smartphone) và server (cloud computing). ◦ Xây dựng các dịch vụ web để đáp ứng các yêu cầu đặt ra, bao gồm 3 dịch vụ: dịch vụ cập nhật dữ liệu, dịch vụ truy xuất dữ liệu và dịch vụ tìm đường đi xe buýt. ◦ Cài đặt giải thuật tìm đường đi ngắn nhất giữa 2 tram xe buýt. II. CƠ SỞ LÝ THUYẾT 1) Giới thiệu về Android: Android là một ngăn xếp phần mềm, bao gồm hệ điều hành, các chương trình và ứng dụng then chốt cho các thiết bị di động. Android SDK cung cấp các công cụ và giao diện cần thiết cho việc phát triển phần mềm trên nền tảng Android bằng ngôn ngữ lập trình Java. Sau đây là lược đồ thể hiện kiến trúc Android: Ó Tầng ứng dụng (Applications): bao gồm một mail client, chương trình SMS, Lịch, bản đồ, trình duyệt … Ó Tầng khung làm việc (Framework): cung cấp một nền tảng phát triển mở, Android cho phép người phát triển có khả năng xây dựng các ứng dụng cực kỳ sinh động và sáng tạo. Miễn phí nhận các tiện ích về phần cứng thiết bị, truy xuất thông tin vi trí, chạy các dịch vụ background, hẹn giờ, thêm chú thích ở thanh trang thái, và nhiều thứ khác nữa. Ó Tầng thư viện (Libraries): bao gồm các thư viện như: C / C++, Media, Surface Manager, LibWebCore, SGL, 3D, FreeType, SQLite. Ó Tầng thực thi (Runtime): mỗi ứng dụng android chạy trong tiến trình của nó, với thể hiện của nó là Dalvik virtual machine. Dalvik được tạo ra giúp thiết bị có thể chạy đa luồng hiệu quả hơn. Dalvik VM nằm trên nhân Linux làm nhiệm vụ cơ bản như là quản lý luồng và bộ nhớ cấp thấp. Ó Nhân Linux (Linux Kernel): xử lý các dịch vụ hệ thống như là bảo mật, quản lý bộ nhớ, quản lý tiến trình, ngăn xếp network và mô hình driver. Nhân Linux còn hoạt động như là một lớp trừu tượng giữa phần cứng và phần mềm. Có 4 thành phần của ứng dụng Android: Ó Activities: trình diễn một màn ảnh cho giao diện người dùng. Ó Services: là thành phần chạy background để thực thi các thao tác chạy lâu hoặc thực thi các điều khiển tiến trình từ xa. Service không cung cấp giao diện sử dụng Ó Content providers: quản lý bộ dữ liệu ứng dụng được chia sẻ với nhau. Ta có thể lưu trữ tập tin hệ thống, cơ sở dữ liệu SQLite, trên web, hoặc những vị trí lưu trữ khác mà ứng dụng có thể truy cập. Ó Broadcast receivers: là thành phần phản hồi các thông báo broadcast. 2) Google app engine “Google App Engine” (GAE) là một nền tảng hosting bao gồm web server, cơ sở dữ liệu BigTable and kho lưu trữ file GFS. GAE cho phép bạn viết ứng dụng web dựa trên cơ sở hạ tầng của Google. Nghĩa là bạn không cần quan tâm là trang web bạn được lưu trữ như thế nào (kể cả database đi kèm), mà chỉ cần quan tâm đến việc phát triển ứng dụng theo các API do Google cung cấp. Với App Engine,Bạn chỉ cần tải lên các ứng dụng của bạn, và nó sẵn sàng để phục vụ người dùng của bạn. Bạn có thể sử dụng tên miền riêng của mình (chẳng hạn như http://www.example.com/) thông qua google apps. Hoặc bạn có thể dùng sub-domain miễn phí của appspot.com. GAE cho phép được host miễn phí với dung lượng 500 MB lưu trữ và cho phép 10 GB băng thông lưu chuyển mỗi ngày hay tương đương 5 triệu pageview hàng tháng,Vượt qua mức này bạn sẽ phải trả phí. Dùng GAE, chúng ta khỏi phải thiết kế database, viết SQL để truy vấn data, map data vô object. Chúng ta chỉ cần design các class và GAE tự động lo phần làm việc với database. Tóm lại, giờ đây bạn chỉ cần phải nghĩ ra và viết những ứng dụng tuyệt vời nhất rồi kêu gọi cả thế giới vào dùng. Tuy nhiên, mặt trái của việc xây dựng ứng dụng trên GAE là bạn sẽ phụ thuộc hoàn toàn vào các công nghệ của Google và rất khó có thể tách ra thành một ứng dụng độc lập. Yahoo hay Microsoft sẽ chẳng bao giờ mua một ứng dụng xây dựng trên nền tảng của đối thủ. Còn các nhà đầu tư cũng rất e ngại khi tài sản của công ty bạn đặt hết vào tay người khác, dù cho đó là Google. Hiện AppEngine hỗ trợ 2 loại ngôn ngữ là: Python và Java. Một số ngôn ngữ khác như PHP cũng có thể chạy được nếu cài cùng với bộ chuyển từ PHP sang Java. 3) Thuật toán tìm đường đi ngắn nhất Trong lý thuyết đồ thị, bài toán đường đi ngắn nhất nguồn đơn là bài toán tìm một đường đi giữa hai đỉnh sao cho tổng các trọng số của các cạnh tạo nên đường đi đó là nhỏ nhất. Định nghĩa một cách hình thức, cho trước một đồ thị có trọng số (nghĩa là một tập đỉnh V, một tập cạnh E, và một hàm trong số có giá trị thực f: E→R), cho trước một đỉnh v thuộc V, tìm một đường đi P từ v tới mỗi đỉnh v' thuộc V sao cho là nhỏ nhất trong tất cả các đường nối từ v tới v' . Bài toán đường đi ngắn nhất giữa mọi cặp đỉnh là một bài toán tương tự, trong đó ta phải tìm các đường đi ngắn nhất cho mọi cặp đỉnh v và v' . Thuật toán quan trọng nhất giải quyết bài toán này là: Ó Thuật toán Dijkstra — giải bài toán nguồn đơn nếu tất cả các trọng số đều không âm. Thuật toán này có thể tính toán tất cả các đường đi ngắn nhất từ một đỉnh xuất phát cho trước s tới mọi đỉnh khác mà không làm tăng thời gian chạy. Ó Thuật toán Dijkstra có thể mô tả như sau: Ó Ta quản lý một tập hợp động S. Ban đầu S={s}. Ó Với mỗi đỉnh v, chúng ta quản lý một nhãn d[v] là độ dài bé nhất trong các đường đi từ nguồn s đến một đỉnh u nào đó thuộc S, rồi đi theo cạnh nối u-v. Procedure Dijkstra { For each v of V do { d(v)=M COLOR(v)=WHITE d(s)=0 InsertHeap(Q,s) k=1 While Q khác rỗng do { u=Head(Q) Push(Q,u) k=k-1 COLOR(u)=BLACK For each v of Ajd(u) { if COLOR(v)=WHITE then { k=k+1 HeapIndex(v)=k InsertHeap(Q,v) COLOR(v)=GRAY PRE(v)=u dv=d(u)+w(u,v) } if (COLOR(v)=GRAY and d(v)>d(u)+w(u,v)) then{ d(v)=d(u)+w(u,v) PRE(v)=u UpHeap(Q,HeapIndex(v)) } } } III. NỘI DUNG NGHIÊN CỨU 1) Phân tích sơ bộ Người hành khách khi đi xe buýt, sẽ cần biết các thông tin cơ bản sau: Ó Đường đi từ trạm xuất phát đi tới trạm đích. Ó Chi phí cho mỗi chuyến đi phải thấp. Ó Phải đảm bảo về mặt thời gian (nhanh nhất nếu có thể). Ó Người dùng sẽ phải đón tuyến xe nào để đi từ trạm xuất phát, khi cần đổi tuyến để đến được trạm đích, thi người ta sẽ phải chọn tuyến nào phù hợp. 2) Thiết kế hệ thống Từ những yêu cầu trên, hệ thống cần xây dựng các thành phần cơ bản sau: Ó Thành phần giao diện sử dụng: cho phép người dùng tương tác trực quan với bản đồ, dễ dàng xác định được vị trí đang đứng, chọn trạm nào sẽ xuất phát và trạm nào muốn đi tới. Sau khi xử lý tìm đường hoàn tất, ứng dụng sẽ thể hiện con đường tìm được bằng cách vẽ đường đi từ điểm xuất phát tới điểm đích trên bản đồ. Qua đó, người dùng sẽ có cái nhìn trực quan hơn, dễ dàng thấy được mình sẽ đi qua đường nào, đi những tuyến nào ... Ó Thành phần xử lý tìm đường: dựa vào thông tin đầu vào là vị trí của trạm xuất phát và trạm đích, kết hợp với dữ liệu mà hệ thống đang lưu trữ, gồm các thông tin về vị trí các nút giao thông và các kết nối (quan hệ) giữa các nút giao thông đó, và các thông tin kèm theo như là tuyến xe, trạm dừng. Ứng dụng sẽ áp dụng giải thuật tìm đường đi kết hợp với việc lựa chọn các tuyến xe phù hợp mà tham gia lộ trình đó. Ó Thành phần dữ liệu: các thông tin mà hệ thống cần lưu trữ, phải đảm bảo hỗ trợ tốt cho việc xử lý tìm đường đi, lựa chọn các tuyến xe buýt thích hợp cho lộ trình và đáp ứng được các yêu cầu về mặt xử lý cũng như các yêu cầu đặt ra cho ứng dụng tìm đường. Vì vậy, dữ liệu vào sẽ cần có các thông tin về vị trí của các nút giao thông (kinh độ, vĩ độ), kết nối giữa các nút giao thông đó, nút giao thông đó sẽ nằm ở trên tuyến đường nào. Thông tin về lộ trình của các tuyến xe cũng phải được quan tâm và được lưu trữ dựa theo mối quan hệ “có đi qua” các nút giao thông nào. Lưu ý về hướng đi trong mối quan hệ “có đi qua”, tại vì có trường hợp hai xe buýt lượt đi và lượt về của chúng là cùng đi qua nút giao thông đó, nhưng như vậy sẽ gây nhầm lẫn trong quá trình tìm đường, không biết tuyến xe đó sẽ tiếp tục đi đâu, đi tới nút giao thông nào nếu như không biết tuyến đó đi theo hướng nào. Các trạm dừng, nhà chờ sẽ phụ thuộc vào vị trí của các nút giao thông, và phải có thông tin về quan hệ “ghé vào” với các tuyến xe buýt có đi ngang trạm, vì đâu phải lúc nào tuyến xe đó đi ngang trạm đó là buộc phải ghé vào trạm đó để mà trả khách, rước hành khách mới. Ó Bởi vì dữ liệu lưu trữ sẽ là khá lớn, cứ mỗi một tuyến xe trung bình sẽ đi qua trung bình khoảng 100 nút giao thông, 100 tuyến xe như vậy thì dữ liệu về các mối quan hệ sẽ rất lớn. Giải thuật tìm đường sẽ phải duyệt qua tất cả các nút giao thông để tìm đường đi tối ưu nhất có thể tìm được, vì thế thời gian xử lý cũng phải được quan tâm nhiều. Ứng dụng được phát triển trên nền tảng Android, dành cho các thiết bị di động như là smartphone, máy tính bảng … nên sẽ bị hạn chế nhiều về mặt xử lý và lưu trữ dữ liệu hệ thống. Do đó ta cần giao việc xử lý và lưu trữ cho một bộ phận khác, dồi dào tài nguyên, bộ nhớ, mạnh mẽ hơn, sẽ giúp cho công việc tìm đường có hiệu quả hơn, chính xác hơn. Vì thế, để có được lợi ích đó, ta sẽ xây dựng một server chuyên về xử lý và lưu trữ dữ liệu, kết hợp với công nghệ điện toán đám mây và những lợi ích mà nó mang lại cho ứng dụng web, sẽ làm tăng khả năng phục vụ của server rất nhiều. Ó Về cơ bản là hệ thống sẽ có 2 phần chính là client (smartphone) và server (cloud), nhưng cần thiết có 1 bộ phận thứ 3 tham gia vào hệ thống dùng để cập nhật dữ liệu lên server, bởi vì client (smartphone) có nhiệm vụ chính là sử dụng các dịch vụ được cung cấp từ phía server, chứ không trực tiếp quản lý cập nhật thông tin. Ó Như vậy, ở phía server ta cần xây dựng 3 dịch vụ: dịch vụ cập nhật dữ liệu, dịch vụ truy xuất dữ liệu và dịch vụ tìm đường đi xe buýt. 2 dịch vụ cập nhật và truy xuất dữ liệu chủ yếu được ứng dụng cập nhật sử dụng, dịch vụ tìm đường đi xe buýt chủ yếu phục vụ cho ứng dụng client (smartphone). 3) Hiện thực a) Mô hình ý niệm dữ liệu: Ó Danh sách các thành phần dữ liệu: Tên Diễn giải Kiểu dữ liệu BUSID Mã tuyến xe char(5) QUATITY Số tuyến trong ngày float TIMESPACING Thời gian cách float khoảng SPEED Vận tốc tuyến xe float STREETID Mã đường đi char(5) STREET.NAME Tên đường nvarchar(100) DISTRICT Quận nvarchar(100) BUSTOP.NAME Tên trạm xe nvarchar(100) BUSTATION.NA Tên bến xe nvarchar(100) ME LOCATIONID Mã nút giao thông char(5) LONGITUDE Kinh độ nvarchar(100) LATITUDE Vĩ độ nvarchar(100) Ó Danh sách các thực thể: Tên Thực thể BUSROUTE Tuyến xe STREET Đường đi BUSTOP Trạm xe BUSSTATION Bến xe LOCATION Nút giao thông Ó Danh sách các kết hợp: Tên Diễn giải Visit Ghé qua Passing Đi qua Locate Nằm trên Lying Nằm trên Lying2 Nằm trên Enrollment Kề b) Mô hình logic dữ liệu: Ó Danh sách các thực thể: Tên Diễn giải BUSROUTE Tuyến xe VISIT Ghé qua STREET Đường đi BUSSTOP Trạm xe BUSSTATION Bến xe PASSING Đi qua LOCATION Nút giao thông ENROLLMENT Kề c) Mô hình vật lý dữ liệu: Ó Danh sách các thực thể: Tên Diễn giải BUSROUTE Tuyến xe VISIT Ghé qua STREET Đường đi BUSSTOP Trạm xe BUSSTATION Bến xe PASSING Đi qua LOCATION Nút giao thông ENROLLMENT Kề d) Mô hình ý niệm truyền thông: Người sử dụng (USER) sẽ truy vấn (QUERY) tới smarphone (SMARTPHONE) để tìm thông tin về đường đi xe buýt. Smartphone làm nhiệm vụ gửi đi thông điệp yêu cầu (MAKE REQUEST) từ phía người sử dụng về phía server (CLOUD) . Server sẽ truy xuất các tài nguyên, dữ liệu cần thiết phục vụ cho việc tìm kiếm đường đi xe buýt (ACCESS AND PROCESS DATA), sau đó xử lý và gửi trả về client (SMARTPHONE) kết quả. Với thông tin nhận được từ phía server, smartphone sẽ hiển thị câu trả lời (ANSWER) cho người sử dụng. Trong mô hình truyền thông này, smartphone đóng vai trò là client, cloud đảm nhận công việc của một server. Client và Server giao tiếp nhau thông qua giao thức HTTP, chúng hoạt động theo kiến trúc client – server, một server phục vụ cho rất nhiều client.

Tìm luận văn, tài liệu, khoá luận - 2024 © Timluanvan.net