2 research outputs found

    Fallback Mechanisms for Connection Loss in Single-Page Web Applications

    Get PDF
    Fast-paced evolution of web technologies in both desktop and mobile devices has made browser environment a reckoned platform for almost any kind of application. The fact that more and more people are carrying efficient browsers in their pockets makes usage of web technologies more tempting and cost efficient solution even when creating business critical applications. The growth rate of mobile device usage has surpassed the rate in which new mobile network is built. The devices are also used in more distant locations where the data connection of the mobile network can be very limited or almost non-existent. This causes problems when using web applications, which are dependent on the connection to the server. Bad connectivity results in a degenerated user experience, since the application might be completely unusable when the connection is dropped. In this thesis we focus on how web developers could prepare the application for connection loss on the application level. The research is based on a case study, in which Päikky, an application from the kindergarten domain, is implemented with an offline support. The solutions done on the case study’s offline support implementation are evaluated with user interviews from a technical viewpoint and from the user experience perspective. The emphasis on the evaluation is that could the solutions be generalized as a design guidelines for offline support, and are the solutions understandable and usable for an average user. Based on the results of the research a set of design guidelines for offline support implementation are defined. The user experience flaws found in the user interviews are listed, and possible solutions for them are discussed. The essential results of this thesis indicate that connection issues are something that application should be prepared for, at least if the application is business critical. Even if there is no need for a full offline support, following the guidelines introduced will improve any web application’s user experience significantly

    Engineering holistic fault tolerance

    Get PDF
    PhD ThesisFault-tolerant software should be engineered to be maintainable as well as efficient with regards to performance and resources. These characteristics should be evaluated before deployment of the software. However, the main focus is very often made on the functional features of the application, whereas fault tolerance mechanisms are neglected. As a result, they are often neither maintainable nor efficient. The concept of Holistic Fault Tolerance was introduced to deal with these issues. It is a novel crosscutting approach to the design and implementation of fault tolerance mechanisms for developing reliable software applications that meet non-functional requirements, such as performance and resource utilisation. The thesis starts with the description of problems that were motivating for the idea of Holistic Fault Tolerance. These problems are related to resource utilisation requirements of modern computer-based systems, since more resources like hardware components and energy are required to process modern computational tasks and ensure performance and reliability of the computation. Moreover, the complexity of these systems grows, leading to maintainability deterioration, especially of those system parts, which are responsible for satisfying non-functional requirements, such as reliability, performance and resource usage. After analysis of the problems and motivations, the engineering approach to Holistic Fault Tolerance is introduced and main engineering steps are defined. Next, an architectural pattern for Holistic Fault Tolerance is presented. The method to refine the proposed architecture and ensure efficiency of a particular system under development is demonstrated during the modelling step. Then the implementation of Holistic Fault Tolerance based on the proposed architecture and modelling is described in detail. Finally, the Holistic Fault Tolerance architecture is evaluated with regards to efficiency and maintainability. The evaluation demonstrates that Holistic Fault Tolerance assists in meeting the non-functional requirements, makes fault tolerance mechanisms easier to maintain and ensures higher modularity of the source cod
    corecore