arcuser

The Evolution of GIS Software

From tightly scripted software code to the cloud, understanding our history can help guide us in building the technology of the future.

There is much we can learn from our past. Each technology advance has been a tradeoff between heavier processing loads and deploying software that was easier to build and maintain. Faster hardware processors and improved network bandwidth provide opportunities for more software innovation. As platform and network capabilities improve, new advances in software move technology forward at an increasingly rapid pace.

Software development history gives us insight into the basic principles that guide us in building the technology of the future. The diagram below shows a high-level overview of the major GIS technology changes over the past 20 years.

Tightly Scripted Software Code

The early ARC/INFO software provided developers and professional GIS users with a rich toolkit for geospatial query and analysis and demonstrated the value of GIS technology. It was followed by other Esri products. ArcView GIS introduced easy-to-use commercial off-the-shelf (COTS) software that could be used directly by GIS operational users. MapObjects empowered developers with a simple way to integrate GIS in focused business application environments. Terminal servers enabled remote user access to centrally managed GIS desktop applications. ArcIMS web services introduced a framework for publishing GIS information products to web browser clients. ArcStorm and ArcSDE introduced better ways to maintain and share GIS data resources.

Highlights of the evolution of Esri software from 1982 to present

Object-Relational Software

Hardware performance improvements led to the adoption of more efficient programming techniques in the late 1990s. ArcGIS Desktop software gave users a simple and powerful application interface for many standard GIS operations. ArcGIS Server and ArcGIS Engine provided developers with rich processing tools and full GIS functionality for custom application development and deployment. Distributed geodatabase management tools and replication services provided better integration and sharing of geospatial data.

Service-Oriented Architecture

Web technology introduced more ways to share data and services, introducing a services-oriented component architecture along with interoperability standards that enable open and adaptive applications developed from multivendor component architecture.

Google and Microsoft introduced preprocessed (cached) online global basemap imagery, providing free access to geographic information products from home and mobile devices. Online data and services have become an important extension of the GIS user experience. Rich Internet client technology improves display performance and server capacity.

Cloud Computing Platform Architecture

Hardware virtualization, data center automation, and self-service cloud computing provide simpler ways to administer and support GIS applications and services. ArcGIS Online provides a cloud-based self-service framework for sharing intelligent maps and building an online community basemap. Free web mapping tools encourage collaboration and sharing within groups and communities throughout the web.

Imagery is fully integrated into ArcGIS, including a rich set of imagery management and analysis tools. ArcGIS is available for mobile phones, tablets, and a variety of new mobile clients.

New Technologies Bring New Opportunities

Software technology migration from scripts to objects to services and to the cloud accelerated the rate of technology change while increasing demands on hardware performance and network connectivity. The change in technology impacted business processes in an evolutionary way, opening new opportunities for GIS to support enterprise and community operations, helping customers better understand their world, and empowering business with more informed decisions.

This article is an excerpt from Dave Peters’s book Building a GIS: System Architecture Design Strategies for Managers. Extensive information about successful system design can also be found on the System Design Strategies wiki and in the System Architecture Design Strategies training class.