Cos'è un documento di controllo dell'interfaccia?
Un documento di controllo dell'interfaccia (ICD) è una descrizione formalizzata dei metodi e delle strutture coinvolte nella fornitura di input e ricezione di output da un sistema specifico. Il sistema descritto dal documento di controllo dell'interfaccia può essere una libreria di software o un pezzo di hardware. Il documento non deve seguire nessun singolo formato ma può essere una raccolta di paragrafi, grafici o anche solo disegni tecnici dell'hardware dell'interfaccia. Quando si riferisce specificamente al software, un documento di controllo dell'interfaccia può assomigliare e API (Abstract Programming Interface), che descrive i metodi pubblici o le funzioni che possono essere utilizzate per inserire informazioni nella libreria e descrive anche l'output che risulterà. Un documento di controllo dell'interfaccia descrive generalmente come integrare il sistema in un sistema più ampio o collegarlo a un sistema parallelo; Non descrive nessuno dei meccanismi interni del sistema, che potrebbe essere spiegato in un tipo separato di documento.
Lo scopo di un documento di controllo dell'interfaccia è quello di fornire agli sviluppatori di hardware o software Alcune documentazioni che possono essere utilizzate durante la creazione di un sistema o un software che trasferirà i dati da e verso il sistema che l'ICD sta descrivendo. Questo di solito significa definire funzioni esatte o componenti hardware in modo tale che le loro firme siano conosciute e vengono fornite le tolleranze dei parametri per l'uso. Nell'ingegneria del software, ciò può significare conoscere il nome di una particolare funzione, quale tipo di variabili sono accettate come parametri e, possibilmente, quali limiti funzionali vengono posti sui valori che vengono passati. Per un pezzo di hardware, queste informazioni possono includere quali funzioni i pin di un controllo del connettore seriale, qualsiasi interruzione hardware utilizzata e la velocità di lavoro del dispositivo.
Una cosa che un documento di controllo dell'interfaccia non descrive specificamente è come il sistema traduce input into output o come viene prodotto l'output, in generale. Ciò consente agli sviluppatori di assumere una visione strettamente focalizzata del sistema durante la creazione di un'interfaccia, ma richiede anche che gli sviluppatori del sistema che i dettagli dell'ICD aderiscano rigorosamente alle linee guida spiegate nel documento stesso. Una comodità per gli scrittori di un documento di controllo dell'interfaccia e gli sviluppatori del sistema è che l'implementazione interna del sistema non è descritta nel documento e, quindi, può essere liberamente modificata senza influire sullo sviluppo esterno di interfacce che si basano sull'ICD.
In alcune situazioni, un documento di controllo dell'interfaccia può consentire il test dei sistemi senza effettivamente dover utilizzare un'interfaccia completata. Questo può essere fatto simulando i vari tipi di output che un sistema può generare come descritto nell'ICD e quindi passando tale output attraverso l'interfaccia sviluppata esternamente. Sistemi che sono interessati solo a gestire un lato del sistema, come ilL'output, nel caso di hardware come un dispositivo di visualizzazione, può garantire che l'interfaccia funzioni all'interno delle specifiche senza richiedere l'input del mondo reale.