Mis on domeenitehnoloogia?

Domeenitehnoloogia on uue arvutitarkvara loomine, kasutades olemasolevate programmide bitte ja tükke ning seda, mida keegi neist teab. Domeeni kavandamise oluline osa on avastada, kuidas erinevad tarkvaraartefaktid ja domeenid on sarnased konkreetse kliendi vajadustega, et neid saaks õigesti tõmmata ja kasutada. Kuigi see tähendab, et kliendi tarkvara on vaid teise süsteemi variant, on tarkvaral ainulaadsed osad, mille loojad on sisse kirjutanud. Selle eelisteks on kiirem tootmisaeg ja vähem vigu.

Unikaalseid programme luuakse iga päev, kuid sisuliselt kasutavad paljud neist teatud jaotiste jaoks sama kodeeringut. Selle asemel, et kirjutada täiesti uus programm, mis võib kasutada sama või sarnast kodeeringut, kasutab domeenitehnoloogia uuesti mõnda jaotist uutes programmides. Tavaliselt on need üldised osad, mida saab hõlpsasti ilma juriidiliste probleemideta taaskasutada, kuna need on osad, mida võib leida enamikust teistest programmidest. Osad võivad pärineda ühest programmist või mitmest, olenevalt kliendi vajadustest.

Domeenitehnoloogias ei kopeeri tarkvara loojad ühtegi tarkvara osa, et näha, kas see töötab; selle asemel peavad nad suutma erinevaid programme analüüsida. Näiteks kui klient soovib teatud funktsiooni, peavad loojad analüüsima enda tehtud programme, et näha, kas neid on sarnaste funktsioonidega. Ilma analüüsita pole garantiid, et kopeeritud kood töötab õigesti.

See protsess võib jätta mulje, et domeenitehnoloogia on lihtsalt mallipõhine süsteem, milles tarkvara loojad kopeerivad mõne koodi ja nimetavad seda uueks programmiks, kuid see pole tõsi. Kogu domeeni kujundamise protsess on üsna intensiivne ja läheb kaugemale sarnaste osade leidmisest. Pärast sarnaste osade leidmist tuleb neid tavaliselt kohandada vastavalt kliendi vajadustele ja loojad loovad sageli uue koodi, et rahuldada kliendi muid vajadusi, mida kopeeritud kood ei hõlma.

Domeenitehnoloogiale võib omistada mitmeid eeliseid. Programm ei ole täiesti nullist tehtud, seega peaks selle arendamine võtma vähem aega. See tähendab, et klient saab programmi kiiremini kasutada või müüa, mida sageli soovitakse. Domeenitehnoloogias kasutatavat kopeeritud kodeeringut testitakse tavaliselt eelnevalt, et veenduda selle toimimises, nii et selle tulemuseks on tavaliselt vähem teste, mis vähendab ka arendusaega. Koodi toimimist on juba näidatud, seega põhjustab see sageli vähem tarkvaravigu.