Request for contribution via master thesis

Yitzhak Goldstein <yurisho@...>

Hello OpenAPI Group,

I am a master student in Computer Science at MTA, The Academic College of Tel-Aviv-Yaffo, Israel.

I wish to involve you in my thesis work as I believe in the OpenAPI standard, and wish to improve it.

I have experience working with the OpenAPI standard, and specifically in generating Python code from Swagger API documentation.
It did indeed save me and my team a lot of time writing boilerplate code, but in some respects there was still some "mindless" work to be done.
Specifically, when entering a route input validation still needed to be done if it wasn't simple type checking and format validation, and the work of returning the correct status code for each possible outcome of the code still needed to be done manually.

There exists ways to declare these aspects of the codebase, using logical statements. These statements define "preconditions" for a successful route call that can help define correct input validation, and "postconditions" that define the shape of the output from a successful route call that can help define correct status code returns.

Current tools to express these rules include Alloy for software modeling and Java Modeling Language (JML) for specifying the behaviour of java modules.
Using these tools, one can prove their logic is sound and produce the requested system, and proving mathematically the correctness of code.

In my thesis work I wish to try and imbue such capabilities into an OpenAPI document, and as such improve code generation capabilities and save programmers from more "mindless" work.

I wish to involve you in my work to make sure I am building a theory for something that will indeed be put to practical use in the future, and to build in a way that can fit with your overall goal.

I eagerly await your response,
Yitzhak S. Goldstein,
Master Student