There are surprisingly many definitions of the term Geographic Information System (GIS). There are even those that take the acronym GIS to mean Geographic Information Science.
I prefer to define GIS as: “A collection of typically (computer-based) tools focused on collecting, analysing, visualising, storing, editing and managing Geospatial data”
Often, the tools are organised into a coherent desktop processing environment, such as QGIS and ArcGIS pro. But a GIS can also consist of a programming environment such as JupyterLab, typically in the programming language Python, using a series of common Geospatial Libraries There are many GISs out there, and Choosing the right processing environment is often a hard job Closely related to the term GIS are the terms GIS project, which is a project that uses GIS to solve Geospatial problems and Geoinformatics, which is the science of geospatial processing and its application