Humane Registry
# Humane Registry

Eine Humane Registry (etwa: „humane Registrierung“) ist ein Begriff aus der Informationstechnik. Während beim Betrieb eines Webservice in Rechnernetzen üblicherweise Maschinen miteinander kommunizieren, bietet eine Humane Registry eine automatisch erstellte, für Menschen gedachte lebende Dokumentation.

Die Humane Registry sammelt Informationen über die Schnittstelle des Services zur Laufzeit und stellt diese Informationen in einer Form dar, welche für Menschen verständlich und benutzbar ist. Beispielsweise stellt die Software Swagger REST-Services als Webseite lesbar dar. Entwickler können über die Humane Registry den Service direkt mit Testdaten ansteuern und den Rückgabewert analysieren.

Dies bietet erhebliche Vorteile gegenüber einer manuell geführten Dokumentation, da die Daten in der Humane Registry nicht manuell aktualisiert werden müssen und zudem immer mit der aktuellen Schnittstellenversion des Services übereinstimmen. Zudem kann die Schnittstelle direkt über die Dokumentation angesteuert und somit schnell erforscht werden.

## Nachteile

Die Humane Registry kann in einer Produktionsumgebung unerwünscht sein. Der Entwickler muss in diesem Fall beachten, dass die Humane Registry in der Produktionsumgebung inaktiv ist.

Sollte dagegen die Humane Registry in der Produktionsumgebung erwünscht sein, so stellt sich die Herausforderung, nicht nur die eigentliche Schnittstelle, sondern auch die Humane Registry gegen unerwünschte Zugriffe mittels geeigneter Authentifizierung, Autorisierung und Verschlüsselung abzusichern.

## Implementierungen

* Swagger
   * Swashbuckle (Swagger-Alternative für. NET WebAPI)
   * ActiveDocs 3scale
* Mashape Developer Portal
* API Portal. TIPCO Mashery
* Apiary Oracle
* Revelio
* miredot (Plugin für Apache Maven)
* apigee
