1,639 research outputs found

    Generalized techniques for using system execution traces to support software performance analysis

    Get PDF
    This dissertation proposes generalized techniques to support software performance analysis using system execution traces in the absence of software development artifacts such as source code. The proposed techniques do not require modifications to the source code, or to the software binaries, for the purpose of software analysis (non-intrusive). The proposed techniques are also not tightly coupled to the architecture specific details of the system being analyzed. This dissertation extends the current techniques of using system execution traces to evaluate software performance properties, such as response times, service times. The dissertation also proposes a novel technique to auto-construct a dataflow model from the system execution trace, which will be useful in evaluating software performance properties. Finally, it showcases how we can use execution traces in a novel technique to detect Excessive Dynamic Memory Allocations software performance anti-pattern. This is the first attempt, according to the author\u27s best knowledge, of a technique to detect automatically the excessive dynamic memory allocations anti-pattern. The contributions from this dissertation will ease the laborious process of software performance analysis and provide a foundation for helping software developers quickly locate the causes for negative performance results via execution traces

    Behaviour based anomaly detection system for smartphones using machine learning algorithm

    Get PDF
    In this research, we propose a novel, platform independent behaviour-based anomaly detection system for smartphones. The fundamental premise of this system is that every smartphone user has unique usage patterns. By modelling these patterns into a profile we can uniquely identify users. To evaluate this hypothesis, we conducted an experiment in which a data collection application was developed to accumulate real-life dataset consisting of application usage statistics, various system metrics and contextual information from smartphones. Descriptive statistical analysis was performed on our dataset to identify patterns of dissimilarity in smartphone usage of the participants of our experiment. Following this analysis, a Machine Learning algorithm was applied on the dataset to create a baseline usage profile for each participant. These profiles were compared to monitor deviations from baseline in a series of tests that we conducted, to determine the profiling accuracy. In the first test, seven day smartphone usage data consisting of eight features and an observation interval of one hour was used and an accuracy range of 73.41% to 100% was achieved. In this test, 8 out 10 user profiles were more than 95% accurate. The second test, utilised the entire dataset and achieved average accuracy of 44.50% to 95.48%. Not only these results are very promising in differentiating participants based on their usage, the implications of this research are far reaching as our system can also be extended to provide transparent, continuous user authentication on smartphones or work as a risk scoring engine for other Intrusion Detection System

    Volume 22 - Issue 12 - Friday, January 9, 1987

    Get PDF
    The Rose Thorn, Rose-Hulman\u27s independent student newspaper.https://scholar.rose-hulman.edu/rosethorn/2260/thumbnail.jp

    The effect of leg lengthening surgery on muscle function : implications for rehabilitation

    Get PDF
    Limb length discrepancy is a common orthopaedic problem, frequently requiring surgical intervention. This thesis is concerned with one method of limb equalisation, leg lengthening surgery. It investigates the effect of leg lengthening surgery on the muscle function and rehabilitation of patients. Qualitative research methodologies demonstrated that there is considerable uncertainty about the best physiotherapy management of patients treated by the Ilizarov method. There is little evidence-basedre search into the rehabilitation of patients treated by this method of surgery. A clinical cohort study was conducted which examined different aspects o f rehabilitation. These included the effects of leg lengthening surgery on joint range of motion, muscle strength and on the ability to perform functional activities. The study of the effect of surgery on joint range of motion highlighted the need for repeatable measurement techniques. It found that there was a significant loss of joint range of motion in the latent period prior to distraction of the bones starting. Factors that influenced loss of joint range in the subjects included in this study included the rate of lengthening, the age and the diagnosis of the patient. A mathematical model was developed to assist in predicting the loss of joint range, at the pre-operative examination. The ability to perform functional activities and the effect on muscle strength were investigated and found to recover for up to 2 years following surgery and the removal of the Ilizarov fixator. Muscle strength recovered to within 5% of the baseline value by 2 years. This emphasises the need for a prolonged period of rehabilitation for patients treated by this method of surgery. Finally a Delphi survey was conducted to produce Clinical Guidelines about the physiotherapy management of patients treated by the Ilizarov method

    A Model-Based Approach for Testing Large Scale Systems

    Get PDF
    This document summarize the author's experience over six years testing large-scale systems.We outline that experience in four points.First, we present a methodology for testing large-scale system. The methodology takes into account three dimensions of these systems: functionality, scalability, and volatility.The methodology proposes to execute tests in different workloads, from a small-scale static system up to a large-scale dynamic system.Experiments show that the alteration of the three dimensional aspects improves code coverage, thus improving the confidence on tests.Second, we introduce a distributed test architecture that uses both, a broadcast protocol to send messages from the test controller to testers and a converge cast protocol to send messages from testers back to the test controller. Experiments show that the architecture is more scalable than traditional centralized architectures when testing systems with more than \num{1000} nodes.Third, we present an approach for using models as dynamic oracles for testing global properties of large-scale systems.This approach focuses on global, liveness, observable and controllable properties. We propose to efficiently keep updating a global model of the system during its execution. This model is then instantiated and evolved at runtime, by monitoring the corresponding distributed system, and serve as oracle for the distributed tests.We illustrate this approach by testing the reliability of two routing algorithms under churn. Results show common flaws in both algorithms.Finally, we present a model-driven approach for software artifacts deployment.We consider software artifacts as a product line and use feature models to represent their configurations and model-based techniques to handle automatic artifact deployment and reconfiguration.Experiments show that this approach reduces network traffic when deploying software on cloud environment

    Cost modelling and concurrent engineering for testable design

    Get PDF
    This thesis was submitted for the degree of Doctor of Philosophy and awarded by Brunel University.As integrated circuits and printed circuit boards increase in complexity, testing becomes a major cost factor of the design and production of the complex devices. Testability has to be considered during the design of complex electronic systems, and automatic test systems have to be used in order to facilitate the test. This fact is now widely accepted in industry. Both design for testability and the usage of automatic test systems aim at reducing the cost of production testing or, sometimes, making it possible at all. Many design for testability methods and test systems are available which can be configured into a production test strategy, in order to achieve high quality of the final product. The designer has to select from the various options for creating a test strategy, by maximising the quality and minimising the total cost for the electronic system. This thesis presents a methodology for test strategy generation which is based on consideration of the economics during the life cycle of the electronic system. This methodology is a concurrent engineering approach which takes into account all effects of a test strategy on the electronic system during its life cycle by evaluating its related cost. This objective methodology is used in an original test strategy planning advisory system, which allows for test strategy planning for VLSI circuits as well as for digital electronic systems. The cost models which are used for evaluating the economics of test strategies are described in detail and the test strategy planning system is presented. A methodology for making decisions which are based on estimated costing data is presented. Results of using the cost models and the test strategy planning system for evaluating the economics of test strategies for selected industrial designs are presented

    INTEGRATING DEVOPS INTO NAVY COMBAT SYSTEMS DEVELOPMENT

    Get PDF
    This thesis seeks to answer three questions concerning the Navy's adoption of DevOps and its practices. Those questions are: What is DevOps in a naval context? What stands in the way of that adoption? What are some ways that the Navy can overcome those obstacles? By drawing upon both an extensive review of literature on the topic, as well as interviews with subject-matter experts, this work provides a comprehensive understanding of the breadth and complexity of the change needed in order for the Navy to adopt a culture of DevOps as well as its attendant practices. Pursuant to the same end, this thesis proposes process architectures for continuous integration, continuous testing, and continuous certification, as well as the reorganization of the Navy's combat systems development hierarchy necessary for the transition to DevOps.Lieutenant, United States NavyApproved for public release. distribution is unlimite

    MAPIT - A Mapping Application for Freshwater Invertebrate Taxa

    Get PDF
    With the increasing popularity of the World Wide Web among internet users across the world, the need for building web based applications is increasing with time. The Western Center for Monitoring and Assessment of Freshwater Ecosystems (WMC) and the National Aquatic Monitoring Center (NAMC) jointly host a central database containing biological data that is used to assess the condition of aquatic ecosystems. The information stored in the database contains biological and, - geographical data. This information is made available easily through a simple but effective tool called MAPIT. MAPIT is a search engine which can be used to search through the environmental and biological data related to aquatic invertebrates and their locations. MAPIT also produces a map of the location of where the individual taxa were collected. Users can also download the data in a standard format for further analysis

    Domain Specific Language Evaluation: OutSystems’ Business Process Technology

    Get PDF
    Domain Specific Languages (DSL) are created with the intent of making problem solving easier via abstractions and notations that are closer to the domain users’ way of thinking. However, in order to fulfil this intent the language must be considered usable by its target audience, which requires using a principled approach, contrary to an ad-hoc philosophy. Unfortunately, language engineers are not always concerned by usability. Usability techniques developed by Human Computer Interaction (HCI) experts are generally focused solely on application interfaces that were not designed to be directly applied to languages. However, previous studies have shown that languages are in essence interfaces between users and the computational system, so applying HCI techniques is not incorrect. However, to the best of our knowledge, there is no simple evaluation process that allows developers to validate their languages, both syntactically and semantically. The OutSystems Platform is a development environment composed of several domain specific languages. It is used to quickly build and validate web and mobile applications. The languages allow users to build interfaces and data models, define custom business logic and construct process models. Howbeit, the DSL for process modelling (Business Process Technology (BPT)), does not have the desired adoption rate and is often used for solving problems out of the intended domain it was originally designed for. This is problematic, given that the language has an associated maintenance cost. The purpose of this dissertation is twofold: create a succinct and easy process for evaluating visual programming languages, and apply the proposed process to BPT in order to identify any usability issues that may be present in the BPT language. The process we developed includes adapted HCI evaluation techniques (such as the Systems Usability Score, Task Load Index and others). After identifying the main problems with the BPT language, the language was updated with a new syntax. We performed a comparison analyses between the original and new syntaxes, which showed that the new version is more transparent and has a significantly higher usability rating.Domain Specific Languages (DSL) são criadas com a intenção de tornar mais fácil a resolução de problemas através de abstrações e notações que são mais próximas da maneira de pensar dos utilizadores do domínio. Isso, no entanto, só é verdade se a linguagem for considerada utilizável pelo seu público-alvo, que requer o uso de uma abordagem baseada em princípios, ao contrário de uma filosofia ad-hoc. Infelizmente, a usabilidade não é um dos aspetos técnicos com que os engenheiros de linguagens mais se preocupam. Técnicas de usabilidade desenvolvidas por especialistas em Human Computer Interaction (HCI) são geralmente focadas exclusivamente em interfaces de aplicações e não foram desenvolvidas para serem diretamente aplicadas a linguagens de programação. No entanto, estudos prévios mostraram que as linguagens de programação são, na sua essência, interfaces entre os utilizadores e o sistema computacional, assim sendo a aplicação de técnicas HCI não é considerada incorreta. No entanto, no decorrer da nossa pesquisa, não foi encontrado nenhum processo de avaliação simples que permita aos engenheiros validar as suas linguagens tanto sintatica como semanticamente. A OutSystems Platform é um ambiente de desenvolvimento composto por várias DSL. Este é usado para construir rapidamente aplicações web e móveis. As linguagens permitem aos utilizadores construir interfaces e modelos de dados, definir lógica de negócios personalizada, e construir modelos de processos. Todavia, a DSL para modelar processos (Business Process Technology (BPT)), não tem a taxa de adoção desejada e é utilizada em problemas fora do domínio pretendido. Isto é devido ao custo de manutenção associado. Esta tese tem dois objetivos: criar um processo sucinto e fácil para avaliar linguagens de programação, e usar esse mesmo processo para identificar quaisquer problemas que possam estar presentes na linguagem BPT. Para conseguir isto, foi desenvolvido um processo simples de acompanhar que inclui técnicas HCI. Uma vez identificados os principais problemas com o BPT, foram feitas alterações à linguagem. Finalmente, foi realizada uma comparação entre a sintaxe original e a nova. Estas mostraram que a nova versão é mais transparente e tem uma classificação de usabilidade significativamente maior
    corecore