Coyote

Coyote

Publications

Microsoft Research Blog

Microsoft Research Blog

Overview

Mission-critical cloud services require more than 99.9 percent uptime—developers face extreme challenges in this unpredictable, high-stakes environment. Coyote provides developers a programming framework for confidently building reliable asynchronous software on the .NET platform.

Coyote allows to express the high-level asynchronous design directly in the code dramatically simplifying addition of new features. Coyote automatically finds deep non-deterministic safety and liveness bugs through intelligent systematic testing; and reproduces these non-deterministic bugs, facilitating easier debugging and quick fixes. It also supports both actor- and task-based programming.

Coyote has been adopted—in production—by a growing number of critical Azure services. User retention is 100 percent, with teams reporting wins in three critical areas: (1) Increased uptime, with fewer to no bugs after production deployment on features systematically tested by Coyote; (2) increased performance enabled by a highly asynchronous design; and (3) time savings when adding new features due to increased confidence in code correctness.

Learn more about Coyote.

People