Các hệ thống thông tin địa lý có chức năng như kho chứa đựng những quan sát của con người về các đối tượng có quan hệ không gian và các đặc tính của chúng. Để tập trung vào các vấn đề này, con người đã xây dựng các mô hình nhận thức của các đối tượng thực và tiến hành đơn giản hóa chúng, sử dụng kỹ thuật trừu tượng hóa cho tới khi chỉ còn lại những thành phần trọng yếu nhất. Các mô hình nhận thức như hoặc được liên lạc một cách không chính thức bằng cách sử dụng ngôn ngữ tự nhiên, hoặc nằm trong một hệ thống dựa trên một mô hình trừu tượng chính thức của thực thể.
Các nhà thí nghiệm quan sát thấy rằng các khái niệm cơ bản con người sử dụng đã được hình thành từ giai đoạn đầu trong cuộc đời con người như những kinh nghiệm có được từ chính những trải nghiệm của cơ thể (Johnson 1987). Điều này xảy ra ở tất cả mọi người, bởi về cơ bản chúng đều được sinh ra từ các chức năng sinh lý học của cơ thể. Mô hình biến đổi là sự miêu tả khái quát hóa một tình huống (Ellis et al. 1990) (ví dụ: “một người sở hữu một ngôi nhà” tương phản với mô hình cụ thể “Ông A sở hữu ngôi nhà tại số 56 đường Nguyễn Chí Thanh”). Cơ chế trừu tượng hóa sẵn có trong mô hình dữ liệu quyết định các mô hình biến đổi và mô hình cụ thể có thể được sử dụng, và từ đó quyết định khả năng diễn đạt của GIS. Nếu cơ chế trừu tượng hóa không đầy đủ, mô hình biến đổi của thực tế sẽ trở nên không tương thích và việc tham chiếu từ khái niệm của người sử dụng về hoạt động đối tượng vào mô hình GIS sẽ gặp nhiều trở ngại và rất khó hiểu. Điều này sẽ khiến cho GIS trở nên khó sử dụng.
Hình 2.2: Mối quan hệ giữa Mô hình, Công nghệ phần mềm và cơ sở dữ liệu cho GIS.
2.2.2.1 Các mô hình dữ liệu và cơ chế trừu tượng hóa
Một bộ phận quan trọng trong các chức năng xây dựng – mô hình được phát triển từ mô hình dữ liệu cho hệ thống quản lý cơ sở dữ liệu trong GIS. Một mô hình dữ liệu là một tập hợp của:
Các loại cấu trúc dữ liệu
Các quy tắc thực hành hoặc suy diễn Ràng buộc toàn vẹn dữ liệu
Nó cung cấp các công cụ, chẳng hạn như các ngôn ngữ sẵn có, để mô tả mô hình biến đổi của cơ sở dữ liệu (Date 1986). Các ví dụ về mô hình dữ liệu có thể tìm thấy là mô hình quan hệ (Codd 1970), Mô hình – Quan hệ - Thực thể (Chen 1976) và mô hình hướng – đối tượng (Manola and Dayal 1986;Bancilhon et al. 1988).
Mô hình dữ liệu của hệ thống quản lý cơ sở dữ liệu phải thiết lập cơ sở cho các cơ chế trừu tượng hóa, những cơ chế cũng được đưa vào ngôn ngữ lập trình và môi trường phần mềm; do đó công nghệ phần mềm phải cung cấp cho người sử dụng những công cụ để ứng dụng các cơ chế trừu tượng hóa vào ngôn ngữ lập trình. Ví dụ, nếu một mô hình yêu cầu một cơ chế để thiết lập các đối tượng có thể bao hàm các đối tượng khác thì ngôn ngữ lập trình sử dụng trong trường hợp này cần đưa ra một phác đồ để tập hợp tất cả các nhân tố mà là một bộ phận của một nhân tố khác. Sự thiếu hụt các phác đồ thích hợp trong ngôn ngữ lập trình thường dẫn tới việc giả lập khiến cho các hệ thống phần mềm trở nên phức tạp và khó duy trì.
Việc một hệ thống thông tin được thiết kế sử dụng một mô hình – quan hệ - đối tượng (Chen 1976), rồi được bổ sung vào một ngôn ngữ lập trình tương tự - Algol (như Pascal hay C), và được mở rộng để truy cập vào một hệ thống quản lý dữ liệu quan hệ thông qua một ngôn ngữ truy vấn nhúng như SQL nhúng hay Quel nhúng được coi là chuẩn mực. Sự bất tương thích xuất hiện tại mỗi giao diện giữa hai tập hợp công cụ là do tồn tại các mô hình khác nhau cho việc trình bày thông tin.. Các chức năng quan trọng của một nhân tố phải thường xuyên được mô phỏng trong một nhân tố khác. Những mô phỏng này khiến tính hiệu quả bị giảm xuống và dẫn tới sự thiếu nhất quán giữa việc thiết kế, triển khai và thực thi. Kết quả là sản phẩm, dựa trên một mẫu thiết kế rời rạc, đã tiêu tốn một cách thái quá các nguồn lực và rất khó để duy trì.
2.2.2.2 Mô hình hướng đối tượng
Ý tưởng cơ bản về định hướng đối tượng xuất phát từ việc quan sát thấy thế giới thường được coi là một tập hợp bao hàm các đối tượng tương tác lẫn nhau theo nhiều cách khác nhau. Tương tác giữa các đối tượng có thể được nhìn nhận như một lệnh, hay thông điệp, được gửi tới một đối tượng – bằng lời nói hoặc bằng một số hành động, ví dụ như các tác động cơ học. Dựa trên các hoạt động thông thường được ứng dụng vào trong đối tượng – hoặc lệnh mà chúng phản hồi – chúng được nhóm lại thành các lớp. Ban đầu khái niệm này được giới thiệu trong lĩnh vực lập trình như một bộ phận của ngôn ngữ mô phỏng SIMULA (Dahl and Nygaard 1966). Càng gần đây chúng càng trở nên phổ biến và được thừa nhận rộng rãi.
Trong công nghệ phần mềm, hướng đối tượng đã trở thành phương pháp thiết kế hàng đầu cho việc tạo mô hình đối tượng giống như những gì con người quan sát được từ thực tế. Không giống như các phương pháp tiếp cận được sử dụng
trước đây, phương pháp này kết hợp việc tạo mô hình cấu trúc và các hoạt động hành vi của đối tượng. Trừu tượng hóa trước tiên tạo mô hình cho họat động, trong khi các phương pháp được sử dụng cho việc thiết kế giản đồ cơ sở dữ liệu tập trung vào cấu trúc của thực thể.
Phương pháp hướng đối tượng tỏ ra hoàn toàn phù hợp với khái niệm toán học về đa tương thích hoặc đại số không đồng nhất. Đứng trên quan điểm này, miêu tả của một đối tượng bao gồm tên cho loại của nó, một tập hợp các hoạt động thích hợp cho các đối tượng loại này, và một tập hợp các tiên đề định nghĩa các hành vi của hoạt động… ví dụ như tiên đề định nghĩa hành vi của một hoạt động dưới dạng các hoạt động khác