Mis on liidese juhtimisdokument?

Liidese juhtimisdokument (ICD) on vormistatud kirjeldus meetodite ja struktuuride kohta, mis on seotud konkreetse süsteemi sisendi pakkumise ja väljundi vastuvõtmisega. Liidese juhtimisdokumendis kirjeldatud süsteem võib olla tarkvarateek või riistvaraosa. Dokument ei pea järgima ühtki vormingut, vaid see võib olla lõigete, diagrammide või isegi lihtsalt liidese riistvara tehniliste jooniste kogum. Spetsiaalselt tarkvarale viidates võib liidese juhtimisdokument meenutada abstraktset programmeerimisliidest (API), mis kirjeldab avalikke meetodeid või funktsioone, mida saab kasutada teabe sisestamiseks teeki, ning kirjeldab ka tulemuseks saadavat väljundit. Liidese juhtimisdokument kirjeldab üldiselt, kuidas süsteem integreerida suuremasse süsteemi või ühendada see paralleelsüsteemiga; see ei kirjelda ühtki süsteemi sisemist tööd, mis võib olla välja toodud eraldi dokumenditüübis.

Liidese juhtimisdokumendi eesmärk on pakkuda riist- või tarkvaraarendajatele dokumentatsiooni, mida saab kasutada süsteemi või tarkvara loomisel, mis edastab andmeid ICD-s kirjeldatud süsteemi ja sealt välja. Tavaliselt tähendab see täpsete funktsioonide või riistvarakomponentide määratlemist viisil, et nende signatuurid on teada ja kasutatavate parameetrite tolerantsid on antud. Tarkvaratehnikas võib see tähendada konkreetse funktsiooni nime tundmist, millist tüüpi muutujaid parameetritena aktsepteeritakse ja võimalik, et millised funktsionaalsed piirangud on seatud edastatavatele väärtustele. Riistvaraosa puhul võib see teave hõlmata jadapistiku juhtelemendi tihvtide funktsioone, kasutatavaid riistvarakatkestusi ja seadme töökiirust.

Üks asi, mida liidese juhtimisdokument konkreetselt ei kirjelda, on see, kuidas süsteem tõlgib sisendi väljundiks või kuidas väljundit üldiselt toodetakse. See võimaldab arendajatel võtta liidese loomisel süsteemist kitsalt keskendunud vaade, kuid see nõuab ka seda, et süsteemi arendajad peavad ICD üksikasjades järgima rangelt dokumendis endas sätestatud juhiseid. Liidese juhtimisdokumendi koostajatele ja süsteemi arendajatele on mugavuseks see, et dokumendis ei ole kirjeldatud süsteemi sisemist teostust ja seega on seda võimalik vabalt muuta, mõjutamata seejuures ICD-le tuginevate liideste välist arengut.

Mõnes olukorras võib liidese juhtimisdokument lubada süsteeme testida, ilma et peaks tegelikult kasutama valmis liidest. Seda saab teha, simuleerides erinevaid väljundtüüpe, mida süsteem saab ICD-s kirjeldatud viisil genereerida, ja seejärel edastades selle väljundi väliselt arendatud liidese kaudu. Süsteemid, mis on huvitatud ainult süsteemi ühe poole (nt väljundi, riistvara, näiteks kuvaseadme) haldamisest, võivad tagada, et liides toimib spetsifikatsioonide kohaselt, ilma et oleks vaja reaalset sisendit.