Program SWIP5 składa się z jądra programu (w Windows jest to plik exe) i modułów rozbudowujących funkcjonalności programu (w Windows są to pliki dll, w Linuxie są to pliki so).
Jądro programu zawiera możliwości wyświetlania sejsmogramów, pikowania faz sejsmicznych, przeglądania i edytowania opracowania sejsmicznego, raportowania pracy całego pakietu, podłączania modułów oraz przekazywania danych do modułów. Jądro posiada również bibliotekę funkcji przydatnych w różnych modułach. Funkcjonalność jądra zawarta jest w czterech oknach:
- okno główne programu,
- okno powiększenia,
- okno opracowania,
- okno raportu.
Moduły dodaje się do programu mogą być rożnych typów. Zdefiniowano 5 typów modułów:
- filtry,
- przetwarzanie sejsmogramów,
- optymalizacje,
- czytanie formatów sejsmicznych,
- baza danych,
- typ ogólny.
Niektóre moduły potrzepują dodatkowo innych modułów do swojej pracy. Mogą to być konkretne moduły lub wszystkie moduły konkretnego rodzaju. Np. moduł do czytania sejsmogramów z plików, potrzebuje wszystkich modułów do czytania formatów sejsmicznych, a moduł do liczenia magnitudy ML potrzebuje konkretnego modułu do filtracji symulującej sejsmometr Wooda-Andersona. Brak dodatkowych modułów może powodować odłączenie modułu lub tylko ograniczenie jego funkcjonalności.
Moduły podczas uruchamiania modyfikują menu programu. Występują dwa typy funkcjonalności modułów: obliczeniowa i graficzna. W przypadku funkcjonalności graficznej otwierane jest własne okno obsługi. Pojedyncze moduły mogą dostarczać programowi kilka funkcjonalności, dawać możliwości otwierania wielu okien i dodawać wiele pozycji do menu programu.