Opracowanie wewnętrznego systemu do zarządzania produkcją dla SMA Magnetics
SMA Magnetics działa w branży elektronicznej, elektrotechnicznej i energoelektronicznej. Firma zajmuje się produkcją elementów indukcyjnych, od przekładników po transformatory i dławiki. Realizuje zamówienia zarówno krajowe, jak i zagraniczne. SMA Magnetics posiada unikatową technologię produkcji i własny zespół badawczo-rozwojowy, opracowujący optymalne i zindywidualizowane rozwiązania dla klientów. Właśnie z tego powodu firma potrzebowała wydajnego systemu zarządzania produkcją, który przyspieszyłby realizację zleceń.
Manufacturing
execution system
MES II
Jaki był cel projektu?
Nadrzędnym celem projektu było opracowanie wewnętrznego systemu do zarządzania produkcją, a następnie wdrożenie go, w taki sposób, by uniknąć przestojów w produkcji. Kiedy dokładniej poznaliśmy specyfikę zlecenia, okazało się, że nasze działania wymagają stworzenia dwóch celów pośrednich. Jednym z nich było przyspieszenie działania ówczesnego systemu MES I (systemu monitorującego produkcję i jej wydajność) poprzez doraźne prace usprawniające. Drugim było stworzenie MES II, który opierałby się o nowy kod źródłowy.
Jakie było nasze całościowe podejście do projektu?
Audyt stanu systemu zarządzania produkcją
Nasze działania rozpoczęliśmy od audytu bieżącego stanu ówczesnego systemu zarządzania produkcją. Przeanalizowaliśmy struktury zarówno bazy danych, jak i całego systemu. Okazało się, że w skład MES I wchodziło kilka podsystemów współpracujących. Dodatkowo musieliśmy poznać pełną listę funkcjonalności (frontend) i zaznajomić się z systemem produkcji, aby na następnych etapach swobodnie porozumiewać się z przedstawicielami firmy. Następnie stworzyliśmy makiety systemu MES I. Przeprowadziliśmy analizę UX, aby odpowiednio zmodyfikować opracowane makiety. Zależało nam, aby jak najlepiej dopasowały się do wymagań stawianych przed nową wersją systemu.
Audyt struktury baz danych
Przeprowadziliśmy również analizę struktury bazy danych i zoptymalizowaliśmy ją poprzez dodanie indeksów, relacji, przebudowę tabel, jak i poprzez jej denormalizację w fazie końcowej. Kolejno zoptymalizowaliśmy widoki i procedury, które są używane do generowania raportów w formie plików w programie Excel. Dzięki temu każdy użytkownik biurowy ma natychmiastowy dostęp do danych produkcyjnych w różnej postaci (np. analiz czy planów produkcji). Dodatkowo wprowadziliśmy replikację bazy danych i rozdzieliliśmy operacje odczytu od operacji zapisywania danych, aby zapewnić bezproblemowe działanie systemu.
Przygotowanie środowiska testowego i produkcyjnego
W głównym etapie przygotowaliśmy środowiska testowe i produkcyjne. Równolegle z kodowaniem funkcjonalności systemu i testowaniem go (testy jednostkowe i funkcjonalne), wdrażaliśmy nowy design i UX. Na koniec przeprowadziliśmy testy integracyjne i wydajnościowe. Jednym z wymogów systemu było przystosowanie go do działania z czytnikami kodów QR. I tak informacja na temat zeskanowanego QR kodu zostaje przesłana na serwer po każdym odczycie kodu. Dzięki systemowi webowemu proces odbywa się bardzo szybko. Wprowadzenie takiego rozwiązania przyspieszyło pracę ludzi na linii produkcyjnej naszego klienta.
Jakie były wyzwania podczas realizacji projektu?
Opracowanie rozbudowanego systemu MES II
Największym wyzwaniem dla nas było opracowanie bardzo rozbudowanego systemu, który miał zawierać wielopoziomowe i zagnieżdżone uprawnienia. Dodatkowo system zarządzania produkcją miał być kompatybilny z innymi systemami np. z ERP (oprogramowaniem do kompleksowego zarządzania przedsiębiorstwem). Dane z systemu miały płynnie wędrować na linii: MES II a innymi systemami, w obie strony.
Przeniesienie funkcjonalności z systemu MES I do MES II
Kolejno musieliśmy przenieść całą funkcjonalność z MES I do MES II, w taki sposób, aby zmiany nie przeszkadzały klientowi w pracy oraz żeby nie wystąpiły przestoje podczas produkcji. W tym przypadku największym wyzwaniem było zetknięcie się z oprogramowaniem MES I.
Jak zmierzyliśmy się z tymi wyzwaniami?
Nasze działania podzieliliśmy na 2 etapy. W pierwszym skupiliśmy się na doraźnym rozwiązaniu problemu wolno działającego ówczesnego systemu. Dokonaliśmy koniecznej aktualizacji i optymalizacji pracy systemu w wersji MES I. W drugim docelowym etapie stworzyliśmy cały kod od podstaw z zachowaniem aktualnych funkcjonalności. Rozbudowaliśmy też system zarządzania produkcją o nowe opcje, tworząc wersję MES II. W dłuższej perspektywie okazał się on wydajniejszy niż dotychczasowy kod MES I.