Na końcu zostaje rozprawa sądzie

Depozytariusz musiałby mieć w swoich strukturach specjalistów, którzy na podstawie dostarczonego kodu źródłowego wraz ze stosowną dokumentacją są w stanie potwierdzić przynajmniej jego ogólną zgodność co do zawartości i składu modułów funkcjonalnych. Niestety, na tym etapie zupełnie odpada możliwość sprawdzenia poprawności zawartych w nich algorytmów. Opcja ta nie będzie wchodziła w grę, gdy strona deponująca zechce zabezpieczyć nośniki przez zaplombowanie, a więc bez możliwości jakiegokolwiek wglądu do ich zawartości. Za granicą istnieją serwisy internetowe firm specjalizowanych w przechowywaniu depozytów źródłowych. Autorzy otrzymują konto dostępowe, za którego pomocą mogą w wersji zaszyfrowanej złożyć cyfrowy depozyt. Jednak pomimo innej technologii deponowania nie zmienia się podstawowa zasada i nadal nie ma odpowiedzi na pytanie: jak sprawdzić poprawność, kompletność i aktualność tych źródeł.

Inną metodą weryfikacji, dokonywaną w sposób pośredni, mogłoby być obserwowanie objawów funkcjonalnych na podstawie wykreowanej z zawartości depozytu wersji produkcyjnej. Jednak osiągnięty tą metodą rezultat nie musi być do końca dowodem jednoznacznym i ostatecznym, gdyż na poprawność działania wersji produkcyjnej wpływ, oprócz samego kodu, mają jeszcze inne parametry: sposób kompilacji, instalacji oraz dane konfiguracyjne. Nie jest więc powiedziane, że skoro wygenerowane z powierzonych źródeł oprogramowanie nie działa tak, jak spodziewa się tego odbiorca, to zdeponowane źródła zawierają błędy. Być może przyczyny tego tkwią zupełnie gdzie indziej.

Niemniej jednak wydaje się, że to jedyny pewny sposób weryfikacji zdeponowanych źródeł przy współistnieniu zgody strony autorskiej, chociaż trudności techniczne, jakie tu się kształtują, praktycznie zniechęcają do podejmowania tego rodzaju działań. Po pierwsze, kody źródłowe to nie tylko spójne moduły zapisane w określonych językach programowania. To także odwołania do szeregu bibliotek pomocniczych oraz liczne procedury zapisane w różnego rodzaju notacjach. Zdawać sobie należy sprawę z trudności przygotowania jednolitej i prostej wersji instalacyjnej wszystkiego. A więc musi istnieć dokumentacja opisująca metodologię przechodzenia do wersji finalnej oraz musi być załączona lista kompletności. Aby przeprowadzić instalację, musi istnieć zaplecze sprzętowe oraz środowisko produkcyjne, na którym byłaby sprawdzana ta wersja. No i wreszcie trzeba dysponować zespołem specjalistów, który zajmie się tym zadaniem, jak również późniejszym testowaniem zgodności produktu. Kto więc poniesie ciężar tego rodzaju weryfikacji? Na pewno nie strona trzecia, która nie jest technicznie na to przygotowana. Jeśli tego rodzaju testy będzie się przeprowadzać po stronie producenta oprogramowania, oczywiście przy współudziale przedstawicieli klienta, zawsze w podtekście może pojawiać się obawa o manipulację. Jeśli zaś będzie odbywać się to przy wykorzystaniu zaplecza strony klienckiej, autorzy zawsze mogą mieć obawy o niekontrolowany wyciek źródeł. Na koniec pozostaje dołożenie ostatniej kropli przepełniającej tę czarę goryczy: po każdej modyfikacji oprogramowania faza testów zgodności musiałaby być powtarzana. Trudno więc o gorszy pomysł na weryfikację zawartości depozytu.

Autoryzowane repozytorium

Najbardziej wyważonym sposobem wydaje się utworzenie autoryzowanego repozytorium źródeł, które z jednej strony dostarcza firmie autorskiej wsadu do utworzenia finalnej wersji instalacyjnej, zaś klientom daje zabezpieczenie jako depozyt. Oczywiście w grę wchodzi repozytorium dysponujące odpowiednimi warunkami technicznymi, które dają gwarancję odpowiedniego zabezpieczenia i powodują, że bieżący dostęp do składowania i korzystania ze źródeł ma tylko firma autorska oraz - co najważniejsze - że każdą bieżącą wersję produkcyjną strona autorska ma przygotowywać, bazując tylko na wersjach źródłowych z tego repozytorium. Depozytariusz na podstawie odpowiednich umów dysponowałby natomiast kluczem dostępu, który mógłby być przekazany licencjobiorcom w razie zaistnienia koniecznych do tego warunków. Przedsięwzięcie miałoby szansę powodzenia, gdyby istniały mechanizmy zabezpieczające przed użyciem do wygenerowania wersji produkcyjnej przez stronę autorską źródeł innych niż pochodzące z tego repozytorium. W przeciwnym razie rozwiązanie to jest warte dokładnie tyle, ile składowanie zaplombowanego nośnika w bankowym sejfie.


TOP 200