Listen
Publikation A space- and time-efficient Implementation of the Merkle Tree Traversal Algorithm(12/2013) Knecht, Markus; Nicola, Carlo U.We have developed an algorithm for the Merkle tree traversal problem which combines the efficient spacetime trade-off from the fractal Merkle-trees and the space efficiency from the improved log space-time Merkle-trees traversal. We further programmed a low storage space and a low time overhead version of the algorithm in Java and measured its performance with respect to two different implementations.01B - Beitrag in Magazin oder ZeitungPublikation Agile Software Development: Practices, Self-Organization, and Satisfaction(Springer, 2021) Biddle, Robert; Kropp, Martin; Meier, Andreas; Anslow, Craig; Pfeiffer, Sabine; Nicklich, Manuel; Sauer, Stefan04A - Beitrag SammelbandPublikation Android API Levels(12/2011) Gruntz, DominikMit jeder neuen Android Version werden auch immer neue Features unterstützt. Mit Android 2.0 (Eclair) wurde Multi-Touch eingeführt, seit Android 2.3 (Gingerbread) ist neu die Kommunikation über NFC (Near Field Communication) möglich und Android 3.0 (Honeycomb) kennt neben Activities auch Fragments, um die UI-Möglichkeiten von Tablets besser unterstützen zu können. Der Programmierer muss bei jeder Applikation entscheiden, auf welcher Version er seine Programme entwickelt, und dabei Vorwärts- und Rückwärtskompatibilität beachten. Wir diskutieren dies in diesem Artikel am Beispiel einer Applikation, welche (optional) für den Austausch von Daten auch NFC verwenden soll.01B - Beitrag in Magazin oder ZeitungPublikation Create Video Games to Promote Well-Being of Elderly People – A Practice-Driven Guideline(Springer, 10.07.2020) Soldati, Marco; Zahn, Carmen; Bildibay, Doruk; Iseli, Tabea; Leisner, David; Niederhauser, Mario; Gao, Qin; Zhou, JiaThis paper presents a selection of game design concepts to promote social interaction between older people and players from other generations. Hardware-related interaction channels, game mechanics and game content can be used to trigger positive communication between several players. The proposed concepts are based on the experience of 32 game prototypes developed with and for the oldest seniors living in several Swiss nursing and retirement homes. The games are directed at the relatives to make their visits a pleasant and positively perceived experience, with the aim of increasing well-being of all involved.04B - Beitrag KonferenzschriftPublikation Der Blockchain Hype(03/2018) Knecht, MarkusDie Kryptowährung Bitcoin ist weltweit bekannt. Die darunterliegenden Konzepte und Technologien sind aber vielen Leuten unbekannt. Der Begriff Blockchain hingegen sagt meist nur technisch interessierten Personen etwas. Die Blockchain ist die Technologie, welche Kryptowährungen wie Bitcoin überhaupt erst ermöglicht. Kryptowährungen und vor allem Blockchains durchlaufen gerade eine Hype-Phase und immer mehr Projekte werden gestartet, die mit Blockchains zu tun haben. In diesem Artikel beschreiben wir, was es mit dem ganzen Hype auf sich hat, wie die tragende Technologie dahinter funktioniert und was sich damit alles bewerkstelligen lässt.01B - Beitrag in Magazin oder ZeitungPublikation Deshalb gewinnt Edge Computing an Bedeutung(Netzmedien, 2022) Amberg, ThomasInternet-of-Things-Systeme speichern und analysieren Daten in der Cloud. Edge Computing bringt Rechenpower und Datenspeicher an den Rand des Netzwerks, zu den Sensoren und Aktuatoren im Feld.01B - Beitrag in Magazin oder ZeitungPublikation Eine Kategorisierung mobiler Applikationen(12/2012) Hildebrandt, Andreas; Luthiger, Jürg; Stamm, Christoph; Yereaztian, ChrisMobile Applikationen lassen sich auf verschiedene Arten entwickeln. Je nachdem welche Anforderungen an eine Applikation gestellt werden, sollte zwischen einer nativen Umsetzung, einer Webapplikation oder einer Mischung aus beidem gewählt werden. Die Wahl der am besten passenden dieser drei Kategorien ist nicht immer einfach und sollte im Vorfeld genau abgeklärt werden. In diesem Artikel zeigen wir die Eigenheiten dieser drei Kategorien auf und vergleichen sie miteinander anhand von Beispielen und einer fiktiven Ticketing-Applikation.01B - Beitrag in Magazin oder ZeitungPublikation Energieoptimiertes Data Center(12/2011) Grüter, Cyrill; Gysel, Peter; Meier, ChristophDie Effizienz eines Data Centers in Bezug auf dessen Energieverbrauch wird mit steigenden Energiekosten ein immer wichtigeres Thema. Das KTI-Projekt „Energie optimiertes Data Center“ befasst sich deshalb mit der mathematischen Modellierung des Energieverbrauchs eines Data Centers. Ziel des Projektes ist eine benutzerfreundliche Planungs- und Optimierungssoftware, welche mit Hilfe der entwickelten Modelle den Energieverbrauch eines Data Centers und dessen Teilsysteme berechnet. Unsere Software wird den Data Center Planern helfen, verschiedene Varianten von Data Centern zu planen und zu vergleichen, um dem Kunden die energieeffizienteste Lösung vorzuschlagen.01B - Beitrag in Magazin oder ZeitungPublikation Energyefficient Kubernetes(Hochschule für Technik FHNW, 22.03.2024) Baur, Jérôme; Engel, Julie; Graf, Sebastian; SIX GroupCloud Computing hat sich als unverzichtbarer Bestandteil der IT-Welt etabliert. Es ermöglicht Unternehmen, Ressourcen wie CPU und Arbeitsspeicher flexibel und bedarfsgerecht zu nutzen. Eine eziente Nutzung dieser Ressourcen ist entscheidend, da eine ineziente Nutzung mit einem erhöhten Stromverbrauch einhergeht. Bei der Produktion von Strom werden, direkt oder indirekt, Treibhausgase emittiert. Aufgrund des kontinuierlichen und starken Wachstums von Kubernetes als Schlüsseltechnologie besteht ein erhebliches Potenzial, die CO2-Emissionen durch eine ezientere Nutzung dieser Plattform zu reduzieren. Diese Arbeit untersucht den Energieverbrauch von Kubernetes-Clustern mithilfe des KeplerProjektes und zielt darauf ab, Strategien zur Steigerung der Energieezienz zu identifizieren und zu bewerten. Im Zentrum stehen dabei zwei Hauptansätze: der Vergleich von Monolithen und Microservices hinsichtlich ihres Energieverbrauchs und die Evaluation des Einsatzes des Vertical Pod Autoscalers (VPA) zur Optimierung der Ressourcennutzung. In der Untersuchung des ersten Ansatzes wurde festgestellt, dass die Deploymentstrategie (Monolith vs. Microservices) allein keine signifikante Auswirkung auf die Energieezienz hat. Der Energieverbrauch wird hauptsächlich durch den Idle Energieverbrauch der Nodes beeinflusst. Der zweite Ansatz dieser Arbeit, der Einsatz des Vertical Pod Autoscalers, zeigte hingegen positive Eekte auf die Energieezienz. Durch die dynamische Anpassung der Ressourcenanforderungen von Pods und durch das Entfernen von Nodes konnte die Auslastung der Nodes verbessert und somit der Idle Energieverbrauch verringert werden. Dies führte zu einer signifikanten Reduktion des Energieverbrauchs. Diese Arbeit bietet wichtige Einsichten in die Energieezienz von Kubernetes-Clustern und zeigt auf, dass insbesondere die Reduktion des Idle Energieverbrauchs und der gezielte Einsatz von Ressourcenmanagement-Tools entscheidend für ezientere Ressourcennutzung sind.11 - Studentische ArbeitPublikation Ist sicheres Cloud Computing möglich?(12/2012) Lubich, HannesBezüglich der Nutzung cloudbasierter Dienste zur Kostenreduktion und Verbesserung der Verfügbarkeit haben viele IT-Verantwortliche Sicherheitsbedenken. Dabei erlauben bestimmte technische und organisatorische Massnahmen eine hinreichend sichere Nutzung von Cloud-Diensten.01B - Beitrag in Magazin oder ZeitungPublikation Man-in-the-Middle: Analyse des Datenverkehrs bei NFC-Zahlungen(12/2014) Arnosti, Christof; Gruntz, DominikDas Bezahlen mit kontaktlosen Kreditkarten liegt im Trend, insbesondere seit grosse Ladenketten wie Migros, Coop oder Valora diese Bezahlmöglichkeit unterstützen. Mit Google Wallet, Apple Pay und Tapit von Swisscom besteht vermehrt auch die Möglichkeit mittels Smartphone kontaktlose Zahlungen auszulösen. Wir haben die Daten, die zwischen einem Terminal und einer Karte bzw. einem Mobiltelefon ausgetauscht werden, bei einer echten Bezahlung aufgezeichnet. In diesem Artikel beschreiben wir dieses Protokoll und die Software, die nötig ist, um solche Daten aufzuzeichnen.01B - Beitrag in Magazin oder ZeitungPublikation Microservices im Kontext Industrie 4.0(12/2016) Krebs, Matthias Christian; Zeman, MarkIndustrie 4.0 ist eines der aktuellen Topthemen bei vielen industriellen Unternehmen. Einerseits bietet die damit verbundene Digitalisierung und Vernetzung von Prozessen viele Möglichkeiten der Effizienzsteigerung und neue Geschäftsmodelle, aber auch neue Herausforderungen, insbesondere beim Schutz der wertvollen Unternehmensdaten. Viele befürchten durch die zunehmende Auslagerung der Datenverarbeitung in eine Cloud einen Kontrollverlust über die eigenen Daten. In einem mit der Firma LCA Automation durchgeführten Projekt haben wir eine Webapplikation zur Zustandsüberwachung von Produktionsanlagen entwickelt unter dem Aspekt, dass die Datenhoheit gewährleistet werden kann. Dabei greifen wir auf eine Software-Architektur basierend auf Microservices zurück, welche einen standortunabhängigen Datenzugriff ohne Auslagerung kritischer Daten ermöglicht.01B - Beitrag in Magazin oder ZeitungPublikation Modulare domänenspezifische Sprachen(12/2012) Luthiger, Jürg; Knecht, MarkusFür ein neuartiges Überwachungssystems von Lieferketten entwickeln wir mit Groovy und Java eine modulare DSL-Engine, welche es ermöglicht, eine domänenspezifische Sprache zu implementieren, deren Syntax und Semantik jederzeit durch neue Module ergänzt werden kann. Durch dieses modulare Konzept lässt sich die Funktionalität eines Systems, wie auch die DSL, sehr einfach an die sich ständig verändernden Bedürfnisse der Domänenspezialisten anpassen.01B - Beitrag in Magazin oder ZeitungPublikation Optimierte Energiebewirtschaftung(12/2016) Gysel, Peter; Kröni, DanielDie Bereitstellung elektrischer Energie an die Haushalte ist eine komplexe Aufgabe der Energieversorgungsunternehmen. Die Energie wird über einen mehrjährigen Zeitraum in mehreren Tranchen von unterschiedlichen Anbietern und Marktplätzen und unter der ständigen Unsicherheit des Marktes beschafft. Eine gelungene Energiebeschaffung, also der Handel zum richtigen Zeitpunkt, bedeutet für ein Energieversorgungsunternehmen einen Wettbewerbsvorteil. In diesem Bericht wird die Energiebeschaffung erklärt und aufgezeigt, wie der Prozess mittels Software unterstützt werden kann.01B - Beitrag in Magazin oder ZeitungPublikation Parsing Graphs: Applying Parser Combinators to Graph Traversals(12/2013) Kröni, Daniel; Schweizer, RaphaelConnected data such as social networks or business process interactions are frequently modeled as graphs, and increasingly often, stored in graph databases. In contrast to relational databases where SQL is the proven query language, there is no established counterpart for graph databases. One way to explore and extract data from a graph database is to specify the structure of paths (partial traversals) through the graph. We show how such traversals can be expressed by combining graph navigation primitives with familiar grammar constructions such as sequencing, choice and repetition – essentially applying the idea of parser combinators to graph traversals. The result is trails, a Scala combinator library that provides an implementation for the neo4j graph database and for the generic graph API blueprints.01B - Beitrag in Magazin oder ZeitungPublikation Satisfaction, Practices, and Influences in Agile Software Development(ACM, 2018) Kropp, Martin; Meier, Andreas; Anslow, Craig; Biddle, RobertThe principles behind the Agile Manifesto begin with "Our highest priority is to satisfy the customer...". It also states that Agile projects should be build around motivated and self-organized teams, which might also lead to more satisfied developers. Several studies indeed report an increased job satisfaction by anecdotal evidence. In this paper we address the topic of satisfaction by in-depth analysis of the results of a nationwide survey about software development in Switzerland. We wanted to find out if satisfaction depends on the applied development method, and, more concrete, how satisfaction relates to other elements in the development process, including the use of various practices, and the influences on business, team and software issues.04B - Beitrag KonferenzschriftPublikation Secure Physical Access with NFC-enabled Smartphones(12/2015) Arnosti, Christof; Gruntz, Dominik; Hauri, MarcoThis paper presents a smartphone-based physical access control system in which the access points are not directly connected to a central authorization server. The access points ask the mobile phone whether a particular user has access or not. The mobile phone then relays such a request to the access server. The authentication of the smartphone is based on public-key cryptography. This requires that the private key is stored in a secure element or in a trusted execution environment to prevent identity theft. In our solution we use the following secure element archiectures: Host Card Emulation (HCE) and a microSD-based secure element. We show that the HCE approach cannot solve the relay attack under conservative security assumptions and we present and discuss an implementation based on a microSD secure element that still allows the access points to connect to the authorization server upon every access albeit the access points are not connected with it.01B - Beitrag in Magazin oder ZeitungPublikation Software/Hardware Co-design: Crypto MicroCore(12/2014) Nicola, Carlo U.; Knecht, Markus; Meier, Willi; Schleisiek, KlausMicroCore is a dual stack, Harvard architecture with three memory areas that can be accessed in parallel. One special feature of MicroCore is the possibility to define more complex Forth words by creating new CPU instructions that later can be implemented via VHDL in FPGA hardware. In our project we developed a new version of the MicroCore C-compiler based on lcc, a fully ANSI-C compliant compiler. The compiler generates from C-Code MicroCore instructions for the 1.71 version which are sent to the target hardware with the MicroForth-loader. We built in optimizations for the global stack allocations, first suggested by the group of Chris Bayley at the University of York. We tested our compiler with the BLAKE hash algorithm, implemented both in compiled MicroCore code and with BLAKE-optimized instructions directly coded in hardware via VHDL.01B - Beitrag in Magazin oder ZeitungPublikation Teaching Agile Software Development at University Level(12/2013) Kropp, Martin; Meier, AndreasSeveral recent surveys show that agile methodologies like Scrum, Extreme Programming and Kanban have been successfully adopted by many companies for software development. However, the same surveys show that only few of the agile practices are applied consequently and thoroughly. This is to a great extent due to the lack of skilled personnel. In this paper we propose a more holistic approach for teaching agile software development, in which the required agile practices and values are not only integrated theoretically into our courses but also practically applied. The proposed concept was realized in a new a course at Zurich University of Applied Sciences during 2012. The evaluation shows very encouraging results.01B - Beitrag in Magazin oder ZeitungPublikation Wird Design Thinking erwachsen?(12/2015) Müller, Thekla; Stamm, ChristophDesign Thinking ist eine aus den USA stammende Methode, die sich in ihrem Selbstverständnis kompromisslos an den Bedürfnissen der Menschen statt an technischen Randbedingungen orientiert. In einem ersten Schritt geht es zunächst darum, diese Bedürfnisse der Nutzer zu verstehen. In kleinen interdisziplinären Teams werden anschliessend Lösungen entwickelt, wobei Einzelkämpfer und eine allzu kritische Haltung verpönt sind. Was zählt, ist der möglichst ungehinderte Fluss von Ideen, wobei auch die Sichtweise von fachfremden Personen geschätzt wird. Design Thinking besteht aus einer Vielfalt an Definitionen, Design-Artefakten, Ansätzen und Weiterentwicklungen. Dazu gehören Empathie mit den Benutzern, Prototypenentwicklung und Toleranz für den Misserfolg. Design Thinking kann ein Werkzeug sein, um eine agierende sowie flexibel organisierte Innovationskultur zu entwickeln. Vor allem dann, wenn ganzheitliche und nutzernahe Lösungen gefragt sind, um mit komplexen Aufgaben unserer Gegenwart umzugehen.01B - Beitrag in Magazin oder Zeitung