Co to jest dokument kontroli interfejsu?
Dokument kontroli interfejsu (ICD) to sformalizowany opis metod i struktur zaangażowanych w dostarczanie danych wejściowych i odbieranie danych wyjściowych z określonego systemu. System opisany w dokumencie kontroli interfejsu może być biblioteką oprogramowania lub sprzętem. Dokument nie musi mieć jednego formatu, ale może być zbiorem akapitów, wykresów lub nawet tylko rysunków technicznych sprzętu interfejsu. Odnosząc się konkretnie do oprogramowania, dokument kontrolny interfejsu może przypominać abstrakcyjny interfejs programistyczny (API), który opisuje publiczne metody lub funkcje, których można użyć do wprowadzania informacji do biblioteki, a także opisuje wynik, który będzie wynikał. Dokument kontroli interfejsu ogólnie opisuje, jak zintegrować system z większym systemem lub podłączyć go do systemu równoległego; nie opisuje żadnego z wewnętrznych działań systemu, które mogą być zapisane w osobnym typie dokumentu.
Celem dokumentu kontroli interfejsu jest dostarczenie programistom sprzętu lub oprogramowania pewnej dokumentacji, z której można skorzystać podczas tworzenia systemu lub oprogramowania, które będzie przesyłało dane do iz systemu, który opisuje ICD. Zazwyczaj oznacza to zdefiniowanie dokładnych funkcji lub komponentów sprzętowych w taki sposób, że znane są ich podpisy i podane są tolerancje parametrów użytkowania. W inżynierii oprogramowania może to oznaczać znajomość nazwy konkretnej funkcji, jakiego rodzaju zmienne są akceptowane jako parametry i ewentualnie jakie ograniczenia funkcjonalne są nakładane na przekazywane wartości. W przypadku elementu sprzętowego informacje te mogą obejmować funkcje pinu kontrolera złącza szeregowego, wszelkie używane przerwania sprzętowe oraz prędkość roboczą urządzenia.
Jedną rzeczą, której dokument kontroli interfejsu nie opisuje konkretnie, jest to, w jaki sposób system tłumaczy dane wejściowe na dane wyjściowe lub w jaki sposób dane wyjściowe są generowane. Pozwala to programistom na wąskie skupienie się na systemie podczas tworzenia interfejsu, ale wymaga również od twórców systemu, że szczegóły ICD są ściśle zgodne z wytycznymi określonymi w samym dokumencie. Wygodą dla autorów dokumentu kontrolnego interfejsu i twórców systemu jest to, że wewnętrzna implementacja systemu nie jest opisana w dokumencie, a zatem może być swobodnie zmieniana bez wpływu na zewnętrzny rozwój interfejsów opartych na ICD.
W niektórych sytuacjach dokument kontroli interfejsu może umożliwiać testowanie systemów bez konieczności korzystania z ukończonego interfejsu. Można tego dokonać poprzez symulację różnych rodzajów danych wyjściowych, które system może wygenerować, jak opisano w ICD, a następnie przekazanie tych danych wyjściowych przez zewnętrznie opracowany interfejs. Systemy, które są zainteresowane obsługą tylko jednej strony systemu - takiej jak wyjście, w przypadku sprzętu takiego jak urządzenie wyświetlające - mogą zapewnić, że interfejs działa zgodnie ze specyfikacjami bez konieczności wprowadzania danych z rzeczywistego świata.