In this 2019 GSoC project we will implement a Web Processing Service (WPS) client for ArcGIS Pro. It will consist of two components: (1) a Microsoft .NET based library, (2) an ArcGIS Pro Add-In. The client will help ArcGIS Pro users to easily communicate with service instances through a user interface in the ArcGIS Pro look-and-feel.
What is WPS?
The Web Processing Service is a standard that describes how clients can find and execute processes offered by a WPS instance. To find and execute processes, the user usually makes 3 requests. The first request is called GetCapabilities. Its purpose is to briefly inform the user about all the processes types the server is offering. The second request is called DescribeProcess, which provides information about the process you want to execute, such as the inputs and the data format it accepts. The third request is the Execute request. It sends the process inputs to the server and starts the execution. The outputs can be obtained either directly in the execute response or using separate requests.
Simplified data flow of a WPS interaction between the client and server
More on .NET and ArcGIS Pro
We have chosen .NET, precisely C#, thanks to its strong typed system that allows us to have a coherent structure within our code base. It was also very important to match the technology used by the ArcGIS Pro SDK, which is primarily delivered for .NET. I personally consider .NET to be a technology with massive potential that will eventually expand to all domains of use, as shown in the recent announcement of .NET 5.
My name is Mihai Stan and I am in my third year towards a bachelor’s degree in Computer Science at Paris Descartes University. I have always been very passionate about computer science and was curious about environmental sciences such as biology and geography. I occasionally develop open source projects which I publish on my github page.