ModelBuilder is an application you use to create, edit, and manage models. Models are workflows that string together sequences of geoprocessing tools, feeding the output of one tool into another tool as input. ModelBuilder can also be thought of as a visual programming language for building workflows.
While ModelBuilder is very useful for constructing and executing simple workflows, it also provides advanced methods for extending ArcGIS functionality by allowing you to create and share your models as tool.
ModelBuilder can even be used to integrate ArcGIS with other applications. An example is provided below:
The above model is used by a municipality to send e-mail notifications to all addresses within 1 mile of an address for which a building permit application is filed. The model starts with a feature class of multiple permit application point locations. This feature class is fed into an iterator that loops over each individual point and feeds the point into the Select Layer By Location tool, where all addresses (parcels) within 1 mile of the point are selected. These addresses are then passed to a custom script tool (one that you or your colleague created), Generate Mailing List, that executes Python code to output a mailing list in HTML format. Finally, the mailing list is fed to another custom script tool, Send Email Notifications, which runs a custom executable that sends e-mail notifications and produces a success code.
The benefits of ModelBuilder can be summarized as follows:
- ModelBuilder is an easy-to-use application for creating and running workflows containing a sequence of tools.
- You can create your own tools with ModelBuilder. Tools you create with ModelBuilder can be used in Python scripting and other models.
- ModelBuilder, along with scripting, is a way for you to integrate ArcGIS with other applications.
If you have never used ModelBuilder, start with the Executing tools in ModelBuilder tutorial.
If interested in creating custom tools with ModelBuilder, see A quick tour of creating tools with ModelBuilder and the Creating tools with ModelBuilder tutorial.