Mis on edasisobivus?

Edasisobivus on disainipõhimõte, mille kohaselt programm või riistvara on välja töötatud nii, et see jääks ka tulevikus uue tarkvara või seadmetega funktsionaalseks. Näiteks arvutiprogramm on tavaliselt kirjutatud koodiga, mis võimaldab tal töötada operatsioonisüsteemi (OS) ja riistvaraga, mis on selle väljalaske hetkel aktuaalne. Arendaja, kes loob programmi edasiühilduvust silmas pidades, püüab tagada, et see töötaks ka mitu aastat hiljem uue OS-i ja erineva riistvaraga. Seda võib aga olla üsna raske tagada, kuigi protsessi lihtsamaks muutmiseks saab kasutada teatud meetodeid.

Edasiühilduvuse põhiidee on püüda tagada, et midagi jääks kasutatav ka tulevikus. Kuigi see on mõnes seades üsna lihtne, võib arvuti- ja infotehnoloogia (IT) tööstuses olla seda üsna raske saavutada. Tarkvaraarendaja nõuab sageli, et programmeerijad tagaksid, et kood, mida nad rakenduse tegemisel kasutatakse, jääks asjakohaseks ja kasutatavaks ka tõenäoliselt toimuvate muudatustega. Mõne tehnoloogilise arengu ettearvamatu olemus muudab aga edasise ühilduvuse keeruliseks, kuna praegu lihtne näiv võib mõne aasta pärast olla palju keerulisem.

Üks võimalus edasise ühilduvuse saavutamiseks on erinevate tarkvaraversioonide kasutamine, mida saab kõiki koos käivitada. Nii võib arendaja, kes töötab rakendusega, mis töötab programmi versiooniga 1.2, lihtsalt nõuda, et kasutajatel oleks 1.2, isegi kui neil võib olla sama tarkvara versioon 2.5. Kui vanemal versioonil leitakse suuri turvavigu või muid probleeme, mida ei ole lihtne lahendada, võib aga probleemiks olla mitu versiooni. Sel hetkel loobutakse tõenäoliselt vanematest versioonidest ja edasiühilduvus on kadunud.

Paljud tarkvaraarendajad tagavad, et nende programmide edasise ühilduvuse säilitamiseks kasutatakse plaastreid ja sarnaseid värskendusi. Kui pakett töötatakse välja konkreetse operatsioonisüsteemiga töötamiseks ja seejärel võetakse kasutusele selle OS-i uus versioon, tagab selle paketi arendaja tõenäoliselt selle toimimise. Plaastreid kasutatakse sageli põhiprogrammeerimise lisamiseks, mis võimaldab arendajal säilitada funktsionaalsust ilma täiesti uue versioonita.

Sarnaselt edasiühilduvusega on tagasiühilduvus võimalus, et uuem rakendus või fail töötab vanemates süsteemides. Näiteks tekstitöötlusprogrammi uus versioon võib kasutada failitüüpi, mis erineb oluliselt vanematest versioonidest. Ilma korraliku tagasiühilduvuseta võib keegi luua faili uues versioonis, kuid ei pääse sellele vanema faili kaudu juurde. Nii edasi- kui ka tagasiühilduvus on olulised, kuna need hoiavad andmed kättesaadavana ja võimaldavad kasutajatel end seadmete ja tarkvara uuendamisel mugavalt tunda.