Atomowe gry

Kilka tygodni temu odbyła się nader interesująca i udana konferencja, mająca za temat jakość systemów informatycznych. Przebojem konferencji niespodziewanie okazało się spotkanie z przedstawicielami zespołu, który w Polsce, ale na zlecenie zagraniczne, właśnie kończy 3-letnią pracę nad stworzeniem gry komputerowej, która ma wkrótce być sprzedawana na całym świecie.

Kilka tygodni temu odbyła się nader interesująca i udana konferencja, mająca za temat jakość systemów informatycznych. Przebojem konferencji niespodziewanie okazało się spotkanie z przedstawicielami zespołu, który w Polsce, ale na zlecenie zagraniczne, właśnie kończy 3-letnią pracę nad stworzeniem gry komputerowej, która ma wkrótce być sprzedawana na całym świecie.

Spotkanie to trwało dwa razy dłużej niż zaplanowano, a po jego zakończeniu i tak spore grono miłośników gier nadal nie odstępowało gości.

To, że gra taka, to miliony wierszy kodu źródłowego, dziesiątki tysięcy skryptów (w tym, w charakterystycznych dla tej dziedziny, egzotycznych językach), tysiące nagrań muzycznych i efektów dźwiękowych, tyleż dialogów w różnych wersjach językowych - to wszystko, chociaż imponujące, wydawało się w jakiś sposób oczywiste. Skoro jednak tematem Konferencji była jakość, nie mogło zabraknąć tej sprawy i kojarzonego z nią testowania. A jakość w tym przypadku, to np. frustracje plastyka, który dla gry musiał zaprojektować blisko tysiąc ikonek o wielkości 32 x 32 piksele i ileś tam razy je poprawiać, bo albo były mało wyraziste, albo niedostatecznie różniły się od innych.

Kto jednak ze "zwykłych testerów" zdobyłby się na to, aby, kierując w grze jakąś postacią, przetup-tać (dosłownie!) podłogi wszystkich występujących w grze komnat, by sprawdzić, czy nie ma tam gdzie nie trzeba zapadni, a potem jeszcze obijać się, kawałek po kawałku, o wszystkie ściany, by upewnić się, że są nieprzenikalne. A według scenariusza cała gra może trwać i 40 godzin! Czy coś takiego jest w stanie wykonać ktoś inny, niż zagorzały fanatyk gier komputerowych?

O całej sprawie przypomniałem sobie podczas innej niedawnej konferencji - Tvorba Softwaru w Ostrawie. Było tam mianowicie nader interesujące wystąpienie o testowaniu oprogramowania sterującego bezpieczeństwem działania elektrowni jądrowych (czeski przemysł od paru dziesiątków lat zaopatruje świat w elementy i urządzenia dla elektrowni jądrowych).

Większa część oprogramowania, o którym mowa, powstała w Czechach, ale współdziała ono z modułami pochodzenia amerykańskiego, brytyjskiego, radzieckiego, rosyjskiego i francuskiego. Złożoność ta nie ułatwia testowania, którego wyniki weryfikują potem rozliczne komisje, lokalne i międzynarodowe. No, i jest jeszcze Austria, której bardzo nie podoba się bliskość elektrowni w Temelinie i która stale poszukuje okazji do zakwestionowania jej bezpieczeństwa.

W elektrowniach jądrowych komputery sterują praktycznie wszystkim - od mocy reaktora, przez wytwarzanie pary wodnej, aż po pracę turbin i generatorów. Zasada bezpieczeństwa wydaje się prosta - trzeba tak sterować mocą reaktora, aby reszta była w stanie ją odbierać i zużywać.

Oprogramowanie sterujące bezpiecznym działaniem elektrowni jądrowych testuje się znanymi sposobami (white box i black box), ale także w warunkach rozłączonych i spiętych sprzężeń zwrotnych i biorąc pod uwagę pełne możliwe zakresy parametrów, nawet te, z pozoru, irracjonalne. Dla większej pewności, identycznych wyników oczekuje się od takich samych programów, biegnących osobno, na komputerach z mikroprocesorami Intela i Motoroli.

To ostatnie, jak się wydaje, to zapewne echo błędnej operacji zmiennoprzecinkowej, jaka pod koniec ubiegłego wieku pojawiła się w mikroprocesorach Intela.

Jak podkreślono jednak, w oprogramowaniu dla elektrowni jądrowych najważniejsze jest, by w każdej sytuacji, nawet najbardziej nadzwyczajnej, program zatrzymywał się i trwał w z góry przewidzianym punkcie i stanie. Bo pojawienie się tego, co znamy jako niebieski ekran, tam może oznaczać powtórkę z Czernobyla.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200