2019 Abschlussarbeiten Travaux de fin d’études Graduation Theses

BSc in Informatik BSc en Informatique BSc in Computer Science

‣‣Technik und Informatik / Technique et informatique / Engineering and Information Technology Editorial Éditorial Editorial

1

Prof. Dr. Lukas Rohr Departementsleiter Directeur du département Head of Department

Liebe Leserinnen, liebe Leser Chères lectrices, chers lecteurs, Dear Readers Beim Lesen folgender Seiten haben Sie Au fil des pages suivantes, vous découvri- Over the next few pages you will discover die Möglichkeit die vielfältigen Projekte, rez la diversité des projets sur lesquels les the wide-ranging nature of the projects welche die Studierenden der Berner étudiantes et étudiants de la Haute école that students at the Bern University Fachhochschule Technik und Informatik im spécialisée bernoise Technique et informa- of Applied Sciences Engineering and Verlauf des letzten akademischen Jahres tique ont eu l’opportunité de travailler au Information Technology department have erarbeitet haben, zu entdecken. Vom Flug- cours de l’année académique écoulée. Qu’il worked on over the past academic year. verkehr ohne GPS bis hin zur Anwendung s’agisse de navigation aérienne sans GPS Whether they are producing solutions for künstlicher Intelligenz im Fussballtraining ou de l’utilisation d’intelligences artifi- aerial navigation without GPS or for using haben unsere Studierenden auch dieses cielles dans les entrainements de football, artificial intelligence in football training Jahr wieder ihre Innovationsfreude unter nos étudiant-e-s ont une fois de plus fait sessions, our students have once again Beweis gestellt. preuve d’inventivité. proven their ingenuity.

Dank der praxisnahen Unterrichtsme- Grâce à la méthode d’enseignement proche Thanks to the application-oriented method thode, charakteristisch für den Studien- de la pratique professionnelle, une des of teaching – one of the key traits of the gang Informatik an der Berner Fachhoch- caractéristiques de la filière d’études Infor- Information Technology degree programme schule, können unsere Studierenden schon matique de la Haute école spécialisée ber- at the Bern University of Applied Sciences – während des Studiums viele Erfahrungen noise, nos étudiant-e-s acquièrent – durant our students obtain extensive experience sammeln und erlangen so ein vertieftes leurs études déjà – une solide expérience and understanding of the world of work Verständnis für die Arbeitswelt, die sie et une compréhension du monde du travail that awaits them while still studying. This erwartet. Dies ermöglicht später einen qui les attend. Ce qui leur garanti ultérieu- ensures a smooth transition from their fliessenden Übergang vom Studium zu rement une transition fluide des études studies to the working world later on. The der ersten Anstellung. Die in dieser neuen vers le monde professionnel. Les travaux bachelor’s theses featured in the new edi- Ausgabe des Books veröffentlichten Bache- de bachelor publiés dans cette nouvelle tion of this publication highlight not just lorarbeiten zeugen nicht nur vom Erfinder- édition du Book témoignent non seulement the students’ ingenuity and outstanding geist und dem soliden Fachwissen unserer de leur esprit novateur et de leur niveau level of expertise, but also their deter- Studierenden, sondern auch von ihrer Dis- d’expertise mais aussi de leur persévé- mination and drive – two vital attributes ziplin und Motivation. Zwei entscheidende rance et de leur motivation. Deux com- required to successfully complete this Eigenschaften um diese anspruchsvolle posantes essentielles pour terminer avec extensive degree programme in engineer- Ausbildung im Ingenieurwesen und der succès cette solide formation en ingénierie ing and information technology. Informatik mit Bravour zu bestehen. et informatique. I hope you enjoy reading this brochure and Ich wünsche Ihnen, liebe Leserinnen und Je vous souhaite, chères lectrices, chers that all of our students get off to a flying Leser, viel Spass bei der Lektüre und unse- lecteurs, beaucoup de plaisir à parcourir start in their future careers. ren Studierenden einen erfolgreichen und cet ouvrage et à nos étudiant-e-s une excel- spannenden Einstieg in die Arbeitswelt. lente entrée dans le monde professionnel. Prof. Dr. Lukas Rohr

book.bfh.ch Inhalt Table des matières Contents

2 Titel Titre Title 3 Technik und Informatik 3 Technique et informatique 3 Engineering and Information an der BFH à la BFH Technology at BFH

6 Alumni BFH 6 Alumni BFH 6 Alumni BFH

7 Infotage 7 Journées d’information 7 Info days

8 Mit Informatik die Zukunft gestalten 8 Façonner l’avenir avec l’informatique 8 Shaping the future with computer science 10 Interviews mit Studierenden 10 Interviews d’étudiants 10 Interview with students 12 Zusammenarbeitsformen 12 Formes de collaboration 12 Collaboration 14 Industriepartner 14 Partenaires industriels 14 Industry partners 16 Liste der Absolventinnen 16 Liste des diplômées et des diplômés und Absolventen 16 List of Graduates 17 Travaux de bachelor 17 Bachelorarbeiten 17 Bachelor Theses

Impressum Impressum Imprint

Berner Fachhochschule Haute école spécialisée bernoise Bern University of Applied Sciences Technik und Informatik Technique et informatique Engineering and Information Technology

Online Online Online book.bfh.ch book.bfh.ch book.bfh.ch

Inserate Annonces Advertisements [email protected] [email protected] [email protected]

Formatierung Mise en page Layout Hot's Design Communication SA Hot's Design Communication SA Hot's Design Communication SA

Druck Impression Printing staempfli.com staempfli.com staempfli.com

Auflage Tirage Edition 700 Ex. 700 exemplaires 700 copies

book.bfh.ch Technik und Informatik an der BFH Technique et informatique à la BFH Engineering and Information Technology at BFH

Die Berner Fachhochschule BFH ist eine La Haute école spécialisée bernoise est une Bern University of Applied Sciences (BFH) 3 anwendungsorientierte Hochschule mit haute école orientée vers la pratique. Elle combines a hands-on approach with einem innovativen und praxisnahen Ange- propose une offre de cours, de recherche, innovative and practical teaching, research bot in Lehre, Forschung und Entwicklung de développement et de formation continue and development, and continuing educa- sowie in der Weiterbildung. Sie bereitet à la fois novatrice et proche de la pratique. tion. It prepares students for professional Studierende auf berufliche Tätigkeiten Elle prépare les étudiant-e-s à des activités careers in fields involving the application vor, in denen wissenschaftliche Erkennt- professionnelles qui mettent en œuvre des of scientific findings and methods. Bern nisse und Methoden umgesetzt werden. connaissances et méthodes scientifiques. La University of Applied Sciences is shaped Folgende Leitgedanken prägen die Berner Haute école spécialisée bernoise se caracté- by its guiding principles: Fachhochschule besonders: rise principalement par les idées directrices suivantes : • BFH develops innovative solutions and • Die BFH entwickelt innovative Lösun- addresses the needs of its economic, gen und geht auf die Bedürfnisse ihres • La BFH développe des solutions inno- technical, cultural and social environ- wirtschaftlichen, technischen, kulturellen vantes et répond aux besoins de son ment. und sozialen Umfelds ein. environnement économique, technique, • BFH cultivates strong partnerships con- • Die BFH ist durch starke Partnerschaften culturel et social. necting it within Switzerland and the im In- und Ausland verankert. • La BFH est ancrée en Suisse et à l’étran- wider international community. • Die BFH pflegt ihre Vielfalt und fördert ger grâce à des partenariats forts. • BFH embraces diversity and encourages den Austausch zwischen Fachdisziplinen, • La BFH entretient la diversité et encou- intellectual exchanges between the vari- Denkkulturen und Handlungsmustern. rage les échanges entre les disciplines ous academic disciplines and cultures, spécialisées, entre les cultures de taking on board a variety of different bfh.ch/ti réflexion et entre les modèles d’action. approaches.

bfh.ch/ti bfh.ch/ti

Das Bachelorstudium als starke Basis Les études de bachelor comme base Bachelor’s degree for a solid Die Bachelorstudiengänge der BFH sind solide foundation­ praxisorientiert und auf die Bedürfnisse des Les filières d’études de bachelor sont orien- BFH Bachelor degree programmes are wirtschaftlichen Umfeldes ausgerichtet. Wer tées vers la pratique et vers les besoins de hands-on and focused on the needs of the an der BFH studiert, kann dies praxisnah, l’environnement économique. Étudier à la economic environment. BFH offers students interdisziplinär und in einem internationa- BFH, c’est étudier dans un contexte pra- an interdisciplinary, practice-based ap- len Kontext tun. tique, interdisciplinaire et international. proach in an international context. Im Bereich Technik und Informatik bietet­ Dans le domaine Technique et informa- BFH offers a broad selection of Bachelor de- die BFH eine vielfältige Auswahl an tique, la BFH propose un large choix de gree programmes in the field of Engineering Bachelorstudiengängen,­ wobei die beiden filières d’études de bachelor, dont deux and Information Technology, including Auto- Studiengänge­ Automobiltechnik und Medi- filières uniques en Suisse : Technique motive Engineering and Medical Informatics zininformatik sogar schweizweit einzigartig automobile et Informatique médicale. La programmes that are unique in Switzerland. sind. Die meisten Studiengänge können plupart des filières peuvent également Many of the degree programmes can also zudem berufsbegleitend und zweisprachig être suivies en cours d’emploi et en deux be taught on an extra-occupational basis absolviert werden. Die sieben Bachelorstu- langues. Le domaine Technique et informa- and in two languages. The following seven diengänge im Bereich Technik und Informa- tique propose les sept filières d’études de Engineering and Information Technology tik sind: bachelor suivantes : Bachelor degree programmes are offered: • Automobiltechnik • Technique automobile • Automotive Engineering • Elektrotechnik und Informations­ • Génie électrique et technologie de • Electrical Engineering and Information technologie l’information Technology • Informatik • Informatique • Computer Science • Maschinentechnik • Mécanique • Mechanical Engineering • Medizininformatik • Informatique médicale • Medical Informatics • Mikro- und Medizintechnik • Microtechnique et technique médicale • Microtechnology and Medical Technology • Wirtschaftsingenieurwesen • Ingénierie de gestion • Industrial Engineering and Management Im Verlaufe des Bachelorstudiums wählen Pendant leurs études de bachelor, les Science die Studierenden individuell einen Teil der étudiant-e-s choisissent individuellement Students have a choice of some modules Module. In späteren Semestern entscheiden une partie des modules. Dans les semestres during their Bachelor studies. In later sie sich für eine Vertiefungsrichtung und suivants, ils choisissent une orientation et semesters, they choose a specialisation arbeiten an forschungsnahen und praxisre- participent à des projets pratiques proches and assist with research-related, practice- levanten Projekten mit. de la recherche. based projects.

Mehr Informationen unter Pour en savoir plus For additional information please go to bfh.ch/ti/bachelor bfh.ch/ti/bachelor bfh.ch/ti/bachelor

book.bfh.ch Der Master als Sprungbrett Le master comme tremplin Master’s degree to springboard your Ein Masterabschluss unterstreicht die Un diplôme de master prouve que la volonté career ungebrochene Lernbereitschaft der Studie- d’apprendre des étudiant-e-s est intacte. A Master’s degree emphasises the stu- renden. Er eröffnet ihnen den Zugang zu Il leur ouvre les portes d’une carrière fruc- dents’ unremitting desire to learn. It opens anspruchsvollen Karrieren in Forschungs- tueuse dans les départements de recherche the door to a high-flying career in research und Entwicklungsabteilungen sowie her- et développement ou à des postes exigeants and development or a challenging position ausfordernden Positionen in Produktion, en production, en conseil ou dans des in production, consultation or the public Beratung oder öffentlichen Institutionen. institutions publiques. La BFH propose deux sector. BFH offers two Master's degree 4 Im Bereich Technik und Informatik bietet filières d’études de master dans le domaine programmes in the field of Engineering and die BFH zwei Masterstudiengänge an: Technique et informatique : Information Technology:

Der Master of Science in Engineering MSE Le Master of Science in Engineering (MSE) The Master of Science in Engineering wird in Kooperation mit allen Fachhoch- est proposé en coopération avec toutes les MSE is offered in cooperation with all schulen der Schweiz angeboten und hautes écoles spécialisées suisses et se Universities of Applied Sciences within zeichnet sich durch einen starken Praxis- caractérise par un fort lien avec la pratique, Switzerland and provides a strong practical bezug, ein vielfältiges Modulangebot und une offre de modules variée et un réseau de focus, varied modules and a Switzerland- ein schweizweites Netzwerk von Fachspe- spécialistes et d’étudiant-e-s dans toute la wide network of specialists and students. zialisten und Studierenden aus. Die Berner Suisse. La Haute école spécialisée bernoise Bern University of Applied Sciences offers Fachhochschule bietet die Ausbildung in propose la formation dans les domaines training in Energy and Environment, den Fachgebieten Energy and Environment, spécialisés Energy and Environment, Industrial Technologies, Information and Industrial Technologies, Information and Industrial Technologies, Information and Communication Technologies, and Busi- Communication Technologies und Business Communication Technologies ainsi que ness Engineering and Production. Engineering and Production an. Business Engineering and Production. The Master degree programme in Biomedi- Der englischsprachige Masterstudien- La filière d’études de master anglophone cal Engineering, taught in English, with gang für Biomedical Engineering mit den d'Ingénierie biomédicale avec les orienta- specialisations in the areas of Biome- Vertiefungen Biomechanical Systems, tions Biomechanical Systems, Electronic chanical Systems, Electronic Implants or Electronic Implants oder Image-Guided Implants et Image-Guided Therapy est Image-Guided Therapy is offered by the Therapy wird von der Universität Bern in proposée par l’Université de Berne en University of Bern in cooperation with Kooperation mit der BFH angeboten. Die coopération avec la BFH. Les étudiant-e-s BFH. Students acquire scientifically-based Studierenden erwerben wissenschaftlich acquièrent des connaissances spécialisées medical and technical knowledge. Teach- fundiertes ­medi­zinisches und technisches médicales et techniques fondées sur une ing and projects are application-oriented Fachwissen. Lehre und Projekte sind base scientifique. L’enseignement et les and interdisciplinary. The programmes anwendungsorientiert und interdiszipli- projets sont interdisciplinaires et axés sur involve close cooperation with companies, när. Es bestehen enge Kooperationen mit la pratique. Une étroite coopération est en research institutions and hospitals. Follow- Firmen, Forschungseinrichtungen und place avec les entreprises, les instituts de ing the completion of the degree, students Spitälern. Der erfolgreiche universitäre recherche et les hôpitaux. L’obtention du may progress to a doctorate. Abschluss ermöglicht den Anschluss einer diplôme universitaire ouvre la porte vers Doktorarbeit. un doctorat. For additional information please go to bfh.ch/ti/master Mehr Informationen unter Pour en savoir plus bfh.ch/ti/master bfh.ch/ti/master

book.bfh.ch Die Forschung und Entwicklung als La recherche et le développement Research and development as the Triebfeder der Innovation comme moteurs de l’innovation driving force of innovation Angewandte Forschung findet an der BFH À la BFH, la recherche appliquée a lieu dans At BFH, applied research is conducted in in Instituten statt, die ein breites Kom- des instituts qui offrent un large spectre de institutes offering a wide range of ex- petenzspektrum anbieten. Der Brücken- compétences. Le pont entre la recherche pertise. Bridging the gap between basic schlag zwischen Grundlagenforschung und fondamentale et le développement de pro- research and product development guaran- Produktentwicklung garantiert eine enge duits assure une étroite collaboration avec tees a close cooperation with the business Zusammenarbeit mit der Wirtschaft. Neue l’économie. Les nouvelles technologies et world. New technologies and the expertise Technologien und das aus Forschungs- und les connaissances acquises dans les projets gained from research and industrial pro- 5 Industrieprojekten gewonnene Know-how de recherche et d’industrie sont transférées jects are transferred to the business world werden in die Wirtschaft transferiert und dans l’économie et partagées avec des par- and shared with partners to develop new mit Partnern geteilt, um neue Produkte und tenaires en vue de développer de nouveaux products and processes. Verfahren zu entwickeln. produits et processus.

Im Bereich Technik und Informatik fokus- Dans le domaine Technique et informa- In the field of Engineering and Informa- siert die Forschung der BFH thematisch tique, la recherche de la BFH se concentre tion Technology, BFH’s research is focused auf die Bereiche Technologien in Sport sur les thèmes Technologies en sport et on the areas of Technologies in Sport and und Medizin, Energie und Mobilität, Digital en médecine, Énergie et mobilité, Digital Medicine, Energy and Mobility, Digital Society and Security, Smart Industrial Society and Security, Smart Industrial Society and Security, Smart Industrial Technologies sowie Engineering and Busi- Technologies et Engineering and Business Technologies, and Engineering and Busi- ness Innovation. Sie zeichnet sich durch Innovation. Elle se caractérise par les ness Innovation. It has the following folgende Faktoren aus: facteurs suivants : distinguishing features:

• Sie ist anwendungs- und marktorientiert. • Elle est tournée vers la pratique et le • It is application- and market-oriented. • Ziele sind die Entwicklung von Proto­ marché. • It aims to develop prototypes and trans- typen sowie der Technologietransfer. • Elle vise le développement de prototypes fer technology. • Es erfolgt eine enge Zusammenarbeit mit et le transfert technologique. • It cultivates a close cooperation with Wirtschaft und Industrie. • Elle se fait en étroite collaboration avec business and industry. • Die Nutzungsrechte gehen in der Regel l’économie et l’industrie. • Rights of use are usually transferred to an den Wirtschaftspartner. • Les droits d’utilisation reviennent géné- the business partner. • Fokussiert wird auf Schlüsseltechnolo­ ralement au partenaire économique. • There is a focus on key technologies of gien der Zukunft. • Elle se concentre sur les technologies- the future. • Es werden ein weitreichendes Netzwerk clés de l’avenir. • It relies on an extensive network and sowie multidisziplinäre Kooperationen • Elle tire profit d’un réseau étendu et de multidisciplinary cooperation. genutzt. coopérations pluridisciplinaires. • The research has a regional base and • Die Forschung ist regional verankert und • La recherche a un ancrage régional et international relevance. international relevant. une portée internationale.

Mehr Informationen unter Pour en savoir plus For additional information please go to bfh.ch/ti/industrie bfh.ch/ti/industrie bfh.ch/ti/industry bfh.ch/ti/forschung bfh.ch/ti/recherche bfh.ch/ti/research

Die Weiterbildung als Programm La formation continue comme Continuing education programmes Die Weiterbildungsangebote der Berner programme­ The further education courses offered by Fachhochschule orientieren sich an den Les offres de formation continue de la Bern University of Applied Sciences are aktuellen Bedürfnissen der Wirtschaft, Haute école spécialisée bernoise se aligned with current economic, social and Gesellschaft und Kultur. Sie tragen dem tournent vers les besoins actuels de cultural requirements, keeping pace with sich ständig verändernden und globalen l’économie, de la société et de la culture. the constantly changing global environ- Umfeld Rechnung. Elles tiennent compte de l’environnement ment. mondialisé, en mutation permanente. Das Weiterbildungsangebot im Bereich The further education courses in Engineer- Technik und Informatik wendet sich an L’offre de formation continue du domaine ing and Information Technology address Ingenieurinnen und Ingenieure sowie an Technique et informatique s’adresse aux both engineers and future managers. They angehende Managerinnen und Manager. ingénieur-e-s et aux futur-e-s managers aim to expand and on existing com- Ziel ist, vorhandene Kompetenzen zu erwei- en vue d’étendre et de compléter leurs petencies. To this end, BFH offers a unique, tern und zu ergänzen. Dazu bietet die BFH compétences. La BFH propose à cette fin interdisciplinary range of CAS modules eine einmalige, interdisziplinäre Palette une gamme interdisciplinaire unique de that can be combined within different von CAS-Modulen an, die zu verschiedenen modules CAS combinables entre diffé- EMBA, MAS and DAS degree programmes. EMBA-, MAS- und DAS-Studiengängen kom- rentes filières d’études EMBA, MAS et The programmes focus on the fields of biniert werden können. Die Schwerpunkte DAS. Les spécialisations portent sur les Information Technology, Data Science, IT liegen auf den Themen Informatik, Data thématiques suivantes : informatique, Data Security, Innovation, Management, Inter- Science, IT-Sicherheit, Innovation, Manage- Science, sécurité IT, innovation, manage- national, Engineering, Medical Informatics ment, International, Technik, Medizininfor- ment, international, informatique médicale and Medical Technology. matik und Medizintechnik. et technique médicale.

Mehr Informationen unter Pour en savoir plus For additional information please go to bfh.ch/ti/weiterbildung bfh.ch/ti/formationcontinue bfh.ch/ti/continuingeducation

book.bfh.ch Alumni BFH Alumni BFH Alumni BFH

6 Alumni BFH vereint die ehemaligen Stu­ Alumni BFH réunit sous un même toit tous The Alumni BFH unites former students as dierenden sowie die Alumni-Organisatio- les ancien-ne-s étudiant-e-s et les organisa- well as the Alumni organization of the BFH nen der BFH unter einem Dach. Als Alumni tions Alumni de la BFH. En tant qu’Alumni, under one roof. As an alumnus you are part sind Sie Teil eines lebendigen Netzwerkes vous faites partie d’un réseau vivant et of a lively network and benefit from attrac- und profitieren von attraktiven Leistungen. profitez de prestations attractives. tive services.

Sie erhalten regelmässig den Newsletter Vous recevez régulièrement la Newsletter You regularly receive the informative «Alumni aktuell» und können der Commu- « Alumni actuelle » et avez la possibilité newsletter «Alumni aktuell» and you may nity auf Facebook, XING und LinkedIn bei- de rejoindre la communauté sur Facebook, join the community on Facebook, XING treten. Übers Projekt Neptun beziehen Sie XING et LinkedIn. Le projet Neptun vous and LinkedIn. Via the Neptune Project vergünstigte Laptops und profitieren vom permet d’acquérir des ordinateurs por- you purchase laptops at special condi- attraktiven FH SCHWEIZ-Leistungsangebot. tables à prix préférentiel et vous profitez tions and you benefit from the attractive Auf Sprachkurse bei inlingua, auf Kurse également de l’offre de prestations FH FH SWITZERLAND services. For language der Volkshochschule Bern und auf das SUISSE. Vous bénéficiez d’un rabais de courses at inlingua, and courses offered by Sortiment von Mister Tie erhalten Sie 10% 10 % sur les cours de langues chez inlingua the Volkshochschule Bern, as well as the Rabatt. Zudem erhalten Sie 5% Rabatt auf ainsi que sur l’offre de cours de l’Université assortment of Mister Tie, you get a 10% Tablet-, Smartphone- und Mac-Reparaturen populaire de Berne. Vous bénéficiez égale- discount. Further, you receive a 5% discount bei MobileRevolution GmbH. ment d’un rabais de 5 % sur les réparations for tablets-, smartphones-, and Mac repairs de tablettes, smartphones et Mac chez at MobileRevolution GmbH. Ausserdem können Sie am Netzwerk-Abend MobileRevolution GmbH. Alumni BFH, an den vielseitigen Events der In addition, you can participate in the Alumni-Vereine und am Sportangebot der De plus, vous pouvez participer à la soirée Alumni BFH network evening, the versatile Universität Bern teilnehmen. Im Online- de réseautage Alumni BFH, aux différents events of the alumni associations, and Karriereportal finden Sie attraktive Stellen- événements des sociétés Alumni et à l’offre make use of the sports facilities of the Uni- angebote, nützliche Checklisten und das de sport de l’Université de Berne. Le portail versity of Bern. On the online career portal Weiterbildungsangebot der BFH. de carrière en ligne vous propose des offres you will find attractive job opportunities, d’emploi attrayantes, des check-lists utiles useful checklists as well as the continuing Mehr Informationen zu Alumni BFH und et l’offre de formation continue de la BFH. education offers of BFH. den Leistungen unter alumni.bfh.ch Plus d’informations sur Alumni BFH et les More information about Alumni BFH and prestations sur services under alumni.bfh.ch alumni.bfh.ch

Die Alumni-Organisationen der BFH verbinden Les organisations Alumni de la BFH réunissent The BFH alumni organizations connect the ­ihre Absolventinnen und Absolventen, ermögli- leurs diplômé-e-s, leur permettent de nouer des ­graduates, ­enable socializing as well as creating chen das Knüpfen von Kontakten und den syste- contacts et de se créer un réseau de relations. an essential network. matischen Aufbau eines Beziehungsnetzes.

book.bfh.ch Infotage Journées d’information Info days

Interessiert Sie ein Studium an der Berner Vous vous intéressez à suivre des études Are you interested in studying at Bern Uni- 7 Fachhochschule? Wir öffnen unsere Türen: à la Haute école spécialisée bernoise ? versity of Applied Sciences? If so, we invite Holen Sie sich alle Informationen zu unse- Nous vous ouvrons nos portes : venez you to attend our open house events. There ren Bachelor- und Masterstudiengängen, recueillir toutes les informations utiles sur you can obtain full information about our ­Zulassungsbedingungen, Studienbedingun- nos filières de bachelor et de master, sur Bachelor’s and Master’s degree programmes gen und unserer Schule. Führen Sie beim les conditions d’admission, les conditions and about requirements for admission, Apéro persönliche Gespräche mit Studie- d’études et notre école. Discutez avec des study conditions and our university. We renden und Dozierenden, und besuchen Sie étudiant-e-s et des enseignant-e-s lors de welcome you to attend our cocktail recep- unsere Labore in Biel und Burgdorf. l’apéro et visitez nos laboratoires à Bienne tion to talk personally with students and et Berthoud. professors and to visit our laboratories in Mit einer Weiterbildung auf Masterstufe Biel and Burgdorf. gehen Sie in Ihrer Karriere einen Schritt Avec des études de master, vous faites weiter. Unsere umfassende, interdiszipli- un pas de plus dans votre carrière. Notre You take your career a step further by näre Palette von Modulen ermöglicht Ihnen, gamme étendue et interdisciplinaire de continuing your education at the Master’s Ihre Kompetenzen auf verschiedensten modules vous permet d’étendre vos compé- level. Our broad, interdisciplinary range Gebieten zu erweitern und zu ergänzen. tences dans les domaines les plus divers. of modules allows you to expand and Informieren Sie sich an einem persönlichen Informez-vous dans le cadre d’un entretien complete your competencies in the widest Beratungsgespräch. de conseil personnel. variety of fields. Arrange a personal consul- tation for all the details. Mehr Informationen unter Pour en savoir plus bfh.ch/ti/infotage bfh.ch/ti/journeesdinformation For additional information please go to bfh.ch/ti/infodays

book.bfh.ch Mit Informatik die Zukunft gestalten Façonner l’avenir avec l’informatique Shaping the future with computer science

8

Prof. Dr. Eric Dubuis Abteilungsleiter Informatik Directeur de la division Informatique Head of Computer Science Division

Computer begleiten die Menschen des 21. Les ordinateurs accompagnent les hommes People in the 21st century rely on com- Jahrhunderts auf Schritt und Tritt. Sie ste- du 21e siècle. Ils se trouvent sur tous les puters for everything. They are found on hen auf jedem Schreibtisch, in jeder Fabrik, bureaux, dans chaque fabrique, sont logés every desk, in all factories, are invisibly stecken unsichtbar in Fahrzeugen und Gerä- invisibles dans les véhicules et les appareils integrated into vehicles and devices for ten des täglichen Gebrauchs und natürlich d’usage quotidien et évidemment aussi everyday use as well as in the mobile auch im Mobiltelefon, das wir ständig auf dans les téléphones mobiles que nous por- phones we always carry with us. uns tragen. Mit den Mitteln der Informatik tons en permanence sur nous. Les moyens We use computer science tools to enable bringen wir Computer dazu, Informationen de l’informatique nous permettent de traiter computers to process data in accordance unseren Bedürfnissen entsprechend zu les informations en fonction de nos besoins. with our requirements. Computer science verarbeiten. Ob in der Wissenschaft, der Que ce soit dans la science, la technique, plays a vitally important role today – in Technik, der Wirtschaft, der Finanzbranche, l’économie, les finances, la culture ou la business, technology, the financial sector, der Kultur oder im Gesundheitswesen: Ohne santé, aujourd’hui plus rien ne fonctionne culture and the healthcare system. Informatik läuft heute nichts mehr. sans l’informatique. Highly sought-after specialists Gesuchte Fachkräfte Spécialistes recherchés The digital information society will always Die digitale Informationsgesellschaft wird La société de l’information numérique be dependent on innovative, secure and immer auf innovative, sichere und effizi- dépendra toujours des solutions logicielles efficient software solutions. It is computer ente Softwarelösungen angewiesen sein. Es innovantes, sures et efficaces, développées science specialists who develop and oper- sind Informatikerinnen und Informatiker, et exploitées par des informaticiennes ate them. These experts are highly sought die diese entwickeln und betreiben. Das et des informaticiens. Par conséquent after by all kinds of organisations and macht sie zu gesuchten Fachkräften in ils sont des spécialistes recherché-e-s companies, where they work in develop- Organisationen und Unternehmen aller dans les organisations et entreprises de ment units or in sales roles, operate and Bereiche. Dort sind sie in der Entwicklung tous les secteurs. Ils y travaillent dans le maintain systems, manage projects or are tätig oder im Verkauf, sie betreiben und développement ou la vente, exploitent et part of interdisciplinary teams. Some set warten Anlagen, managen Projekte, sind entretiennent des installations, gèrent des up their own companies. Teil von interdisziplinären Teams. Oder sie projets, font partie de teams interdiscipli- bauen selber eine Firma auf. naires ou montent leur propre société. Solid foundation, lots of options On the BFH’s Computer Science degree Solides Fundament, viele Optionen Base solide, options nombreuses programme, the professionals of the future Der Studiengang Informatik der BFH La filière d’études Informatique de la BFH obtain the fundamental knowledge re- vermittelt zukünftigen Berufsleuten die transmet aux futurs professionnels les quired to develop innovative, high-quality Grundlagen, die für die Entwicklung von bases requises pour le développement de software solutions. One of the programme’s innovativer Qualitätssoftware erforderlich logiciels innovants de qualité. Les vastes strengths is the extensive core expertise sind. Eine Stärke der Ausbildung ist das connaissances que les étudiant-e-s s’appro- that students acquire during the first three breite Basiswissen, das sich die Studieren- prient pendant les trois premiers semestres semesters. den in den ersten drei Semestern aneignen. constitue un point fort de la formation. Ils They gain an in-depth understanding of Dabei erwerben sie fundierte Kenntnisse acquièrent de solides connaissances sur subjects such as programming, software zu Themen wie Programmierung, Software des thèmes tels que la programmation, le design and engineering, databases, the web, Design und Engineering, Datenbanken, Web, Software Design et Engineering, les banques operating systems and computer networks Betriebssysteme und Computernetze sowie de données, le web, les systèmes d’exploita- as well as specific project management zu ausgewählten Methoden des Projektma- tion et les réseaux informatiques ainsi que methods. This solid foundation enables stu- nagements. Mit diesem Fundament stehen sur des méthodes choisies de gestion de dents to specialise in sub-areas­ in line with den Studierenden alle Türen offen für eine projet. Cette base ouvre toutes les portes their personal preferences and interests. Spezialisierung in einem Teilgebiet, das den aux étudiant-e-s pour se spécialiser dans Students set the course of their future path persönlichen Neigungen und Interessen ent- un domaine correspondant à leurs goûts et in the middle of the programme when they spricht. Die ersten Weichen stellen sie in der intérêts personnels. Ils posent les premiers opt for one of five specialisations. Mitte des Studiums, wenn sie sich für eine jalons au milieu de leurs études, lorsqu’ils von fünf Vertiefungsrichtungen entscheiden. optent pour l’une des cinq orientations.

book.bfh.ch Mitten im Leben Au cœur de la vie Engaged in everyday life Im Studiengang Informatik trifft man nicht Dans la filière Informatique on ne rencontre The Computer Science degree programme verschrobene Gestalten an, die dem ver- pas de personnes excentriques qui res- is most definitely not full of eccentric breiteten Image des «Nerds» entsprechen. semblent à l’image répandue du « nerd ». nerds. Instead, the BFH educates engineers Vielmehr bildet die BFH sozialkompetente La BFH forme au contraire des ingénieures with strong interpersonal skills who are und kooperationsfähige Ingenieurinnen et ingénieurs socialement compétents et good team players. They are very much und Ingenieure aus, die mitten im Leben coopératifs qui sont au cœur de la vie et engaged in everyday life and are shaping stehen und überall auf der Welt an der façonnent partout dans le monde la société the information society of the future all Gestaltung der Informationsgesellschaft de l’information de demain. over the world. 9 von morgen mitarbeiten. Titre/Diplôme Titel/Abschluss Bachelor of Science (BSc) Title/degree Bachelor of Science (BSc) Bachelor of Science (BSc) Forme des études Studienform Études à plein temps (6 semestres) ou Mode of study Vollzeitstudium (6 Semester) oder études à temps partiel (8 semestres) Full-time programme (six semesters) or Teilzeitstudium (8 Semester) part-time programme (eight semesters) Langue d’enseignement Unterrichtssprache Les études peuvent être suivies en allemand Language of instruction Studium in Deutsch oder zweisprachig mit ou en deux langues, dont environ la moitié Degree programme in German or bilingual etwa der Hälfte der Module nur in Deutsch des modules seulement en allemand ou with half of the modules only in German or oder nur in Französisch. Möglichkeit zum seulement en français. Possibilité d’acquérir only in French. Opportunity to obtain the Erwerb des «Zertifikats für zweisprachige le « Certificat de compétences bilingues ». “certificate of bilingual proficiency”. Kompetenzen». Orientations Specialisations Vertiefungen Choix de l’orientation après le troisième Selection of specialisation after the third Wahl der Vertiefung nach dem dritten semestre. Il est possible de choisir entre : semester. The options available are: Semester. Zur Auswahl stehen: • Computer Perception and Virtual Reality • Computer Perception and Virtual Reality • Computer Perception and Virtual Reality Comment les ordinateurs perçoivent How computers perceive the world, Wie Computer die Welt wahrnehmen, le monde, y réagissent et créent de respond to it and create new virtual auf sie reagieren und neue virtuelle ­nouvelles réalités virtuelles. realities. Realitäten erschaffen. • Distributed Systems and IoT • Distributed Systems and IoT • Distributed Systems and IoT Nouvelles technologies de réseau et New network technologies and applica- Neue Netzwerktechnologien und Anwen- applications pour terminaux mobiles. tions for mobile devices. dungen für mobile Endgeräte. • IT-Security • IT Security • IT-Security Problèmes de sécurité et menaces dans Security risks and threats in the digital Sicherheitsrisiken und Bedrohungen in le monde numérique ainsi que mesures world and countermeasures to protect der digitalen Welt sowie Abwehr- und de défenses et contre-mesures. against them. Gegenmassnahmen. • Digital Business Systems • Digital Business Systems • Digital Business Systems Le bon outil logiciel pour chaque proces- The right software tool for every business Für jeden Geschäftsprozess das richtige sus d’affaires. process. Softwaretool. • Data Engineering • Data Engineering • Data Engineering Base des processus d’affaires et pronos- The basis for business processes and Grundlage für Geschäftsprozesse und tics – collecter, mémoriser et évaluer des prognoses – collection, storage and Prognosen – Daten sammeln, speichern, données. evaluation of data. auswerten. Travail de bachelor Bachelor thesis Bachelorarbeit Généralement sur un thème de l’orienta- This is generally on a topic from the In der Regel zu einem Thema aus der tion choisie, souvent en rapport avec des ­selected specialisation and is often related gewählten Vertiefung, häufig im Zusammen- demandes de projet de l’économie. to project requests from industry. hang mit Projektanfragen aus der Wirtschaft. Contact Contact Kontakt Avez-vous des questions sur les études Do you have any questions about the Haben Sie Fragen zum Studium in Informatik d’informatique à la BFH ? Pouvez-vous Computer Science degree programme an der BFH? Können Sie sich vorstellen, dass imaginer que des étudiant-e-s s’adonnent à at the BFH? Can you imagine students Studierende im Rahmen von Projekt- und la recherche et développement pour votre carrying out research and development Bachelorarbeiten für Ihre Firma forschen entreprise dans le cadre de travaux de projet tasks for your company as part of project und entwickeln? Möchten Sie offene Stellen et de bachelor ? Souhaitez-vous recruter assignments and bachelor’s theses? Are mit Studienabgängerinnen oder -abgängern des diplômées et des diplômés de la filière you looking to fill vacancies with graduates der Abteilung Informatik besetzen? Informatique pour des postes vacants ? from the Computer Science department? Wir freuen uns auf Ihre Kontaktaufnahme! N’hésitez pas à nous contacter ! We look forward to hearing from you.

032 321 63 23 (Sekretariat) 032 321 63 23 (secrétariat) 032 321 63 23 (administration office) [email protected] [email protected] [email protected]

Mehr Informationen Plus d’informations More information bfh.ch/ti/informatik bfh.ch/ti/informatique bfh.ch/ti/computerscience

book.bfh.ch Interviews mit Studierenden Interviews d’étudiants Interviews with students

10 wegen der relativ kurzen Zeit ein grosser Glücksfall war. Vor dem Studium habe ich zwar zuerst geplant das Studium berufsbe- gleitend zu besuchen, bin jedoch mittler- weile froh, dass es anders gekommen ist.

Was möchten Sie nach dem Studium machen? Inwiefern können Sie von Ihrem Studium profitieren? L.H.: Nach dem Studium möchte ich in der Softwareentwicklung Berufserfahrung sammeln. Ich sehe mich in einem kleinen Team, in dem ich eine Full Stack Developer Rolle übernehmen kann. Da das Studium an der BFH sehr breit gefächert ist und breite Kenntnisse in der Softwareent- wicklung bietet, werde ich das Gelernte sicherlich einbringen können.

D.W.: Die Zeit bei Zühlke hat mir so gefal- len, dass ich mich für eine Stelle nach dem Studium beworben und nun dort ab Sep- tember als Software Engineer durchstarten kann. Durch das Studium konnte ich solide Grundlagen in der Informatik aufbauen und mit meiner Vertiefung «Computer Percep- Danilo Wanzenried und Lukas Hofer tion and Virtual Reality» kann ich hoffent- lich auch zukünftig im Bereich Computer arbeiten. Warum haben Sie sich für dieses und auch einmal neben den Vorlesungen Studium entschieden? etwas zusammen unternehmen. Wer also Welchen Tipp haben Sie für jemanden, L.H.: Als Elektroniker wollte ich mich mehr Vorlesungen mit über 150 Studierenden in der dieses Studium in Betracht zieht? auf die Software als auf die Hardware spe- einem Raum erwartet ist hier fehl am Platz. L.H.: Die Infotage, welche über die verschie- zialisieren. Das Studium Informatik bietet denen Studiengänge informieren, sind eine dabei die Grundlagen für eine spannende D.W.: Natürlich gehört viel Lernen dazu. tolle Sache. Man bekommt einen kurzen Ein- und praxisnahe Ausbildung in dieser Rich- Aber eine unvergessliche Zeit waren blick in den Studienalltag und kann sich so tung. Das Großartige an diesem Studium das 3. und 4. Semester, wo ich für zwei selbst ein Bild vor Ort machen. Zudem ist es ist zudem, dass nach den obligatorischen Semester ein Austausch in Vaasa, Finnland wichtig die obligatorischen Module für den Fächern die Module frei ausgewählt wer- machen konnte. Studierende aus aller Her- Studiengang anzusehen. Interessieren mich den können. ren Länder, der lange finnische Winter und die Themen? Was genau steht in der Modul- das dortige Studentenleben machten es zu beschreibung? Die Wahlmodule würde ich D.W.: Konsumieren ist zwar schön, aber einer ganz besonderen Erfahrung. Die BFH nur kurz ansehen, die BFH ist sehr flexibel viel schöner ist es selbst etwas zu kreieren, unterstütze mich bei der Organisation und und man kann auch studiengangsübergrei- das Freude verbreitet, der Umwelt hilft und ermöglicht es mir nun auch das Studium in fende Module besuchen. anderen Menschen helfen kann. Ich wollte der normalen Zeit abzuschliessen. und will wissen, wieso etwas funktioniert D.W.: Bring viel Motivation und Interesse und was dahintersteckt. Der Computer ist Arbeiteten Sie nebenher? (während mit. Kümmere dich um das, was du wäh- eine menschliche Meisterleistung, viel- des Semesters / währen der Ferien) rend der Studienzeit tust und lernst. Und leicht ist das der Grund, dass Informatik L.H.: Ab dem 3. Semester habe ich wäh- wenn du die Möglichkeit hast, mach auch mich immer besonders angezogen hat. rend dem Vollzeitstudium noch 20% in der ein Austauschsemester, du willst es nicht Softwareentwicklung gearbeitet. Dadurch mehr missen wollen! Wie sah der Studienalltag aus? konnte ich den Praxisbezug zu meinem Was gefiel Ihnen besonders gut an Studium noch erhöhen. Die Semesterferien diesem Studium? konnte ich dann jeweils etwas ruhiger ange- L.H.: Das besondere an der BFH ist, dass hen und hatte genug Zeit zur Erholung. man einen sehr persönlichen Kontakt mit den Mitstudenten hat. Die Klassen sind D.W.: Während den beiden Sommersemes- oft nicht grösser als 25 Studierende, was terferien meines Vollzeitstudiums konnte ich mir sehr gefallen hat. Durch den Kontakt je ein Praktikum bei inova:solutions AG und kann man sich sehr gut austauschen bei Zühlke Engineering AG absolvieren, was

book.bfh.ch von maximal 20% besonders in den letzten 11 Semestern aufgrund des relativ flexiblen Stundenplans durchaus möglich wäre. Wer aber auf ein Einkommen während dem Studium angewiesen ist, hat auch die Möglichkeit, das Studium berufsbegleitend zu absolvieren.

Was möchten Sie nach dem Studium machen? Inwiefern können Sie von Ihrem Studium profitieren? Ich habe mich an der BFH für die Vertie- fung CPVR entschieden und bin damit bis heute sehr zufrieden. Wir beschäftigen uns dabei hauptsächlich mit der Analyse, Verarbeitung und Synthese von Bildern. In diesem Bereich hat künstliche Intelligenz seit einigen Jahren massive Fortschritte gemacht. Neuronale Netzen sind mittler- weile aus vielen Bereichen nicht mehr wegzudenken. Im Rahmen meiner Bache- lorarbeit beschäftige ich mich damit, aus normalen Videos Super-Slow-Motion Auf- nahmen zu machen. Dafür muss ich unbe- kannte Bilder berechnen, was am besten mit einem neuronalen Netz funktioniert. Lorenz Ogi Am liebsten würde ich nach dem Studium auf diesem Gebiet weiterarbeiten. Bildana- lyse und -verarbeitung haben unglaublich Warum haben Sie sich für dieses In den ersten Semestern war der Studien- viele Anwendungsgebiete, ich bin davon Studium entschieden? alltag von täglichen Vorlesungen geprägt. überzeugt, dass dieser Teil der Informatik Ich bin seit meiner Kindheit von Compu- Mir gefiel dabei aber die Vielfältigkeit der in den nächsten Jahren noch viel wichtiger tern und Technik fasziniert, die Studien- Module, neben typische Informatik- und wird als er jetzt schon ist. richtung Informatik war also naheliegend. Mathematikfächern wurden auch Grund- Ich interessiere mich aber auch bereits lagen der Physik, eine Einführung in BWL Welchen Tipp haben Sie für jemanden, seit langem für Sport und Gesundheit, die und Recht sowie Sprachen unterrich- der dieses Studium in Betracht zieht? endgültige Entscheidung für ein Studium tet. Seit dem vierten Semester und der Ich kann dieses Studium mit gutem Gewis- musste also zwischen diesen beiden damit verbundenen Entscheidung für sen weiterempfehlen. In den ersten Semes- Möglichkeiten gefällt werden. Nach einem eine Vertiefungsrichtung ist das Studium tern ist der Stundenplan weniger flexibel. intensiven Auswahlverfahren entschied ich noch abwechslungsreicher geworden. Man muss einige Module überstehen, die mich schliesslich für die Informatik, primär Wahlpflichtmodule ermöglichen einen man persönlich vielleicht nicht besonders weil neben der persönlichen Faszination modularen Aufbau des Stundenplans, was interessant findet. Wenn man aber später auch die beruflichen Aussichten wesentlich ich sehr schätze. Aktuell habe ich nur an in den Vertiefungsvorlesungen kompli- besser sind als bei der Alternative. zwei Tagen pro Woche Vorlesungen, die ziertere Fragestellungen betrachtet, merkt Ich begann also mein Informatikstudium, restliche Zeit kann ich an meiner Bachelor- man, dass die anfangs gelernten Basics aber nicht direkt an der Berner Fachhoch- Thesis arbeiten. Ich komme dafür meistens durchaus wichtig sind und gebraucht wer- schule, sondern an der ETH Zürich. Ich nach Biel, da ich im CPVR-Lab für diese den. Mein Tipp ist also auch bei Modulen, musste aber bald feststellen, dass dieses Zeit einen eigenen Arbeitsplatz mit einem welche man als nicht besonders wichtig Studium nichts für mich war. Der Grossteil leistungsstarken Computer zur Verfügung betrachtet aufzupassen, um für den Rest des Kurrikulums war Mathematik, und auch gestellt bekommen habe. des Studiums gerüstet zu sein. Dies gilt die Informatikfächer wurden äusserst the- insbesondere für Mathematik-Vorlesungen oretisch und trocken unterrichtet. Deshalb Arbeiteten Sie nebenher? (während wie Analysis und lineare Algebra. entschied ich mich für einen Wechsel an des Semesters / währen der Ferien) die BFH, um nicht nur theoretisches Wis- Während dem Semester arbeite ich nicht, sen zu erlernen, sondern auch praktische um mich zu 100% auf das Studium zu Erfahrungen zu sammeln. konzentrieren und den Bachelorabschluss möglichst schnell erreiche. In den Semes- Wie sah der Studienalltag aus? terferien arbeite ich aber aus finanziellen Was gefiel Ihnen besonders gut an Gründen jeweils einige Wochen. Grund- diesem Studium? sätzlich denke ich, dass ein Teilzeitpensum

book.bfh.ch Interviews mit Studierenden Interviews d’étudiants Wir verschaffen deiner Karriere Interviews with students

12 den gewünschten Boost! Worauf legst du wert?

Arbeit Produktbezogen Projektbezogen

Anwendungen Applikationen Web Mobile System/Network

Firmengrösse Start Up KMU Grossbetrieb

Lohn egal $$$

Karriere Führungskarriere Fachkarriere

Stefan Thöni und Jan Dellsperger

Warum haben Sie sich für dieses Höhepunkt war die Vertiefung «Computer S.T.: Vorerst gehe ich weiter meiner Studium entschieden? Perception and Virtual Reality». Tätigkeit als Softwareentwickler nach. S.T.: Nach der Berufslehre zum Informatiker Im Studium habe ich gelernt, mich in und ein paar Jahren in der Industrie fiel mir J.D.: Montags bis donnerstags habe ich komplexe Themen einzuarbeiten und auf, dass für mich viele Themen immer noch jeweils durch den Tag gearbeitet und grössere Vorhaben strukturiert anzugehen ein Buch mit sieben Siegeln war. Ich war auf an zwei Abenden ging ich noch in den und umzusetzen. Ich habe nun das nötige der Suche nach breiterem und fundierterem Unterricht. Freitags war jeweils der ganze Selbstvertrauen selbst in grösseren Projek- Wissen. Ein weiterer Motivator war, dass ich Tag Unterricht. Da ich einen relativ langen ten mehr Verantwortung zu übernehmen. auf dem Arbeitsmarkt mit einem Bachelor- Anfahrtsweg hatte, konnte ich die Zeit im Abschluss besser konkurrieren kann. Zug jeweils fürs Studieren nutzen. J.D.: Ich werde weiter als Assistent im Mit unserem Netzwerk von rund 700 IT- und Engineering-Unternehmen Am Studium gefiel mir besonders die Art, CPVR-Lab der BFH arbeiten. Dort entwickle J.D.: Nach einer Lehre als Informatiker mit wie tiefgehende Theorie mit praktischen ich Software zur Bildverarbeitung und zur erhöhst du die Wahrscheinlichkeit entscheidend, den optimalen Job zu finden einer Berufsmaturität und dem Sam- Anwendungsfällen verbunden wurden. Bildsynthese. Ich kann also das im Studium meln von etwas Berufserfahrung schien gelernte eins-zu-eins in den Arbeitsalltag und diesen auch zu erhalten. das Studium an einer Fachhochschule Arbeiteten Sie nebenher? (während einfliessen lassen. Gerne erwarten wir deinen CV zur vertraulichen Prüfung. der logische nächste Schritt in meinem des Semesters / währen der Ferien) ­Werdegang. Da ich mich vor allem für S.T.: Ja. Ich studiere berufsbegleitend und Welchen Tipp haben Sie für jemanden, das Lösen technisch anspruchsvoller arbeite neben dem Studium mit einem 70% der dieses Studium in Betracht zieht? Fragestellungen interessiere, und weniger Pensum als Softwareentwickler. S.T.: Dem Mathematiker Paul Erdös wird www.consultandpepper.com für ­Businessentscheide und Prozesse, folgendes Zitat nachgesagt: «A problem entschied ich mich für den Bachelorstudi- J.D.: Ich arbeitete durchgehend während worthy of attack proves its worth by figh- engang als Informatiker. des Studiums mit einem Pensum von ting back». Das Studium ist sicherlich kein 60%, zunächst als Softwareentwickler im Zuckerschlecken. Die Investition lohnt sich Wie sah der Studienalltag aus? Web-Umfeld und im letzten Studienjahr als allerdings sowohl auf fachlicher als auch Was gefiel Ihnen besonders gut an Assistent im CPVR-Lab der Berner Fach- auf persönlicher Ebene. diesem Studium? hochschule. Fabian Imhof S.T.: Den Tag durch schrieb ich betriebs- J.D.: Seien Sie interessiert an den Kernthe- Niederlassungsleiter Bern kritische Software für meinen Arbeitgeber Was möchten Sie nach dem Studium men des Studiums und seien Sie nicht und danach genoss ich bis spät abends machen? Inwiefern können Sie von zufrieden mit einem oberflächlichen Ver- +41 31 511 10 10 komplizierte Informatikvorlesungen. Ein Ihrem Studium profitieren? ständnis des Gelernten. Graben Sie tief. [email protected]

book.bfh.ch

bfh-the-book_a4_informatik_v3.1.indd 1 25.04.19 07:54 Wir verschaffen deiner Karriere den gewünschten Boost! Worauf legst du wert?

Arbeit Produktbezogen Projektbezogen

Anwendungen Applikationen Web Mobile System/Network

Firmengrösse Start Up KMU Grossbetrieb

Lohn egal $$$

Karriere Führungskarriere Fachkarriere

Mit unserem Netzwerk von rund 700 IT- und Engineering-Unternehmen erhöhst du die Wahrscheinlichkeit entscheidend, den optimalen Job zu finden und diesen auch zu erhalten. Gerne erwarten wir deinen CV zur vertraulichen Prüfung.

www.consultandpepper.com

Fabian Imhof Niederlassungsleiter Bern +41 31 511 10 10 [email protected]

bfh-the-book_a4_informatik_v3.1.indd 1 25.04.19 07:54 Zusammenarbeitsformen Formes de collaboration Collaboration

14 Neue Erkenntnisse gewinnen, Synergien Acquérir de nouvelles connaissances, créer Gain new insights, create synergies, expe- schaffen, Praxisnähe erfahren: Die Berner des synergies, découvrir la pertinence rience practical relevance: Bern University Fachhochschule arbeitet in der angewand- pratique : dans le domaine de la recherche of Applied Sciences BFH works closely with ten Forschung und Entwicklung eng mit der appliquée et du développement, la Haute business and industry in areas of applied Wirtschaft und der Industrie zusammen. école spécialisée bernoise travaille en research and development. This strength- Dadurch wird die Verknüpfung von For- étroite collaboration avec l’économie et ens the link between research and educa- schung und Lehre gestärkt, und es fliesst l’industrie. Le lien entre la recherche et tion, allowing new knowledge to flow into neues Wissen in den Unterrichtein. Dies l’enseignement en est renforcé et l’ensei- our teaching, which leads to high-quality führt zu einer qualitativ hochwertigen und gnement profite des nouvelles connais- and practice-oriented degree programmes. praxisnahen Lehre. sances. Il en résulte un enseignement de haute qualité et axé sur la pratique. To allow companies to get to know the spe- Damit Unternehmen bereits heute die cialists of tomorrow today or to explore a Spezialistinnen und Spezialisten von Pour permettre aux entreprises de faire topic, they can carry out projects or theses morgen kennenlernen oder sich an eine aujourd’hui déjà la connaissance des in cooperation with our students. Thematik herantasten können, besteht die spécialistes de demain ou d’aborder un Möglichkeit, Projekt- oder Abschlussarbei- sujet, elles ont la possibilité de réaliser des As a business partner, you can suggest ten in Zusammenarbeit mit Studierenden projets ou des travaux de fin d’études en topics. Once these topics are chosen, stu- durchzuführen. collaboration avec des étudiant-e-s. dents work on them independently, either individually or in small groups, within Als Wirtschaftspartner können Sie Themen En tant que partenaire économique, designated time frames. Students are vorschlagen. Werden Themen gewählt, vous pouvez proposer des thèmes. S’ils supervised by both your specialist and a bearbeiten Studierende diese alleine oder sont choisis, les étudiant-e-s les traitent BFH lecturer. The rights and obligations of in kleinen Gruppen in dafür vorgesehenen de manière autonome, seuls ou en petits the parties involved are set out in a written Zeitfenstern selbständig. Dabei werden die groupes, dans les créneaux horaire prévus agreement. Studierenden durch Ihre Fachperson sowie à cet effet. Les étudiant-e-s seront encadré- durch eine Dozentin oder einen Dozen- e-s par votre spécialiste ainsi que par une Would you like to suggest topics for stu- ten der Berner Fachhochschule betreut. enseignante ou un enseignant de la Haute dent projects and find out more about pos- Die Rechte und Pflichten der beteiligten école spécialisée bernoise. Une conven- sible cooperation? Contact us and convince Parteien werden in einer Vereinbarung tion régit les droits et les obligations des yourself of the innovation potential of our geregelt. parties concernées. students.

Möchten Sie Themen für studentische Vous souhaitez proposer des thèmes pour Arbeiten vorschlagen und mehr über eine des travaux d’étudiant et en savoir plus sur mögliche Zusammenarbeit erfahren? une éventuelle collaboration ? Contactez- Kontaktieren Sie uns und überzeugen Sie nous et laissez-vous convaincre par le sich vom Innovationspotenzial unserer potentiel d’innovation de nos étudiant-e-s. Studierenden.

book.bfh.ch Zusammenarbeitsformen ZusammenarbeitsformenFormes de collaboration ZusammenarbeitsformenFormesCollaboration de collaboration FormesCollaboration de collaboration Erfolgreiche Zusammenarbeitsformen mit Wirtschaftspartnern Formes de collaboration fructueuses avec les partenaires économiques CollaborationSuccessful implementation of collaboration with industrial partners Erfolgreiche Zusammenarbeitsformen mit Wirtschaftspartnern Formes de collaboration fructueuses avec les partenaires économiques 15 SuccessfulStudentische implementation Arbeiten | Travaux d’étudiant-e-s of collaboration | Student projectswith industrial partners ErfolgreicheDas Modell einer Zusammenarbeitsformen flexiblen Zusammenarbeit mit Industrie mit Wirtschaftspartnern und Wirtschaft wird in studentischen Arbeiten erfolgreich umgesetzt: FormesLa flexibilité de collaborationdu modèle de collaboration fructueuses avec l’industrie avec leset l’économie partenaires se concrétise économiques avec succès dans les travaux d’étudiant-e-s: The model of flexible cooperation with industry and business is successfully implemented in student projects: SuccessfulStudentische implementation Arbeiten | Travaux d’étudiant-e-s of collaboration | Student projectswith industrial partners Das Modell einer flexiblen Zusammenarbeit mit Industrie und Wirtschaft wird in studentischen Arbeiten erfolgreich umgesetzt: La flexibilité du modèle de collaboration avec l’industrie et l’économie se concrétise avec succès dans les travaux d’étudiant-e-s: StudentischeThe model of flexible Arbeiten cooperation | Travaux d’étudiant-e-swith industry and| Student business projects is successfully implemented in student projects: Das Modell einer flexiblen Zusammenarbeit mit Industrie und Wirtschaft wird in studentischen Arbeiten erfolgreich umgesetzt: La flexibilité du modèle de collaboration avec l’industrie et l’économie se concrétise avec succès dans les travaux d’étudiant-e-s: The model of flexible cooperation with industry and business is successfully implemented in student projects:

Semesterarbeit, Bachelor-Thesis, Master-Thesis Wochen bis Monate Kostenbeitrag zulasten des Auftraggebers Travaux de semestre, travail de Bachelor, thèse de master De quelques semaines à plusieurs mois Frais à charge du donneur d’ordre Semester Projects, Bachelor Thesis, Master Thesis Weeks to months Costs are at the expense of the Client Semesterarbeit, Bachelor-Thesis, Master-Thesis Wochen bis Monate Kostenbeitrag zulasten des Auftraggebers Travaux de semestre, travail de Bachelor, thèse de master De quelques semaines à plusieurs mois Frais à charge du donneur d’ordre Semester Projects, Bachelor Thesis, Master Thesis Weeks to months Costs are at the expense of the Client Semesterarbeit, Bachelor-Thesis, Master-Thesis Wochen bis Monate Kostenbeitrag zulasten des Auftraggebers Travaux de semestre, travail de Bachelor, thèse de master De quelques semaines à plusieurs mois Frais à charge du donneur d’ordre Semester Projects, Bachelor Thesis, Master Thesis Weeks to months Costs are at the expense of the Client Auftragsforschung und Dienstleistungen | Recherche sous contrat et prestations de service | Contract Research and Services Wir bieten Auftragsforschung und erbringen vielfältige Dienstleistungen für unsere Kundinnen und Kunden (inkl. Nutzung der BFH-Infrastruktur sowie des Forschungsnetzwerkes). | Nous effectuons des recherches sous contrat et fournissons une vaste palette de prestation de services à nos clientes et clients – y compris l’utilisation des infrastructures BFH et du réseau de recherche. | We carry out contract research and provide a wide range of services for our clients, Auftragsforschung und Dienstleistungen | Recherche sous contrat et prestations de service | Contract Research and Services such as exclusive use of the BFH infrastructure and the research network. Wir bieten Auftragsforschung und erbringen vielfältige Dienstleistungen für unsere Kundinnen und Kunden (inkl. Nutzung der BFH-Infrastruktur sowie des Forschungsnetzwerkes). | Nous effectuons des recherches sous contrat et fournissons une vaste palette de prestation de services à nos clientes et clients – Auftragsforschungy compris l’utilisation und des Dienstleistungeninfrastructures BFH | Recherche et du réseau sous de contrat recherche. et prestations | We carry outde servicecontract | researchContract andResearch provide and a wide Services range of services for our clients, Wirsuch bieten as exclusive Auftragsforschung use of the BFH und infrastructure erbringen vielfältige and the Dienstleistungenresearch network. für unsere Kundinnen und Kunden (inkl. Nutzung der BFH-Infrastruktur sowie des Forschungsnetzwerkes). | Nous effectuons des recherches sous contrat et fournissons une vaste palette de prestation de services à nos clientes et clients – y compris l’utilisation des infrastructures BFH et du réseau de recherche. | We carry out contract research and provide a wide range of services for our clients, such as exclusive use of the BFH infrastructure and the research network. Planung, Coaching, Tests, Expertisen, Analysen; Wochen bis Monate Marktübliche Preise durchgeführt von Expertinnen und Experten De quelques semaines à plusieurs mois Prix du marché Planification, coaching, tests, expertises, analyses par des expert-e-s Weeks to months Prevailing Prices Planning, Coaching, Tests, Expertise, Analysis: done by experts Planung, Coaching, Tests, Expertisen, Analysen; Wochen bis Monate Marktübliche Preise durchgeführt von Expertinnen und Experten De quelques semaines à plusieurs mois Prix du marché Planification, coaching, tests, expertises, analyses par des expert-e-s Weeks to months Prevailing Prices Planning,Planung, Coaching, Coaching, Tests, Expertise, Tests, Expertisen, Analysis: Analysen; done by experts Wochen bis Monate Marktübliche Preise durchgeführt von Expertinnen und Experten De quelques semaines à plusieurs mois Prix du marché Planification, coaching, tests, expertises, analyses par des expert-e-s Weeks to months Prevailing Prices Planning, Coaching, Tests, Expertise, Analysis: done by experts F&E-Kooperationen | Coopérations R&D | R & D Collaboration Die BFH-TI erbringt Leistungen im Bereich der angewandten Forschung und Entwicklung: La BFH-TI fournit des prestations de service dans le domaine de la recherche appliquée et du développement: The BFH-TI provides services in Applied Research and Development: F&E-Kooperationen | Coopérations R&D | R & D Collaboration Die BFH-TI erbringt Leistungen im Bereich der angewandten Forschung und Entwicklung: La BFH-TI fournit des prestations de service dans le domaine de la recherche appliquée et du développement: TheF&E-Kooperationen BFH-TI provides services| Coopérations in Applied R&D Research | R & D Collaboration and Development: Die BFH-TI erbringt Leistungen im Bereich der angewandten Forschung und Entwicklung: La BFH-TI fournit des prestations de service dans le domaine de la recherche appliquée et du développement: The BFH-TI provides services in Applied Research and Development: Kooperationen mit Fördermitteln – mittlere und Monate bis Jahre Teilfinanziert durch grössere Projekte mit: De quelques mois à plusieurs années öffentliche Fördergelder Coopérations avec des subventions – projets de moyenne et Months to years Financement partiel par grande envergure avec: des subventions publiques Kooperationen mit Fördermitteln – mittlere und Monate bis Jahre Teilfinanziert durch Public Aid – medium and large-sized projects with: Partly public funding grössere Projekte mit: De quelques mois à plusieurs années öffentliche Fördergelder Coopérations avecInnosuisse, des subventions SNF / FNS, – projetsEU / UE de moyenne et Months to years Financement partiel par Kooperationengrande mit Fördermitteln envergure avec: – mittlere und Monate bis Jahre desTeilfinanziert subventions publiques durch Public Aid – mediumgrössere and Projekte large-sized mit: projects with: De quelques mois à plusieurs années öffentlichePartly public Fördergelder funding Coopérations avecInnosuisse, des subventions SNF / FNS, – projetsEU / UE de moyenne et Months to years Financement partiel par grande envergure avec: des subventions publiques Public Aid – medium and large-sized projects with: Partly public funding Innosuisse, SNF / FNS, EU / UE

book.bfh.ch Industriepartner Partenaires industriels Industry partners

16 Eine enge Zusammenarbeit mit Indus­trie­- À nos yeux, une collaboration étroite A close cooperation with industrial part- partnern ist uns äusserst wichtig. Im avec des partenaires industriels est extrê- ners is very important to us. In the field Bereich Informatik sind zahlreiche Bache- mement importante. Dans le domaine de of Computer Science, numerous bachelor lorarbeiten in Kooperation mit Firmen aus l'informatique, de nombreuses thèses se theses have been produced in cooperation der ganzen Schweiz entstanden. font en partenariat avec des entreprises with companies from Switzerland. Wir bedanken uns bei diesen Firmen für de l’ensemble de la Suisse. Nous remer- We thank these companies for the fruitful die fruchtbare Zusammenarbeit! cions ces entreprises pour ces fructueuses collaboration. collaborations !

Electric Paper Evaluationssysteme GmbH, Lüneburg EDA, Bern evolaris Aviation GmbH, Biel/Bienne HAFL BFH, Zollikofen Hans Weibel AG, Bern Hospitec AG, Spreitenbach inNET Monitoring AG, Altdorf isolutions AG, Bern PostFinance AG, Bern Ticketpark GmbH, Bern University of Bern, Bern

book.bfh.ch Wir ermöglichen Dir den richtigen Job in der passenden Firma zu fin- den. Seit mehr als 20 Jahren

Sandra Kohler Jürg Widmer Bernhard Kohler

Celine Becker Mathias Hintermann Michelle Stalder Gabriela Streich

Kohler & Partner unterstützt die unterschied- lichsten Firmen und kennt StartUps, KMU’s und Konzerne von innen.

Personalgewinnung Organisationsberatung Exklusive Jobs und unveröffentlichte Vakanzen HR-Audit Beratung bei der Job- und Firmen-Auswahl Arbeitgeberattraktivität Standortbestimmung Personal- und Führungsentwicklung Laufbahnberatung Reorganisation Personalgewinnung im Suchmandat Coaching und Teamentwicklung Assessment Workshops Selbstmanagement

Personalgewinnung & Organisationsberatung AG

Jungfraustrasse 1, 3005 Bern, 031 351 04 04, www.k-p.ch

Jungfraustrasse 1, 3005 Bern, 031 351 04 04, www.k-p.ch

Jungfraustrasse 1, 3005 Bern, 031 351 04 04, www.k-p.ch

Personalgewinnung & Organisationsberatung AG

Personalgewinnung & Organisationsberatung AG

Assessment Workshops Selbstmanagement

Assessment Workshops Selbstmanagement

Personalgewinnung im Suchmandat Coaching und Teamentwicklung

Personalgewinnung im Suchmandat Coaching und Teamentwicklung

Laufbahnberatung Reorganisation

Laufbahnberatung Reorganisation

Standortbestimmung Personal- und Führungsentwicklung

Standortbestimmung Personal- und Führungsentwicklung

Beratung bei der Job- und Firmen-Auswahl Arbeitgeberattraktivität

Beratung bei der Job- und Firmen-Auswahl Arbeitgeberattraktivität

Exklusive Jobs und unveröffentlichte Vakanzen HR-Audit

Exklusive Jobs und unveröffentlichte Vakanzen HR-Audit

Personalgewinnung Organisationsberatung

Personalgewinnung Organisationsberatung

Konzerne von innen. Konzerne von innen.

lichsten Firmen und kennt StartUps, KMU’s und lichsten Firmen und kennt StartUps, KMU’s und

Kohler & Partner unterstützt die unterschied-

Kohler & Partner unterstützt die unterschied-

Celine Becker Mathias Hintermann Gabriela Streich Michelle Stalder

Celine Becker Mathias Hintermann Gabriela Streich Michelle Stalder

Jürg Widmer

Bernhard Kohler Sandra Kohler

Jürg Widmer Bernhard Kohler Sandra Kohler

den.

Seit mehr als 20 Jahren den.

Seit mehr als 20 Jahren

Job in der passenden Firma zu fin- Job in der passenden Firma zu fin-

Wir ermöglichen Dir den richtigen Wir ermöglichen Dir den richtigen Liste der Absolventinnen und Absolventen Liste des diplômées et des diplômés List of Graduates

18 Im Folgenden präsentieren wir Ihnen die Ci-après, nous vous présentons les résumés Below we have summarised for you Zusammenfassungen der Bachelorarbeiten des travaux de bachelor en Informatique de the bachelor theses in Computer Science Informatik des Jahres 2019. l’année 2019. in 2019.

Die Absolventinnen und Absolventen sind Les diplômées et diplômés sont présen- The authors are listed alphabetically. For in alphabetischer Reihenfolge aufgeführt. tés dans l’ordre alphabétique. Il en va de teams, the name of the first team member Bei Teams bestimmt die alphabetische même lorsqu’il s’agit d’un team où ses determines the alphabetical listing. Position des ersten Teammitglieds die membres sont présentés par ordre alpha- Einordnung. bétique. The texts were written by the students themselves, with some support from Die Absolventinnen und Absolventen ha- Les diplômées et diplômés ont rédigé les lecturers. The texts were not systematically ben die Texte – teils mit Unterstützung der textes de façon autonome – parfois avec edited nor corrected before publication. betreuenden Dozierenden – selbst erfasst. l’aide des enseignant-e-s qui les encadrent. Die Texte wurden vor Publikation nicht Les textes n’ont pas systématiquement été systematisch redigiert und korrigiert. relus ou corrigés avant la publication.

Anderegg Fabio...... 19 Gestach Lukas Alex...... 44 Schmid Marco...... 69 Andrist Pascal Walter...... 20 Grossenbacher Cyril Eric...... 45 Schmid Michael...... 26 Anker Martin...... 21 Häusler Remo...... 46 Schmid Nicolas Manuel...... 70 Auderset Florian...... 22 Henzen Jennifer...... 47 Schmutz Manuel...... 71 Bachmann Rico...... 23 Hiller Carmen...... 47 Schnabel Elisa...... 65 Basili Michel...... 24 Hofer Filip Johann...... 48 Schönmann Sven Alexander...... 20 Becirbegovic Anel...... 25 Hofer Lukas Manuel...... 49 Sheppard David Michael...... 32 Bigler Dominik...... 26 Hosmann Michel...... 50 Shevchenko Denis...... 61 Bobst Janek...... 27 Hyams Jonathan Eric...... 51 Sidler Matthias Frederic...... 72 Boss Ramon...... 28 Kandiah Rajina...... 52 Spring Mathias...... 74 Brunner Anita...... 29 Kesseli Othmar...... 53 Stampfli Julian Jimmy...... 75 Cakir Cagdas...... 30 Kiser Christoph...... 54 Stegmüller Paul Silas Francis...... 31 Christen Marc...... 31 Künzi Kevin Peter...... 55 Suter Kevin Christian...... 76 Dellsperger Jan Alexander...... 32 Liniger Pascal Daniel...... 56 Suter Raphael...... 48 De Groof Alexandra Dominique...... 33 Maurer Marco...... 58 Thöni Stefan Albrecht...... 77 Di Vittorio Nicolas...... 34 Mlinaric Katsiaryna...... 59 Ugorcak Karol...... 55 Doukmak Anna...... 28 Müller Lukas...... 58 Utz Michel...... 78 Egli Manuel...... 35 Neuenschwander Tobias Jan...... 35 Vanoni Davide Andrea...... 79 Ellenberger Roger Andrea...... 36 Niggeler Aline...... 60 Vizzarri Jérémy Valentin...... 80 Fioretti Natalie Sandra...... 38 Nussbaum Alexander...... 61 Voegelin Thomas Michael...... 81 Fischer Marcus...... 39 Ogi Lorenz...... 62 Wanzenried Danilo Stefan...... 49 Flühmann Tobias...... 36 Palmitessa Alexander Lukas...... 63 Wenger Christian...... 82 Frei Gian-Luca...... 40 Platzer Casimir Benjamin...... 64 Werlen Patrick...... 83 Frei Xavier Lucien...... 42 Rudolf Mathias...... 65 Zumstein Sabine...... 84 Galatioto Marco...... 20 Schaad Simon...... 66 Gamper Fedor...... 40 Schär Stephan...... 67 Gasser Ludovic...... 24 Scheidegger Jan...... 68 Gerber Patrick...... 43 Schildknecht Elias...... 63

book.bfh.ch Interpretability of Image Segmentation Models

Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Thesis advisor : Peter von Niederhäusern Expert : Prof. Dr. Andreas Spichiger (BFH Wirtschaft) 19 Industrial partner : University of Bern, Bern Modern neural networks are achieving remarkable performance in many fields. In comparison with classic machine learning techniques, it is much harder to explain how these neural networks came to their conclusions, because they use millions of trained parameters. Interpretability methods for image classification tasks are already well established. The goal of this thesis is to provide new interpretability methods for image segmentation problems.

Interpretability Example Figure 1a) shows a misclassification of a Husky as a An MRI scan produces four different images per slice, wolf. Figure 1b) shows the output of the interpretabil- called modalities. Figure 2a) below shows the T1 con- ity method LIME (Riberio et al.). The output explains trast enhanced modality. Figure 2b) shows the tumor that the neural network classified the Husky as a wolf segment generated from the four images. Figures 2c) because the background of the image shows snow. and 2d) show the results of the Hausdorff Distance The neural network learned the fact that most images Masks method on two modalities of an MRI scan. The of wolfs contain snow in the background and that this method shows which parts of the image are important fact is the best clue that an image shows a wolf. for the generation of the tumor segmentation.

Goals Conclusion Fabio Anderegg For classification problems many interpretability Two methods have been successfully implemented: [email protected] methods such as LIME already exist and work well. The new Hausdorff Distance Masks method discussed The main goal of the thesis is to build interpretabil- above and the method RISE (Vitali Petsiuk et al.), ity methods for image segmentation models. Image which has been modified to work on image segmenta- segmentation is different from classification in the tion tasks. Other methods were also evaluated but did way that the algorithms do not detect what is visible not produce good results. Especially the HDM method on a picture, e.g. a Husky, but instead mark a region looks promising and can be used by researchers to in an image where they think something is visible, e.g. assess and enhance their neural networks. a tumor.

Hausdorff Distance Masks One of the developed methods we call Hausdorff Distance Masks (HDM). In essence, it works by first occluding parts of the image. Next, the segment gen- erated by the neural network from the modified image is compared with the segment generated from the unmodified original image. If the two segments differ by a wide margin, the occluded region holds impor- tant information for the generation of the segment.

Fig. 1: a) Husky missclassified as a wolf, b) LIME method Fig. 2: a) T1ce modality, b) tumor segment, c) and d) two showing the importance of snow for the (mis)classification. modalities interpreted with Hausdorff Distance Masks.

book.bfh.ch Inside BFH: IS-A Mobile App

Studiengang : BSc in Informatik | Vertiefung : Digital Business Systems Betreuer : Prof. Dr. Michael Röthlin 20 Experte : Jean-Jacques Jaquier

Das Projekt Inside BFH: IS-A Mobile App hat zwei Mobile Apps hervorge- bracht. Die eine unter Einsatz der Hybrid-Technologie Ionic und die andere von NativeScript. Auf der Basis von IS-A-Daten sind neue Anwendungsfälle gegenüber IS-A, der zentralen Plattform für die Studienverwaltung der BFH, ermöglicht worden.

Ausgangslage Aufbau der Lösung Um die in IS-A vorhandenen Daten besser nutzen zu Damit ein Benutzer mithilfe einer Mobile-App auf seine können, wurde im vorliegenden Projekt eine nachge- Daten zugreifen kann, wurde eine API (WebApi, Tech- lagerte Applikationsinfrastruktur geschaffen, welche nologie .Net) implementiert, welche die abgefragten neue Anwendungsfälle gegenüber IS-A ermöglicht, Daten aus IS-Academia abgreift, der Abfrage ent- ohne dass dabei die IS-A-Umgebung verändert wer- sprechend aufbereitet und dem Client zurückgibt. Der den muss. Client-Zugriff auf IS-A Daten über das WebApi wurde mithilfe von insgesamt 20 Endpunkten realisiert. Ziele Folgende zusätzliche Funktionen stehen mit den Ergebnis und Fazit Pascal Walter Andrist beiden Apps den Studierenden nun offen: Trotz unterschiedlicher Basistechnologien ergaben [email protected] – Berechnung und Anzeige des Notenschnitts (GPA, sich beim Entwicklungsprozess keine grossen Diffe- wichtig für den Zugang zu Masterprogrammen) renzen zwischen Ionic und NativeScript, was sich auf – Übersicht aller angebotenen Module (Studiengang die optimierte API zurückführen lässt, welche beiden Informatik) und deren Details, z. Bsp. als Entschei- als Fundament dient. Bei der Plattformunabhängig- dungshilfe bei der Modulauswahl keit und erstaunlicherweise teilweise auch bei der – Auflistung der noch nicht absolvierten Pflichtmodu- Leistungsfähigkeit hat Ionic die Nase vorn. Zudem len im Studium befindet sich NativeScript noch im Anfangsstadium – Modulempfehlungen für eine gewählte Ver- und bereits für simple Dinge musste auf Eigenent- tiefung als mögliche Wege zum Erreichen eines wicklungen oder auf Software von Drittanbietern Bachelor-Titels zurückgegriffen werden.

Marco Galatioto [email protected]

Sven Alexander Schönmann [email protected]

book.bfh.ch Haptics Effects Demonstrator

Studiengang : BSc in Informatik | Vertiefung : Computer Perception and Virtual Reality Betreuer : Prof. Urs Künzler Experte : Andreas Dürsteler 21

Das Ziel von Computerhaptik ist es, ein physikalisch fühlbares Feedback für den Benutzer zu erzeugen. Dies ermöglicht die Verwendung zusätzlicher­ Sinne beim Benutzen einer Software oder beim Steuern eines Gerätes. Zusätzlich kann haptisches Feedback auch für eine erhöhte Immersion ­sorgen. Das Ziel dieser Bachelorarbeit war es eine Demonstrationssoftware für den CPVR Unterricht zu erstellen, um den Studenten dieses Thema näherzubringen.

Ausgangslage 2. Die Haptic Library API ist eine höher levelige Der Demonstrator soll Einblicke in die Funktionsweise Bibliothek welche es erlaubt komplexe Effekte sowie des OpenHaptics Toolkits gewähren. Der Demonstra- eine graphische Umgebung einfacher zu erzeugen. tor sowie auch der Quellcode soll also die Basis für Zu diesem Zweck können OpenGL Befehle verwendet eine Unterrichtslektion sein. Somit wurde der Schwer- werden, was einem erfahrenen OpenGL Benutzer ein- punkt darauf gelegt die Arbeit möglichst zugänglich facher fallen sollte als der Ansatz der HDAPI. zu machen. Dies beinhaltet zum einen die Verwen- 3. In der neusten Version des OHT wurde ausserdem dung von FLTK (Fast Light Toolkit) zur Erstellung die QuickHaptic Library eingeführt. Diese verringert eines GUIs (Graphical User Interface), sowie auch die den Arbeitsaufwand mittels Verkapselung, zu Kosten ausführliche Dokumentation der Funktionsweise und der Veränderbarkeit, und ist deswegen für diese des Quellcodes. Die Hardware, also das haptische Arbeit nicht interessant. Martin Anker Zeigegerät ist auch vorgegeben, da die Schule bereits einige Geräte des Typs 3D Systems Touch besitzt. Implementation Um die Lesbarkeit des Quellcodes zu erhöhen, wurden OpenHaptics Toolkit die beiden Hauptfunktionen, namentlich die Haptik Das OHT ist eine Sammlung von Bibliotheken, Utilities und das GUI in zwei separaten Klassen untergebracht. und Beispielen, welche es einem Entwickler ermöglicht Die Einstellungen welche im GUI vorgenommen wer- haptische Anwendungen zu erstellen. Dabei gibt es drei den, werden dabei via Callbacks an die Haptik Klasse verschiedene Herangehensweisen: 1. Die Haptic Device weitergegeben, und darin als HDCallbacks an den API, welche den direkten Zugriff auf das Gerät ermög- Scheduler des Servo Loops übergeben. Um dabei die licht. Das Auslesen von Informationen und das Ansteu- Belastung des Loops gering zu halten, wird nur der ern der Motoren wird dabei auf einer tiefen hardware- momentan ausgewählte Effekt gerendert. Aus diesem nahen Ebene erledigt. Der im Hintergrund ablaufende Grund existiert für jeden Effekt im HDAPI-Demonstra- Servo Loop handelt die nötige Kommunikation. Diesem tor ein eigenes HDCallback. Auch die Funktionsweise kann mittels sogenannter HDCallbacks (Spezielle der HLAPI erlaubt es gezielt einzelne Effekte hinzuzu- Rückruffunktionen von OHT) Befehle erteilt werden. fügen oder zu entfernen. Dadurch ist die Threadsicherheit gewährleistet.

book.bfh.ch St. Niklaus Buchungsplattform – Webapplikation zur Unterstützung von St. Niklaus Vereinen

Studiengang: BSc in Informatik | Vertiefung: Web and Business Applications Betreuer: Prof. Rolf Jufer 22 Experte: Jean-Jacques Jaquier

Auf dem Markt gibt es verschiedene Internetplattformen zum Bestellen und Buchen von Waren und Dienstleistungen. So kann etwa der Coiffure- besuch oder eine Pizza, oder sogar Wocheneinkäufe online bestellt ­werden. Warum soll nicht auch der St. Niklaus für einen Besuch online ­bestellt werden können?

Ausgangslage bietet die Plattform bereits bei der Anmeldung den In der deutschsprachigen Schweiz gibt es rund 400 passendsten Termin an. Die Plattform überlässt es St. Niklaus Vereine, welche jedes Jahr Feste oder Stu- den Vereinen, ob sie einen manuellen, oder automa- ben in der ganzen Schweiz besuchen. Jeder Verein hat tisierten Anmeldeprozess bevorzugen. Auch können seine eigenen Strukturen für Planung und Buchung. die angebotenen Dienstleistungen mit verschiedenen Oftmals sind diese Strukturen veraltet und aufwändig Zeit- und Preismodellen konfiguriert werden, um so für den Administrator. viele Vereine wie möglich zu erreichen. Die Plattform holt den St. Niklaus ins 21. Jahrhundert. Der moderne Vorprojekt Klaus hat die Möglichkeit sein goldenes Buch zuhause In einem Vorprojekt wurden Bedürfnisse von St. Nik- zu lassen und auf ein goldenes Tablet umzusteigen. Florian Auderset laus Vereinen abgeklärt, Usecases und Prozesse für eine entsprechende Buchungsplattform erstellt. Die Umsetzung Plattform sollte den Vereinen Werkzeuge zum Verwal- Als Basis kommt Laravel Spark zum Einsatz. Das Front­ ten von Ressourcen und zur Routenplanung anbieten. end wurde mit VUE.JS Komponenten umgesetzt. Pakete­ Darüber hinaus sollte die Plattform den Nachrichten- wurden mittels den Paketmanagern Composer (PHP) fluss zwischen Anmelder und den Vereinen automati- und NPM (JavaScript) installiert. Um die Codequalität sieren und den Datenfluss auf ein Medium kanalisie- während der Entwicklung zu prüfen, wurde GrumPHP ren. Ein lästiges hin und her via Anmeldetalon, SMS, eingesetzt. GrumPHP hängt sich in den Commitprozess E-Mail usw. würde entfallen. ein und führt vor jedem Commit definierte Codequali- tätsprüfungen, sowie Unittests durch. Es gelangt nur Plattform überprüfter Code in die Versionskontrolle. Die Vereine haben eine zentrale Plattform zum Die Umsetzung der Plattform stellte sich als kompli- anbieten ihrer Dienstleistungen und die Leute, welche zierter heraus, als anfänglich angenommen. So muss- einen St. Niklaus suchen können diesen ganz einfach ten zuerst die Frameworks Laravel, Laravel Spark und finden und direkt buchen. Die Steckbriefe der braven VUE.JS erlernt werden. Der Umfang der Arbeit stellte und ungezogenen Kinder können digital übermittelt ebenfalls ein Problem dar. Während der Umsetzung werden. Ein entziffern der üblichen handgeschriebenen noch optimistisch, musste ich rasch feststellen, dass Prosa-Steckbriefe entfällt. sich viele Punkte in der gegebenen Zeit nicht imple- Damit die Vereine die ihnen zur Verfügung stehenden mentieren lassen. Dies wurde vorausblickend bereits Personen so effizient wie möglich einplanen können, bei der Definition der Anforderungen berücksichtig und entsprechend als optional kategorisiert.

Ausblick Die Plattform soll im Anschluss zur Bachelorthesis für den Livebetrieb fit gemacht werden. Hierfür muss der Code nochmals überprüft und refactort werden. Bereits angedachte Mehrsprachigkeit soll integ- riert werden. Der anfangs geplante automatische Buchungsprozess konnte nicht fertig implementiert werden. Ein Feinschliff von Frontend und E-Mail Tem- plates soll das ganze abrunden. Geplant ist ein erster Screenshot der Startseite – samichlous.net produktiver Einsatz im Dezember 2019.

book.bfh.ch Multimaus/Remotemaus

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Dr. Andreas Danuser Experte: Thomas Jäggi (GIBB) 23

Die Multi-/Remotemaus ist ein Tool, welches die Barrieren einer normalen Maus und eines normalen Betriebssystem-Cursors durchbricht. Die Multi- maus ermöglicht es, mehrere Cursor auf einem Computer zu nutzen. Die Remotemaus erlaubt es, den Cursor mit einer Maus über mehrere Rechner zu benutzen. Dies kann Personen unterstützen, welche mehrere Computer am selben Arbeitsplatz in Betrieb haben oder es kann die Teamarbeit über mehrere Rechner erleichtern.

Problem werk an den benachbarten Rechner. Der lokale Cursor Für die Multi-/Remotemaus stellen sich mehrere wird jetzt nicht mehr weiter gezeichnet, dafür erhält Hürden. Eines der Hauptprobleme stellt dabei das man einen Cursor auf dem benachbarten Rechner, Verhalten der unterschiedlichen Betriebssysteme welcher durch die Daten der lokalen Maus gesteu- dar, welche sich beim Maushandling jeweils anders ert wird. Wird nun eine Klick-Aktion mit der Maus verhalten. Es muss somit eine für das BS passende ausgeführt, so muss unser Tool den Zugriff auf den Erfassung der Mausdaten gewählt werden und auch BS-Cursor erhalten. Der Einfachheit halber wird ein das Steuern des Mauscursors wird vom BS abhängig «first come, first serve» Prinzip gewählt. sein. Da das BS nur einen Mauscursor zur Verfügung stellt, ergeben sich weitere Probleme, das Zeichnen Implementation mehrerer Mauscursor, sowie die Kontrolle über den Das Hauptaugenmerk wurde bei der Implementation Rico Bachmann original Betriebssystem-Cursor­ zu behalten. Klick-Ak- auf *nix-Systeme (ein Unix basierendes Betriebssys- tionen mehrerer Mäuse können nicht gleichzeitig tem wie Linux und OSX) gesetzt. Diese BS verhalten ausgeführt werden, dadurch braucht es eine Art von sich sehr ähnlich was das Maushandling angeht, Scheduling oder Prioritätensetzung. während Windows in dieser Hinsicht das exotische BS darstellt. Lösungsansatz Um unter einem der *nix-Systeme an die rohen Maus- Der entwickelte Lösungsansatz verhält sich ähnlich daten zu kommen, wird direkt auf das Devicefile wie ein «man in the middle». Während, grob aus- zugegriffen. Das Bewegen des original Cursors wird gedrückt, im Normalfall die rohen Mausdaten vom verhindert, indem dem sogenannten Window-Server Maustreiber an das BS weiter gegeben werden und der Zugriff auf diese Maus-Devicefiles via Konfigura- den BS-Cursor zu steuern, greift unser Tool die rohen tion gesperrt wird. Mit Hilfe des Window-Servers und Mausdaten vor dem BS ab. Die Mausdaten werden nun OpenGL wird jetzt für jede Maus ein unsichtbares verwendet, um den von unserem Tool gezeichneten Fenster mit einem Mauscursor gezeichnet. Mit Hilfe Cursor, zu steuern. Wird der Cursor nun nach links ­eines Mutex wird der Zugriff auf den original Maus­ oder rechts über den eigenen Bildschirmrand heraus cursor geregelt. Der Mutex wird nach jeder fertigen bewegt, sendet unser Tool die Mausdaten via Netz- Aktion wieder freigegeben.

Die schwarze Maus kann nur den schwarzen Cursor auf dem Die schwarze Maus kann jetzt auf beiden Computern genutzt rechten Computer nutzen werden und es wird pro Maus ein Cursor angezeigt

book.bfh.ch VR-Browser

Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Thesis advisor : Prof. Marcus Hudritsch 24 Expert : Dr. Harald Studer (Optimo Medical AG)

It is becoming very easy to create a VR scene, for instance Unity3D but it is still very hard to share it with others. What we aim to create a single platform for people to share and browse VR scenes. We also think that connecting people with VR could bring something more to the experience. Changing scene should be easy without having to restart the application or download and install another scene.

Sharing Interactivity With the rapid development of 3D graphics and Virtual reality (VR) is a great tool to increase immer- virtual reality (VR) headsets, creating a 3D scene is sion but it can also be fantastic to connect, do things becoming increasingly easy and fast, yet the process together in a virtual world, think for example drawing of sharing it with others is still long and complex. together or teaching people how to assemble a watch What we provide is a framework to simplify the sharing with a live example that they can touch. of scenes, anyone that would like to showcase some- The scenes created with our framework will be almost thing in VR can create their own scene with 3D automatically be made to work networked so any and then easily share it with the rest of the world. developer can easily create a social experience. With our VR-Browser scenes can contain links to Michel Basili other scenes and the user can use these links in the Works everywhere VR world to change scene, the same way a user using Our framework is designed to work cross-platform a web browser would be able to change pages when (Windows and Linux at the moment), on top of that clicking on a link, but in 3D. designing a 3D application for VR is also heavily dependant on the hardware, and all that is handled Runtime by the framework using the powerful API of SteamVR Because our goal was to support dynamic links which supports most headsets. in scenes that allows us to browse scenes like we The future goal is that a package is built only once would browse the web. We needed a way to make and distributed only once no matter how many plat- scenes (with scripts and graphical assets) loadable forms or headsets are targeted. at runtime and we achieved this by creating a custom package containing all the required data that we can then load at runtime into Unity 3D.

Ludovic Gasser

A player painting in 3D

A player pressing a button to change scene & The VRBrowser client UI to choose scene

book.bfh.ch Smart environment conception and integration for Hotels

Degree programme : BSc in Computer Science | Specialisation : Distributed Systems and IoT Thesis advisor : Prof. Dr. Andreas Danuser Expert : Stéphane Barbey (Paranor AG) 25

Creating a concept and implementation based on analytics of current ­available technologies and implementations in the field of smart buildings and IOT for application in Hotels.

Context and goals ment has been chosen to be the development ground In today’s world, digitalization and automatization for this thesis with the vision to create a concept and are having a huge impact on our lives. After the implementation suitable for many more areas. revolution of the smartphone, the digitization and automation of public and private spaces seem to be Contents of the Thesis the next logical step in this development. Cheaper The thesis is structured in 3 parts, starting with an and simpler becoming "smart hardware", increasingly analysis of the abilities and potentials of digitalizing more interconnected devices and through the recog- hotel environments, with a focus on hotel rooms as nition of the potential benefits in almost every aspect well as an analysis of current available products, of society accelerate this trend further. Intelligent sys- technologies and implementations of smart systems tems in our buildings could simplify many everyday and devices. The results of this first Phase lead to Anel Becirbegovic processes, make them more efficient or even render the creation of a Catalogue containing functions and them unnecessary. systems, based on which the conception and imple- mentation phase have relied upon. A very suitable place to start conceiving and imple- menting an intelligent, interconnected system is a Conclusion Hotel. As Hotels would especially profit from each of The thesis shows that many areas of a hotel room the benefiting areas mentioned and as they already can profit from being automatized and thus provide have an more widespread usage of already available benefits to guests as well as the hotel management. IOT Systems, they represent the perfect environment The Analysis of available technologies has led to the to start implementing a system that would enhance conception of a system based on Interfaces, Collec- the experience of customers as well as bringing ben- tors and Micro-Services to create a scalable, compre- efits for the Hotel itself by automating tasks, saving hensive and expandable system. energy and human task force, finally resulting even in financial benefits. Because of this reasoning and inter- est expressed by industry partners, the Hotel environ-

book.bfh.ch Blackbox – Ein robuster und Privatsphäre respektierender Drive-Recorder zur Unfallanalyse

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Prof. Dr. Reto König 26 Experte: Prof. Dr. Torsten Braun (Universität Bern)

Bei einem Unfall im Strassenverkehr stellt sich meist die Schuldfrage. Der Markt bietet unzählige Lösungen, sowohl als dedizierte Hardware (Dashcam) oder als Applikationen. Die wenigsten sind jedoch legal oder Open . Wir haben eine Android-Applikation entwickelt, welche legal betrieben werden darf und eine Rekonstruktion des Unfallhergangs erlaubt. Die Privatsphäre des Benutzers wird nicht tangiert. Benutzer behalten zu jeder Zeit die volle Kontrolle über Ihre Daten.

Der erste Meilenstein war das Verstehen der Mecha- Die Applikation kann so betrieben werden, dass das nismen einer Blackbox – Welche Daten müssen in Smartphone während der Fahrt normal benutzt wer- welcher Frequenz aufgezeichnet werden? Wie lange den kann. Die Benutzer behalten die volle Kontrolle dürfen diese Daten vorgehalten werden? Wie können über die Applikation. Unter anderem können sie ein- Ereignisse rekonstruiert werden, auch wenn das stellen, welche Sensoren aktiv aufgenommen werden Smartphone physisch nicht mehr zugängig ist oder oder die Schwellwerte der Unfallerkennung anpassen. ganz zerstört wurde? Sind handelsübliche Smart­ phones dafür überhaupt geeignet? Dies führte zu den Die Applikation wurde mehrmals unter realen Bedin- fünf Grundpfeilern der Applikation: gungen auch am Dynamic Test Center in Vauffelin ­getestet. Die Daten überstanden eine frontale Kolli­ Dominik Bigler – Aufnahme und Speicherung: Die unfallrelevanten sion zweier Fahrzeuge mit 75 km/h, einen Aufprall mit Sensordaten werden gespeichert. 57 km/h in einen Crashblock (siehe Abbildungen) – Löschen alter Daten: Alte, ereignisfreie Daten wer- und einen Fall aus 40 Metern Höhe auf harten Boden. den periodisch gelöscht und somit die Privatsphäre Für eine vereinfachte Auswertung der anfallenden aller Verkehrsteilnehmer bewahrt. Datenmenge wurden diverse Tools, unter anderen – Ereigniserkennung: Wird ein Ereignis automatisch eine grafische Darstellung der Daten, erstellt. erkannt oder wird dieses manuell vom Benutzer gemeldet, speichert das System die ereignisrele­ Mit der Applikation haben wir das Fundament für eine vanten Daten dauerhaft. sichere und legale Blackbox gelegt. Mit einigem Fein- – Notfallhotspot: Nach einem schweren Ereignis schliff und Kompatibilitätstests mit diversen Smart- ­startet die Applikation einen Hotspot, sodass phones kann in naher Zukunft Produktqualität erreicht die ereignisrelevanten Daten verschlüsselt auf werden. Der Quellcode ist Open Source und wurde auf ein Zweitgerät kopiert werden können. GitLab veröffentlicht: – Echtzeitdatentransfer: Falls aktiviert, werden https://gitlab.com/schmm11/blackbox Michael Schmid die Sensordaten in kurzen, garantierten Zeitinter­ vallen an ein Zweitgerät übertragen. Dies stellt eine robuste Datenaufzeichnung bis nahe an den Zeitpunkt eines Geräteausfalls sicher.

Auswertung Unfall. Die rote Linie stellt den Zeitpunkt des Totalschaden nach Aufprall mit 57 km/h Aufpralls dar

book.bfh.ch Timing attack on I2P web servers

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisor : Prof. Dr. Emmanuel Benoist Expert : Thomas Jäggi (GIBB Gewerblich Industrielle Berufsschule Bern) 27

The Invisible Internet Protocol I2P is an anonymous peer to peer network. It promises discretion to its participants, both in hosting and browsing the I2P-websites called Eepsites. The goal of this thesis is to prove the ­feasibility of a timing attack on the I2P-network, which allows deanonymi- zing the hosts of certain Eepsites.

Invisible Internet Protocol - I2P Timing Attack The I2P-network creates connections between two The attack consists of two parts. Collecting data and nodes using so-called tunnels. Each node has various analysing that data. inbound- and outbound-tunnels. Every tunnel consists By checking for a response every hour, we monitored of multiple nodes. After configuring the system, a cli- the up- and downtime of a considerable amount of ent can access an Eepsite over the browser, by simply Eepsites and nodes, over a few months. We saved the entering the domain name of the desired Eepsite (e.g. results to a database for later analysis. mud.i2p). The I2P-Protocol will then look for a match- ing entry inside the netDB. The netDB is a distributed For every pair of Eepsite and node, we compare the database containing the domain and corresponding up- and downtime and repeat this for all timestamps. tunnel gateways. We then calculate the ratio between matching times- Janek Bobst By connecting an outbound tunnel of the client with tamps vs total timestamps. The higher the percentage one of the inbound tunnels of the server, I2P estab- of matches, the bigger the chance, that the given node lishes a connection. hosts that Eepsite. To the client, only the IP-Address of the inbound-tun- This statistical analysis will get more precise with nel is visible, the real IP-Address of the Eepsite-host each new timestamp. remains hidden behind the tunnel. (fig. 1) In the example below (fig. 2), we compare Deanonymize a host zeronet.i2p with the node 99.235.248.166. Through- As mentioned, the client should have as little informa- out this analysis, the status for node and Eepsite was tion related to the host as possible. If we can link an equal for 75 % of the compared timestamps, indicat- Eepsite to the real IP-address of a node we consider ing a possible match. that node/host deanonymized. And consequently, we know that said node hosts this Eepsite. The information provided by the IP-Address can be location, VPN or name of the ISP. Therefore we can create a rough demographic about what kind of nodes are active in the I2P-Network. To get the desired information, we execute a timing attack.

fig. 1: I2P-Protocol fig. 2: Status of an Eepsite and a node over time

book.bfh.ch Experiments in Formal Verification of Scala Code

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisor : Prof. Dr. Kai Brünnler 28 Expert : Urs Keller (Revault Sàrl)

Correctness of Bitcoin Software is important, because bugs can lead to loss of funds. Contrary to testing, formal verification can ensure correctness, at least in principle. In this thesis we set out to formally verify a part of Bitcoin-S, a Scala implementation of the Bitcoin protocol. We use the ­Stainless verifier, developed by the LARA group of EPF Lausanne.

Formal Verification The Second Property Formal verification is a method to check the correct- So, we turn our analysis and verification to another ness of a program based on a formal specification. property: Using a verification tool, all possible inputs can be – adding coins to a number of coins results in covered, in contrast to unit testing, where the inputs the same number of coins must be specified separately. Here we were successful in transforming the relevant The Stainless Verification Tool code into the supported subset of Scala and verifying We use Stainless as our verification framework, which it. – takes Scala code with specification as input, but Ramon Boss does not support all Scala language features, Conclusion – reports inputs for which a program violates the Because of the limitations of the verification tool, we specification or could only verify a rewritten version of the original – confirms the correctness of a program. code. So code should be written specifically with formal verification in mind, in order to successfully The First Property verify it. Also, we found that trying to verify code The first property of Bitcoin-S we set out to verify we reveals bugs. Finally, our work led to some feedback call the no-inflation-property: to the Stainless developers to improve the tool. – a regular transaction (non-coinbase) cannot gener- ate new coins

The code uses Scala language features that Stainless does not support, so we have to transform it into the supported Scala subset. Anna Doukmak We found that the code is too large to make this feasi- ble in the available time.

However, during this work we found a bug in the function checking the correctness of a transaction. Its implementation did not allow transactions that referenced two or more outputs of the same previ- ous transaction. We fixed it and made a pull request which has been merged by the developers of the Bitcoin-S project.

Stainless specification of the Second Property Our Bugfix

book.bfh.ch PreFlightPlaner - Eine Architektur zur Bereitstellung von selbstaktualisierenden Daten

Studiengang : BSc in Informatik | Vertiefung : Distributed Systems and IoT Betreuer : Prof. Dr. Reto Koenig Experte : Dr. Wolfgang Kaltz (Camptocamp SA) 29

Um das Gleitschirmfliegen unfallfrei zu betreiben, ist eine gute Flugvorbe- reitung unerlässlich. Die richtige Einschätzung der Flugbedingungen kann jedoch eine echte Herausforderung darstellen. Die Schwierigkeit dabei ist, dass eine grosse Menge an verschiedenen Quellen abgefragt werden muss. Zudem müssen die abgefragten Daten richtig analysiert werden, um die Flugbedingungen korrekt einzuschätzen. Dies ist vor allem bei komplexen Bereichen wie der Wetterlage schwierig.

Ziele wickelt werden. Den Benutzern solcher Applikationen Das Ziel der Bachelorarbeit ist es , eine Architektur ermöglicht dies, aktuelle Daten anzuzeigen, welche zu designen, welche der Bereitstellung von Daten der Flugvorbereitung dienen. Die Benutzer können zur Planung von Flügen beim Paragliden dient. Der mittels Push-Meldung automatisch über allfällig Aktu- Fokus liegt auf dem Aufbau eines Systems, welches alisierungen informiert werden. sowohl die Datenanbindung als auch die Datenabfrage auf eine möglichst einfache Weise ermöglicht. Das Umsetzung System soll die Möglichkeit bieten, Benutzer auto- In der PreFlightPlaner Architektur agieren drei unter- matisch über allfällige Aktualisierungen der Daten zu schiedliche Arten von Aktoren. Dies sind Services, informiert, ohne, dass diese erneut abfragt werden welche Daten bereitstellen, Agenten, die als Daten- müssen. router fungieren und Klienten, welche Daten anfragen. Anita Brunner Die Funktion der Architektur wurde mittels der Ent- Ergebnisse wicklung eines Prototypen dargestellt. Dazu wurden Die Bachelorarbeit beschreibt eine Architektur, Services in einer beliebigen Programmiersprache ent- welche der Planung von Flügen dient. Es wird erklärt, wickelt. Die Daten dieser Services werden aus einer wie ein solches System aufgebaut werden kann, um Web-Applikation angefragt und das Ergebnis dieser den oben erwähnten Anforderungen zu entsprechen. Anfragen wird grafisch dargestellt. Entwickler können mittels der Implementation eines Services Daten im System bereitstellen oder abfragen. Das System bietet die Möglichkeit, einen solchen Service mit minimalen Anforderungen zu implemen- tieren. Durch die Definition einer programmierspra- chen-unabhängigen Datenstruktur können Services in einer beliebigen Programmiersprache und auf einem beliebigen System betrieben werden. So können Benutzer-Applikationen mit jeglichen Technologien (z.B. Web-Applikationen oder Smartphone Apps) ent-

Diagramm der Architektur Start eines Gleitschirmfluges

book.bfh.ch Assembly Support with HoloLens

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Prof. Marcus Hudritsch 30 Experte: Dr. Federico Flueckiger (Eidg. Finanzdepartement)

In Technologieunternehmen werden viele grosse Maschinen benutzt. Die Montage dieser Maschinen mit Hunderten oder Tausenden von ­Einzelteilen, die in einer bestimmten Reihenfolge und Geometrie zusam- mengefügt werden müssen, ist nicht einfach und mit grossem ­Zeitaufwand verbunden. In dieser Arbeit geht es darum, mithilfe der ­HoloLens- Technologie diese Montagearbeiten zu unterstützen.

HoloLens Ziel Meine Bachelorarbeit wurde mit der HoloLens-Brille Das Ziel der Arbeit ist es mit der HoloLens-Brille realisiert, welche in der digitalen Welt zunehmend ­herauszufinden, wie die Montagearbeiten eines an Bedeutung gewinnt. HoloLens ist eine Augmented komplexen 3D-Produktes oder einer Maschine visuell Reality Brille, die von Microsoft als ein holographi- unterstützt werden können. Dabei geht es um die Ent- scher Computer entwickelt wurde. Sie zielt darauf ab, wicklung von Funktionen, welche die Montagearbei- dem Leben eine neue Dimension zu geben, indem ten schneller und effizienter gestalten. sie dem Benutzer eine erhöhte virtuelle Realität bietet. Ergebnis Das Ergebnis des Projektes ist, dass die Holo- Cagdas Cakir Augmented Reality (AR) Lens-Technologie endlose Lösungen im Montagebe- Augmented Reality bedeutet im Wesentlichen, dass reich bietet. Mit der entwickelten Applikation können virtuelle Objekte dem realen Bild überlagert werden. die realen und virtuellen Maschinenteile gleichzeitig Sie wird sichergestellt, indem in einer Umgebung angezeigt werden. Durch Animationen wird ersicht- durch eine AR-Brille oder einer Kamera ein Marker lich, wie und wohin die Teile montiert werden erkannt wird und dadurch vordefinierte Objekte wahr- müssen. Die Anweisungen dafür werden mit Sprach- genommen werden können. Augmented Reality ist befehlen gesteuert. eine 3D-Technologie, die physische und digitale Welt in Echtzeit kombiniert.

Umsetzung Meine Arbeit ermöglicht es, dass die von Json-Datei bereitgestellte Montageanleitung eingelesen wird und die darin definierten Montageteile (Massstab 1:1) virtuell angezeigt und ausgeführt werden. Dort wo die virtuelle Montage in der realen Welt erfolgen soll, wird der Marker von HoloLens gescannt und positioniert. Dann werden die Anweisungen mit Sprachbefehlen gesteuert und die Applikation wird ausgeführt.

Microsoft HoloLens Montageanleitung mit HoloLens Links: Virtuelle Teile; Rechts: Reale Teile

book.bfh.ch Non-repudiation and traceability of asynchronous processes (nTAPiR)

Degree programme: BSc in Computer Science | Specialisation: IT-Security Thesis advisors: Prof. Gerhard Hassenstein, Prof. Dr. Annett Laube-Rosenpflanzer Expert: Xavier Monnat (Post CH AG) 31

Nowadays more and more asynchronous business processes are digitised and automated. However, the traceability of user activities is quite ­challenging. nTAPiR is an interactive prototype based on a business case study with a private, permissioned blockchain to show how the goals of non-repudiation and traceability can be reached by using a distributed ledger technology.

Introduction Goals In the business world, most processes run asynchro- The aim of this project was to demonstrate how these nously. This can be a communication between two problems in business processes can be solved, using participants. A sender transmits a message to the a Distributed Ledger Technology (DLT) to get a more recipient and does not wait for its response. Mean- traceable, tamper-resistant system process. The while, the sender can perform other tasks and fetches solution was implemented as a prototype to show a the answer when available. suitable case study. However, today’s business processes are highly complex and multiple participants collaborate in the Case Study procedure. Therefore, it is significant to know if a A technical change management process was selected sender transmitted the information in time and the for the case study, because it is an asynchronous Marc Christen recipient has actually received and read it. Keeping process among several participants. These were cate- [email protected] track of the individual activities is cumbersome and gorised into three roles: Initiators, implementers and often done on an additional communication channel ­revisors. They can interact with two assets: Changes such as email or face-to-face. and tasks, whereby tasks are attached to a change. As a specific use case, Alice wants to have a new software release to be installed on a test server. She acts as an initiator and enters a change request on a web application. A task is automatically created and assigned to the implementor Bob. Alice now can notify Bob and verify if he has read the task. However, he can approve or decline the task but both actions influent the further process. Perhaps Bob does not have time for the installation and declines. Alice gets informed and has to enter a new change request. Paul Silas Francis Stegmüller Alternatively, Bob accepted and the change request would be released. Alice’s boss Charly wants to track the whole process. As revisor, he is able to verify all actions from the beginning to the end.

Results All steps of this asynchronous process are written to the DLT. The DLT documents all process activities seamlessly and tamper-proof in the background. Initiators cannot modify their changes unnoticed and involved participants cannot deny being informed. Roles and access control rules ensure that only author- ised participants have access to certain information. Thus, reviewing and auditing individual steps in business processes becomes more accessible and simpler for all participants.

book.bfh.ch Low-Cost Motion Tracking System

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Prof. Marcus Hudritsch 32 Experte: Dr. Harald Studer (Optimo Medical AG)

Animierte virtuelle Modelle sind aus modernen Videospielen und ­Spielfilmen nicht mehr wegzudenken. Damit die Animationen möglichst natürlich ­wirken, wird ein Schauspieler als Referenz verwendet. Dessen Bewegungen werden aufgezeichnet und auf das Modell angewandt. Diesen Prozess nennt man Motion Capturing. Ziel dieser Arbeit ist es, ein kostengünstiges Motion Capturing System zu erstellen, welches Bewegungen eines Menschen auf ein Computermodell übertragen kann.

Ziele handels­üblich, ausser dass sie keinen IR (Infrarot) Professionelle Motion Capturing Systeme existieren, Filter ­eingebaut ­haben. Der Schauspieler trägt bei kosten aber im Minimum mehrere tausend Franken, der Aufnahme einen Anzug, an dem retroreflektive wobei dem Preis gegen oben fast keine Grenzen Kugeln, sogenannte Marker, angebracht wurden. Um gesetzt sind. Das in dieser Arbeit erstellte System soll die Kameras wurde ein Ring aus IR-LEDs angebracht, dasselbe mit einem viel kleineren Budget erreichen. deren Licht von den Markern reflektiert wird. Die Verfolgte Bewegungen sollen auf wenige Zentimeter Kameras sind in der Lage dieses zu detektieren. Da genau übernommen werden können und die Visua­ jeder ­Marker von mehreren Kameras gesehen wird, lisierung des animierten Modells soll in Echtzeit kann deren­ Position trianguliert werden. Die Darstel- ­geschehen. lung des Modells anhand der Modellpunkte geschieht Jan Alexander Dellsperger schlussendlich in der Spiel-Engine Unity. Vorgehen Damit die Bewegungen eines Schauspielers verfolgt Fazit und aufgezeichnet werden können, muss das System Das System erfüllt die gestellten Anforderungen. in der Lage sein, die Position der Gelenke des Schau- ­Marker können relativ präzise (Fehler < 1cm auf jeder spielers im dreidimensionalen Raum zu erkennen. Achse) positioniert werden und das virtuelle Modell Als Grundlage dazu dienen Raspberry Pis mit wird in Echtzeit animiert. Das System hat gegenüber angeschlossenen Kameras. Die Kameras sind professionellen Systemen jedoch einige Einschrän- kungen; Der Aufnahmebereich ist auf einen am Boden ­stehenden Kegel von 2m Durchmesser und etwas über 1.70m Höhe beschränkt und es darf keine direkte ­Beleuchtung des Aufnahmeraumes geben. Diese Pro- bleme sind jedoch durch den Einsatz entsprechender Hardware lösbar. David Michael Sheppard

Ein animiertes Modell Das System in Aktion

book.bfh.ch Low-Cost Motion Tracking System NeuronLeap

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Betreuer: Prof. Marcus Hudritsch Thesis advisor : Prof. Dr. Jürgen Eckerle Experte: Dr. Harald Studer (Optimo Medical AG) Expert : Dr. Federico Flueckiger (Eidgenössisches Finanzdepartement EFD) 33

This April OpenAi Five beat the world-champions in a best of three Dota 2 match. To achieve this OpenAi used a team of five neural networks they trained with reinforcement learning by playing against themselves. Using a method similar to theirs the goal was to recreate their success in a self-made multiplayer jump'n'run for Android.

Context Network In recent years deep reinforcement learning has made The Neural Network was trained by playing against huge advances. Alpha Go beat the best player in Go itself. It learned with the help of a method called only three years ago and now in 2019 already the deep -Learning. In this method the algorithm gets world champions in Dota2 were beat, a game that the pixels and the possible actions as an input as well much more complex. Such news isn’t only exciting for as a score after each action. It then tries to maximise artificial intelligence in games, the same methods can the score by optimizing the neural network to take be used for real world problems and application like the best action depending on the state. To figure out controlling a robotic hand or planning energy efficient what the best action is the last few states, actions and fast traffic routes for a fleet of trucks. and rewards are retained. This “short term memory” is useful because it usually takes a series of actions to Alexandra Dominique De Groof Goal achieve a reward. The aim of this thesis is to extend the single player prototype that was created during a prior project to a Result multiplayer version. It was stipulated that the game The result is a working two player jump’n’run that can should be playable by running it on two phones with be played against an AI. While the AI did learn some a tablet functioning as server. The target then is to interesting strategies like sabotaging the other player provide an AI that can substitute the second player. by pushing him off it remined somewhat unintelligent Said AI is to be trained with a reinforcement learning overall and didn’t achieve a human level of control. method.

Game NeuronLeap is a multiplayer jump’n’run for Android where the goal is to roll and hop a ball to the goal faster than your opponent, without falling down or being eaten by the left side of the screen. It was created with the help of libGDX, a cross-plat- form game development framework and lots of other tools to make maps, buttons and physics. To make use of the multiplayer modus the players just have to be in the same network as a server running the application.

A very simplified version of the training process Snapshot of the training

book.bfh.ch Domain-specific Intelligent Search

Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Thesis advisors : Prof. Dr. Bernhard Anrig, Prof. Dr. Erik Graf 34 Expert : Xavier Monnat (Post CH AG)

The Swiss web landscapes feature a great number of sources of information.­ This thesis aims to focus on an arbitrary domain and develop a search ­solution aimed at increasing the accessibility of knowledge via the combi- nation of techniques from Information Retrieval (IR), Natural Language Processing (NLP), and Machine Learning (ML).

Introduction and stored within the search engine, becoming The idea is to create a system that collects news searchable. articles through public channels of Swiss universities, extracts their content, identifies named-entities and Extract, Transform, Load finally indexes the results of the process in a search The tasks of data collection, article extraction, engine. Named-Entity Recognition and indexing, need to be integrated into a single sequence of data (stream), Data collection also known as a pipeline. Apache Camel allows us Data is collected in the process of crawling, a web exactly to realise this integration, implementing an crawler is fine-tuned in order to optimally crawl rele- Extract, Transform, Load (ETL) system. Nicolas Di Vittorio vant pages in efficient time. Crawling begins from root The framework also allows us to develop an inde- [email protected] URLs called ‘seeds’ and then continues the navigation pendent and autonomous system. The idea in fact, is following a strategy to avoid irrelevant pages. to have the process automatically run itself based on a definable and arbitrary schedule. Article extraction and Named-Entity Recognition We exploit Boilerpipe and Stanford CoreNLP, two User Interface very powerful tools, to apply robust article content The User Interface provides the possibility to search extraction and Named-Entity Recognition to each data with the traditional keyword-based search or HTML page crawled. with facets, that is filters based on the named-entities In particular, we are interested in locating universi- recognised. ties, organisations and people. Results Search The final solution features an autonomous system The search is backed up by Elasticsearch. It is famous that can be arbitrarily scheduled to collect news web for its high flexibility and scalability, aspects that are pages, extract the content of the articles, identify and key for this solution. locate named-entities and incrementally index the All information extracted is mapped following the results to augment the searchable data. All data is configuration of the index and is then indexed searchable via the User Interface.

Pipeline design in Apache Camel

book.bfh.ch Persistenz von Feature Points mit ARCore

Studiengang : BSc in Informatik | Vertiefung : Computer Perception and Virtual Reality Betreuer : Prof. Urs Künzler Experte : Dr. Joachim Wolfgang Kaltz (Camptocamp SA) 35

Mit ARCore hat Google die Entwicklung von Augmented Reality-Applikationen­ stark vereinfacht. Schnell wurde klar, dass AR nicht nur für Single-, sondern auch Multiplayer-Applikationen grosses Potential bietet. Ein 3D-Objekt zu platzieren, damit es für alle Mitspieler am selben Ort im Raum erscheint, ist ein komplexer Prozess, der Verständnis von Umgebung und Ausrichtung aller Beteiligten verlangt.

Ausgangslage Ergebnisse ARCore ist ein Augmented Reality Framework von Um Aufzuzeigen, dass unser Ansatz funktioniert, Google. Es unterstützt den Entwickler beim Erstellen wurde ein AR-Tic-Tac-Toe Spiel erstellt. Zwei Personen von AR-Applikationen indem es viele Berechnungen können jederzeit gegeneinander spielen, das Spiel übernimmt. Da ARCore eine relativ neue Technolo- pausieren und zu einem späteren Zeitpunkt wieder gie ist (2017) gibt es noch diverse Restriktionen. So beitreten. Das Spielfeld wird immer an dem Ort können zum Beispiel Objekte zwar online gespeichert erscheinen, an welchem es Spieler Eins ursprünglich werden, allerdings nur für 24h. platziert hat. Zur Realisierung wird ein sogenannter Gerade mit Blick in die Zukunft und vor allem in Aus- Marker verwendet. Das ist ein Bild, welches von bei- sicht auf den vermehrten Einsatz von AR-Brillen gibt den Geräten gescannt werden muss. Der Marker kann es eine grosse Menge von neuen Möglichkeiten. So beim Erstellen des Spiels selbst erstellt werden. Somit Manuel Egli wird es möglich sein, Baupläne zu virtualisieren und ist die maximal mögliche Freiheit mit einem mar- [email protected] den Monteuren gleich auf Ihren Brillen die Posi- ker-based Ansatz gegeben. Alle benötigten Daten wer- tion von z.B. Rohren anzuzeigen. Für einen solchen den in ein File geschrieben, welches auf einen lokalen Anwendungsfall ist die Persistenz der Daten wichtig. BFH-Server geladen wird und dort zum Download für andere Geräte bereitsteht. Unser Demonstrator Ziele zeigt eine Alternative zu Googles eigener Persistenz Das Ziel dieser Bachelor Thesis ist das Aufzeigen Technologie auf, womit es möglich wird, AR-Daten eines Ansatzes, mit dem Daten rund um 3D-Objekte für eine beliebige Zeit an einem gewünschten Ort zu gespeichert werden können, sodass sie zum einen speichern. rund um die Uhr verfügbar sind und zum anderen natürlich korrekt wieder in die Welt gesetzt werden können. Zusammen mit ARCore sollte mithilfe von Unity eine Android Applikation entstehen, welche die Funktion des Persistierens auf eine visuelle Art Tobias Jan Neuenschwander veranschaulicht. Die App musste aufzeigen können, [email protected] wie man ein Objekt platzieren und abspeichern kann, so dass es später von einem anderen Gerät wieder korrekt in die Welt gesetzt werden kann.

Softwarearchitektur der Demonstrationsapplikation Einstellungsmenü des Spiels und laufender Spielbetrieb.

book.bfh.ch Secret Sharing Environment for Remote Cryptographic Services

Degree programme: BSc in Computer Science | Specialisation: IT-Security Thesis advisors: Prof. Dr. Rolf Haenni, Prof. Gerhard Hassenstein 36 Expert: Dr. Igoz Metz (Glue Software Engineering AG)

We present a proof of concept that allows outsourcing keys for decryption and signing securely to a third party. The user does not have to trust a ­single provider because keys are shared over several parties. A single ­service provider is unable to misuse an outsourced key since it only holds one partial key.

There is a new trend called remote signing. Crypto­ sages. While signature verification and encryption graphic keys are no longer stored on a device that the happen locally in the browser, a trust service provider user controls himself but outsourced on a service. handles decryption and signature creation. The European Telecommunications Standards Insti- tute (ETSI) designed and standardized a blueprint for The extension verifies and reassembles the received such services. results. A user can pick trust service providers of his choice at the time of key generation. These providers However, this standard has serious drawbacks when are then involved in the future cryptographic opera- it comes to user control. The design requires that a tions. Roger Andrea Ellenberger user fully trusts the service provider. There is no veri- fication process described which would allow a user Our work mainly focuses on encryption. It is to identify misuse of his cryptographic keys. Addition- ­achievable to sign as well, but with simpler crypto­ ally, we have analyzed the same issue for remote graphy. We use threshold ElGamal for encryption and decryption. Outsourcing of signing and decryption decryption. This is a combination of the ElGamal cryp- operations is called remote cryptographic services. tosystem with special key setup where the secret key is shared using a threshold secret sharing scheme. We address these issues in our thesis. Today’s cryp- Each provider only performs a partial decryption, tography enables the implementation of robust and which does not leak information about the plaintext. secure infrastructure for the use case of remote cryp- Moreover, only a defined subset of providers needs tographic services. Our proof of concept demon- to deliver a valid partial decryption because we use a strates that the required algorithms perform well on threshold scheme. This improves the schemes resist- current hardware. We achieved a good level of perfor- ance against denial of service by a single provider. mance even in a web browser, although the opera- We use cryptographic proofs to verify if a provider Tobias Flühmann tions are quite elaborated. acts honestly.

Our proof of concept is a web browser extension that We have not implemented a threshold secret sharing performs cryptographic operations for OpenPGP mes- scheme for signing. Instead, we implemented a kind of multi-signature. Each provider holds a typical sign- ing key. A signature is valid, if enough honest provid- ers sign the message.

Our web browser extension allows to encrypt or sign text using OpenPGP for instance in a webmail client or in a web-based chat client. The extension is fully compatible to other OpenPGP implementations such as GnuPG regarding encryption and decryption. The signing scheme offers basic compatibility but comes with some features that are exclusive to our software.

High level overview of a remote decryption

book.bfh.ch Zu easy?

Bei uns kannst du echte Herausforderungen anpacken.

Wir setzen die Ideen unserer Kunden in die Realität um Deine Einstiegsmöglichkeiten – mit unserem branchenübergreifenden Know-how in in Zürich und Bern: Business und Technologie. » Junior Software Engineer » AR/VR Software Engineer Als Arbeitgeber entwickelt Zühlke deinen Erfolg weiter » Embedded Software Engineer – mit Wertschätzung und grosszügiger Weiterbildungs- förderung. Bist du ein leidenschaftlicher Teamplayer und » Bachelor- oder Masterarbeit willst echte Herausforderungen anpacken? Dann passt » Werkstudium du zu uns. » Praktikum

zuehlke.com/jobs Key Management Service Integration mit FUSE

Studiengang: BSc in Informatik | Vertiefung: IT-Security Betreuer: Prof. Gerhard Hassenstein, Prof. Hansjürg Wenger 38 Experte: Dr. Igor Metz Industriepartner: PostFinance AG, Bern Was wäre, wenn keine Passwörter mehr auf den Servern persistiert wären? Sie würden nicht mehr auf Hard Disks geschrieben und damit zu einem ­forensischen Risiko werden, und ein Angreifer hätte nicht mehr allzu ­einfachen Zugriff darauf. Die in dieser Thesis entwickelte Software ­ermöglicht die sichere Persistierung der Passwörter in dafür vorgesehenen und sicheren Programmen auf einem eigenen System und gleichzeitig eine ­einfache und bekannte Schnittstelle für Applikationen.

Problemstellung Umsetzung Passwörter sind kaum mehr aus der Informatik weg- Bei vielen eingekauften Applikationen ist es für Unter- zudenken. In der Zeit der Digitalisierung und Automa- nehmen oft nicht möglich, Wünsche an die Speiche- tisierung liegen sie oft im Klartext auf Dateisystemen rung von Passwörtern anzubringen. Genau für diese von Servern, in der Regel nur durch Einschränkungen Applikationen gibt es nun eine Lösung: Das secretsfs mittels Dateiberechtigungen vor Zugriff anderer ist ein mit FUSE programmiertes Dateisystem, wel- Benutzer geschützt. Dies birgt Gefahren, da sie oft ches es lokalen Applikationen erlaubt, transparent unüberlegt in Backups, Archiven, Logs oder gar in auf benötigte Credentials (z. B. Startup-Passwörter) falsche Hände gelangen. zugreifen zu können, ohne dass das Credential auf dem System einer Applikation persistiert werden Natalie Sandra Fioretti Technologien muss. Das secretsfs lädt bei Bedarf das für eine Vault ist ein Key Management System, das Passwörter Applikation auto­risierte Credential vom Key Manage- verschlüsselt in einer Datenbank ablegt. Der Zugriff ment System (Vault) und kann die Credentials in auf die darin gespeicherten Daten ist nach einer zwei Formaten der Applikation zur Verfügung stellen: erfolgreichen Authentisierung entweder mit dem Entweder direkt als Klartext-Passwort, oder in einer Vault Client oder über die REST API sichergestellt. Konfigurationsdatei integriert und aufbereitet. Nebst dem deutlich einfacheren Erneuern von Passwörtern, FUSE steht für «Filesystem in Userspace» und ist ein bringt dieses Verfahren vorallem Vorteile bezüglich Dateisystem, das selbst programmiert wird. Es ist im Sicherheit. Linux Kernel mit einem Kernelmodul stark verankert und wird über die fuselib Library angesprochen.

FUSE (Filesystem in Userspace) als einfache Passwort Authentisierung gegenüber Vault wird von secretsfs Schnittstelle übernommen (vereinfachte Darstellung)

book.bfh.ch Motivierendes Programmieren

Studiengang : BSc in Informatik | Vertiefung : Distributed Systems and IoT Betreuer : Prof. Dr. Andreas Danuser Experte : Stefan Berner (foryouandyourcustomers AG) 39

Bei der Bachelorthesis: "Motivierendes Programmieren" bestand das Ziel darin, einen Programmierkurs für Einsteiger zu erstellen, welcher von Anfang an Spass macht, spannend ist und motiviert, mehr lernen zu ­wollen. Dieses Ziel soll durch Verwendung von Sensoren und Motoren mit dem eigenen Laptop oder einem Raspberry Pi 3 B+ erreicht werden.

Das Problem Denn: wer programmieren kann, kann jede Program- Eine Programmiersprache zu erlernen ist wichtig um miersprache erlernen, da diese sich nur im "Dialekt" zu verstehen wie Programme, Maschinen und Roboter unterscheiden. funktionieren. Aber, es ist eine sehr trockene Ange- Deswegen wird in dem erstellten Unterrichtsmaterial legenheit und jeder kommt an den Punkt, an dem der auch Java und Python unterrichtet, mit Übungen, die Reiz des Neuen verflogen ist und die Aufmerksamkeit in beiden Sprachen meistens identisch sind, um das im Unterricht nachlässt. Erst nachdem man sich durch Verständnis fürs Programmieren zu steigern. diese Phase gekämpft hat, erkennt man, wie spannend Programmieren wirklich ist. Objektorientiertes Programmieren Wer von sich behaupten will, er könne programmie- Lösungsansatz ren, muss aber auch objekt-orientiertes Program- Marcus Fischer Um diese "Durststrecke" zu verhindern, sollte der mieren beherrschen! OOP ist wichtig, um wartbaren, [email protected] Unterricht von Anfang an motivierend gestaltet modularen und erweiterbaren Code zu schreiben. Und werden. Dafür muss die Materie spürbar und erlebbar man hat einen grossen Vorteil, wenn man program- sein. Der Einsatz von Hardware-Komponenten wie mieren kann: Sensoren, Motoren und Mini-Computern ist ein sehr guter Weg, dieses Ziel zu erreichen, denn jetzt kann Ein Objekt ist in jeder Programmiersprache das die Welt vermessen werden. Gleiche!

Programmieren lernen, nicht nur eine Resultat Programmiersprache Diese Punkte wurden berücksichtigt und deswegen Eine Programmiersprache zu beherrschen ist schön, beinhaltet der Kurs (in Java und Python): programmieren zu können ist besser! Da fast alle – Vom Einstieg bis OOP, mit Übungen Programmiersprachen mit den gleichen Grundlagen – Umgang und Übungen mit Sensoren arbeiten (if/else, while, for, Funktionen/Methoden, – Kennen lernen und programmieren auf dem Rasp- Klassen, Objekten, usw.) ist es wichtig, das Konzept berry Pi 3 B+ des Programmierens zu verstehen. – Übungen zum selbstständigen Lernen

Als einziges wird der Umgang mit Motoren nur in Python auf dem Raspberry geübt. Desweiteren ist das Unterrichtsmaterial komplett modular aufge- baut. Jeder Dozent ist dadurch in der Lage selber zu entscheiden, welchen Inhalt er unterrichten will und kann diesen nach eigenem Bedarf anpassen und erweitern.

Raspberry Pi 3 B+ mit Sensoren und Motoren, welche mit Dieses Bsp. zeigt die Unterschiede und Ähnlichkeiten einem L298N gesteuert und werden. zwischen Java(l) und Python(r) in einer if/else-Anweisung.

book.bfh.ch Design and Implementation of a Digital Access Control Protocol

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisors : Prof. Gerhard Hassenstein, Prof. Dr. Annett Laube 40 Expert : Andreas Fischer (VBS Bern)

Peer-to-peer sharing business models are on the advance, especially car-sharing. Technologies like Bluetooth make it possible that customers can use their own smartphones to open rental cars. While this is very convenient for the users, such systems demand special requirements on access control systems.

Scope icate standards,­ we designed space efficient custom Access control systems for physical objects like cars public key certificates and authorization tokens. come with two main concerns. First, equipping each car with an internet connection Results involves high costs. For many use cases, it is smarter To test the usability of the developed protocol, we not to assume an ever-present internet connection implemented a prototype that comprises the follow- and use a protocol that allows offline access instead. ing three parts. A multi-platform mobile application, a Second, due to the low-bandwidth of technologies web-service and a coffee-machine as a target instead like Bluetooth Low Energy and Near-field communi- of a car controlled by a small computer. When the user cation, the size of the exchanged messages between wants to brew a coffee, the app sends a single mes- Gian-Luca Frei the smartphone and the car need to be small, because over Bluetooth Low Energy to the coffee maker. larger messages result in longer transmission times, We made performance tests with the prototype, which directly affects the usability. which showed that the average time for authentica- tion and authorization is 495 ms. Therefore it can be Approach concluded that the developed protocol could fulfill In this thesis, we designed and implemented a requirements in practice. generic access control protocol. Our protocol tackles both concerns and provides useful features for scala- ble applications with a high level of security. Our solution combines authentication with public key certificates and authorization with digitally signed authorization tokens. Although this approach is well-proven, the traditional X.509 or GPG certifi- cates have a large overhead in size. This makes them Fedor Gamper impractical for transmission over low-bandwidth channels. Instead of using one of the extensive certif-

Offline Access

book.bfh.ch 41

book.bfh.ch Chatbot Prototype for Software Design Pattern Determination

Degree programme : BSc in Computer Science | Specialisation : Digital Business Systems Thesis advisor : Prof. Rolf Jufer 42 Expert : Andreas Dürsteler

Chatbots are more relevant than ever, not only in the field of customer service, but also in common everyday situations. Within this project a chatbot was developed that is able to assist users in finding a software design pattern that fits their needs. It is able to show that chatbots can be used to process dynamic user-input and deliver useful results.

Initial situation combining all the previous components into a whole Previous work included research about types of application that could be deployed on a server. The chatbots (rule-based vs. corpus-based), evaluation of bot was built with the use of JBot, a Java framework frameworks that can be used to develop a chatbot and that is based on Spring and can be used to build Slack the implementation of a small rule-based scenario and Facebook Messenger chatbots. with the use of online-frameworks. The results gath- ered were used as basis for this project. Conclusion With the help of various open-source tools it was Goal possible to accomplish the set goal and build a func- The goal of this bachelor thesis was to develop a tioning chatbot. Xavier Lucien Frei corpus-based chatbot that is able to assist the user The application includes the following components/ in finding a software design pattern that may fit their features: needs. Furthermore, it is supposed to have the ability – Slack chatbot that can hold simple conversations to process the users word-input in combination with – Software design pattern recommendation based on a corpus of data about software design patterns and user-input create Word2Vec models out of them. With the help of – Ability for users to rate the results and get such models the bot can provide the users with rec- examples ommendations of software design patterns for their – Administrative control panel to see, add, mod- needs and an estimate of how well they could fit. ify or delete all the corpus-data and logs in the background Implementation & Technologies The realisation of this project was split into multiple In the future, this application could easily be parts. The first part was the acquisition/building of a extended to provide more user interaction features dataset/corpus that holds all the information about and the results generated by the bot could be further the software design patterns that are supported by processed and used to modify and extend the corpus. the chatbot. This part was realised by designing a database scheme and implementing it within a Spring application with the help of Lombok annotations. The data for the corpus was mostly taken from the famous book ‘Design Patterns: Elements of Reusable Object-Oriented Software’ by the Gang of Four and was ultimately saved within a MySQL database. The second part consisted of building an administrative frontend to see, add, modify and delete data within the corpus, as well as being able to look at the logs of the chatbot’s conversations. This was accom- plished with the use of Thymeleaf. The third part consisted of building a Word2Vec model with the data we gathered, which was done with the use of the Deeplearning4J framework. The final part of the project consisted of actually building the chatbot and Components of the Application

book.bfh.ch Packaging Ascension for Debian

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisor : Prof. Dr. Christian Grothoff Expert : Thomas Jäggi (GIBB Gewerblich Industrielle Berufsschule Bern) 43

Automating the migration of DNS zones into the GNU Name System

Ascension is a Python tool developed during previous work at BFH. It that allows for easy migration of DNS zones into the GNU Name System (GNS). Many DNS zones were migrated to verify its functionality. These include but are not limited to the ".se", ".sy'', ".bfh. ch" and ".nu" zones. In this thesis Ascension was extended and improved to provide more functionality. Further it was packaged for the Debian GNU/Linux distribution. Alongside the base Ascension package another package was created which, when installed, configures Ascension in such a way that all the locally Patrick Gerber running DNS zones are automatically migrated into GNS. The goal is to achieve an easy and reliable way to make DNS zones available in GNS and keeping the respective zones synchronized. In the future Ascension will have its performance improved further and more packages will be created to support more nameservers.

Ascension dialog for zone selection

book.bfh.ch Tracking App für Elektroflieger

Studiengang : BSc in Informatik | Vertiefung : IT Security Betreuer : Prof. Dr. Philipp Locher 44 Experte : Dr. Joachim Wolfgang Kaltz (Camptocamp SA) Industriepartner : evolaris Aviation GmbH, Biel/Bienne Die Firma evolaris aviation GmbH in Nidau stellt einen Elektroflieger her. Auf einem Display im Cockpit hat der Pilot verschiedene Anzeigen zum System und zum Zustand der Batterie. Damit das Entwicklungsteam bei Tests auf dem Feld nicht dauernd den PC oder das Notebook dabei haben müssen, soll eine App entwickelt werden, welche dieses Display mobil anzeigt. Ebenso soll der Flieger in der Luft getrackt werden können.

Ausgangslage Damit die Sicherheit der Daten gewährleistet ist, muss Um wichtige Daten des Fliegers zu überprüfen, sich der Benutzer einloggen. Erst nach erfolgreichem musste auf einen PC oder ein Notebook zurückge- Login wird das Gerät in die Empfängerliste beim Ser- griffen werden. Dies ist bei Tests auf dem Feld häufig ver genommen und erhält fortan laufend die Daten. nicht so ideal. Der Flieger schickt alle notwendigen Anhand der übertragenen GPS Daten wird der Daten, inklusive GPS Position, via Funknetz an eine geflogene Weg auf einer Karte live angezeigt. In einer Bodenstation. Dort sollen diese Daten aufbearbeitet anderen Ansicht mit der Kamera kann der Flieger und an die App geschickt werden. zudem direkt live getrackt werden, indem das Smart- phone in die Richtung des Fliegers gehalten und Realisierung dieser auf dem Bild umrahmt wird. Lukas Alex Gestach Für die Realisierung wurde entschieden, dass eine native Android Applikation erstellt werden soll. Dies Ausblick bringt einige Vor- und einige Nachteile mit sich. Die Es gibt bereits weitere Ideen seitens Auftraggeber Darstellung der Parameter soll sich am bestehenden was noch alles realisiert werden kann. So ist eine Display im Flieger anlehnen, ist also vorgegeben. Überwachung der Batterie geplant, welche via Push- Ausserdem stehen für für die wichtigen Parame- nachricht einen Alarm auslösen soll, sobald die Bat- ter bereits Bilder zur Verfügung, welche angezeigt terie bzw. die Zellspannungen eine gewisse Grenze werden können, ohne selbst zeichnen zu müssen. Ein unterschreiten. Die Anzeige der einzelnen Zellspan- Vorteil davon ist, dass das Design auch plattformüber- nungen der Batterie soll dann via App möglich sein. greifend gleich sein wird, sollten später auch andere Plattformen als Android hinzukommen.

Display im Flieger

book.bfh.ch GPS less drone navigation

Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Thesis advisor : Prof. Marcus Hudritsch Expert : Dr. Harald Studer (Optimo Medical AG) 45

Neural network based localization, trained on orthoimages and altitude data

Introduction For this reason, we implemented a simulation in With drone technology becoming much more accessi- Unity allowing us to fly over the terrain with a virtual ble over the last few years. The discussion for control camera. over the space above our heads becomes something that will be a hot topic for the following years. The Results heavy reliance on a global navigation satellite system Currently, our best model achieves an accuracy of (GNSS) for example, GPS, allows the control and 2.01m and a precision (1 sigma) of 1.27m on the limitation of their usage. However, the latest improve- validation set, on the test set, it produces an accuracy ments in graphics processing power allow for new of 4.09m and precision (1 sigma) of 1.47m. The real- methods of navigation using image data and onboard world test images were captured using a consumer sensory data to be viable. The approach investi- level drone and labeled with the flight log data. Our Cyril Eric Grossenbacher gated in this thesis consists of a Convolution Neural model is currently able to regress the test images Network (CNN), trained on height and image data pro- with an accuracy of 85.66m and a precision (1 sigma) vided by the Federal Office of Topography swisstopo. 33.2m. While training and testing on swisstopo data We tested how well this approach is applicable in a we could observe that the model is sensitive against real-world use case using drone footage. slight brightness changes. The network is only regressing the positional components on the horizon- Approach tal plane. Our approach tried to use a network architecture, conceived at the University of Cambridge. Their model used smartphone imagery to regress the pose, i.e. position and orientation of the user. They achieved over a spatial extent of 500x100m a median accuracy of 3.67m and 6.5° with only 3015 images. We aspired to reach similar results when used on images taken during a drone flight. The training was under the constraint that we would not be able to fly over the terrain to capture labeled training images.

Training area in Sutz-Lattrigen, image from swisstopo Resulting predictions(blue) with corresponding ground truth(red).

book.bfh.ch TicketPark – Check-In- und Tageskassenlösung

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Prof. Rolf Gasenzer 46 Experte: Pierre-Yves Voirol (Abacus Research AG) Industriepartner: Ticketpark GmbH, Bern Die Firma Ticketpark bietet ein webbasiertes Event-Ticket-System an. Veranstalter können damit selbständig ihre Veranstaltungen verwalten und Tickets an Besucher verkaufen. Für die Tageskassen und die Einlass- kontrollen ist die webbasierte Anwendung aber nicht ideal. Es braucht Lösungen, die ein effizienteres Abwickeln der Prozesse ermöglichen, ­insbesondere beim Drucken von Tickets an der Tageskasse und von Badges beim Einlass.

Ausgangslage Anwendung Für den Badge-Druck am Einlass bestehen bereits In diesem Projekt wurde eine Desktop-Anwendung zwei Lösungen von Ticketpark. Mit der einen Lösung entwickelt. Veranstalter und ihre Mitarbeitenden wird von einem eingescannten Ticket ein Badge können sich mit ihren Ticketpark Zugangsdaten oder gedruckt, mit der anderen kann ein Ticket im System mit der Event-ID einer Veranstaltungsdurchführung gesucht und als Badge gedruckt werden. Diese Lösun- am System anmelden. Die Anwendung erlaubt es den gen genügen jedoch nur teilweise den Anforderungen. Mitarbeitenden, vor Ort nach einzelnen Tickets oder Für die Tageskasse bietet das Webinterface von Buchungen einer Veranstaltungsdurchführung zu Ticketpark eine eigene Ansicht an. Das Drucken von suchen und diese auszudrucken. Die Anwendung kann Tickets aus dem Webinterface benötigt jedoch meh- so konfiguriert werden, dass Druckdaten entweder Remo Häusler rere Schritte, da diese zuerst heruntergeladen und von Ticketpark heruntergeladen oder über eine Vor­ geöffnet werden müssen, damit sie via Druckdialog lage lokal generiert werden. Zudem kann mit der ausgedruckt werden können. Anwendung der Einlassstatus eines Tickets geändert werden. Anforderungen Das Ziel dieses Projektes war es, die bestehenden Umsetzung Anwendungen durch eine einheitliche Lösung zu Umgesetzt wurde die Anwendung in der Programmier- ersetzen, welche ein effizienteres Ausdrucken von sprache Java. Das System bezieht und aktualisiert Badges und Tickets ermöglicht. Das System soll platt- Daten über die REST-Schnittstelle von Ticketpark. formunabhängig sein und muss auch nahtlos weiter Ticket und Druckdaten werden lokal gespeichert funktionieren, falls die Internetverbindung unterbro- damit sie auch ohne Internetverbindung zur Verfü- chen ist. gung stehen.

Systemübersicht Screenshot der Desktop-Anwendung

book.bfh.ch Dashboard für EvaSys

Studiengang : BSc in Informatik | Vertiefung : Digital Business Systems Betreuer : Prof. Rolf Jufer Experte : Andreas Dürsteler 47 Industriepartner : Electric Paper Evaluationssysteme GmbH, Lüneburg Die fortschreitende Digitalisierung macht auch bei Fachhochschulen nicht halt, Daten müssen immer dynamischer und interaktiver dargestellt werden. Das EvaSys Umfragetool, welches an der BFH und anderen Fach- hochschulen zur Unterrichtsevaluation eingesetzt wird, bietet selbst aber nur statische PDF Reports zur Einsicht der Resultate an. Daher wurde eine eigene Lösung als Plugin entwickelt.

Ausgangslage Die fertige Applikation sollte dabei die Form eines EvaSys ist ein weit verbreitetes, webbasiertes Tool, Plugins haben, welches direkt ins EvaSys System das an Universitäten und Fachhochschulen für die integriert werden kann. Durchführung von Unterrichtsevaluationen verwendet wird, so auch an der BFH. Aktuell erhalten die Dozen- Ergebnis ten ihre Ergebnisse in PDF-Dokumenten, welche auto- Das Endprodukt der Arbeit ist ein in EvaSys integrier- matisch per E-Mail verschickt werden. Die Resultate bares Plugin, das für die Rollen Dozent und Abtei- darin enthalten die Antworten der Studenten, welche lungsleiter zugänglich ist. Der Einstiegspunkt ist eine mithilfe von Säulendiagrammen und zusätzlichen Übersicht, in der sämtliche Umfragen des Dozenten Kennzahlen dargestellt werden. Ein Dozent erhält pro oder der Abteilung aufgelistet werden. Eine Umfrage durchgeführter Umfrage ein PDF-Dokument, während kann in im Detail angezeigt, als PDF-Dokument Jennifer Henzen ein Abteilungsleiter ein zusammengefügtes PDF-Do- heruntergeladen und mit anderen Umfragen vergli- kument mit allen Umfragen seiner Abteilung erhält. chen werden. Im Plugin ist zudem eine aggregierte Etliche Umfragen müssen analysiert werden, um Gesamtzufriedenheit ersichtlich, deren Berechnungs- einen Überblick über die Ergebnisse des Semesters weise durch Konfigurationen angepasst werden kann. zu erhalten. Es gibt keine Angaben zur Gesamtzufrie- denheit oder ob sich die Leistungen verbessert oder verschlechtert haben. Der Vergleich von einzelnen Kursumfragen muss mühsam von Hand vorgenommen werden, was viel Zeit in Anspruch nimmt.

Ziele Das Ziel dieser Bachelor Thesis war es, eine umfang- reichere grafische Darstellung der Umfrageresultate in Form eines Dashboards zu erstellen. Carmen Hiller

Beispiel der Darstellung im ursprünglichen PDF Report Die neue Darstellung im Dashboard

book.bfh.ch Mischgut-Bestell-App (MGB-App)

Studiengang: BSc in Informatik | Vertiefung: Web and Business Applications Betreuer: Dr. Michael Röthlin 48 Experte: Han van der Kleij (SBB AG) Industriepartner: Hans Weibel AG, Bern Die Belagswerke der Weibel AG produzieren bituminöses Mischgut ­(Strassenbelag) sowohl für eigene Baustellen (interne Lieferungen) als auch für Drittkunden. Trotz langjähriger Erfahrung in der Asphaltproduk- tion ist der Bestellprozess grösstenteils wenig digitalisiert. In unserer ­Bachelor Thesis haben wir eine Bestelllösung entwickelt, welche einen ­medienbruchfreien Bestellprozess für bituminöses Mischgut ermöglicht.

Problemstellung Ergebnis Die Herstellung von bituminösem Mischgut erfolgt – Die entwickelte Lösung umfasst die folgenden in heissem Zustand und muss deshalb im Normalfall Funk­tionen: «just in time» im Belagswerk hergestellt werden. Des- – Erstellen, ändern und deaktivieren von Mitarbei- halb ist eine möglichst genaue Planung der bestellten tern einer Firma (inkl. Berechtigungsrollen) Produkte und Mengen sehr wichtig. Bisher wurden – Bewirtschaften eigener Baustellen (individuell für ­Bestellungen jeweils per Telefon, Fax oder E-Mail auf- jede Firma) gegeben, welche durch interne Mitarbeiter der Weibel – Aufgeben einer neuen Bestellung mit beliebig AG in ein Formular übertragen wurde, das an das ent- vielen Produkten sprechende Belagswerk übermittelt wurde. Dabei ist – Auswahl des Belagswerks anhand der Verfügbarkeit Filip Johann Hofer es öfters vorgekommen, dass es bei der Bestellungs- der ausgewählten Produkte [email protected] aufgabe durch die Kunden zu Missverständnissen – Festlegen des Transportunternehmens und Auswahl beim Produkt oder der bestellten Menge kam. Um die der transportierenden Fahrzeugtypen Fehlerquote senken zu können, soll eine webbasierte – Bearbeiten und stornieren von Bestellungen der Lösung entwickelt werden, in der die Vorarbeiter ­eigenen Firma auf der Baustelle den gewünschten Belag über ihr – Wochen- und Tagesübersicht für den Mischmeister Mobil­telefon – vorzugsweise in ihrer Muttersprache – mit sämtlichen Bestellungen für sein Belagswerk bestellen und ggf. korrigieren können. inkl. Auflistung der Gesamtmenge jedes bestellten Produkts pro Tag Technologieeinsatz – Automatischer Mailversand bei einer neuen, geän- Da Bestellungen über Mobiltelefone beliebiger Her- derten oder stornierten Bestellung an den Kunden, steller aufgegeben werden und die interne Bearbei- Transporteur und den Mischmeister tung und Planung der Bestellungen über einen Desk- – Erfassung von individuellen Sperrzeiten pro top-PC erfolgen, haben wir uns für die Entwicklung Belagswerk, wo keine Bestellungen aufgegeben Raphael Suter einer «responsive» Website entschieden. Neben der resp. ausgeführt werden können Mehrsprachigkeit waren auch der langfristige Betrieb – Übersicht über alle Belagswerke inkl. Lageplan und und die Weiterentwicklungsfähigkeit der Lösung ein Auflistung der dort verfügbaren Produkte wichtiges Kriterium, weshalb wir uns für TYPO3 als – Bewirtschaftung der Produkte und deren Zuteilung CMS und MySQL als Datenbank entschieden haben. auf die Belagswerke

Zukunft Die Lösung ist produktiv verfügbar und kann für die Bewirtschaftung von Bestellungen verwendet werden. Aktuell stehen zwei Sprachen (Deutsch und Englisch) zur Verfügung. Weitere Sprachen kann die Hans ­Weibel AG dank der mitgelieferten Dokumentation ­jederzeit selbständig hinzufügen. Um die Lösung zu einem späteren Zeitpunkt weiterentwickeln zu können, haben wir auch eine technische Dokumentation bereitgestellt, womit eine TYPO3-Agentur ihrer Wahl in der Lage ist, die gewünschten Veränderungen vorzunehmen. Ausschnitt einer Beispielbestellung für bituminöse Mischgüter

book.bfh.ch Dark Side Of Light: Langzeitmonitoring der Lichtverschmutzung in Andermatt

Studiengang : BSc in Informatik | Vertiefung : Computer Perception and Virtual Reality Betreuer : Prof. Marcus Hudritsch Experte : Dr. Eric Dubuis (Comet AG) 49 Industriepartner : inNET Monitoring AG, Altdorf Die Lichtverschmutzung beeinflusst neben Flora und Fauna auch den Menschen. Die inNET Monitoring AG hat im Auftrag des Kanton Uri eine Messstation in Andermatt seit 2013 in Betrieb. Sie ist die Erste ihrer Art in der Schweiz. Eine Kamera macht pro Nacht mehrere Bilder, die bis heute in mühsamer Arbeit mit Matlab ausgewertet und analysiert wurden. In unserer Bachelorarbeit entwickelten wir eine Webapplikation und ein ­Framework zur Analyse und Auswertung dieser Nachtbilder.

Motivation & Idee Bildregistrierung und Klassifizierung Mit unserer Applikation wollen wir eine langjährige Innerhalb unserer Applikation läuft auch ein Bild- und effiziente Auswertung der Lichtverschmutzung registrierungsalgorithmus, welcher über auffällige ermöglichen. Das Ergebnis der Auswertung soll in Merkmale kleinste Verschiebungen der Kamera einer State of the Art Microservices Webapplikation registriert und bei der Auswertung mit einberechnet. visualisiert dargestellt werden. Dazu soll ein Frame- So können die Bilder auch über längere Zeiträume work entwickelt werden, welches leicht erweiterbar verglichen werden. ist und auch in Zukunft um weitere Auswertungen Um Ereignisse in der Umgebung wie Schnee, Nebel ergänzt werden kann. Die Bilder werden in der Cloud und den Mondstand zu erkennen, wird der k-NN abgespeichert. Zudem war es ein Ziel, eine mögliche (k-Nearest Neighbors) Algorithmus verwendet. Verschiebung der Kamera zu erkennen und entspre- Lukas Manuel Hofer chend in die Auswertung einfliessen zu lassen. Weil Auswertungen [email protected] die Umgebung einen erheblichen Einfluss auf die Im Bild können interessante Bereiche individuell aus- Helligkeit der Bilder haben kann, sollen sie automa- gewertet werden. Beispiele dafür sind der Dorfkern, tisch mit Tags wie Mond, Schnee und Nebel versehen der Bahnhof oder ein Hotel, dass neu erbaut wurde. werden, damit sie von der Auswertung ausgegrenzt Als Ergebnis können unter anderem die mittleren werden können. Grau- und RGB-Werte, die Standardabweichung und der Median angesehen und analysiert werden. Applikation Für die Applikation haben wir folgende Technologien Fazit eingesetzt: Wir haben ein Produkt von der Idee bis zur fertigen – Backend: ASP.NET Core und EF Core Übergabe umgesetzt. Dies war eine grosse Heraus- – Frontend: React forderung, war aber sicher auch das Tolle an unserem – Datenbank: Azure SQL DB und Azure Blob Storage Projekt. Die vielen Diskussionen und die Suche nach für die Bilder möglichen Lösungen ist das, was ein spannendes und Danilo Stefan Wanzenried – API: Swagger interessantes Softwareprojekt ausmachen! Wir haben [email protected] – Bildanalyse: OpenCV unserem Auftragsgeber eine Softwarelösung überge- – Security: OpenID ben, welche die Grundlage für eine Langzeitstudie der – Continuous Delivery: Bitbucket und Docker Lichtverschmutzung bietet und vielleicht eines Tages das Bild der Schweiz verändern wird.

Grauwertverlauf vom 29. April - 17. Mai 2019 Differenzbild vom 24.07.2016 zum 01.08.2018 um 03:00

book.bfh.ch Extracting News Information from the Web with Machine Learning

Degree programme: BSc in Computer Science | Specialisation: Computer Perception and Virtual Reality Thesis advisor: Prof. Dr. Jürgen Vogel 50 Expert: Andreas Dürsteler (Swisscom)

The web provides an abundance of structured information. Extracting the desired content can be very tedious though, especially if your goal is to extract­ it from many websites about which you don’t know much in advance. The proposed solution uses machine learning to find predefined items from the HTML source code and store them in a database.

Introduction each item found in the source code (a container node An increasing number of newspapers are going out is the topmost node of a sub-tree containing the of print, either for good or to hereafter only have an whole item, see figure 2). Then, for each container online presence. At the same time, the internet is node, another classifier is used to find the nodes flooded with self-proclaimed «news networks» and containing item ­attributes (e.g. title, text, author all sorts of websites producing «news content». The etc.) within each sub-tree. Finally, the information is more content there is, the more could be analyzed extracted from each identified node and stored in the automatically. database. The focus of this thesis was to create a tool able to The data set used to train the classifiers was created find and extract desired items from news websites manually using the Firefox browser, its «Inspect ele- Michel Hosmann (e.g. teasers, news articles, comments etc.) and store ment» function and a browser extension called «xPath [email protected] them in a relational database for later analysis. Finder».

Method Conclusion The information we want to extract is located inside The proposed method is an interesting take on an certain tags within the HTML source code of each ­unsolved problem. Most alternatives in literature pro- website. These tags are themselves nested within pose rule-based solutions, which are fast and provide other tags and they may have siblings or children. For good results, but they are at the same time very spe- my purpose, I have treated this HTML structure like cific. My approach can be generalized and adapted, a tree and each tag like a node. This way, I could use provided there is a prepared data set for training. the nodes as targets for classifying while using their I think that, with a large enough data set and the right absolute xPath as unique identifier. features, this method can lead to a powerful tool in The main idea was to divide the item extraction ­information extraction. problem into sub-problems and solve each of them sequentially. First, I do a depth first traversal of the whole web page, extracting features for each node while propagating descendants’ information upwards. Then, I use a classifier to find container nodes for

Figure 1: A news teaser with our target elements. Figure 2: Example HTML sub-tree for the teaser in fig. 1, target nodes in green.

book.bfh.ch Face Morph

Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Thesis advisor : Prof. Marcus Hudritsch Expert : Prof. Harald Studer (Optimo Medical AG) 51

It's always fascinating to see how peoples faces change over the years. This project was to made to visualize these changes with a video. The Face Morph program is a desktop application written in C# that ­automates the morphing process.

Implementation We achieve this using affine transformations. In the To get a nice looking morph working we need to last step the transition from the starting image to the find corresponding points between the two images. next image is made. For this we need to calculate the Since we are working with faces we use facial feature pixel values of the newly created morphed image. This points. To get those feature points, we first need to is done using alpha-blending. locate the face inside the image. This was done using the Haar-Cascade Classifier. The next step is to detect Goal the facial feature points. These facial feature points This project was created to generate a video that are then triangulated using the Delaunay triangu- shows images with a face on them sequentially morph lation. With this triangulation we get sequence of into the next one. The aim of this work was to have triangles which correspond with each other. Every a program that nicely shows have people’s faces Jonathan Eric Hyams one of those triangles will get morphed together with change over time. I also wanted to learn how to use its counterpart. To do this the corresponding triangles the OpenCV library (in this case it's C# wrapper called need to align perfectly, meaning that the proportions EmguCV) to get a better understanding of computer and sizes of those triangles need to match. vision.

Left: Facial feature points, centre and right: Corresponding triangles to be warped together

Two faces morphed together

book.bfh.ch CPVR Infosystem - Billboard: Steuerung des Infobildschirms mit dem GestureMotionController

Studiengang : BSc in Informatik | Vertiefung : Computer Perception and Virtual Reality Betreuer : Prof. Urs Künzler 52 Experte : Pierre-Yves Voirol (Abacus Research AG)

Mit dem CPVR-Infosystem erhält man einen Einblick in die Themengebiete:­ Computer Perception, Virtual Reality und Artificial Intelligence. Das ­System informiert über die Projekte und Arbeiten aus dem CPVR-Lab. Zudem können die Videos der vergangenen Bachelorarbeiten abgespielt werden. (Technologien: Handtracking/Gesture Recognition/Depth Camera)

Überblick tergrund läuft die Applikation (GestureMotionControl- Es ist kein Anzeige-Infobildschirm, sondern ein ler) für die Steuerung. Der GestureMotionController System mit welchem man interagieren kann. Ohne tracked die Hand des Users. Die Positionsänderung den Bildschirm zu berühren, kann der User die Maus der Handbewegung (x,y-Position) wird zur aktuellen durch die Handbewegung steuern. Mit der linken Mausposition (x,y) dazu addiert. Beim Mapping, Hand Hand, Schliessen-Geste, kann eine Auswahl getroffen zu Maus, müssen die Inputwerte verarbeitet werden: werden. Das ausgewählte Video kann mit der Win- Glättung (keine Sprünge der Maus) und Konvertie- ken-Geste maximiert/minimiert werden. Das Scrollen rung zum Screenkoordinatensystem (Bild 2). Weitere ist mit der Rauf- und Runterbewegung möglich. Aktionen für das System wurden durch die Gestener- kennung implementiert (Mapping der Gesten zu einer Rajina Kandiah Ziele Funktion). 076 423 17 07 – Das Entwickeln eines Infosystems für den Bild- [email protected] schirm vor dem Eingang des CPVR-Labors Technologie – Die Wahl und Evaluation der geeigneten Hard- und – Der GestureMotionController ist eine C++ Applika- Software für die Implementierung der Schnittstelle tion, welche für die Gestenerkennung und Hand- für die Interaktion und des GUIs tracking die API von Nuitrack und für den Zugriff auf Maus und Keyboard die API von Windows Umsetzung verwendet Für die Umsetzung wurde die RealSense D435-Depth – Das UI wurde mit HTML/CSS und Js entwickelt Camera verwendet, mit welchem die Steuerung mit – Die RealSense ist eine Kamera, welche auch Handgesten/-bewegung ermöglicht werden kann. Als Informationen über die Distanz erfasst GUI wurde eine einfache Webseite erstellt und im Hin- (Tiefeninformation)

Bild 1: Überblick Infosystem Bild 2: Handtracking: Handposition an Mouse-Event

book.bfh.ch Registration Authority as a Service

Studiengang: BSc in Informatik | Vertiefung: IT-Security Betreuer: Prof. Gerhard Hassenstein Experte: Prof. Dr. Andreas Spichiger (BFH) 53

Das Eidg. Justiz- und Polizeidepartement betreibt an weltweit verteilten Standorten Infrastrukturkomponenten zur Registrierung und Verifikation von biometrischen Ausweisdokumenten. Das Projekt Registration Authority as a Service (RaaS) automatisiert das Lifecycle Management von Zertifikaten­ für entsprechende Biometrie-Systeme. Zu den zentralen Funktionen gehört­ das initiale Ausstellen von Private-Key-Containern sowie das Erneuern und Revozieren von Zertifikaten.

Ausgangslage tion für administrative Tätigkeiten. Dazu zählen das Die Biometrie-Infrastruktur des Eidg. Justiz- und ini­tiale Ausstellen von Private-Key-Containern, die Polizeidepartements umfasst dezentrale Systeme, die Verwaltung von Entitäten und Request-Policies, sowie sich an kantonalen Aussenstellen, Botschaften oder die Definition von Approval- und Alarmierungsmecha- Konsulaten befinden. Diese Systeme benötigen zur nismen. Schwerpunkte dieser Bachelorthesis liegen in Bereitstellung von unterschiedlichen kryptographi- der Implementierung der einzelnen Komponenten und schen Funktionalitäten Zertifikate. Sie werden unter deren Schnittstellen. Aufgrund sensibler Daten, die anderem eingesetzt, um die Kommunikation zwischen mit Zertifikaten des Systems verschlüsselt werden, den Aussenstandorten und der lokalen Biometrie-Inf- ­resultieren hohe Anforderungen an die Sicherheit rastruktur in Bern zu verschlüsseln bzw. Requests zu der Gesamtlösung. Im Rahmen dieser Arbeit werden ­signieren. Mit der bisherigen Lösung mussten Zerti­ Softwarekomponenten für einen produktiven Betrieb Othmar Kesseli fikate nach deren Ablaufdatum über einen manuellen entwickelt und die Infrastruktur für eine Aufnahme Prozess erneuert und verteilt werden. Im Rahmen des Betriebs bereitgestellt. Nach dem Rollout sollen ­einer Architekturanpassung werden Erfassungsgeräte ca. 700 Biometrie-Erfassungsstationen weltweit neu über eine Webanwendung gesteuert, was zu Zertifikate der Lösung verwenden, um sicherheitskri- ­erhöhten Anforderungen bezüglich Ausstellung und tische Aufgaben wie «Ausweisdokumente ausstellen», Erneuerung von Zertifikaten führt. «Visa erteilen» oder «biometrische Daten verifizie- ren» auszuführen. Ziel Registration Authority as a Service stellt dezentralen Realisierung Biometrie-Systemen einen sicheren Webservice für Die RaaS-Infrastruktur umfasst eine Vielzahl von Kom- ein automatisiertes Management von Zertifikaten ponenten, um den Lebenszyklus von Zertifikaten zu ­bereit. Die Systeme an den Aussenstandorten sollen steuern. Biometrie-Systeme an verteilten Standorten Zertifikate selbständig erneuern oder revozieren. kommunizieren durch signierte SOAP-Requests mit Darüber hinaus umfasst die Lösung eine Webapplika- ­einem WCF-Frontend-Service. Dieser interagiert über eine RESTful-API mit einer Backend-Komponente, ­welche entsprechende Methoden zur Verwaltung von Zertifikaten bereitstellt. Dieses Backend-System ver- waltet die zentrale Datenbank und steuert über wei­ tere Schnittstellen die Kommunikation zur Certificate Authority und einer Password-Management-Applika­ tion, um Private-Key-Container-Passwörter zu persis- tieren. Eine Administrationsoberfläche in Form einer Webapplikation erlaubt die Verwaltung von Entitäten und bietet weitere Funktionalitäten um Requests zu steuern und nachzuvollziehen. Das System wurde mit den Microsoft Technologien Windows Communication Framework (Frontend-Service), ASP.NET Web-API ­(Backend-Service) und ASP.NET MVC (Administration- GUI) entwickelt.

Systemübersicht

book.bfh.ch System zur Durchführung sicherheitstechnischer Kontrollen an medizintechnischen Geräten

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Dr. Andreas Danuser 54 Experte: Jean-Marie Leclerc (Sword Group) Industriepartner: Hospitec AG, Spreitenbach In vielen Unternehmen existieren Arbeitsabläufe und Prozesse, welche aus Sicht der fortschreitenden Digitalisierung nicht mehr zeitgemäss sind. Ein Beispiel eines solchen Arbeitsablaufs ist der papiergebundene Prüfpro- zess für medizintechnische Geräte bei der Firma Hospitec AG. Im Rahmen ­dieser Arbeit wurde nun ein erster Schritt unternommen, um diesen ­Prozess mittels Digitalisierung zu optimieren.

Firmenprofil welche die Techniker der Hospitec AG von Hand aus- Hospitec AG ist ein Dienstleistungsunternehmen für füllen. Schon bei der Generierung und der Distribu- Organisationen und Einrichtungen im Gesundheitswe- tion werden bei dem aktuellen Prozess Ressourcen sen. Sie übernimmt im Sinne eines Outsourcings die benötigt und Kosten generiert, welche mittels digita- Betreuung, Wartung und Reparatur ganzer medizin- ler Rapportierung grösstenteils komplett eingespart technischer Geräteparks oder einzelner Gerätekate- werden könnten. gorien und garantiert die Umsetzung der gesetzlichen Zudem führt die Abhängigkeit von physischen Vorschriften. Das Kerngeschäft der Hospitec AG liegt Prüfprotokollen zu weiteren Problemen wie bei- in der Durchführung von sicherheitstechnischen spielsweise bei der Datenaktualität. Zwischen der Kontrollen (STK). Hierbei handelt es sich um eine, für Durchführung einer STK bis zur Nachbearbeitung Christoph Kiser Betreiber von Medizinprodukten, vorgeschriebene des Protokolls und der anschliessenden Übertragung periodische Sicherheitsüberprüfung. In der Medizin- ins System können aktuell mehrere Tage bis sogar technik ist die STK eine Massnahme zum Erkennen Wochen liegen. von Gerätemängeln und damit verbundenen Risiken für Patienten, Anwender oder Dritte. Ziel Das Ziel dieser Arbeit ist die Entwicklung eines Problem Systems, welches den Technikern der Hospitec AG Aktuell erfolgt die Dokumentation der STKs mittels ermöglicht, STKs an medizintechnischen Geräten am modellspezifischer Prüfprotokolle in Papierform, Notebook oder am Tablet durchzuführen. Dabei soll der Fokus auf der Umsetzung der Frontend-Applika- tion liegen, um eine möglichst gute User-Experience zu erzielen und die Techniker bei der Durchführung ihrer Arbeit optimal zu unterstützen.

Resultat In enger Zusammenarbeit mit den Technikern der Hospitec AG wurde im Rahmen dieser Arbeit ein System entwickelt, mit welchem die STKs in Zukunft mittels einer Webapplikation durchgeführt werden können. Die Entwicklung der Applikation erfolgte unter Anwen­dung eines «User-Centered Desing» Entwicklungsverfahrens. Durch eine frühe Einbindung der Techniker im Ent- wicklungsprozess konnte eine Applikation geschaffen werden, welche auf deren Bedürfnisse angepasst ist und eine optimale Unterstützung bei der Durchfüh- rung der STKs bietet.

book.bfh.ch Colibri – Sharing Economy Platform

Studiengang: BSc in Informatik | Vertiefung: Web and Business Applications Betreuer: Prof. Rolf Gasenzer Experte: Pierre-Yves Voirol (Abacus Research AG) 55 Den Begriff «Sharing Economy» hört man seit der Jahrtausendwende ­immer häufiger. Auch für Privatpersonen bringt das gemeinsame Nutzen verschiedener Ressourcen viele Vorteile. So können namentlich hohe ­Anschaffungskosten für selten genutzte Gebrauchsgegenstände, wie zum Beispiel eine Bohrmaschine, vermieden werden, indem man sich einfach das beim Nachbarn vorhandene Gerät borgt, sofern die Bereitschaft und Information darüber vorhanden ist.

Ziel Konzept Die Idee der Applikation «Colibri» ist es, eine Besucher können auf der Website selbständig Inserate (Nachbarschafts-)Plattform für private Personen zu erfassen, mit welchen sie Güter und Dienstleistungen schaffen, über welche diese schnell und zielgerichtet anbieten oder nachfragen können. Die hochgelade- miteinander in Kontakt treten können, um sich gegen- nen Inserate sind öffentlich und können von anderen seitig auszuhelfen. Im Unterschied zu ähnlichen Web- Website-Besuchern eingesehen werden. Filter- und sites (wie z. B tutti.ch) haben die Nutzer von «Colibri» Suchfunktionen helfen den Nutzern dabei, ein für sie insbesondere auch die Möglichkeit, ein Bedürfnis in passendes Angebot zu finden. Form eines Nachfrage-Inserats zu publizieren. Die Hat ein Nutzer das Gesuchte (das entsprechende Applikation soll einfach zu bedienen sein, um ein Inserat) gefunden, so hat er die Möglichkeit, dem möglichst breites Publikum anzusprechen und somit Erfasser des Inserats via Applikation eine Nachricht Kevin Peter Künzi auch den Gemeinschaftssinn im Umkreis des Wohn- zukommen zu lassen. Er kann im gleichen Zug auch orts zu fördern. einen Ter­min­vorschlag senden. Das Aushandeln allfäl- liger weiterer Vertragskonditionen erfolgt ausserhalb der Applika­tion. Sie dient in erster Linie dazu, den Kontakt und das grundlegende Matching zwischen Anbieter und Nachfrager zu ermöglichen.

Realisierung Für die Entwicklung der Applikation verwenden wir ASP.NET CORE 2.1. Die Daten werden im Backend in einer MySQL-Datenbank abgelegt.

Karol Ugorcak

Startseite Colibri

book.bfh.ch Neural Networks on a FPGA

Degree programme: BSc in Computer Science | Specialisation: IT-Security Thesis advisors: Prof. Dr. Bernhard Anrig, Prof. Andreas Habegger 56 Expert: Dr. Federico Flueckiger

In today’s world, neural networks are ubiquitous. They are used from voice recognition to driving autonomous vehicles. One of their main drawbacks is that they are very computationally expensive, which limits their practi- cality in mobile and embedded applications. In this work, we explore one approach to mitigate this flaw: Running a quantized neural network on a FPGA.

Introduction CPU Implementation A field-programmable gate array (FPGA) is an We then implemented this architecture in plain C integrated circuit (IC) that can be programmed to ­using only POSIX libraries. To train the network represent any digital circuit, as long as the design we mostly used floating point values, since this is does not exceed the resources of the specific device. required for stochastic gradient descent to work. The description of such a circuit is done in a hardware The inference­ part of the network was implemented description language (HDL). To do this for something twice. The first implementation used regular float as complex as a neural network, a top down approach values while the second used only integer values. was chosen. We first evaluated a reasonable neural For this quantized inference to work, we designed a network architecture using Python, then implemented conversion function to transform the learned param- Pascal Daniel Liniger it in plain C and finally ported the inference part of eters of the neural network (weights and biases) into the network to the FPGA using Verilog. integers of various sizes (8 – 32 bits). This has two ­advantages: We save space when storing the parame- Evaluation of the Network Architecture ters of the network (e.g. the weights use 4 times less To find a reasonable network architecture to imple- storage) and it reduces the computational require- ment, we tested convolutional neural networks (CNN) ments of inference, since an integer multiplication is and fully-connected neural networks of various sizes. much simpler than a floating point one. Most impor- The networks were trained and evaluated using the tantly, quantized inference is in our case only slightly MNIST dataset, which consists of 70’000 handwritten less accurate than normal inference (less than 0.1%). digits (0 to 9). As a result, a fully-connected network architecture with 2 hidden layers (64 nodes per layer) FPGA Implementation was chosen. We chose a fully-connected network After testing and verifying the quantized inference, since it offered reasonable accuracy (around 94%) we implemented it on the FPGA. We started by while being easier to implement than a CNN. designing a block diagram, writing the corresponding Verilog code, simulating and testing the design in the Vivado Simulator. To get the parameters of the trained network into the design, we used a helper function in the C code, which exported them in a format usable on the FPGA. The inference part was then packed as an IP core and wrapped into a bigger design contain- ing components like a DMA Controller and various AXI Interfaces. These parts are needed, to actually run the inference on our target hardware platform, the Digilent Arty Z7-20. This enabled us to read the image data from the DDR memory of the Arty and stream it into our inference core. We created a custom Linux distribution that uses a special device driver to make our DMA controller accessible as a device file. Finally we were able to write an application that interfaces with this device, reads the MNIST data from a file on the SD card and writes it into the DDR memory. The data is then streamed into our inference core. The Arty Z7-20 development board.

book.bfh.ch Best choice. Karriere bei Bystronic.

Cutting | Bending | Automation career.bystronic.ch Darknet Forums Observatory

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisor : Prof. Dr. Emmanuel Benoist 58 Expert : Daniel Voisard (Federal Office of Communication OFCOM)

Because the darknet offers anonymity to users, there are several forums where users can sell or buy illegal goods (weapons, fake IDs, etc) and discuss freely about topics, which are often of an illegal matter. The objective of our thesis was to crawl forums, save a representation of them and find a solution to transform and analyze the data.

Introduction Approach Previous projects at BFH have already dealt with Modification of the crawler darknet marketplaces. But there is a second place The crawler which was developed in a former thesis where trades take place: darknet forums. The structure can be configured to work with different darknet mar- of these forums is similar to forums on the clearnet. kets. This is why we expected that it can be adapted However darknet forums often also contain a market to forums with minor changes. However, markets and section with offers of goods (email-address collections, forums have a completely different structure, hence credit card data, passport scans, tutorials, guides, we had to modify and revise multiple parts to make it accounts and also drugs). In comparison to market- work with forums. places, forums are better suited for conversations and Marco Maurer discussions. Some of the main conversation topics Transformation on the forums we examined are cybercrime activi- To work with the data, which we crawled from the ties and related subjects. There is currently no major Russian forum, we had to translate the text into English-speaking forum on the darknet in this area, English. The challenge was to find a way to translate but we found several ­Russian-speaking forums and a 130 million chars. Because all APIs were too expen- German-speaking forum. sive or blocked us when we tried to do this, we ended up using a translation software. Goal The goal of this thesis is to adapt a crawler, which Analysis was developed for markets, so it can crawl darknet We used the graphing library "Plotly” to visualize forums. With the acquired data the turnover of ven- the different data by creating graphs. The system we dors, the biggest vendors, the offered goods and the developed can be used for the analysis of even more active times of the users shall be analyzed. In addi- forums in the future. tion to that a solution to translate the Russian text has Lukas Müller to be found, so that the students are able to work with Results the text and understand what it means. And another We made several interesting observations in our goal is to compare a Russian and a German forum. ­analysis. Among other things, we were able to prove that there is more than one single person behind some of the vendor accounts. We did this by analyzing the online times of the users and it shows that some users are online almost around the clock. Also the results show that there is a decrease in posts on Fri- days and on Saturdays. We were also able to estimate the turnover of a vendor, by analyzing the pictures of his stock, which he uploaded every month. We also analyzed the price development of different drugs and the result shows that the price of cannabis is pretty steady whereas the price of ecstasy dropped by half in the last year.

Price development cannabis

book.bfh.ch RISE [profile]

Studiengang: BSc in Informatik | Vertiefung: Web and Business Applications Betreuer: Marcel Pfahrer Experte: Han van der Kleij (SBB) 59 Industriepartner: HAFL BFH, Zollikofen RISE steht für «Responce- Inducing Sustainability Evaluation». Das ist eine Methode für landwirtschaftliche Beratung und Ausbildung für Betriebe, die in der Landwirtschaft tätig sind. Mit der Computer-basierten Methode RISE, die an der Hochschule für Agrar-, Forst- und Lebensmittelwissenschaften (BFH HAFL) entwickelt wurde, bewertet man die Nachhaltigkeit von Land- wirtschaftbetrieben , um ihre Ergebnisse zu analysieren und bei Bedarf ­effektive Massnahmen zu ergreifen.

Ausgangslage Konzept Die RISE Software wird schon in mehreren Ländern Der Prozess der Datenerfassung liefert die Input-Datei erfolgreich angewandt. Das aktuelle System soll in für die Berechnungen. Dann wird im Datenanalyse ­Zukunft zu einer umfassenden internationalen Bera- Prozess(dazu gehört RISE [profile]) definiert, welche tungsplattform ausgebaut werden. Die zusammen Merkmale mit ihren Indikatoren zu einem Betrieb funktionierenden Einzelteile des Systems sollen auf gehören. Die Visualisierung der Ergebnisse hilft in der der Basis aktueller Web-Technologien die Prinzipien Analysephase sowohl den Landwirten als auch den der RISE Methode realisieren. Beratern und ermöglicht die Durchführung der nächs- Zu diesem Zweck entwickelt das Institut für ICT-Based ten Prozesse, nämlich Reporting und Beratung. Management der BFH TI unter der Führung des RISE Teams die modernisierte Version der RISE Software. Realisierung Katsiaryna Mlinaric Die gemeinsamen Entwicklungsprozesse können in Während des Projektes ist eine Web-Applikation +41 79 388 69 14 verschiedene miteinander verbundene Aufgaben ­implementiert, die sowohl online als auch offline [email protected] aufgeteilt werden. Eine dieser Aufgaben, die Profilbe- ­benutzt werden kann. Das Backend verwendet die rechnung und Visualisierung der umfassenden Datei, Microsoft SQL Server und ASP.NET Technologie. wird im Rahmen dieser Arbeit vorgestellt. Das Frontend basiert auf Angular 6 mit Verwendung von Typescript als Programmiersprache. Dieses Teil Ziel führt die Berechnungen aus und ermöglicht die lokale Das Ziel dieser Arbeit ist es einen ersten Prototyp Datenspeicherung. Für Visualisierung wird die Biblio- von Profilberechnungen und Visualisierungen der thek Charts.js verwendet. Ergebnisse zu entwickeln.Die Prozesse, die in der Umgebung des RISE Systems laufen, führen von der Input-Datei, die für einen bestimmten Landwirtschaft- betrieb aktuell ist, zur Output-Datei, welche analysiert wird, um die notwendige Anpassungen zu erhalten. Mit der RISE Methode wird der Zustand eines Betrie- bes mit Hilfe bestimmter Merkmale und Indikatoren erfasst. Die Profilberechnung ergibt die Werte dieser Merkmale und Indikatoren und der Visualisierungsteil soll den Zusammenhang der berechneten Werte auf verschiedene Art und Weise visuell darstellen.

RISE [profile] in der Prozessumgebung Darstellungen von Ergebnisse

book.bfh.ch Extend App Inventor with MQTT

Degree programme : BSc in Computer Science | Specialisation : Distributed Systems and IoT Thesis advisor : Prof. Dr. Reto Koenig 60 Expert : Han van der Kleij (SBB AG)

App Inventor provides a simple way of programming. Instead of ­writing code, the user takes a block, which hides code and builds a mobile ­application. App Inventor supports the inclusion of extensions in their web IDE to add missing components. In this work, the missing ability to make a ­connection between two device was implemented by using the MQTT ­protocol.

Conceptual Formulation figures below show an example of the blocks in use. The objective of this work was to provide the MQTT A smartphone connects as a client to a broker and protocol to a wider range of developers in mobile subscribes on the topic "temperature". At the other computing with the help of App Inventor. The user is end a temperature sensor is publishing its value to able to establish a connection to a broker with TLS the same broker on the same topic. Each time the said and can use publish and subscribe with or without sensor is sending data, the app receives the messages wildcards. Additional the configuration of clean ses- and displays them on the screen. The transmission of sion and last will is possible. In the end the extension the data is done with the MQTT protocol. is user-friendly for untrained programmers and tested with example applications. Conclusion Aline Niggeler Working with App Inventor was both a new learning­ Implementation experience and a hassle. The restriction while With App Inventor's open source code, the exetension implementing was high and the documentation were was realised by adding components and build the unclear. The result of this work was the functioning sources. Beginning with a Publish and Connect Block, blocks, an instruction on how to use them and a a first attempt to establish a connection to a broker clear tutorial on hwo to make an extension by your was made. The message was successfully received by own. Also a byproduct was realised with this work. a second client. Therefore the implementation of the At this moment the BFH is running its own instance remaining blocks were doable, however well sophisi- on App Inventor with a Docker container. The image cated. App Inventor takes away the thinking about was created while developing the extension and now handling lifecycle and complicated designing, which members of the BFH do not have to rely on the servers means that while implementing, this has to be con- of MIT. sidered. To make the blocks user-friendly, they must be easy to apply, well descripted and flawless. The

book.bfh.ch Fridgy – Kollaborative Lebensmittelverwaltung zur Bekämpfung von Food Waste

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Dr. Reto Koenig Experte: Dr. Joachim Wolfgang Kaltz 61

Kann eine Smartphone-App mehr Leute dazu motivieren, öffentliche ­Kühlschränke zum Tauschen von Lebensmitteln zu nutzen? Getrieben von dieser Frage wurde in dieser Thesis eine Prototyp-App entwickelt, mit der die Nutzer von öffentlichen Kühlschränken gemeinsam ein Inventar der angebotenen Lebensmittel pflegen können. In Usability-Tests wurde ­untersucht, ob die App den Benutzern diese Aufgabe einfach macht und die Kühlschränke damit attraktiver werden.

Mit öffentlichen Kühlschränken gegen Food Waste sich die Benutzer aktiv im Kampf gegen Foodwaste: In der Schweiz landet rund ein Drittel aller Lebensmit- Foodsharer bringen ihre überschüssigen Lebensmittel tel im Abfall statt auf dem Teller. Doch was kann man zu einem Kühlschrank, Foodsaver holen die Produkte gegen Food Waste, die Verschwendung von Lebens- von dort ab. Eine Smartphone-App zeigt an, wo sich mitteln tun? Seit wenigen Jahren gibt es an verschie- die Kühlschränke befinden und welche Lebensmittel denen Orten öffentliche Kühlschränke zum Tauschen es aktuell darin hat. Dies ist möglich, da Foodsaver von Lebensmitteln. Bislang wissen jedoch nur wenige und Foodsharer gemeinsam das Inventar der Lebens- Leute, wo sich diese Kühlschränke befinden und das mittel mit der App pflegen. Foodsharer nehmen dazu Angebot wird dementsprechend wenig genutzt. mit der App ein Bild der Produkte auf, welche sie in den Kühlschrank legen und erfassen mittels Barcode Fridgy als digitale Erweiterung der öffentlichen oder einer Textsuche, um welches Produkt es sich Alexander Nussbaum Kühlschränke handelt. Foodsaver wählen beim Holen die gewünsch- Fridgy ist ein Konzept zur Erweiterung der öffentlichen ten Produkte in der App aus. Weiter können Benutzer Kühlschränke. Über eine digitale Plattform beteiligen melden, wenn sich im Kühlschrank schlecht gewordene Produkte befinden. Der Betreuer eines Kühlschrankes kann schlechte Lebensmittel so schneller entsorgen und den Kühlschrank nötigenfalls reinigen.

Fokus Usability Das Pflegen des Inventars bedeutet für die Benutzer einen gewissen Aufwand. Die Abläufe in der App ­müssen daher einfach, effizient und dem Nutzungs­ szenario angepasst sein. Im Rahmen der Thesis wurde ein kollaborativer Prototyp entwickelt. Dieser ermög- lichte es, die Akzeptanz und Benutzerfreundlichkeit Denis Shevchenko des Fridgy-Konzepts in mehreren Usability-Tests im Labor zu überprüfen. Das Feedback der Testpersonen lieferte­ wertvolle Erkenntnisse zur Weiterentwicklung der App.

Eine Waage misst den Erfolg Als weiterer Bestandteil der Thesis wurde eine Waage entwickelt. Diese misst und speichert fortlaufend das Gesamtgewicht aller Produkte im Kühlschrank. Die ­gespeicherten Messwerte können von der App ausgelesen werden. Dank der Waage sollen in einem geplanten Feldtest Daten zur Nutzung des Kühl- schranks gesammelt werden. Dadurch soll festgestellt werden, ob die App tatsächlich zu einer Steigerung der Tauschaktivität führt.

book.bfh.ch Interframe Rendering mit Machine Learning

Studiengang : BSc in Informatik | Vertiefung : Computer Perception and Virtual Reality Betreuer : Prof. Urs Künzler 62 Experte : Prof. Dr. Torsten Braun (Universität Bern)

SlowMotion Videos durch Interpolieren von fehlenden Zwischenframes generieren

SlowMotion Sequenzen sind spektakulär und gerade Objektive Auswertungen sind in dieser Situation für Sportübertragungen nicht mehr wegzudenken. schwierig. Die untenstehende Abbildung zeigt den Wenn aber die Aufnahme nicht mit besonders vielen Verlauf des Train-Loss (blau) sowie des Peak Signal to Frames pro Sekunde gefilmt wurde, müssen zusätz- Noise Ratio, PSNR (rot). Diese wurden während dem lich künstliche Interframes generiert werden, um Trainingsprozess laufend ausgegeben und über Ten- eine Verlangsamung zu ermöglichen. Diese Bachelor- sorBoard visualisiert. Die andere Abbildung zeigt vier arbeit beschäftigt sich mit der Idee, eine Software Frames einer durch das eigene Modell verlangsam- zu entwickeln, welche solches Interframe Rendering ten Videosequenz. Das erste und letzte Frame sind ermöglicht. Originalbilder, sie waren also Teil des ursprünglichen Videos und wurden von einer Kamera aufgenommen. Lorenz Ogi Da existierende, naive Ansätze qualitativ schlechte Die beiden mittleren Frames sind vom neuronalen [email protected] Resultate liefern, wurde ein künstliches neuronales Netz synthetisierte Bilder. Gewisse Unschärfen, Netz verwendet. Dieses wurde anhand einer sorgfältig besonders an den Händen des Protagonisten, zeugen ausgewählten Sammlung an SlowMotion Videos trai- davon. niert. Der Trainingsdatensatz wurde dabei bewusst auf Sportaufnahmen ausgerichtet, für andere Kate- gorien ist das erarbeitete Modell weniger geeignet.

Um ein zufriedenstellendes Resultat zu erreichen, wurde eine exisiterende PyTorch Implementation als Ausgangslage für diese Arbeit gewählt und mit einer systematisch erarbeiteten Optimierungsstrategie ver- bessert. Um eine solche Strategie zu finden, wurden Alternativen für bessere Trainingsdaten, Loss-Funk- tionen, Netz-Architektur und technische Upgrades untersucht. Die grössten Auswirkungen hatten dabei Veränderungen des Datensatzes.

Entwicklung von PSNR und Train-Loss

2 Original-Bilder links und rechts, 2 interpolierte in der Mitte

book.bfh.ch Soccer AI - Künstliche Intelligenz im Fussball- Trainerwesen

Studiengang : BSc in Informatik | Vertiefung : Digital Business Systems Betreuer : Prof. Rolf Gasenzer Experte : Dr. Federico Flueckiger (Eidgenössisches Finanzdepartement EFD) 63

In dieser Arbeit geht es darum, mithilfe von Deep Learning den Ausgang von Fussballspielen vorherzusagen. Dadurch soll es einem Fussballtrainer ermöglicht werden mit Mannschafts-Aufstellungen zu experimentieren, um die Gewinnchancen zu erhöhen.

Einleitung Da wir bei der Umsetzung leider nicht Zugang zu allen Deep Learning ist ein Teilgebiet von Artifical Intel- Daten hatten, mussten wir im Prototypen auf einige ligence und wird zur Lösung komplexer Probleme Daten verzichten. Dadurch können wir im Prototypen eingesetzt. Dabei lernt ein künstliches neuronales den Ausgang lediglich mit einer Genauigkeit von 67% Netz, welche Daten aus einem grossen Datensatz voraussagen. wichtig sind, um einen gewissen Ausgang zu erzielen. Wir wollten uns diesen Ansatz zu Nutze machen und Weiterführende Gedanken mithilfe von Deep Learning den Ausgang von Fussball- In anderen Anwendungsgebieten lässt sich mit Deep spielen voraussagen. Learning eine Genauigkeit von bis zu 99% erreichen, Dazu haben wir Daten von über 25’000 Fussball- was in manchen Fällen sogar die menschliche Genau- spielen verwendet. Zu diesen Daten gehörten unter igkeit übertrifft. Alexander Lukas Palmitessa anderem: Gewinner und Verlierer, FIFA Bewertungen Zwar scheint es plausibel, im vorliegenden Anwen- für Spieler und Teams, Aufstellungen und Wettquoten. dungsfall mit mehr Daten eine höhere Genauigkeit als 72% zu erzielen. Jedoch denken wir auch, dass eine Ziel Genauigkeit von 99% nicht realisierbar ist, da der Das Ziel dieser Bachelor-Thesis war, eine Lösung auf Ausgang eines Fussballspiels von vielen kaum mess- Stufe Prototyp bereitzustellen, welche - basierend baren Faktoren, wie zum Beispiel der Tagesform von auf im Internet verfügbaren Daten - den Ausgang von Spielern, abhängig ist. Fussballspielen voraussagen kann. Trotzdem gibt es noch diverse andere Anwendungs- möglichkeiten für künstliche Intelligenz im Fussball- Ergebnisse sport, auf Basis derer unter Umständen gar spielent- Durch die Verwendung verschiedener Daten gelang scheidende Entscheidungen gefällt werden können. es, den Ausgang von Fussballspielen mit einer ­Genauigkeit von 72% vorauszusagen. Elias Schildknecht

Benutzeroberfläche des Prototyps mit der Vorhersage Konzept der System-Architektur basierend auf Testdaten aus früheren Spielzeiten

book.bfh.ch KI-Bot für Mario Kart Game

Studiengang : BSc in Informatik | Vertiefung : Computer Perception and Virtual Reality Betreuer : Prof. Dr. Jürgen Eckerle 64 Experte : Dr. Federico Flueckiger (Eidgenössisches Finanzdepartement EFD)

Ein Agent soll selbständig lernen eine Strecke im Mario Kart Spiel zu ­befahren. Im Umfang dieser Arbeit wurde eine künstliche Intelligenz ­entwickelt die ausschliesslich durch die Bildausgaben des Mario Kart Spiels lernen soll eine Strecke zu befahren. Diese Aufgabe wurde mit dem Q Learning Verfahren für ein vereinfachtes Spiel, «Vector Racer», gelöst.

Reinforcement Learning Fahrzeug in einem Raster betrachtet, wobei dessen Beim Reinforcement Learning interagiert ein Agent Skalierung und Grösse angepasst werden kann. mit seiner Umgebung indem er verschiedene Aktionen ausführt. Mit Sensoren kann der Agent seine Umge- Praktische Versuche bung wahrnehmen um zu entscheiden, welche Aktion Während dem Projekt wurden viele praktischen Ver- er ausführen soll. Mit jeder Aktion verändert der suche unternommen. Dabei wurden die Parameter Agent seine Umgebung und erhält eine Belohnung. des Lernalgorithmus sowie die Skalierung und Grösse Reinforcement Learning ist ein Lernverfahren mit dem der Spielansicht verändert. Eine grosse Hürde bei Ziel, eine Aktionsfolge zu finden, die den Erwartungs- den praktischen Versuchen war unter anderem die wert der akkumulierten Belohnung maximiert. In die- Belohnung des Fahrzeuges. Es hat sich schliesslich Casimir Benjamin Platzer ser Arbeit wurde Q-Learning verwendet, bei dem die herausgestellt, dass der Lernalgorithmus schneller zu sogenannte Q-Funktion jedem Zustands-Aktions-Paar einem Ergebnis führt, wenn das Fahrzeug abhängig die erwartete Belohnung zuordnet. Die Q-Werte von der Geschwindigkeit für die Schritte belohnt wird können in einer Tabelle abgelegt werden. Die Q-Werte und beim Verlassen der Strecke bestraft wird. Für sind zu Beginn nicht bekannt, sondern müssen die Versuche wurden zwei Strategien verwendet um schrittweise durch aufeinanderfolge Lernzyklen, bei die Aktionswahl des Agenten zu bestimmen: softmax denen der Agent wiederholt Aktionssequenzen wählt, und epsilon-greedy. Bei softmax wird zufällig eine approximiert werden. In unserem Beispiel entspricht der möglichen Aktionen gewählt, wobei Aktionen mit eine Aktionsfolge das Befahren einer (teilweise zufäl- einer besseren Bewertung mit grösserer Wahrschein- lig gewählten) Route. lichkeit gewählt werden. Bei epsilon-greedy werden am Anfang des Lernprozesses die Aktionen zufällig Vector Racer gewählt, wobei alle dieselbe Wahrscheinlichkeit Vector Racer dient als vereinfachte Alternative zu haben. Gegen Ende des Lernprozesses wird die Aktion Mario Kart. Da es in keiner simulierten Umgebung lau- mit der Besten Belohnung öfters ausgewählt. fen muss und mehr Kontrolle über die Wahl der Stre- cken und den Spielzustand vorhanden ist, eignet sich Fazit das neue Spiel gut als Alternative. Jedem Spieler wird Dem Agenten sind zahlreiche Erfolge gelungen, bzw. er ein Fahrzeug zugewiesen, welches die vorgegebene konnte die vorgegebenen Strecken erfolgreich lernen. Strecke am schnellsten absolvieren muss. In jedem Der Rechenaufwand für den Lernprozess ist sehr hoch, Schritt können beide Komponenten des Geschwin- bei bestimmten Strecken benötigte es teilweise Stun- digkeitsvektors des Fahrzeuges um +1, -1 oder +0 den. Der Rechenaufwand ist stark abhängig von der angepasst werden, was insgesamt 9 Möglichkeiten gewählten Parametrierung sowie die Belohnungsfunk- bietet. Im Vergleich zu Mario Kart unterscheiden sich tion. Er lässt sich reduzieren wenn die Q-Tabelle durch die möglichen Aktionen sowie die Spielfeldansicht. ein neuronales Netz ersetzt worden wäre. Der Agent Obwohl die Aktionen sich unterscheiden, ist dies für ist sehr empfindlich auf die Parameter wie die Spiel- den Agenten irrelevant. Der Agent lernt mit den vor- feldgrösse. Sind die Parameter falsch eingestellt, wird gegebenen Aktionen und führt dieselben wieder aus. der Agent überhaupt keinen Lernerfolg verzeichnen Die Spielansicht welche als Spielzustand verwendet können. Bei den Strategien softmax und epsilon-greedy wird, muss ähnlich dargestellt werden. Bei Vector hat sich herausgestellt, dass bei softmax die Rechnun- Racer wird die Spielansicht ähnlich gewählt wie bei gen aufwänderig sind, der Agent jedoch schneller lernt. Mario Kart. Hierbei werden die Spielfelder vor dem Der Aufwand beider Strategien gleicht sich aus.

book.bfh.ch Realtime Anomaly Detection in Time Series Data

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Prof. Dr. Andreas Danuser Experte: Dr. Federico Flückiger (Eidg. Finanzdepartement EFD) 65

Digitale Daten sind der Rohstoff des 21. Jahrhunderts und die Basis für ­viele neue Geschäftsmodelle. Die Menge an diesen Daten ist in den letzten Jahren exponentiell gewachsen. Dieser Trend wird sich nicht zuletzt wegen der Milliarden an vernetzten IoT-Geräten fortsetzen. Um die Qualität dieser grossen Datenmengen hoch zu halten, ist es wichtig, Datenanomalien automatisiert zu identifizieren. Anomalien sind Muster in Daten, die nicht dem erwarteten Verlauf entsprechen.

Ausgangslage und Zielsetzung Umsetzung Für das Erkennen von Anomalien in Zeitreihen gibt es Beim ersten Verfahren handelt es sich um ein rein bereits viele bestehende Verfahren und Algorithmen. statistisches­ Verfahren kombiniert mit dem Sliding Die Mehrheit davon wurde für statische Datensets Window Konzept. Die Grundannahme ist dabei, entwickelt, in denen alle Daten gleichzeitig verfüg- dass sich normale Dateninstanzen in einem Gebiet bar sind. Schätzungen zufolge müssen in Zukunft bis mit hoher­ Wahrscheinlichkeit eines stochastischen zu 30% der Daten in Echtzeit verarbeitet werden. ­Modells befinden, während Anomalien eine geringe Dies führt dazu, dass auch die Anomalieerkennung Wahrscheinlichkeit haben. vermehrt in Echtzeit durchgeführt werden muss. Das zweite Verfahren basiert auf einem Clustering- Zudem liegt der Fokus bestehender Ansätze meist Algorithmus und dem Sliding Window Konzept. auf der Erkennung von punktuellen Anomalien wie Die Grundannahme ist dabei, dass normale Daten zu Mathias Rudolf Ausreissern. einem Cluster gehören, während Anomalien keinem [email protected] Das Ziel dieser Thesis ist die Implementierung dreier Cluster angehören. verschiedener Verfahren, mit denen sowohl punktu- Das dritte Verfahren basiert auf Vorhersagen und elle als auch kollektive Anomalien in Sensordaten in wird mit einem Künstlichen Neuronalen Netz (KNN) Echtzeit erkannt werden können. implementiert. Überschreitet die Differenz zwischen dem vorhergesagten Wert und dem tatsächlichen Wert einen Grenzwert, so wird der Wert als Anomalie klassifiziert. Der vorhergesagte Wert kann zudem als Korrektur des anomalen Wertes verwendet werden.

Resultate Die Ergebnisse haben gezeigt, dass nicht zwingend auf einen komplexen Algorithmus oder künstli- che Intelligenz­ zurückgegriffen werden muss, um Elisa Schnabel gute Ergebnisse­ zu erzielen. Im Gegenteil, gewisse [email protected] Anomalietypen werden mithilfe des statistischen Verfahrens sogar besser erkannt. Jeder Anomalietyp konnte von mindestens einem der implementierten Verfahren mit Genauigkeiten von über 90% erkannt werden. Es bleibt zu erwähnen, dass die in dieser Thesis implementierten Verfahren nur einen Ausschnitt der zahlreichen Möglichkeiten darstellen, um Anomalien in Zeitreihen zu erkennen. Auch bieten die von uns implementierten Verfahren keine universelle Lösung für die Erkennung von Anomalien in verschiedensten Kontexten. Die Konfiguration der Toleranzfaktoren und Fenstergrössen muss immer abhängig von den erwarteten Daten vorgenommen werden.

book.bfh.ch Migration des Notensystems der Weiterbildung TI

Studiengang: BSc in Informatik | Vertiefung: Web and Business Applications Betreuer: Dr. Stephan Fischli 66 Experte: Dr. Stéphane Barbey (Paranor AG)

In dieser Bachelor-Arbeit ging es darum, das auf Java EE basierende Noten- system der Weiterbildung TI auf die neueren Technologien Spring Boot und Angular zu migrieren. Anforderungen waren eine erhöhte Testbarkeit, ein einfaches Login für Mitarbeiter und eine verbesserte Usability. Umgesetzt wurden diese Anforderungen mit einer REST-API. Für die ­Authentifizierung wurde das LDAP der Berner Fachhochschule angebunden und für die ­Autorisierung ein JSON Web Token (JWT) verwendet.

Umfeld Links sind und keine Authentifzierung verlangen. All In der Weiterbildung der BFH-TI wird für die Noten- diese Unstimmigkeiten sollten in der neuen Applika- erfassung ein eigenes Software-System verwendet. tion bereinigt­ werden. ­Assistentinnen erfassen damit Unterrichtsmodule und weisen diesen Kurse, Studierende und Dozierende Lösung hinzu. Die Dozierenden erfassen nach Ausführung der Wie im Architekturdiagramm ersichtlich, weist die Kurse die Studierenden-Noten. neue Applikation ein Angular-Frontend und ein Spring-Backend auf. Letzteres bietet eine REST-API Problemstellung an. Diese ist umfassend mit REST-Assured-Tests Die bestehende Applikation ist 5-jährig. War das abgedeckt.­ Simon Schaad ­Design damals noch State of the art, ist es heute ver­ Authentifizierung und Autorisierung werden mit dem simon.schaad@opencon- cept.ch altet. Weiter beinhaltet die alte Lösung keine Tests mächtigen Spring-Modul Spring Security kontrolliert. und weist gröbere Mängel in Sachen Usability auf. Dabei muss sich ein Benutzer beim Zugriff auf eine Ein ­Sicherheitsproblem ist zudem, dass beispiels- ­geschützte Ressource jeweils über das BFH-LDAP weise die Links für die Notenerfassung reine Deep- ­authentifzieren. Ist dies erfolgreich, wird ein JSON Web Token (JWT) erstellt und im Frontend abgelegt. Dieses wird anschliessend bei jedem HTTP-REST- Request im Header mitgegeben und im Backend validiert. Mit Spring Security können auch die bestehenden ­Sicherheitslücken ausgemerzt werden, da es auf relativ einfache Art und Weise erlaubt, zu definieren, ­welche Ressourcen geschützt werden sollen und nach Authentifizierung verlangen. So verlangen nun alle kritischen Ressourcen eine Authentifizierung, statt wie in der bestehenden Applikation einfach per Deep- Link aufgerufen werden zu können. Das Design ist nun dank Angular Material sehr zeit­ gemäss. Die Usability wurde dank verschiedener User-unterstützenden Elementen stark verbessert, u.a. ist die Modul-Erfassung mit einem dreiteiligen Wizard umgesetzt. Die Datenbank wurde mit MariaDB erstellt, als Datenbank-Migrationstool im Backend wurde Flyway verwendet. Weitere Umsysteme der Applikation sind ein Email-Server und das IS-A, aus welchem die Studie- renden-Daten importiert werden. Emailversand und der Import aus IS-A sind allerdings noch nicht umge- setzt. Diese Bachelor-Arbeit war für zwei Personen ausgeschrieben, daher ist die Migration noch nicht komplett erfolgt. Komponentendiagramm

book.bfh.ch Subscribable Web

Studiengang: BSc in Informatik | Vertiefung: Mobile Computing Betreuer: Dr. Reto Koenig Experte: Dr. Joachim Wolfgang Kaltz 67

Seit seiner Entstehung vor knapp 30 Jahren, hat das World Wide Web einen beispiellosen Siegeszug erlebt. Wenn man aber die ursprünglichen Ziele der Entwickler des Web betrachtet, fällt auf, wie stark sich seither die Anforderungen an das Web gewandelt haben. Heutzutage verlangen wir nicht nur statische Dokumente, sondern auch Realtime-Informationen. Hier hat die vorliegende Arbeit angesetzt und untersucht, wie ein «Subscribable Web» aussehen könnte.

Sollen Dokumente über das Internet zur Verfügung Beim Publish-Subscribe-Modell kommt statt eines ­gestellt werden, wird heute in den allermeisten Fällen ­Servers ein Vermittler zwischen Dokumentbesitzer das World Wide Web verwendet. Der Zugriff auf Doku- und Benutzer zum Zug, der sogenannte Broker. Wenn mente im Web basiert auf einem Request-Response- der Benutzer ein Dokument erhalten möchte, sen- Modell. Das bedeutet, dass Benutzer das gewünschte det er einen Subscribe für dieses Dokument an den Dokument von einem Server anfordern müssen, indem ­Broker. Der Dokumentbesitzer sendet die jeweils ein Request an den Server gesendet wird. Der Server aktualisierte Version des Dokuments als Publish sendet dann das Dokument als Response an die ebenfalls an den Broker. Die Aufgabe des Brokers Benutzer zurück. Falls das Dokument nicht auf dem ist es, diese Relation korrekt zu bedienen und so die Server vorhanden ist, oder Benutzern die Berechti- Benutzer stets auf dem aktuellen Stand zu halten. gung fehlt, das Dokument zu erhalten, wird anstelle In dieser Arbeit wurde untersucht, ob im heutigen Stephan Schär des Dokuments eine Fehlermeldung als Response Web ein Publish-Subscribe-Modell verwendet werden zurückgesendet. könnte. Um dieses Subscribable Web zu simulieren, Das Request-Response-Modell des Web eignet sich wurde ein Proof-of-Concept erstellt, der es erlaubt, gut für statische Dokumente, die sich nie ändern. sich auf Dokumente im Web zu subscriben. Zusätzlich Benutzer wissen immer, dass sie die korrekte Version konnten so verschiedene Arten von Webauftritten des Dokuments besitzen, da nur eine Version des untersucht und evaluiert werden, wie weit sie sich für Dokuments existiert. Wenn sich aber ein Dokument das Publish-Subscribe-Modell eignen würden. im Laufe der Zeit verändern kann, ist nie klar, ob die Für den Proof-of-Concept wurde MQTT als Publish- Version des erhaltenen Dokuments nicht bereits ver- Subscribe-Protokoll verwendet. Da heutige Browser altet ist. nur mit dem auf Request-Response basierenden HTTP Da die Kommunikation im Request-Response-Modell umgehen können, musste per JavaScript eine Proto- immer vom Benutzer aus geht, muss der Server immer kollumsetzung geschrieben werden, damit mit einem wieder angefragt werden, ob sich das Dokument seit MQTT-Broker kommuniziert werden kann. der letzten Anfrage geändert hat. In den meisten Fällen Um untersuchen zu können, wie sich Webauftritte wird sich das Dokument nicht geändert haben und die unter einem Publish-Subscribe-Modell verhalten wür- Anfrage wird somit nur Ressourcen verschwenden. den, musste ein Proxy-Server erstellt werden. Dieser Der Vorgang, bei dem der Server regelmässig vom Proxy-Server ist in der Lage, über Request-Response Benutzer abgefragt wird, ist als Polling bekannt. zur Verfügung gestellte, Dokumente im Web zu pollen. Wenn die Zeitabstände des Pollings sehr kurz gewählt Wenn sich diese Dokumente ändern, werden sie vom werden, kann die Netzwerkbelastung stark ansteigen. Proxy-Server an den MQTT-Broker gesendet. Werden deshalb die Zeitabstände aber vergrössert, Der Proof-of-Concept konnte zeigen, dass viele Web- kann eine Änderung des Dokuments lange unentdeckt auftritte ohne grossen Aufwand über Publish-Subscribe bleiben. zur Verfügung gestellt werden könnten. Durch die Eine Lösung für dieses Dilemma bietet das direkte Verwendung des Publish-Subscribe-Modells Publish-Subscribe-Modell. Bei diesem Modell verlan- könnten viele Workarounds wegfallen, die genau dar- gen die Benutzer nicht einmalig ein einzelnes Doku- auf ausgelegt sind, ein solches Publish-Subscribe über ment, sondern abonnieren sich auf das Dokument. client-seitige Scripts zu emulieren. Dadurch erhalten die Benutzer bei jeder Änderung des Dokuments automatisch die neue Version, ohne selber aktiv werden zu müssen.

book.bfh.ch Bildanalyse mit neuronalen Netzen für die Mobiliar Versicherung

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Peter von Niederhäusern, Urs Künzler 68 Experte: Andreas Dürsteler

Kunden der Mobiliar Versicherung möchten jederzeit und ortsunabhängig wissen, gegen welche Risiken Gegenstände in ihrem Haushalt gedeckt sind. Diese Frage soll diese Arbeit zu beantworten helfen. Der Fokus liegt dabei hauptsächlich auf der Erkennung der Gegenstände durch einen Deep Learning Ansatz; zu einem kleineren Teil soll eine Applikation erstellt oder erweitert werden, welche durch die Kunden für den Deckungscheck bedient werden kann.

Ausgangslage Mit dem Fokus auf Versicherungen wurden die Ergeb- In der Mobiliar werden täglich tausende von Doku- nisse auf Performanz, aber auch auf die Anwendbar- menten digital verarbeitet. Aus diesen Dokumenten keit und das benötigte Hintergrundwissen untersucht. werden mithilfe einer eingekauften Software fachliche Zudem wurden die Grundlagen der Bilderkennung Daten ausgelesen. So können Rechnungen im Scha- mithilfe von neuronalen Netzen genau erklärt. Dies denfall automatisch bezahlt werden, ohne dass ein ermöglicht, dass die Ergebnisse auch von Personen Schadenmitarbeiter etwas tun muss. Bilder, Videos verstanden werden können, die keine Experten auf oder Tonaufnahmen können aktuell nicht automatisch dem Gebiet Machine Learning sind. verarbeitet werden. So muss ein Schadenmitarbeiter jedes Foto noch manuell beschriften und in das elekt- Resultat Jan Scheidegger ronische Dossier hochladen. Im Rahmen des Projekts Der Vergleich zeigt die Stärken von Transfer Learning +41 79 398 61 24 2 wurde im letzten Jahr vom Autor dieser Thesis eine und sein Potential für die Versicherungsbranche. Auch [email protected] Software entwickelt, welche bei gescannten Doku- zeigt er auf, wieviel Zeit in die Entwicklung eines von menten oder E-Mails Bilder automatisch erkennen auf Grund trainierten Netzes investiert werden muss. kann und diese als Schadenbild klassifiziert. Es kann Um die Anwendbarkeit der Bilderkennung für jedoch noch keine Aussage über den Inhalt des Bildes ­Versicherungen zu demonstrieren wurde zudem ein gemacht werden. ­Prototyp entwickelt. Er zeigt die drei Netze in Aktion. Dem Kunden wird ermöglicht, einen Gegenstand, Ziel welchen er besitzt, zu fotografieren. Das Ergebnis der Im Rahmen dieser Arbeit wurden zwei verschiedene Bilderkennung wird anschliessend dazu verwendet, Ansätze für die Entwicklung von Convolutional Neural um dem Kunden mitzuteilen, ob der fotografierte Nets (CNN) untersucht. Gegenstand in seiner Deckung enthalten ist. Falls – Transfer Learning dem nicht so ist, erhält er einen Hinweis, wie er – Trainieren eines CNN diese abschliessen kann. Dadurch kann das Potential von Bilderkennung mit neuronalen Netzen an einem Dazu wurden zwei Netze mit Transfer Learning und ­konkreten, für die Versicherungsbranche relevanten ein Netz von Grund auf trainiert, um fünf verschie- Fall aufgezeigt werden. dene Klassen von Bildern zu erkennen. Diese fünf Klassen können alle von der Mobiliar versichert werden. Die für das Training benötigte beträchtliche Bildmenge konnte von der Mobiliar bezogen werden.

Beispiel eines einfachen CNNs zur MNIST-Klassifizierung

book.bfh.ch Code Signing Service

Studiengang: BSc in Informatik | Vertiefung: IT-Security Betreuer: Gerhard Hassenstein, Dr. Annett Laube-Rosenpflanzer Experte: Prof. Dr. Andreas Spichiger 69 Industriepartner: EDA, Bern Um heute an eine gültige Signatur einer Software oder eines Scripts zu kommen, werden meist Token verwendet, welche lokal in den Computer eingesteckt werden müssen. Dieser Vorgang ist weder benutzerfreund- lich noch sauber nachvollziehbar. Deshalb ist das Ziel dieses Projekts das Implementieren eines Code Signing Services, welcher das Signieren für mehrere Benutzer ermöglicht. Im Hintergrund soll jede ausgestellte ­Signatur nachvollziehbar in ein Log geschrieben werden.

Die Applikation besteht aus einem Web-Frontend, sein. Dieser Schlüssel muss besonders geschützt welches der Benutzer zum einfachen Signieren von werden, da er alleine­ das Ausstellen von signierten Applikationen und Scripts verwenden kann. Die Softwarepaketen ermöglicht. Dazu werden meistens eigentliche Signatur wird anschliessend von einem Hardwaretoken verwendet, welche dazu designt Backend-Service mit dem gewünschten Zertifikat wurden, ein Kopieren oder Auslesen des Schlüssels zu vorgenommen. Die fertig signierte Datei wird dann an verunmöglichen. den Benutzer zurückgegeben und gleichzeitig wird ein Log-Eintrag auf einem Elasticsearch-Cluster erstellt. Vorteile Neben dem Frontend existiert auch ein Kommandozei- Das Bereitstellen eines Service, welcher das Signieren­ len-Tool, welches für geskriptete oder automatisierte der Software übernimmt, bietet einige Vorteile. So Signaturen verwendet werden kann. ist er für mehrere Benutzer gleichzeitig verfügbar­ – Marco Schmid welches bei einem normalen Hardwaretoken schwie- Traditionelles Code Signing rig umzusetzen ist, da es von Benutzer zu Benutzer Das Code Signing Verfahren wird vor allem in Win- händisch weitergereicht werden muss. Eine solche dows-Umfeld für das Signieren von Software, Libra- Implementation lässt sich auch besser in automatisch­ ries und auch Scripts verwendet. Mit einer gültigen ablaufende Prozesse integrieren. Ein guter Anwen- Signatur auf einem Executable kann der ausführende dungsfall ist hier eine automatisch ablaufende Computer überprüfen, ob die Software auch wirklich Build-Pipeline, welche am Schluss die fertig kompi- von einer vertrauenswürdigen Quelle stammt und lierte und getestete Applikation mit einer Signatur keine Veränderungen daran gemacht wurden. versieht – alles ohne, dass jemand von Hand ein Um eine gültige Signatur zu erstellen, muss der Hardwaretoken einstecken müsste. Signierende im Besitz eines privaten Schlüssels

Systemarchitektur des Code Signing Service

book.bfh.ch NODE-EMBED - Graphical Programming for Embedded (IoT) Devices

Degree programme : BSc in Computer Science | Specialisation : Distributed Systems and IoT Thesis advisor : Prof. Dr. Andreas Danuser 70 Expert : Dr. Federico Flueckiger (Eidg. Finanzdepartement)

The Internet of Things is changing much about the world we live in. Sophisticated sensors are embedded in things that surround us. Many existing platforms offer IoT data recording and processing. However, as of today, there’s still no fully equipped software development platform, which really allows you to quickly develop solid software, covering most of the needs in a professional (and not only hobbyists’) environment using an easy to use graphical editor.

Initial situation Results Imagine: What if we are able to create a software Based on the Node-RED editor, an IoT Software Devel- which lets users develop their software with a visual opment Platform including an IDE, an extensible and drag and drop editor, removing most of the program- scalable framework and a cloud based Over-the-Air ming complexity, where there’s no need for a deep update solution for ESP32 devices was developed. knowledge of software development or the required For this purpose, various existing technologies and programming languages? frameworks were used, disassembled, expanded and What if we can create a software which addresses the finally combined to a new product. The NODE- EMBED never-ending story of wrong user documentation and IoT Software Development Platform is the result. just shows exactly what the software does? Nicolas Manuel Schmid What if we find a solution to speed up embedded The framework in it's first version supports running nicolas.schmid@nodeembed. org software development and reduce the time to market MQTT, an asynchronous webserver, Over-the-Air for new products significantly? software updates, support for GPIO and serial com- What if we find a way to reduce and hide the technical munication, scheduling, custom code functions and a complexity? captive portal to connect to the internet easily (all on There is a need for an IoT Software Development an ESP32 microcontroller). Platform which addresses all these topics. The modular system offers almost unlimited possibil- Goals ities in the future. The framework can be extended The goal of this Bachelor Thesis was to design and with new technologies or functions in just a few develop a graphical programming platform for IoT steps. These could be e.g. simplified connections to applications based on the principle "reduce it to the the big IOT providers, or extensions in the field of max". The platform must support ESP32, but had to home automation just to mention two of them. be designed so that additional target systems can be added at a later time. Wherever possible, existing tools had to be used.

NODE-EMBED IDE NODE-EMBED IoT Software Development Platform

book.bfh.ch Delegation in Microservice-Architekturen

Studiengang: BSc in Informatik | Vertiefung: IT-Security Betreuerin: Dr. Annett Laube Experte: Mathis Marugg (Die Schweizerische Post AG) 71

Heute folgen immer mehr Anwendungen den Prinzipien von Microservice- Architekturen. Im Rahmen dieser Arbeit wurde untersucht, wie die Iden­ tität des Benutzers und die damit verbundenen Berechtigungen bei der Kommunikation zwischen Microservices weitergegeben werden kann. Der implementierte Prototyp zeigt, wie das OAuth 2.0 Token Exchange- Protokoll als mögliche Lösung für diese Herausforderung funktioniert.

Aufgabenstellung ausgearbeitet und visualisiert. Nach den Grundlagen- Microservice-Architekturen erlauben die Entwicklung arbeiten wurde eine konzeptionelle Systemarchitektur von eigenständigen Services mit klar definierten für die Prototyp-Implementation beschrieben. Auf ­Zuständigkeiten. Die einzelnen Services lassen sich dessen Basis wurde der Prototyp fortlaufend imple- mittels REST-Schnittstellen zu einem flexiblen und mentiert und mit der Protokoll-Spezifikation validiert. skalierbaren Gesamtsystem verbinden. Ein dabei oft Die gewonnenen Erkenntnisse dienten als Grundlage unterschätztes Problem ist die Weitergabe der Identi- für die abschliessende Bewertung des Protokolls. tät des Benutzers durch die Service-Kette und die ­damit verbundenen individuellen Berechtigungen. Resultate Mit dem OAuth 2.0 Token Exchange-Protokoll arbeitet Auf Basis des MEAN-Technologie-Stacks (MongoDB, eine IETF-Arbeitsgruppe an einer möglichen Lösung. Express, Angular, Node.js) wurde eine eigene Micro- Manuel Schmutz In dieser Arbeit sollte untersucht werden, ob die service-Architektur implementiert. Ein Authorization [email protected] vorgeschlagene Lösung den Anforderungen des Service unterstützt den Token Exchange gemäss Identitäts- und Access-Managements gerecht wird. Spezifikation. Zwecks Veranschaulichung wurden Dazu sollte das Protokoll prototypisch implementiert drei ­Resource Services zu einer Service-Aufruf-Kette werden. kombiniert. Jeder Aufruf in der Kette erfolgt mit einem ­gültigen Access Token, das jeweils mittels Token Vorgehen Ex­change beschafft wird. Der Prototyp ermöglicht die Zu Beginn der Arbeit stand die Auseinandersetzung ­Simulation unterschiedlicher Token Exchange-Szena- mit der Problemstellung und den technischen Grund- rien und zeigt die einzelnen Schritte mittels Logs an. lagen im Vordergrund. In einer zweiten Phase wurde Die gewonnen Erkenntnisse wurden zusammenge- der Protokoll-Entwurf eingehend studiert. Mögliche fasst und ausgewertet. In Form eines Thread Models Antworten auf die Problemstellung sind darin nicht wurden potenzielle Angriffsvektoren und mögliche besonders prägnant formuliert. Folglich wurden die Massnahmen beschrieben. Weiterhin stellten sich im Ansatz beschriebenen Token Exchange-Szenarien einige Fragen, die für eine Nutzung in der Praxis rele- vant sind, zu denen aber der Protokoll-Entwurf (noch) keine Antworten liefert. Diese Fragen hat der Autor diskutiert und versucht, Antworten zu finden.

Fazit Das OAuth 2.0 Token Exchange-Protokoll bietet eine funktionierende Lösung für die elementaren Bedürf- nisse des Identitäts- und Accessmanagements in einer Microservice-Architektur. Jeder Microservice in einer Service-Kette erhält Informationen über die bereits durchlaufenden Services und den ursprüng- lichen Benutzer,­ der den Aufruf initiiert hat. Trotz- dem ­müssen vor einer Umsetzung in der Praxis viele ­anwendungsfallspezifische Fragen geklärt und eine Kosten-Nutzen-Analyse durchgeführt werden.

Vereinfachtes Sequendiagramm zum implementierten Token Exchange-Ablauf.

book.bfh.ch Malware Classification with Machine Learning

Studiengang: BSc in Informatik | Vertiefung: IT-Security Betreuer: Dr. Endre Bangerter, Jonas Wagner 72 Experte: Armin Blum

Massive Malware- und Hackerangriffe gehören mittlerweile zur Tages­ ordnung. Solche Angriffe verursachen finanzielle und ideelle Schäden in Milliardenhöhe. Da sich Malware ständig weiterentwickeln, können in der Erkennung und Bekämpfung dieser Angriffe neue Techniken von Nutzen sein: zum Beispiel die Malware Klassifizierung mittels Machine Learning.

Relevanz sollten beide Ansätze automatisiert und kombiniert Staaten, Unternehmen und Einzelpersonen wollen sich werden. Die statische Analyse wird verwendet, um vor diesen Angriffen und den daraus resultierenden schnell eine Vielzahl an Dateien zu klassifizieren. Schäden schützen. Dies kann unter anderem durch die ­Diejenigen Dateien, welche bei dieser Analyse nicht Analyse der Malware geschehen: so wird sie erkannt, genügend sicher einer Klasse zugeordnet werden klassifiziert und entsprechende Schutzmassnahmen konnten, werden dann mit der dynamischen Analyse können getroffen werden. Für solche Analysen sind genauer untersucht. Experten mit viel Erfahrung und Know-how notwendig. Pro Tag erscheint aber eine Unmenge an neuen Mal- Ziele ware-Dateien. Im 2017 waren es zwischen 285’000 Im Rahmen dieser Arbeit soll nun die Klassifizierung Matthias Frederic Sidler und 360’000 pro Tag. Meist sind es zwar nur kleine basierend auf Attribute der statischen Analyse automa- Modifikationen zu früheren Versionen, jedoch macht tisiert werden. Mussten vorher diese Attribute von Hand diese immense Anzahl eine Automatisierung der interpretiert und analysiert werden, übernimmt das nun Analyse zwingend. Machine Learning kann bei Klassi- ein Machine Learning Algorithmus. Dieser ­Algorithmus fizierungsaufgaben sehr effizient und effektiv sein erstellt mit den Daten ein Modell, welches die verschie- und selbst mit grossen Datenmengen umgehen. Daher denen Malware-Dateien unterscheiden kann. bietet es sich an, Malware-Klassifizierung mit Machine Es soll dabei untersucht werden, wie effektiv und Learning zu automatisieren. effizient der Machine Learning Ansatz im Kontext der ­Malware Klassifizierung funktioniert und welche Hintergrund Vor- und Nachteile daraus resultieren. Ausserdem soll Es werden die dynamische und die statische Analyse ­geklärt werden, welche Attribute einer Malware-Datei unterschieden, um aus der Malware Informationen sich besonders für den Machine Learning Ansatz zu gewinnen. Bei der dynamischen Analyse wird die ­eignen und in welchen Fällen und warum Machine Malware in einer sicheren Umgebung ausgeführt. ­Learning an seine Grenzen kommt. Es werden dabei alle Aktivitäten aufgezeichnet, um Rückschlüsse auf das Verhalten der Malware und die Resultate Absicht des Angreifers zu gewinnen. Diese Analyse Während der Arbeit wurden gut 200’000 Samples liefert gute Resultate, ist aber selbst mit Automa- von rund 80 verschiedenen Malware-Familien ana- tismen zeit- und ressourcenaufwendig und für die lysiert. Die Ergebnisse zeigen auf, dass sich Machine tägliche Verarbeitung von hunderttausenden von Learning gut für die Malware-Klassifikation eignet. Es Exemplaren nur sehr teuer realisierbar. wurde eine Genauigkeit von 94.3% erreicht. Bei der statischen Analyse wird mit der Malware-Da- Die Extraktion der Attribute aus den Samples gelingt tei an sich gearbeitet, ohne sie auszuführen. Dabei in nützlicher Frist. Das Trainieren des Modells und der werden Strings oder Ressourcen wie Bilder ausge- Klassifizierung der Samples kann in wenigen Minuten lesen oder der Maschinen Code in den für Menschen durchgeführt werden. Somit kann die Anzahl, welche lesbaren Quellcode übersetzt. Diese Prozesse sind durch die dynamische Analyse untersucht werden weniger aufwendig als die der dynamischen Ana- sollte, auf einen Bruchteil reduziert werden. Dies lyse und selbst bei vielen Dateien effizient. Wird bei betrifft insbesondere Malware-Familien, die sich an der Malware-Datei den Code verschleiert indem es Verschleierungstechniken bedienen. verschlüsselt wird, kann dieser Ansatz aber auch an Dieser Ansatz der Malware-Klassifizierung mit seine Grenzen kommen. Machine Learning kann somit als Teilstück einer Um der täglichen Flut an Malware-Dateien Herr zu umfassenden Malware Analyse und Klassifikations­ werden und die wenigen Experten zu unterstützen, umgebung eingesetzt werden.

book.bfh.ch We are hiring! Software Engineers / System Engineers and others

Is programming your passion? Do you want to develop Swiss software solutions in multidisciplinary teams? Then send us your application and surf with us on the wave of success! We are always looking for talents: ti8m.com/career VR Room Configurator

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Prof. Marcus Hudritsch 74 Experte: Dr. Eric Dubuis (Comet AG)

Der Kauf einer neuen Küche ist ein kostspieliges Unterfangen und ­erfordert viele Entscheidungen über Materialien, welche gegebenenfalls nur in kleinen Mustern vorhanden sind. Mit Hilfe von Virtueller Realität (VR) sollen diese Entscheidungen nun einfacher fallen. Um dies zu erreichen, kann der Benutzer seine Wunschküche selbst aufbauen und dabei viele Parameter selbst beeinflussen und sich in der Küche bewegen.

Virtuelle Realität Entstandene Applikation Bei Virtueller Realität wird der Benutzer in eine kom- Mit Hilfe der Spiel-Engine Unity entstand in diesem plett computergenerierte Welt versetzt. Um in diese Semester eine solche VR-Applikation. Die Applikation Welt einzutauchen, wird eine VR-Brille aufgesetzt, wurde primär für das VR-Gerät HTC Vive entwickelt. welche pro Auge ein Bild anzeigt um einen 3D-Effekt In der entstandenen Applikation wird in einem ersten zu bewirken, ausserdem dient sie dazu, die Position Schritt der Raum konfiguriert. Dabei kann die Grösse des Kopfs in die Applikation zu übernehmen. Neben des Raums festgelegt werden, zudem können pro der VR-Brille kann pro Hand ein Controller zur Erfas- Wand mehrere Fenster unterschiedlicher Grösse defi- sung der Handposition und Steuerung der Applikation niert werden. Sobald der Raum parametrisiert wurde, gebraucht werden. Es gibt verschiedene kommerziell kann im zweiten Schritt in diesem Raum die Küche Mathias Spring erhältliche VR-Geräte, welche entweder alleinstehend, aufgebaut werden. Hier können nun auch die Materia- mit einer Spielkonsole oder einem Computer genutzt lien für Arbeitsplatte, Möbel und Boden ausgewählt werden können. werden. Zusätzlich zu den Verschiedenen Materialien kann bei den Möbeln der Aufbau und die Breite der Ziel einzelnen Elemente parametrisiert werden. Die para- Im Laufe dieser Arbeit sollte eine VR-Applikation ent- metrisierten Möbel, können dann durch Aneinander- wickelt werden, mit der ein Raum, in diesem Fall eine hängen zu einer Küche kombiniert werden. Die Küche Küche aufgebaut und konfiguriert werden kann. Diese kann zu jedem Zeitpunkt in einer Datei abgelegt und Applikation soll so einfach und intuitiv wie möglich zu wieder geladen werden. Dadurch kann jederzeit an bedienen sein und auch von einem erstmaligen Benut- der Küche weitergearbeitet werden, dieser Mechanis- zer bedient werden können. Zudem soll durch einen mus kann aber auch dazu genutzt werden verschie- hohen Grad an Anzeigequalität erreicht werden, dass dene Demo-Küchen vorzubereiten. der Benutzer seine Küche besser planen kann. Die Applikation könnte also z. B. bei einem Küchenbauer in einem Raum aufgebaut werden, um mit einem Kun- den eine virtuelle Küche in Realgrösse zu bauen.

In der Applikation erstellte Küche Menü zur Erstellung eines neuen Möbels

book.bfh.ch Alternative scalable HIDS with investigation capability

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisor : Prof. Dr. Bruce Nikkel Expert : Armin Blum 75

In this thesis, I show how a host-based intrusion detection system can be built for scalability. More specifically, I show how the sleuth kit can be used to create an intrusion detection system that does not rely on hashing, but on filesystem attributes. This way, it gains speed, which enables us to take the risk not to calculate hashes.

Many tools exist to help to protect against cyber the file system attributes like modification time and attacks. One family of those tools is called intrusion permissions. This approach is risk-based because it is detection system (IDS). Those are created to detect less reliable, but by increasing the speed, the host can attacks that somehow got through other measures be scanned multiple times more often than if hashes and infected one or many hosts in the network. get calculated. I am using an open source forensic One type of IDS is called network-based intrusion investigation tool called the sleuth kit (TSK). It offers detection system (NIDS). They operate on a network much functionality for file system analysis and works level and analyze the incoming and outgoing traffic on most operating systems. With this tool, I can for anomalies. Those anomalies usually signal an extract the file system attributes reliably and fast, intrusion. When they find such an intrusion, they without touching the files themselves. usually generate an alert for a system administrator or Julian Jimmy Stampfli security professional to analyze. There is another advantage that offer with my system. Forensic investigators usually struggle to reliably There is also another type of IDS called host-based create a timeline of what happened on a file system intrusion detection system (HIDS). They operate after an intrusion. This timeline is essential because directly on the host and try to find attacks there. it can lead them to find out what exactly happened They are more effective at finding intrusions that are and often can make future intrusions harder. Here I dormant and don't do anything for some time. They want to help as well. Different from the other HIDS, mostly operate on the file system and sometimes my system stores all the executions. This way, an go beyond that. HIDS have been quite effective at investigator can look at this history and sees how the finding intrusions on file basis in the past by creating attack started. From this data I can then generate a cryptographic hashes of files and comparing them to timeline which shows what has happened when. One previous executions. However, as file sizes have been nice side-effect of storing all executions is that my growing, they began to struggle to execute within a system is very flexible. After changing something on short time frame. Calculating a hash is seen as the the host, the system automatically adjusts. most reliable way to find changes to the file system, and with more data, it is taking increasingly long to With my tool, system administrators and forensic calculate them. The situation has grown out of pro- investigators have another option to tackle intrusion portions because the time to scan now takes so long, detection. Taking the risk-based approach can lead that the intrusion detection system can't reliably find to many fast detections that otherwise would not be intrusions within a useful timespan. detected in time. Additionally, investigators have more data at their disposal to investigate incidents In my thesis, I show a different solution to this prob- and learn valuable knowledge of the attacks and lem. I created a host-based intrusion detection sys- attackers. tem that works at a file basis but does not calculate any hash. Instead, it finds intrusions by evaluating

book.bfh.ch Personal Intranet Bot – Meeting Preparation Goes Productive

Studiengang: BSc in Informatik | Vertiefung: Web and Business Applications Betreuer: Prof. Rolf Gasenzer 76 Experte: Thomas Jäggi (GIBB) Industriepartner: isolutions AG, Bern Ein Intranet umfasst typischerweise eine ganze Flut diverser Informationen. Die Kenntnis, wo welche Information rasch aufzufinden wäre, ist nicht ­immer im gewünschten Ausmass gegeben. Die vorliegende Software bietet eine Teillösung für diese Problemstellung: Eine Anwendung, die einem ­Intranet-Benutzer automatisiert Kontextinformationen zu den eigenen ­Kalenderterminen sucht, in übersichtlicher Form darstellt und ihm damit hilft, Zeit bei der Meeting-Vorbereitung einzusparen.

Problemstellung Umgesetzte Lösung Wo sind Informationen, die ich jetzt gerade benötige, Die entwickelte Software liest die bevorstehenden im Intranet abgelegt? Studien besagen, dass Know­ Kalendertermine des im Intranet eingeloggten Mit- ledge Workers ein Viertel ihrer Arbeitszeit (mit ande- arbeitenden, sammelt relevante Zusatzinformationen ren Worten: den Zeitraum ab Jahresbeginn bis Ende zu diesen Terminen aus internen wie auch externen März) mit nicht wertschöpfenden Tätigkeiten wie Quellen und stellt diese dem Intranet-Nutzer über- Suchen nach sowie Ablegen/Erstellen von bereits sichtlich zusammen. Diese Zusatzinformationen existierenden Informationen verbringen.[1] Zudem sollen es ermöglichen, den sozialen, örtlichen wie verläuft jede dritte Suche nach internen Informatio- auch inhaltlichen Kontext einer bevorstehenden Sit- nen ergebnislos.[2] zung schnell und ohne weitere Recherche zu erfassen. Kevin Christian Suter Des Weiteren können Kontextinformationen manuell Personal Intranet Bot – eine Definition hinzugefügt sowie bestehende geändert oder gelöscht Eine Anwendung, die einem Benutzer gezielt und werden, um deren Richtigkeit und Vollständigkeit zu automatisiert Informationen liefert, ohne auf dessen gewährleisten. Eingaben angewiesen zu sein, wird Bot genannt. Ein Intranet-Bot sucht fallspezifisch in den für ein Unter- [1] Meier, S., Lütolf, D. und Schillerwein, S. (2015). nehmen verfügbaren Informationssystemen nach Herausforderung Intranet. Wiesbaden: Springer Fach- relevanten Inhalten und stellt diese übersichtlich dar. medien. S. 5. Personal, also persönlich, ist ein Bot, wenn er nicht [2] Infocentric Research (2011). The digital Workplace nur auf den jeweiligen internen Nutzer zugeschnit- redefining productivity in the information age. Baden. tene Informationen bereitstellt, sondern auch dessen S. 16. eigene Informationsbasis – im hier vorliegenden Fall dessen Kalendertermine – als Datenquelle verwendet.

Meetingbeschreibung mit Kommentarfunktion. Teilnehmerdetails mit vom Bot automatisch gesuchten passen- den Social Media Profilen.

book.bfh.ch Voxel Cone Tracing

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Marcus Hudritsch Experte: Dr. Harald Studer (Optimo Medical AG) 77

Auf höchster Abstraktionsstufe beschreibt Rendering den Prozess, wie eine 3D-Szene von einem digitalen Modell zu einem Bild umgewandelt wird. Diese Bildsynthese ist in der heutigen Unterhaltungsindustrie nicht mehr wegzudenken. Insbesondere bei Computerspielen und Simulationen ­verlangt der Anwendungsfall ein möglichst fotorealistisches Bild bei ­interaktiven Frame-Raten. Voxel Cone Tracing ist in der Lage, komplexes Lichtverhalten dynamisch und in Echtzeit zu Berechnen.

Problemstellung Ergebnisse Vor allem die Berechnung der indirekten Beleuchtung, Für diese Arbeit wurde ein Voxel Cone Tracing Algo- also das Licht, welches mehrfach innerhalb einer rithmus implementiert und in SLProject integriert. ­Szene reflektiert wird, ist im Echtzeit-Rendering eine Die Implementierung ist in der Lage, diffuse und grosse Herausforderung. Häufig eingesetzte Verfahren spiegelnde indirekte Beleuchtung sowie Schattenwurf arbeiten mit im Voraus berechneten Beleuchtungsin- zu berechnen. Mit modernen, handelsüblichen Grafik­ formationen (Baking), um diesen Beleuchtungseffekt karten geschieht dies mit einer Frame-Rate von ca. zu approximieren. Dies führt jedoch zu einem Verlust 30 FPS, bei einer Auflösung von 800x600 Pixeln und an dynamischen Möglichkeiten. ist damit etwa um Faktor 460 schneller als übliche Ray Tracing Algorithmen. Der Algorithmus Stefan Albrecht Thöni Voxel Cone Tracing kann diese indirekte Beleuchtung +41 79 514 80 44 vollständig dynamisch und in Echtzeit approximieren, [email protected] ohne sich dabei auf aufwendige Vorberechnungs- schritte zu stützen. Der Algorithmus besteht aus zwei Teilschritten. Erst wird die auf Polygonen basierende Szene in eine räumliche Datenstruktur überführt (voxelisiert) und mit direkten Beleuchtungsinformationen befüllt. Durch vierstufige lineare Interpolation erlaubt diese Struktur das Abtasten beliebiger Volumen der Szene bezüglich Energietransfer und Abdeckung. Diese Eigenschaft wird im Cone Tracing Schritt benutzt indem viele Lichtstrahlen zu Kegeln gebün- delt und diese räumlich abgetastet werden, um die indi­rekte Beleuchtung zu berechnen.

Mit Voxel Cone Tracing gerenderte Testszene Voxelisierter, pinker Stanford-Hase

book.bfh.ch Optisches Spielertracking basierend auf mehreren Kameras

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Prof. Marcus Hudritsch 78 Experte: Dr. Harald Studer (Optimo Medical AG)

Im Rahmen dieses Projekts wurde eine kostengünstige Applikation ­entwickelt, mit deren Hilfe es möglich ist, die Position von Fussballspie- lern auf einem Feld für einen beliebigen Zeitpunkt in einem Spiel zu ­ermitteln. So wird die Basis zur Ermittlung statistischer Werte, welche im Endeffekt zu einer Verbesserung der Mannschaft führen, auch Vereinen und Einzelpersonen ohne grosse finanzielle Mittel zugänglich gemacht.

Ausgangslage ­vermessen werden, sodass vom Programm ein mass­ Fussballtrainer, Analysten und Fernsehsender sind auf stabsgetreues Model erstellt werden kann. verschiedenste Statistiken eines Spiels angewiesen: Anschliessend kann man das Programm starten. Wie weit ist ein Spieler gelaufen? Wie viele Pässe ­Jeweils drei Bilder (eines pro Kamera) werden zusam- hat er erfolgreich an den Mann gebracht? Wie gut ist men verarbeitet. Zuerst werden die Personen auf unser Gegenpressing? Hinter diesen Fragen verbirgt dem Bild, deren Trikotfarbe sowie Position auf dem sich ein Problem: Wo stehen die Spieler? Kann dieses Feld erkannt. Alle Spieler, welche von einer Kamera Problem nicht gelöst werden, bleiben die Antworten gesehen wurden, werden dann mit ihren Attributen auf die anderen Fragen verborgen. Die Spielerposition (Trikotfarbe, Position) an einen selbst entwickelten kann durch eine Spielertracking-Lösung eruiert wer- Tracking-Algorithmus übergeben. Dieser versucht, Michel Utz den und so den Schlüssel zu den Antworten liefern. basierend auf den übergebenen Daten, die bisher erkannten Spieler wiederzufinden. Videodaten Die Videodaten für die Entwicklung und das Testen Ergebnisse wurden selbst aufgenommen. So konnte sichergestellt Das Tracking funktioniert sehr gut, solange die Spieler werden, dass die Daten den Anforderungen entspre- auf den Kameras gut sichtbar sind. Bei unübersicht- chen, günstig und schnell zu beschaffen sowie für lichen Situationen kann es jedoch zu Verwechslungen Korrekturen zugänglich sind. Die Positionierung und kommen. Diese können von einem Operator während Ausrichtung der Kameras wurde mehrmals geändert der Verarbeitung der Videodaten einfach korrigiert und es konnten allein dadurch deutliche Verbesserun- werden. Denkbar wäre eine Erweiterung im Bereich gen im Tracking erzielt werden. Machine Learning, welche automatische Fehlerkorrek- turen vornimmt. Lösung Die Lösung nimmt die Videodateien von mehreren Fazit ­(aktuell drei) Kameras entgegen. Dazu ist pro Kamera Mit der Hilfe von drei günstigen Kameras und dem im eine kleine Konfiguration vonnöten, welche die Rahmen dieser Arbeit entwickelten Programm wurde Position­ und Sicht der Kamera für den Algorithmus ein Spielertracking umgesetzt, welches die Grundlage ­zugänglich macht. Zudem muss das Feld einmalig zur Beantwortung der oben erwähnten statistischen Fussball-Fragen liefern kann.

Die drei verfügbaren Kamerasichten auf das Spielfeld. Das aus den Kamerasichten berechnete Tracking. Die gelben Linien stellen den bisherigen Laufweg dar.

book.bfh.ch Detection of Software Plagiarism

Degree programme : BSc in Computer Science | Specialisation : Digital Business Systems Thesis advisor : Prof. Dr. Olivier Biberstein Expert : Doctor Igor Metz (Glue Software Engineering AG) 79

With the advent of computer science, we talk more and more about piracy. Every year a lot of companies and schools all over the world open legal actions and report incorrect behavior of their employees or their students. Plagiarism is an illegal activity in which a person takes possession of a job carried out by an external person without citing him

Premise Optional Tasks For schools, computing plagiarism means that a stu- Next to this software lies a graph database in which dent is assessed incorrectly because his abilities do it’s possible to save the structures of the various pro- not reflect his personality. For a company this means jects that you wish to analyze in the future. Through a loss of internal knowledge, outsourcing the source a graphical interface, the user can then interact with code to people who could use it to fulfill secondary the plagiarism software whose requests are transmit- purposes. ted through a REST service.

Solution Conclusion Discovering plagiarism between programs has always Given the nature of plagiarism, it is very difficult to been a challenge since the earliest days of computer cover every aspect. The utility developed fulfills the Davide Andrea Vanoni science. Today there are no official solutions to fulfill initial objectives even if some improvements could be [email protected] this task. What exists is bachelor, master or doctorate made in terms of speed. thesis carried out by persons of some universities in the world or simply internal research of a specific university. Most of the time these projects are then supplied Open Source to the internet community in the hope of continuous research and development by users. The results of plagiarism provided by these tools differ a lot due to the strategies adopted during the process analysis.

The Idea The idea of ​​my bachelor thesis is to develop a utility that allows you to discover the plagiarism between two software written in Java 8 language and then analyze the results in a concise and orderly manner

Prototypes There are three ways considered critical for analyz- ing plagiarism between software. The first way is to analyze the bytecodes generated by the compila- tion of two projects. The second way is to analyze the two structures of the abstract syntax tree of the source files, while the third way analyzes the dependencies that occur at the level of packages and classes. Depending on the way you want to refer to, an algorithm is used that analyzes the main phase of plagiarism.

Project ecosystem

book.bfh.ch Dark markets' survey

Degree programme : BSc in Computer Science | Specialisation : IT Security Thesis advisor : Prof. Dr. Emmanuel Benoist 80 Expert : Daniel Voisard (Federal Office of Communication OFCOM)

Dark markets are a very big part of the dark net traffic. These markets are of course quite private and do not leak a lot of information. The purpose of this thesis is a deep analysis of these markets with answers to some ­questions such as: Which offer yields the most? Who are the best sellers? The final objective is the estimation of the income of these sellers as well as the comparison of these estimations with their actual income obtained with their bitcoin address.

Dark markets and multisignature allowing the user to crawl and analyses the site with Dark markets are websites for buying and selling the same tool. The second part of this project repre- illegal items (drugs, weapons, credit cards, etc.). The sents the automation of a breach discovered during a big problem for users of this kind of site is the trust previous thesis. This flaw uses a multisig function of placed in other vendors or even the site itself. To the Wall street market site allowing to recover some address this problem, some markets have incorpo- sellers' bitcoin addresses. Indeed, when creating a rated a feature called bitcoin multisignature. multisig transaction, the buyer has 3 days to send the Multisignature is a system for sending transactions money to an address generated by the market. At the to a neutral account until the product arrives. This end of those 3 days, the market stops the transaction account can only send the money if two out of three and returns the multisig addresses of the 3 signers. Jérémy Valentin Vizzarri users accept the transaction (the users are the mar- This allowed me to retrieve the address of the seller ket, the seller and the buyer). This function ensures and to compare this address to other transactions in that the market does not steal funds and that the the blockchain. Once I found some transaction using seller / buyer does not steals the other party. this multisig address, the bitcoin addresses of these transactions can be considered the seller’s actual Tools for crawling and analysing addresses. My project has two different parts. The first part rep- resents the creation of a tool for crawling and analyz- Uncover some Bitcoin addresses ing data from the three largest existing markets. This The recovered results are very interesting. Indeed, system creates threads sending html queries to the it was possible for me to recover the values of the site in question. Once the answers have arrived, the markets which allowed me to compute some estimates document is parsed and the information are stored in of income. It was then possible to recover some bitcoin a database. The database contains all the offers of a addresses (the closure of the site prevents me from site and their information. One of the most interesting recovering everything) to be able to compare the actual information is the number of reviews for a given offer income and the estimates. Thanks to this, I have been and the amount spent. Indeed, one some site, when able to show that the estimates are not far from the a buyer writes down a review on an offer, the amount reality allowing me to increase the credibility of the spent by this user is shown. This allowed me to esti- rest of the data. mate the average amount received by a seller. With this estimation for each offer, it’s possible to estimate These bitcoin addresses also allowed me to retrieve the income of a seller or even of a category. The esti- Wall Street Market’s bitcoin address while they were mations are then displayed in the same application trying to steal all users’ money. This address was appearing multiple time in the transactions of some sellers and looked really suspicious. A huge amount of bitcoin was transferred in a few days and some transac- tion really looked doubtful. After analyzing the income and done some researches, I found some post mention- ing this address as Wall street’s one. This allowed me to trace the amount sent by this address (more than 11M$) and find some transaction to a bitcoin trading platform or even to the account of one of the admin. Unigarant’s effective monthly income

book.bfh.ch Tetris AI

Degree programme : BSc in Computer Science | Specialisation : Computer Perception and Virtual Reality Thesis advisor : Prof. Marcus Hudritsch Expert : Dr. Harald Studer (Optimo Medical AG) 81

Artificial neural networks are here to stay, branching out into more and more areas in the pursuit of the ultimate goal, general AI. One of these areas is playing games. Games require a high level of abstraction and ­intuition, this provides fertile ground to hone networks in. Eventhough current top of the line research has proceeded to more challenging titles, Tetris still provides these same hurdles on top of the open problem of ­playing it perfectly.

Introduction ultimately scrapped, in favor of a for machine learning Tetris resides in the sweetspot of difficulty and designed version. This primarily affects the way of accesability that allows me to possibly achieve some- interfacing with the game not the mechanics, which thing profound in the given time. As playing Tetris are save for the phantom (the projected landing) truly perfectly is not computable, perfectly in this block in line with the basic version of the game. context means high-risk, high-reward without reach- ing game over. Current approaches either only clear Architecture single lines, in a feverish attempt to avoid game over, There are an abundance of possible architectures to or greedily play for the most simultanious line clears, chose from, however as time was of the essence the leading to game overs from time to time. first promising candidate Asynchronous Advantage Actor-Critc (A3C) has caried the project through to the Thomas Michael Voegelin Objective end. The only architecture that had to be discarded is As indicated, the goal then was to train a deep neural A3C's spiritual predecessor, Deep Q-Network (DQN). network to play Tetris as well as possible. Although the ideal mix of risk versus saftey was what was Results striven for, due to the ristrictions in manpower, It was, given the proper architecture (A3C), rather computational resources and time the focus lay on easy to achieve some points. That is to clear a line or the why and how it learned what it did, rather than two, a trivial task for a human. With improvements to the end performance achieved. To this end a suitable the way points were awarded internally the AI even architecture had to be found, implemented, tested became what one could call an amateur. Though super and iterated upon. human performance was not achieved, it is thought to be quite close to the breaking point, where it would Engine supersede a proficient player. The first step was creating or finding a way to easily interface with a Tetris game. The tought of train- ing with an official retail version of the game was entertained for a time, however due to the emulation and limited access to the code of the game this was

Performance after roughly 1 week of training on a very Architecture of the neural network. powerful system. (early training omitted)

book.bfh.ch Universelle Verifizierung des Genfer E-Voting Systems

Studiengang: BSc in Informatik | Vertiefung: IT-Security Betreuer: Dr. Rolf Haenni Experte: Thomas Hofer (DGSIN) 82 Die fortan wachsende Digitalisierung macht auch keinen halt vor der Politik. So begann das Parlament im Jahr 2000 mit den Vorbereitungen für die elektronische Stimmabgabe kurz E-Voting. Doch ein solches System zu bauen ist ziemlich komplex. Denn es muss den aktuellen Sicherheits­ anforderungen standhalten. Einer dieser Anforderungen ist die universelle Verifizierbarkeit. Das Ziel der Bachelor-Thesis war es, einen Verifier zu ­entwickeln, welcher diese Anforderung erfüllt.

Die universelle Verifizierbarkeit Bei der Kategorie Konsistenz wird geprüft, ob die Bei der universellen Verifizierbarkeit geht es darum, ­Parameter zu den anderen konsistent sind, zum die Verlierer einer Abstimmung davon zu überzeu- Beispiel zwei Vektoren, welche die gleiche Länge gen, dass das Resultat korrekt ist. Bei der brieflichen haben sollten. Nun wird geprüft, ob diese wirklich die Stimmabgabe geschieht dies durch eine mögliche gleiche Länge haben. Nachzählung der Stimmen. Im E-Voting ist dies leider Bei der Kategorie Evidenz wird geprüft, ob die ver- nicht so einfach. Deshalb gibt es eine Applikation, schieden kryptographischen Beweise stimmen. genannt Verifier, welche von einer unabhängigen Bei der Kategorie Authentizität wird die Gültigkeit der Instanz ausgeführt werden kann. Diese überprüft nun Zertifikate und Signaturen überprüft. systematisch alle Abstimmungsdaten. Somit lässt sich Christian Wenger fest­stellen, ob die Daten manipuliert wurden. Aber Umsetzung auch Softwarefehler lassen sich damit aufdecken. Eine Das Ziel der Arbeit war es, die bestehende Applika- einzelne solche Überprüfung wird als Test bezeichnet. tion «NextGenVote Visualization» mit dem Verifier zu Die Tests lassen sich in fünf Kategorien einordnen. vervollständigen. Die Algorithmen für die Tests wur- Bei der Kategorie Vollständigkeit wird überprüft, ob den in Python implementiert. Da bei dem System die alle erforderlichen Daten vorhanden sind. Denn nur so Zertifikate und Signaturen fehlten, wurden «success- kann man eine lückenlose Verifizierung gewährleisten. ful», «failed» und «skipped» als Ausgabe der Tests Jeder Test überprüft, ob ein Parameter vorhanden ist definiert. Der Ausgabewert «skipped» wurde verwen- oder nicht. det, wenn keine Testdaten vorhanden waren. Bei der Kategorie Integrität wird die Integrität der Das Front-End wurde mit Vue.js umgesetzt. Dabei war ­Parameter geprüft. Es wird also geprüft, ob die ein Hauptziel, den User möglichst genau zu informie- Parameter in sich schlüssig sind. Beispielweise wird ren, was das Backend im Hintergrund macht. Dazu geprüft, ob sie sich in den geforderten Werteberei- ­benötigt das Frontend eine Kommunikationsschnitt- chen befinden. stelle, welche mit Sokket.io umgesetzt wurde.

Funktionsweise des Verifiers mit den fünf Test-Kategorien Das Front-End des Verifiers, ist hauptsächlich dazu da um das Resultat anzuzeigen.

book.bfh.ch Smart Canteen - Big Data für die Kantinenbewirtschaftung

Studiengang : BSc in Informatik | Vertiefung : Digital Business Systems Betreuer : Prof. Rolf Jufer Experte : Prof. Dr. Andreas Spichiger (BFH Wirtschaft) 83

Im Sinne dieser Bachelorthesis wurde eine Applikation entwickelt, welche es ermöglicht, verschiedene Daten von Faktoren, welche ­möglicherweise Einfluss auf die Belegung der Kantine der Berner ­Fachhochschule in Biel hat, zu akquirieren und zentral abzuspeichern. Ebenfalls wurde eine Webapplikation erstellt, welche es dem Nutzer ermöglicht, ­gesammelte Datensätze im Browser visuell darzustellen und für eine weitere ­Verarbeitung zu exportieren.

Ziele Resultat Die Ziele dieser Bachelorthesis sind: Die entwickelte Applikation erlaubt dem Nutzer die – Akquirieren von Daten von Einflussfaktoren Eingabe einer REST-Schnittstelle, das Hochladen – Visualisierung sowie Export gesammelter eines CSV-Dokumentes sowie das Abgreifen von Datensätze Sensordaten als mögliche Quellen für die Datenak- – Installation Sensorpark für Präsenzmessung quirierung von Einflussfaktoren. Die Abfragen auf die – Sicherstellung der Erweiterbarkeit des Systems REST-Schnittstellen erfolgen anschliessend automa- tisch und erhaltene Antworten werden direkt in die Vorgehen Datenbank geschrieben. Der Sensorpark ist einge- In einer ersten Phase wurden verschiedene Einfluss- richtet und auf die bereits montierten Sensoren kann faktoren für die Kantinenbelegung bestimmt und mög- zugegriffen werden, jedoch werden mehr Sensoren Patrick Werlen liche Quellen dieser analysiert. Aus dieser Analyse verschiedener Typen benötigt, um genauere Mess- ergaben sich 3 mögliche Typen von Einflussfaktoren: werte zu erreichen. Die gesammelten Daten können REST-Faktoren, CSV-Faktoren und Sensor-Faktoren. nun ausgewertet werden und womöglich Prognosen über die zukünftige Belegung erstellt werden. Sensorpark Ebenfalls wurden in dieser Thesis verschiedene Technologien Sensortypen für die Messung der Präsenz innerhalb JavaEE, Java Server Faces, PrimeFaces, Wildfly, Azure der Kantine getestet und montiert. Für den Sensor- SQL Server park wurden Sensoren sowie ein Empfänger/Gateway der EasySens®-Produktfamilie ausgewählt, welche sich durch ihre Energieautarkie sowie intelligentem Funksystem auszeichnen. Die Sensoren kommunizie- ren über Funk mit dem Empfänger/Gateway, welches anschliessend über eine REST-Schnittstelle die Funk- telegramme der einzelnen Sensoren zur Verfügung stellt.

Mögliche Einflussfaktoren für die Belegung der Kantine Übersicht Architektur des Sensorparks

book.bfh.ch Baumartenerkennung – Mit eigenem Datenset Neuronale Netze auf DGX Station trainieren

Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Prof. Marcus Hudritsch 84 Experte: Dr. Harald Studer (Optimo Medical AG)

Wie viele Leute können heute noch einen Spitzahorn von einem Bergahorn unterscheiden? In der modernen Gesellschaft rückt das Wissen über Natur und Umwelt immer mehr in den Hintergrund. Diese Arbeit soll als Beispiel dienen, wie für dieses und ähnliche Probleme Lösungen mit der Hilfe von Neuronalen Netzen gefunden werden können. Gleichzeitig wird dabei mit der neuen Hardware-Umgebung für maschinelles Lernen an der BFH experimentiert.

Einleitung Programmierbibliothek Keras mit ihren Hilfsfunk- Diese Bachelorthesis beinhaltet alle Schritte für die tionen verwendet. Keras und TensorFlow stellen die Arbeit mit Neuronalen Netzen: Das Sammeln von mathematischen Grundlagen von Neuronalen Netzen Bildern für die Erstellung mehrerer Datensets, den als einsatzbereite­ Komponenten zur Verfügung. Die strukturellen Aufbau von Neuronalen Netzen sowie Netze können damit zusammengestellt, konfiguriert das Trainieren, mit dem Ziel einer möglichst hohen und trainiert werden. Durch die Architektur und über Erkennungsrate. Zusätzlich wurde die Verwendung zahlreiche Einstellungen lassen sich die Trainingsre- der neuen Hardware an der BFH dokumentiert. Diese sultate beeinflussen. ist auf Berechnungen wie denjenigen bei Neuronalen Netzen spezialisiert. Hardware Sabine Zumstein Eine rechnungsstarke Maschine befindet sich seit Datenset ­kurzer Zeit im Besitz der BFH: die DGX Station von Eine Internet-Suche liefert innerhalb kurzer Zeit viele NVIDIA. Durch ihre Bestandteile und mit ihrer grossen Bilder. Daraus passende herauszusuchen, wäre eine Rechenleistung ist sie auf das Training von Neurona- Möglichkeit, zu den Trainingsdaten für das Neuro- len Netzen ausgerichtet. Als Teil dieser Arbeit wurde nale Netz zu kommen. Eine andere ist, dass die Bilder der Umgang mit dieser Maschine als User Guide selbst gesammelt werden. In dieser Arbeit wurden dokumentiert. eigene Bilder von elf Baumarten gemacht und zu einem Datenset zusammengefügt. Um über den Fazit Einfluss der Datenqualität auf das Training eines Neu­ Die Erkenntnisse und Probleme, die beim Experimen- ronalen Netzes Schlüsse zu ziehen, wurde daraus ein tieren mit Neuronalen Netzen in dieser Konstellation weiteres Datenset aus Bildausschnitten gemacht, die von Hardware, Software und eigenen Daten entstan- als aussagekräftiger für die Baumart erachtet werden. den sind, werden in dieser Arbeit festgehalten. Sie sollen zukünftigen Anwendern helfen, einen Einstieg Neuronale Netze in das Thema und die Umgebung zu finden. So stellt Für die Erstellung und das Training von Neuronalen diese Arbeit eine Einführung in Neuronale Netze und Netzen wurde eine Umgebung mit der Programmier- die Hardware der BFH dar, ist aber auch allgemein ein sprache Python, dem Framework für maschinelles Beispiel, wie maschinelles Lernen auf ein Problem Lernen TensorFlow und der darauf anwendbaren angewendet werden kann.

Bilder von elf Baumarten wurden für ein Datenset gesammelt. Mit dem Baumarten-Datenset werden Neuronale Netze auf der DGX Station trainiert.

book.bfh.ch Berner Fachhochschule Informatik Höheweg 80 2502 Biel

Telefon +41 32 321 63 23 [email protected] bfh.ch/ti/informatik

Haute école spécialisée bernoise Informatique La Haute-Route 80 2502 Bienne

Téléphone +41 32 321 63 23 [email protected] bfh.ch/ti/informatique

Bern University of Applied Sciences Computer Science Höheweg 80 2502 Biel

Telephone +41 32 321 63 23 [email protected] bfh.ch/ti/computerscience