142 research outputs found

    EMPIRICAL CHARACTERIZATION OF SOFTWARE QUALITY

    Get PDF
    The research topic focuses on the characterization of software quality considering the main software elements such as people, process and product. Many attributes (size, language, testing techniques etc.) probably could have an effect on the quality of software. In this thesis we aim to understand the impact of attributes of three P’s (people, product, process) on the quality of software by empirical means. Software quality can be interpreted in many ways, such as customer satisfaction, stability and defects etc. In this thesis we adopt ‘defect density’ as a quality measure. Therefore the research focus on the empirical evidences of the impact of attributes of the three P’s on the software defect density. For this reason empirical research methods (systematic literature reviews, case studies, and interviews) are utilized to collect empirical evidence. Each of this research method helps to extract the empirical evidences of the object under study and for data analysis statistical methods are used. Considering the product attributes, we have studied the size, language, development mode, age, complexity, module structure, module dependency, and module quality and their impact on project quality. Considering the process attributes, we have studied the process maturity and structure, and their impact on the project quality. Considering the people attributes, we have studied the experience and capability, and their impact on the project quality. Moreover, in the process category, we have studied the impact of one testing approach called ‘exploratory testing’ and its impact on the quality of software. Exploratory testing is a widely used software-testing practice and means simultaneous learning, test design, and test execution. We have analyzed the exploratory testing weaknesses, and proposed a hybrid testing approach in an attempt to improve the quality. Concerning the product attributes, we found that there exist a significant difference of quality between open and close source projects, java and C projects, and large and small projects. Very small and defect free modules have impact on the software quality. Different complexity metrics have different impact on the software quality considering the size. Product complexity as defined in Table 53 has partial impact on the software quality. However software age and module dependencies are not factor to characterize the software quality. Concerning the people attributes, we found that platform experience, application experience and language and tool experience have significant impact on the software quality. Regarding the capability we found that programmer capability has partial impact on the software quality where as analyst capability has no impact on the software quality. Concerning process attributes we found that there is no difference of quality between the project developed under CMMI and those that are not developed under CMMI. Regarding the CMMI levels there is difference of software quality particularly between CMMI level 1 and CMMI level 3. Comparing different process types we found that hybrid projects are of better quality than waterfall projects. Process maturity defined by (SEI-CMM) has partial impact on the software quality. Concerning exploratory testing, we found that exploratory testing weaknesses induce the testing technical debt therefore a process is defined in conjunction with the scripted testing in an attempt to reduce the associated technical debt of exploratory testing. The findings are useful for both researchers and practitioners to evaluate their project

    Software Fault Prediction and Test Data Generation Using Articial Intelligent Techniques

    Get PDF
    The complexity in requirements of the present-day software, which are often very large in nature has lead to increase in more number of lines of code, resulting in more number of modules. There is every possibility that some of the modules may give rise to varieties of defects, if testing is not done meticulously. In practice, it is not possible to carry out white box testing of every module of any software. Thus, software testing needs to be done selectively for the modules, which are prone to faults. Identifying the probable fault-prone modules is a critical task, carried out for any software. This dissertation, emphasizes on design of prediction and classication models to detect fault prone classes for object-oriented programs. Then, test data are generated for a particular task to check the functionality of the software product. In the eld of object-oriented software engineering, it is observed that Chidamber and Kemerer (CK) software metrics suite is more frequently used for fault prediction analysis, as it covers the unique aspects of object - oriented programming such as the complexity, data abstraction, and inheritance. It is observed that one of the most important goals of fault prediction is to detect fault prone modules as early as possible in the software development life cycle (SDLC). Numerous authors have used design and code metrics for predicting fault-prone modules. In this work, design metrics are used for fault prediction. In order to carry out fault prediction analysis, prediction models are designed using machine learning methods. Machine learning methods such as Statistical methods, Articial neural network, Radial basis function network, Functional link articial neural network, and Probabilistic neural network are deployed for fault prediction analysis. In the rst phase, fault prediction is performed using the CK metrics suite. In the next phase, the reduced feature sets of CK metrics suite obtained by applying principal component analysis and rough set theory are used to perform fault prediction. A comparative approach is drawn to nd a suitable prediction model among the set of designed models for fault prediction. Prediction models designed for fault proneness, need to be validated for their eciency. To achieve this, a cost-based evaluation framework is designed to evaluate the eectiveness of the designed fault prediction models. This framework, is based on the classication of classes as faulty or not-faulty. In this cost-based analysis, it is observed that fault prediction is found to be suitable where normalized estimated fault removal cost (NEcost) is less than certain threshold value. Also this indicated that any prediction model having NEcost greater than the threshold value are not suitable for fault prediction, and then further these classes are unit tested. All the prediction and classier models used in the fault prediction analysis are applied on a case study viz., Apache Integration Framework (AIF). The metric data values are obtained from PROMISE repository and are mined using Chidamber and Kemerer Java Metrics (CKJM) tool. Test data are generated for object-oriented program for withdrawal task in Bank ATM using three meta-heuristic search algorithms such as Clonal selection algorithm, Binary particle swarm optimization, and Articial bee colony algorithm. It is observed that Articial bee colony algorithm is able to obtain near optimal test data when compared to the other two algorithms. The test data are generated for withdrawal task based on the tness function derived by using the branch distance proposed by Bogdan Korel. The generated test data ensure the proper functionality or the correctness of the programmed module in a software

    The failure of mainstream parties and the impact of new challenger parties in France, Italy and Spain

    Get PDF
    Political parties share a very bad reputation in most European countries. This paper provides an interpretation of this sentiment, reconstructing the downfall of the esteem in which parties were held and their fall since the post-war years up to present In particular the paper focuses on the abandonment of the parties’ founding ‘logic of appropriateness’ based, on the one hand, on the ethics for collective engagement in collective environments for collective aims and, on the other hand, on the full commitment of party officials. The abandonment of these two aspects has led to a crisis of legitimacy that mainstream parties have tried to counteract in ways that have proven ineffective, as membership still declines and confidence still languishes. Finally, the paper investigates whether the new challenger parties in France, Italy and Spain have introduced organizational and behavioural changes that could eventually reverse disaffection with the political party per se

    Reflections on European Values:Honouring Loek Halman's contribution to the European Values Study

    Get PDF
    This book on Reflections on European Values is a Liber Amicorum honouring Loek Halman’s contribution to the European Values Study. For years, he has been a key figure in this longitudinal and cross-national research project on moral, social, and political values, dedicating his academic life to advancing the understanding of values in Europe. This Liber Amicorum is published at the occasion of Loek’s retirement after a long career at the Department of Sociology at Tilburg University. It brings together essays on the study of European values, written by his academic friends. The 32 chapters in this volume are structured in five themes that reflect Loek’s scholarly interest. A first group of contributions presents theoretical and methodological reflections on the European Values Study. Second, essays on the sociology of religion reflect Loek’s interest in this topic. Third, comparative studies using the European Values Study are presented. The fourth part focuses on a case most well-known : the Netherlands. The fifth and final section further deepens the understanding of values in several specific countries in Europe. Upon his retirement, this book will serve as an inspiration for scholars who want to walk in Loek Halman's footsteps in continuing research on values in Europe

    Relationship between personality trait and multi-national construction workers safety performance in Saudi Arabia

    Get PDF
    Given the large economic and social costs of work-related accidents and injuries, it is not surprising that organisations strive to reduce them; this creates a need to improve the safety performance of the whole construction industry. Health and Safety statistics in general appear to suggest a levelling off of safety performance across the construction industry as a whole and this implies that improving safety beyond the current level of attainment calls for a radical look at how safety is addressed by the industry. Such a radical approach needs to explore alternatives to current practices in safety improvement. Although it is acknowledged that human factors are involved in 80-90% of work-related accidents and incidents, the focus of safety research in recent years still addresses only organisational and environmental factors, rather than variables at the level of the individual. Occupational personality models suggest that the ability to understand, predict and control incidents could minimize their potential transition into accidents. The safety behaviour of the individual worker forms part of such occupational personality modelling. Understanding the safety behaviour of construction workers should provide opportunities for improvement beyond traditional practices in the quest to improve safety management. The study on which this thesis is based aimed to develop a conceptual framework for improving safety performance on sites. This was achieved by exploring, on the one hand, the relationship between the personality traits of individual workers and their safety behaviour (safety participation, safety compliance and safety motivation), and incident rates on the other. The data for the analysis was drawn from multi-cultural construction workers in Saudi Arabia. The emergence of the Big Five personality model has been widely accepted as a valid and reasonably generalisable taxonomy for personality structure and has been used by numerous researchers as a framework to explore the criterion-related validity of personality in relation to job performance. This study employed the Big Five categorisation of traits to explore the relationship between fundamental dimensions of personality and potential for involvement in accidents and incidents. The principal findings from the study showed a very good level of acceptance by practitioners in Saudi Arabia for the conceptual framework developed for managing safety behaviour. The study also established that some personality traits moderated the effects of safety behaviour for incident rates. In addition, the analysis revealed that individual workers characterised by conscientiousness and openness are least likely to experience incidents, and consequently, accidents and injuries at work. However, individuals characterised by high extraversion, neuroticism and low agreeableness are more likely to be v involved in incidents, and potentially, accidents and injuries. These important findings have significant ramifications for the way safety development and training for construction workers should be addressed in the future. Recommendations from the study culminated in the development of a conceptual framework for improving safety performance which aimed to minimize incidents attributable to the worker. The framework relies on the attitudes and behaviours of employees in proposing mitigation strategies for the construction industry

    Improvements to Test Case Prioritisation considering Efficiency and Effectiveness on Real Faults

    Get PDF
    Despite the best efforts of programmers and component manufacturers, software does not always work perfectly. In order to guard against this, developers write test suites that execute parts of the code and compare the expected result with the actual result. Over time, test suites become expensive to run for every change, which has led to optimisation techniques such as test case prioritisation. Test case prioritisation reorders test cases within the test suite with the goal of revealing faults as soon as possible. Test case prioritisation has received a lot of research that has indicated that prioritised test suites can reveal faults faster, but due to a lack of real fault repositories available for research, prior evaluations have often been conducted on artificial faults. This thesis aims to investigate whether the use of artificial faults represents a threat to the validity of previous studies, and proposes new strategies for test case prioritisation that increase the effectiveness of test case prioritisation on real faults. This thesis conducts an empirical evaluation of existing test case prioritisation strategies on real and artificial faults, which establishes that artificial faults provide unreliable results for real faults. The study found that there are four occasions on which a strategy for test case prioritisation would be considered no better than the baseline when using one fault type, but would be considered a significant improvement over the baseline when using the other. Moreover, this evaluation reveals that existing test case prioritisation strategies perform poorly on real faults, with no strategies significantly outperforming the baseline. Given the need to improve test case prioritisation strategies for real faults, this thesis proceeds to consider other techniques that have been shown to be effective on real faults. One such technique is defect prediction, a technique that provides estimates that a class contains a fault. This thesis proposes a test case prioritisation strategy, called G-Clef, that leverages defect prediction estimates to reorder test suites. While the evaluation of G-Clef indicates that it outperforms existing test case prioritisation strategies, the average predicted location of a faulty class is 13% of all classes in a system, which shows potential for improvement. Finally, this thesis conducts an investigative study as to whether sentiments expressed in commit messages could be used to improve the defect prediction element of G-Clef. Throughout the course of this PhD, I have created a tool called Kanonizo, an open-source tool for performing test case prioritisation on Java programs. All of the experiments and strategies used in this thesis were implemented into Kanonizo
    corecore