With New ArcGIS Engine, Developers Can Embed GIS Functionality in Custom Software Applications
ArcGIS 9 Desktop Development Platform
ArcGIS is a platform for delivering geographic information systems (GIS). ArcGIS 9 extends Esri's offerings with major new desktop capabilities in the areas of geoprocessing, 3D visualization, and enhanced annotation and labeling, to name a few. The other major focus of ArcGIS 9 is on developer tools, and this was accomplished by building software components that can be organized as products.
In addition to ArcGIS Desktop, two new products, ArcGIS Engine and ArcGIS Server, are introduced at this release making ArcGIS a complete system for desktop and server-based application development. ArcGIS Server is an enterprise GIS application server that provides a wealth of GIS services throughout an organization through centrally managed GIS functionality and applications. ArcGIS Server was highlighted in the Fall 2003 edition of ArcNews. For more information, visit www.esri.com/arcgisserver.
ArcGIS Engine is a set of embeddable cross platform ArcObjects, ArcGIS software's underlying components, used to build custom GIS and mapping desktop applications or add new functionality to existing applications. ArcGIS Engine applications can vary from simple map viewers to custom GIS editing and analysis programs.
Why the Interest in Custom GIS Applications?
Faced with an overabundance of raw information, organizations are awakening to the value of geographic analysis and spatial visualization because of their clear ability to improve operational efficiency and decision making within an organization. Call it business intelligence, analytic applications, or decision support, knowledge workers benefit from software applications that provide them with the information they need to quickly and accurately assess a situation and act accordingly.
There are many potential users of GIS-enhanced applications who are not GIS professionals and not equipped to take advantage of the comprehensive tools available on the market without a steep learning curve. To provide spatial solutions to non-GIS users, developers need the ability to build domain specific, easy-to-use applications that can incorporate the power of a comprehensive GIS system into a user-friendly experience. These applications, if built from scratch, can be an overwhelming development effort and may not be time- or cost-effective.
Solutions for Efficient GIS Development
The ideal solution to a prolonged GIS development effort is the availability of a component-based development framework that will allow solution providers or an organization's internal developers to rapidly build industry specific GIS applications. A GIS development framework provides the necessary comprehensive spatial functionality for applications and allows the software developer to focus on building application specific logic. ArcGIS Engine is such a GIS framework, created in response to Esri software users' requests that the rich technology of ArcGIS be productized to enable embedding spatial functionality in new or existing applications.
ArcGIS Engine Developer Kit
The ArcGIS Engine consists of a software development kit and runtime required to run applications built on ArcGIS Engine. The ArcGIS Engine Developer Kit is not an end user product but rather a standards-based toolkit for application developers. The software components, ArcObjects, that comprise the ArcGIS Engine products are operating platform neutral and can be called from various programming interfaces such as .NET, Java, common object model (COM), and C++.
ArcGIS Engine Runtime
All applications built with the ArcGIS Engine Developer Kit will need ArcGIS Engine Runtime to enable program execution. The ArcGIS Engine Runtime software provides the core functionality of all ArcGIS applications. ArcGIS Engine application users can view and author maps and explore spatial features by performing a wide range of spatial or attribute searches. The standard ArcGIS Engine Runtime also makes available basic map and data editing and GIS analysis. The standard ArcGIS Engine Runtime can be enhanced with full read-write access to a versioned and/or multiuser geodatabase along with specialized optional functionality found in Esri's ArcGIS Spatial Analyst, ArcGIS 3D Analyst, and ArcGIS StreetMap USA extensions.
Key Features of ArcGIS Engine
Standard GIS FrameworkArcGIS Engine provides a standard framework for developing GIS applications. ArcGIS Engine is both robust and extensible, and its rich functionality allows developers to concentrate on solving organizational problems, not building GIS functionality from scratch.
Cost-Effective DeploymentArcGIS Engine Runtime is licensed per computer. This allows multiple ArcGIS applications to run on the same computer, incurring the cost of only a single runtime license. In addition, if a computer is already licensed for one of the ArcGIS Desktop products, the user need not purchase a separate ArcGIS Engine Runtime license.
Developer ControlsArcGIS Engine provides a common set of visual controls that allows developers to easily deploy well-crafted applications with a common look and feel. A common user interface leads to a short learning curve for users so that returns on the applications are quickly realized.
Cross Platform FunctionalityArcGIS Engine and all of its associated objects and controls are available on a variety of platforms including multiple "flavors" of Windows with Linux and UNIX to follow after the initial ArcGIS 9 release. Custom GIS applications will operate within standard computing environments; there is no need to change or add additional operating environments to a user's present computing infrastructure.
Multiple Developer LanguagesArcGIS Engine supports a variety of developer languages and platforms including COM, .NET, Java, and C++. This allows the objects to be programmed using a wide range of tools and interactive development environments and should not require that a programming staff learn a new or proprietary language.
Optional Runtime FunctionalityIn addition to providing all of the objects needed to support the standard ArcGIS runtime, the ArcGIS Engine Developer Kit includes the additional components needed to update and create a geodatabase as well as the rich functionality of the ArcGIS 3D Analyst, ArcGIS Spatial Analyst, and ArcGIS StreetMap USA extensions. If any of this optional functionality is used in an ArcGIS Engine application, the cost of the ArcGIS Engine Runtime license will be increased depending on the functionality incorporated into the application.
Developer ResourcesThe ArcGIS Engine Developer Kit provides a help system along with object model diagrams and sample code to help developers get started. Several tools and utilities are also included in the ArcGIS Engine Developer Kit to facilitate development.
For more information, visit www.esri.com/arcgisengine.