\select@language {english} \contentsline {section}{\numberline {1}Introduction and Motivation}{4} \contentsline {section}{\numberline {2}Requirements}{5} \contentsline {subsection}{\numberline {2.1}Logical and algorithmic requirements}{5} \contentsline {subsection}{\numberline {2.2}Software requirements}{6} \contentsline {subsection}{\numberline {2.3}Hardware requirements}{8} \contentsline {section}{\numberline {3}Database design}{9} \contentsline {section}{\numberline {4}Software design}{11} \contentsline {subsection}{\numberline {4.1}Database access}{13} \contentsline {subsection}{\numberline {4.2}Controlling the cell phones}{13} \contentsline {subsection}{\numberline {4.3}Client and Server class}{14} \contentsline {subsection}{\numberline {4.4}Ping class}{15} \contentsline {subsection}{\numberline {4.5}Data logging}{16} \contentsline {subsection}{\numberline {4.6}SSH Tunnel Class}{16} \contentsline {subsection}{\numberline {4.7}USB Cell phone detection class}{17} \contentsline {subsection}{\numberline {4.8}Truth table class}{17} \contentsline {subsection}{\numberline {4.9}Init Test class}{17} \contentsline {subsection}{\numberline {4.10}Controller class}{18} \contentsline {section}{\numberline {5}Hardware design}{19} \contentsline {subsection}{\numberline {5.1}BeagleBoard}{19} \contentsline {subsection}{\numberline {5.2}Cell phones}{20} \contentsline {subsection}{\numberline {5.3}Cables for the cell phones}{20} \contentsline {subsection}{\numberline {5.4}Server}{20} \contentsline {section}{\numberline {6}Communication protocol}{21} \contentsline {subsection}{\numberline {6.1}Communication between the handler and controller}{21} \contentsline {subsection}{\numberline {6.2}Verification of the protocol}{22} \contentsline {section}{\numberline {7}Security and safety of the system}{25} \contentsline {subsection}{\numberline {7.1}Encryption of the communication channels}{25} \contentsline {subsection}{\numberline {7.2}Security on the web site}{26} \contentsline {subsubsection}{\numberline {7.2.1}Configuring the http secure protocol https}{26} \contentsline {subsubsection}{\numberline {7.2.2}Password protecting the web site using .htaccess}{29} \contentsline {section}{\numberline {8}Web page}{31} \contentsline {subsection}{\numberline {8.1}Communication between the web page and the test software}{31} \contentsline {subsection}{\numberline {8.2}Results on the web page}{31} \contentsline {section}{\numberline {9}Employing the test software system}{33} \contentsline {subsection}{\numberline {9.1}Required software and libraries}{33} \contentsline {subsubsection}{\numberline {9.1.1}Python installation}{33} \contentsline {subsubsection}{\numberline {9.1.2}Apache Web server installation}{33} \contentsline {subsubsection}{\numberline {9.1.3}SSH}{33} \contentsline {subsubsection}{\numberline {9.1.4}MySQL database and MySQLdb library}{34} \contentsline {subsubsection}{\numberline {9.1.5}Serial port library}{34} \contentsline {subsubsection}{\numberline {9.1.6}PJSUA library}{34} \contentsline {subsubsection}{\numberline {9.1.7}pChart library}{35} \contentsline {subsubsection}{\numberline {9.1.8}proctitle library}{35} \contentsline {subsection}{\numberline {9.2}Configuring hardware}{35} \contentsline {subsection}{\numberline {9.3}Location of the files}{36} \contentsline {subsection}{\numberline {9.4}Setting up the parameters}{36} \contentsline {subsection}{\numberline {9.5}Test descriptions}{36} \contentsline {subsection}{\numberline {9.6}Using the software}{36} \contentsline {subsection}{\numberline {9.7}Error description}{36} \contentsline {section}{\numberline {10}Conclusion}{37}