The software functionality a GIS should offer can be grouped into functions for data capture, data management, data analysis,
and representation.
Many different GIS exist and they cover a wide range of fields. They can be categorized as "General purpose GIS", "Internet
GIS", "Desktop GIS", "CAD GIS", "Business Mapping", "GIS complenents", "Mobile GIS" and "Open source GIS" .
The hardware components required to run a GIS can be divided into four general categories according to specific tasks of
the system: data acquisition, data management, data analysis, and data output and presentation.
A lot of GIS data and functionality is accessible over a network and many GIS applications offer ways to connect directly
to the internet or a database server. These communications are made possible by the modular architectures of both the GIS
application and the operating system.