Lựa chọn công cụ thực hiện

Một phần của tài liệu Xây dựng hệ thống phần mềm thao tác, hiển thị thông tin địa lý trên môi trường mạng Internet (Trang 69 - 72)

Công cụ thực hiện là một trong những tiêu chí rất quan trọng góp phần tạo nên sự thành công của toàn bộ đề tài. Vì vậy, cũng cần phải cân nhắc trong quá trình lựa chọn.

II.1 Lựa chọn phần mềm lu trữ dữ liệu GIS

Hiện nay, trên thị trờng có rất nhiều sản phẩm GIS có tính chuyên dụng cao. Và việc sử dụng các sản phẩm này sẽ có thể giảm đi rất nhiều khối lợng công việc cũng nh thời gian thực hiện toàn bộ đề tài. Sau đây là một số phần mềm GIS thông dụng và phổ biến ở Việt Nam:

+ MapInfo : phần mềm của công ty MapInfo, hỗ trộ ngôn ngữ MapBasic.

+ ArcView : phần mềm của công ty ESRI, hỗ trợ ngôn ngữ lập trình Avenue Script. Đây là 2 sản phẩm GIS rất mạnh và đặc biệt cho phép sử dụng các ngôn ngữ lập trình để tuỳ biến môi trờng thực hiện theo mục đích của ngời sử dụng. Các sản phẩm này đều cho phép xây dựng CSDL dữ liệu địa lý và rất nhiều chức năng GIS đợc tạo lập sẵn. Tuy nhiên đây là các sản phẩm có tính độc lập cao và nếu có hỗ trợ sử dụng trên mạng thì thờng thông qua các giao thức riêng. CSDL có thể tự xây dựng cho các ứng dụng chuyên nghiệp hoặc sử dụng các CSDL thông thờng nh Oracle, Sysbase, Informix, DB2,… Tuy nhiên để quản trị và sử dụng đợc cần phải đợc đào tạo và giá thành hệ thống khá cao so với điều kiện Việt Nam.

Xây dựng hệ thống phần mềm thao tác, hiển thị thông tin địa lý trên môi trờng mạng Internet

Oracle cũng cung cấp một sản phẩm là Oracle Spatial cho phép lu trữ dữ liệu không gian trong CSDL nh những thành phần dữ liệu thuộc tính khác.

Vì vậy có 2 phơng hớng lựa chọn :

√ Sử dụng một phần mềm GIS chuyên dụng về GIS nhng có hỗ trợ ngôn ngữ lập trình để gọi các hàm/thủ tục thực hiện các chức năng GIS và có thể kết xuất với các ứng dụng bên ngoài (MapInfo/ArcView).

√ Sử dụng một hệ quản trị CSDL có hỗ trợ lu trữ dữ liệu GIS (Oracle). Và sau đây sẽ là những u điểm và nhợc điểm của 2 phơng pháp

• Với phơng pháp thứ nhất (Sử dụng phần mềm GIS chuyên dụng)

Ưu điểm:

- Các chức năng GIS sẽ có độ tin cậy và chất lợng cao vì đợc thực hiện bởi các phần mềm GIS chuyên dụng.

- Không cần viết mã lệnh để thực hiện một số chức năng của GIS nên thời gian thực hiện và khối lợng công việc có thể giảm đáng kể .

- Quản lý CSDL GIS thông qua phần mềm GIS chuyên dụng nên có độ tin cậy và hiệu năng cao.

Nh

ợc điểm:

- Phụ thuộc vào các biến động và các công cụ hỗ trợ của phần mềm GIS .

- Phải có kinh nghiệm và sự hiểu biết sâu sắc về phần mềm GIS sử dụng và ngôn ngữ lập trình mà phần mềm đó hỗ trợ.

- Quản lý dữ liệu và thực hiện các chức năng GIS đều đợc thực hiện bởi phần mềm GIS nên khó khăn trong việc can thiệp sâu vào hệ thống.

• Với phơng pháp thứ 2 (sử dụng hệ quản trị CSDL hỗ trợ GIS) :

Ưu điểm :

- Dễ dàng sửa chữa, nâng cấp, phát triển các chức năng thực hiện GIS. Chủ động hơn trong việc kiểm soát hoạt động của hệ thống.

- Vì dữ liệu GIS đợc quản lý bởi một hệ quản trị CSDL nên việc chia sẻ dữ liệu trên mạng và phối hợp xử lý với các hệ thống khác đợc thuận lợi hơn.

- Tăng tính mềm dẻo của hệ thống do có sự tách rời giữa các chức năng.

- Phần mềm GIS có tính độc lập riêng.

Nh

ợc điểm :

- Thời gian thực hiện và khối lợng công việc tăng lên rất nhiều vì phải viết chơng trình thực hiện các chức năng của GIS.

- Cần phải có sự hiểu biết, kiến thức, kinh nghiệm về GIS và khả năng thực hiện các chức năng của GIS.

- Cần phải thiết kế CSDL GIS và phơng pháp để truy nhập Database, phơng pháp tổ chức hệ thống phần mềm theo mô hình Client/Server.

Xây dựng hệ thống phần mềm thao tác, hiển thị thông tin địa lý trên môi trờng mạng Internet

Trong giai đoạn thực hiện đề tài này sẽ sử dụng phơng pháp 2. Phơng pháp này tuy có một số khó khăn nhng thuận lợi trong việc phát triển, mở rộng và có tính độc lập với các sản phẩm phần mềm GIS chuyên dụng khác. Và hệ quản trị CSDL đợc chọn là Oracle.

Nh vậy, hệ thống sẽ có một Database Server là hệ quản trị CSDL Oracle đảm nhận việc quản lý CSDL địa lý.

II.2 Lựa chọn công cụ cho tầng trung gian (Application Server)

Yêu cầu cho việc lựa chọn tầng trung gian :

- Có khả năng giao tiếp đợc với Database Server.

- Phải hỗ trợ các tính năng đa luồng, xử lý tơng tranh.

- Có khả năng thực hiện đợc kết nối mạng.

Để đáp ứng đợc các yêu cầu này thì hiện nay có một số phơng hớng mà ta có thể áp dụng :

- Gắn với Web Server.

- Tồn tại độc lập với Web Server.

Các công nghệ gắn liền với Web Server là :

√ ASP (Active Server Pages) : ASP là một môi trờng Server-Side Scripting mạnh để tạo trang Web hoặc các ứng dụng Web. Đây là một công nghệ của hãng Microsoft hớng tới Web. Các ứng dụng ASP dễ dàng phát triển và biến đổi. Trong đó ta có thể tạo ra, chạy, tơng tác với các ứng dụng Web Server . Cùng với ASP ta có thể kết hợp với các trang HTML, nhúng trực tiếp các lệnh Script (Java Script, VBScript), sử dụng ActiveX .

√ ISAPI (Internet Service Application Programming Interface) : là một chơng trình DLL đợc xem nh phần mở rộng của Web Server. Chơng trình sẽ hoạt động nh một tiến trình riêng. Nó sẽ đợc kích hoạt và nạp vào bộ nhớ bởi Web Server khi có yêu cầu theo giao thức HTTP.

√ CGI : CGI (Common Gateway Interface) cung cấp cơ chế cho phép các Web Server chạy một chơng trình hoặc một Script trên Server và gửi kết quả tới Web Browser.

Với hớng thứ 2, tức là ta phải viết một ứng dụng Server. ứng dụng này sẽ chạy độc lập với Web Server. Để viết chơng trình ứng dụng có thể sử dụng 2 ngôn ngữ lập trình là :

√ Java : cho phép viết ứng dụng có tính khả chuyển cao, hỗ trợ đợc nhiều Client. Tuy nhiên, tốc độ thực hiện còn thua kém so với C,C++.

√ Visual C++ : có u điểm về mặt tốc độ và có thể sử dụng rất nhiều công cụ khác nhau. Chơng trình chỉ chạy đợc trên môi trờng Windows.

Xây dựng hệ thống phần mềm thao tác, hiển thị thông tin địa lý trên môi trờng mạng Internet

Với hớng thứ nhất, hệ thống sẽ thích hợp với đa số các Browser vì đầu ra đều tuân theo dạng HTML mà các Browser có thể hiểu đợc. Tuy nhiên cũng có một số hạn chế :

- ứng dụng chỉ chạy đợc trên các Web Server có hỗ trợ công nghệ này.

- Việc tơng tác với ngời sử dụng gặp nhiều khó khăn. Vì lúc này phải sử dụng một số các công cụ Client-Side (nh Java Script, HTML Form, …). Nhng các công cụ này đều có những hạn chế nhất định. Điều này gặp phải những khó khăn trong việc phát triển, mở rộng ứng dụng về sau.

- Quản lý phiên của ứng dụng sẽ gặp nhiều hạn chế. Ví dụ với các chơng trình ISAPI và CGI là các tiến trình riêng đợc Web Server kích hoạt. Sau khi thực hiện xong tạo kết quả đầu ra thì sẽ kết thúc.

Vì vậy, hệ thống sẽ không thực hiện theo hớng này mà phát triển theo hớng thứ 2. Về lựa chọn ngôn ngữ lập trình thì Visual C++ là ngôn ngữ có u điểm về tốc độ thực hiện và các công cụ phát triển. Mặc dù đây là ngôn ngữ không có tính khả chuyển và chỉ chạy đợc trên hệ điều hành Windows. Nhng hiện nay Windows cũng rất phổ biến, đợc sử dụng rộng rãi và là một hệ điều hành rất mạnh. Hơn nữa ứng dụng server là không phụ thuộc vào ngời sử dụng đầu cuối.

Do đó, giải pháp thực hiện cho tầng trung gian sẽ là một ứng dụng Server đợc viết bằng ngôn ngữ Visual C++.

II.3 Lựa chọn công cụ thực hiện tầng thứ 3 (Client Application)

Vì tầng trung gian là một ứng dụng Server, nên công cụ đợc chọn cho tầng 3 phải đảm bảo có thể kết nối đợc với Server này. Đồng thời cũng phải cho phép ứng dụng có thể tích hợp đợc vào trong trang Web. Sau đây là 3 công nghệ điển hình :

- ActiveX

- Plug-In

- Java Applet

Trong 3 công nghệ này thì Java Applet có nhiều u điểm hơn cả vì vậy ta sẽ chọn công nghệ này để thực hiện ở tầng 3.

Một phần của tài liệu Xây dựng hệ thống phần mềm thao tác, hiển thị thông tin địa lý trên môi trường mạng Internet (Trang 69 - 72)