%vlna 21.12.22:00
\kapitola{Analýza existujúceho riešenia}
Kapitola využíva nadobudnuté teoretické vedomosti z~predchádzajúcich častí práce.
Aplikuje ich pri analýze implementácie systému SAP v~reálnej nadnárodnej spoločnosti ABC
so zameraním sa na aktuálne riešenie skladového hospodárstva a manažment zmien v~systéme.


Jadrom systému je komponent SAP ERP 6.0 EHP\,7 -- SAP NetWeaver 7.0 (\ref{erp}),
pokrývajúci časť krajín, v~ktorých spoločnosť podniká (Česko, Maďarsko Slovensko, Ukrajina). 
Komponent má implementovaný skladový a materiálový manažment,
ktoré zachytávajú stromovú štruktúru závodov, skladov, čísel skladov spoločnosti (\ref{org_struct}).  
Dvojvrstvová systémová  architektúra je aktuálne v~procese prechodu na trojvrstvovú  (\ref{landscape}).


\sekce{Manažment zmien}\label{sprava_zmien}
Realizácia zmenového manažmentu (\ref{change}) v~spoločnosti \emph{ABC}
je postavená na riešení \emph{HP Service Manager ver.\,9.33}.
HPSM sa nevzťahuje výlučne na SAP systém, 
pokrýva napríklad i IT infraštruktúru a služby s~ňou spojené.
Aplikácia \emph{HPSM} obsahuje dve rozhrania pre prístup:

\begin{description}
\item\textbf{Užívateľ} -- umožnuje zakladanie žiadostí v~podobe tiketov.
\item\textbf{IT špecialista} -- spracovávanie tiketov vykonávaím žiadostí.
\end{description}
Základné typy tiketov v~\emph{HPSM}:
\begin{itemize}
\item Štandardná zmena -- často opakujúca sa elementárna úloha údržby systému,  musí byť vykonaná vo vopred danom čase (vysoká priepustnosť).
\item Incident -- predstavuje defekt vo~funkčnosti aplikácie, má vysokú prioritu riešenia.
\item Zmena -- zmena pod 50\, hodín práce, priorita riadená manažmentom vydaní.
\item Projektová implementácia -- zmeny presahujúce 50 hodín práce, projektový manažment.
\end{itemize}

\podpodsekce*{Manažment vydaní} (Release management)
je mechanizmus selekcie dôležitosti jednotlivých užívateľských žiadostí o~zmenu.
Požiadavky sú analyzované a na základe priority priradenej podnikom, 
konfrontované s~kapacitou vývojového tímu, následne radené do vydaní zmien (release). 
%Vydania následujú v čase.

\sekce{Mobilné skladové hospodárstvo}
Systém  prenáša najčastejšie operácie skladníka z~desktopovej klientskej aplikácie (SAP GUI) do mobilného zariadenia.
Je postavený na riešení využívajúcom čiarové kódy a mobilné terminály, ktoré tieto čiarové kódy snímajú.
Vyžaduje pokrytie Wi-Fi  signálom  pre všetky priestory, v~ktorých mobilné terminály operujú.
Implementácia mobilného skladového hospodárstva (skrátene MSH):
\begin{itemize}
\item Zaisťuje okamžitú propagáciu zmeny zásoby materiálu v~systéme.
\item Zefektívňuje spracovanie zásob skladovaných materiálov, inventúru, atď.
\item Minimalizuje chyby v~evidencii.
\item Zrýchľuje prácu skladového personálu.
\end{itemize}
Konkrétne riešenie MSH v~spoločnosti \emph{ABC} nie je štandardnou súčasťou systému SAP, 
ale je implementované externou firmou.
Na pripojenie tohto riešenia k~systému je potrebný externý server,
ktorý výpočtovo zastrešuje a vykonáva aplikácie zobrazované v~termináloch.
Interakcia externého serveru so systémom SAP je zabezpečená pomocou volaní 
špeciálneho SAP API, nazvaného BAPI (Business Application Programming Interface). 
Koncept trojvrstvovej klient-server architektúry (spomínaný v~\ref{nw}),
má v~tomto prípade vlastnú logickú (externý server) a prezentačnú (mobilné terminály) vrstvu (Obr. \ref{eprin}).

\obrazek%Architekrúra Eprin serveru
\vlozeps{fig/eprin.eps}{0.45}
\endobrl{Schéma pripojenia mobilného skladového hospodárstva, za pomoci externého serveru.}{eprin} 
%
Analyzované riešenie MSH je charakteristické niekoľkými vlastnosťami:
\begin{enumerate}
\item \textbf{Vlastná správa užívateľov} je nutná pretože termináloví užívatelia neodpovedajú užívateľom zo systému. 
SAP vidí všetky interakcie mobilných užívateľov so systémom ako aktivitu jediného referenčného SAP užívateľa.
Toto môže predstavovať problém z~pohľadu systémového auditu, kedy nie je možné spätne nájsť presného pôvodcu zmeny.
Vlastná  užívateľská správa prináša nutnosť  implementovať mechanizmy 
užívateľskej autentifikácie a autorizácie, pretože nie je možné použite 
štandardných možností systému.

\item \textbf{Problematické testovanie} vzniká pri oprave alebo implementácií zmien  v~aplikáciach MSH.
Na testovanie zmeny implementovanej vo vývojovom systéme priamo v~termináli je nutný vlastný externý server.
Znamená to potrebu externého serveru pre každú vrstvu systémovej architektúry, kde potrebujeme komunikovať s~mobilným zariadením.
Čiastočným riešením je testovanie v~SAP GUI, bez externého serveru, kam ale nemá všetok skladový personál prístup 
a~aplikácie preň neboli navrhnuté.

\item \textbf{Zložitá propagácia zmien} pri úprave implementácie MSH. 
Zmeny sú po úspešnom otestovaní zanášané do produkčného systému (\ref{change}).
Pri rozsiahlejších zmenách, ktoré zásadnejšie menia systém je nutný reštart externého serveru.
Narozdiel od štandardného riešenia, kde dôjde k~aktualizácií dát za behu,
je reštart potrebný na propagáciu zmien do serveru. 
Nadväzujúci problém spočíva v~terminálových užívateľoch aktívnych  v~dobe reštartu.
Pri reštarte s~prihlásenými užívateľmi môže dôjsť k~poškodeniu dát externého serveru a jeho užívateľov.
To vyúsťuje do nefunkčnosti celého riešenia MSH. V~takom prípade je nutný servisný zásah od dodávateľa.
Tieto obmedzenia robia propagáciu zmien obtiažnou, v~porovnaní s~bežným vývojom v~systéme. 
 
 \item \textbf{Aktuálnosť a forma riešenia} sa odvíja od prístupu vo vývoji.
 Aplikácie z~MSH,  vykonávané na externom serveri, sú implementované vo~verzii jazyka ABAP/4,
 čo pri existencii objektovo-orientovaného ABAP predstavuje staršie riešenie. 	
 Napriek faktu, že externé riešenie nie je priamo integrované do  systému SAP je implementácia v~jazyku ABAP/4 výhodou. 
 Umožňuje úpravy v~natívnom programovacom jazyku SAP systému, čo eliminuje nutnosť ovládania ďalších jazykov pri údržbe MSH. 
\end{enumerate}



%http://blogs.msdn.com/b/mikehall/archive/2007/01/17/windows-mobile-and-windows-embedded-ce-what-s-the-difference.aspx

%http://www.kodys.cz/produkty/mobilni-terminaly/rucni-prumyslove-terminaly/motorola-mc3100---mc3190.html
\podsekce{Mobilné terminály}
Mobilné terminály využívané v~skladovom hospodárstve 
sú pevné zariadenia, odolné voči nárazom, poskytujúce dlhú výdrž batérie  (Príloha \ref{hw_specs}).
Terminály bežia na softvérovej platforme Windows Mobile. Tento mobilný operačný systém 
je charakteristický komponentovou stavbou \cite{WEB}\footnote{Analógia so SAP systémom.}
podobne ako systém SAP. 
Dodávateľ môže zariadenie rozšíriť a konfigurovať možnosti jadra systému pomocou 700 komponentov.
Najpodstatnejšou časťou terminálu je Wi-Fi modul a  webový prehliadač, 
pomocou ktorého sa pripája na server komunikujúci so systémom SAP.

Spúšťanie a kontrola aplikácií skladového hospodárstva vyžaduje vybudovanú sieťovú 
infraštruktúru nad skladmi poskytujúcu bezdrôtové pripojenie terminálov do lokálnej siete. 

%\obrazek%MOTOROLA MC3190
%\vlozeps{fig/3190.png}{0.4}
%\endobrl{Mobilný terminál, \emph{Motorola MC3190-G}, využívaný v~skladovom hospodárstve.}{3190}

\podsekce{Čiarové kódy} 
Terminály so schopnosťou čítať čiarové kódy predstavujú relatívne  cenovo prístupne a
extrémne presne riešenie v~porovnaní s~ručným zadávaním hodnôt.
Súčasťou mobilných terminálov je modul umožňujúci čítať čiarové kódy.
Aktuálne riešenie MSH využíva lineárne čiarové kódy (1D).
Charakteristika použitých kódov \cite{LBCS}:
\begin{description}

\item\textbf{Kód 39} označovaný aj $3\,z\,9$. Je kód variabilnej dĺžky (do 20\,znakov).
Je schopný kódovania 43 znakov z~intervalov: $[A-Z]$, $[0-9]$, $[ - . \$ / + \% ]$.
Šírka tlačového pomeru (medzi širokou a úzkou časťou) je $1:2\,-\,1:3$.
Kód podporuje načítanie z~väčšej vzdialenosti ($1\,m < $). 
Autokontrola robí kód bezpečným.

\item\textbf{Kód 128} je jeden z~najrozšírenejších typov čiarového kódu.
Rovnako ako predchádzajúci je bez pevne danej dĺžky kódovaného reťazca.
Je charakteristický vysokou hustotou zápisu.
Podporuje kódovanie 3 rôznych množín znakov:
\begin{enumerate}
	\item veľké písmená$\,+\,$kontrolné znaky z~ASCII
	\item veľké a malé písmená
	\item numerické znaky so zdvojenou hustotou zápis -- dva znaky kódované jedným kódom
\end{enumerate}
\end{description}

%http://www.tec-it.com/en/support/knowbase/barcode-overview/linear/Default.aspx
	\obrazek%čiarový kód typu 39
	\vlozeps{fig/Code39.png}{1}
	\endobrl{Ukážka čiarového kódu typ 39. Štartovací/koncový znak sú modré. 
Čierna časť predstavuje vlastné dáta. Neobsahuje kontrolný znak. Prevzaté z\cite{LBCS}.}{39}
	\obrazek%MOTOROLA MC3190
	\vlozeps{fig/Code128.png}{1}
	\endobrl{Ukážka čiarového kódu typ 128. Modrý je štartovací/koncový znak. 
			Čierná časť sú vlastné data.
			Červený je kontrolný znak.  Prevzané z\cite{LBCS}.
			}{128}

