11 research outputs found

    Experimentation methods in object oriented technology and in agile programming practices

    No full text
    The application of experimental methods for empirical evaluation in object oriented technology and in agile methods constituted the main objective of this dissertation. In the context of object orientation the aim of this dissertation was to research the possi-bility of evaluation of the quality of alternative object oriented designs. Furthermore, another objective in the context of object orientation was to carry out research in the possibility of teaching UML through an Open and Distant Learning Environment. In order to achieve these objectives we organized and executed two controlled experi-ments. The first experiment addressed the issue of alternative design structures, a re-sponsibility-driven (distributed) approach versus a mainframe or control-oriented ap-proach. The results have indicated that the responsibility-driven design due to its de-localised structure, exhibited higher correctness, better extensibility, and design stabil-ity, than the mainframe design. The second experiment focused on the comparison of an ad-hoc resource-effective Open and Distant Learning Environment, which has been specifically created for teaching UML to students, with the traditional teaching environment. The results of the experiment have indicated that teaching UML through an Open and Distant Learning Environment can be equally productive as the tradi-tional teaching approach. In the context of agile methods and extreme programming we have emphasized our research interests in three different research areas, by applying two of the most important assessment and evaluation methods of the empirical software engineering. We first organized and carried out an extended field study in order to research the ex-tend and the means through which agile methods and extreme programming are ap-plied in the Greek software industry. This is the first attempt to research this topic in this area and was carried out in fifteen software companies, during a time period of six months. The results have indicated that the success factors in their implementation were pair programming, test driven development, as well as the interactions and hid-den dependencies between the practices. Furthermore, the results have showed that companies prefer to develop their own tailored XP method and way of working to meet their specific requirements due to problems with some of the practices. In addi-tion, we carried out a survey study in an attempt to redefine the metrics and measure-ments that are used in agile methods and extreme programming. The results of this study have indicated that several new and many of the existing traditional software engineering metrics are used in agile methods. Many of the metrics proposed by us in this study have been used in our experiments. One of the most important findings of this research is the lack of measurements and metrics in the early stages of the devel-opment phase. Finally, we organized and executed a control experiment which aimed to evaluate a certain aspect of the implementation of the pair programming practice. The results of this experiment have showed that developer pairs with mixed personali-ties and temperaments are more effective than pairs with the same personality and temperament. From the conclusions of this dissertation it is clear that experimental techniques contribute effectively in the evaluation, assessment and improvement of important software engineering subjects. The main contribution of the dissertation is to present a methodological framework for the organization and implementation of the experimen-tal evaluation, through different studies. The proposed future experimental research work is necessary for further evaluation and improvement of the two popular fields of software engineering, namely the object oriented technology and agile methods.Η εφαρμογή της πειραματικής έρευνας για την εμπειρική αξιολόγηση, αποτίμηση και βελτίωση των δύο επίκαιρων και σημαντικών ερευνητικών πεδίων, της αντικειμενο-στρεφούς τεχνολογίας και των ευέλικτων μεθόδων, αποτέλεσε το σκοπό της διατρι-βής. Στην αντικειμενοστρεφή τεχνολογία οι στόχοι της έρευνας ήταν η διερεύνηση της δυνατότητας αξιολόγησης της ποιότητας εναλλακτικών αντικειμενοστρεφών σχε-δίων και η διερεύνηση της δυνατότητας διδασκαλίας της γλώσσας μοντελοποίησης UML μέσω της Ανοικτής και εξ Αποστάσεως Εκπαίδευσης (ΑεξΑΕ). Για την επίτευ-ξη αυτών των στόχων οργανώσαμε και εκτελέσαμε δύο ελεγχόμενα πειράματα. Στο πρώτο πείραμα έγινε η σύγκριση δύο εναλλακτικών σχεδιαστικών δομών, μιας κατα-νεμημένης έναντι μιας συγκεντρωτικής. Τα αποτελέσματα του πειράματος έδειξαν ότι η κατανεμημένη δομή σχεδίου παρουσίασε μεγαλύτερο βαθμό ορθότητας, καλύτερη επεκτασιμότητα και σχεδιαστική σταθερότητα από ότι η συγκεντρωτική δομή σχεδί-ου. Στο δεύτερο πείραμα έγινε η σύγκριση ενός περιβάλλοντος ΑεξΑΕ με ελαχιστο-ποιημένους πόρους, που δημιουργήθηκε ειδικά για τη διδασκαλία της UML στους φοιτητές, με το παραδοσιακό περιβάλλον διδασκαλίας. Τα αποτελέσματα του πειρά-ματος έδειξαν ότι η διδασκαλία της UML μέσω ενός ΑεξΑΕ μπορεί να είναι το ίδιο αποδοτική με αυτήν της παραδοσιακής διδασκαλίας. Στον τομέα των ευέλικτων μεθόδων και ιδιαίτερα του δημοφιλούς ακραίου προ-γραμματισμού επικεντρώσαμε το ενδιαφέρον μας σε τρία διαφορετικά ερευνητικά πεδία, εφαρμόζοντας δύο σημαντικές τεχνικές αξιολόγησης και αποτίμησης της ε-μπειρικής έρευνας. Πρώτα οργανώσαμε και πραγματοποιήσαμε μια μελέτη πεδίου με σκοπό τη διερεύνηση της έκτασης και του τρόπου εφαρμογής των ευέλικτων μεθόδων και του ακραίου προγραμματισμού στην Ελληνική βιομηχανία λογισμικού. Η έρευνα, που αποτελεί την πρώτη προσπάθεια σε αυτόν τον τομέα, διεξήχθη σε δεκαπέντε ε-ταιρίες λογισμικού και διήρκησε έξι μήνες. Τα αποτελέσματα έδειξαν ότι οι παράγο-ντες επιτυχίας στην υλοποίηση τους είναι ο προγραμματισμός σε ζεύγη, η από ελέγ-χους καθοδηγούμενη ανάπτυξη του κώδικα, καθώς και η αλληλεπίδραση και οι κρυμμένες αλληλεξαρτήσεις μεταξύ των πρακτικών. Επιπλέον τα αποτελέσματα έδει-ξαν ότι οι εταιρίες, όταν αντιμετωπίζουν διάφορα προβλήματα με μερικές από τις πρακτικές, προτιμούν να εφαρμόζουν τις δικές τους προσαρμοσμένες παραλλαγές, έτσι ώστε να καλύπτουν τις ανάγκες τους. Στην συνέχεια πραγματοποιήσαμε μία βιβλιογραφική έρευνα για την ανασκόπηση των μετρήσεων και μετρικών που χρησιμο-ποιούνται στις ευέλικτες μεθόδους και στον ακραίο προγραμματισμό. Τα αποτελέ-σματα της έρευνας έδειξαν ότι στα ευέλικτα έργα λογισμικού έχουν προταθεί και χρησιμοποιηθεί πολλές νέες μετρικές αλλά και πολλές ήδη δοκιμασμένες και γνωστές από τις παραδοσιακές μεθόδους. Πολλές από τις μετρικές που εμείς προτείνουμε στη μελέτη αυτή, χρησιμοποιήθηκαν στα επόμενα πειράματα. Ένα από τα σημαντικότερα ευρήματα της έρευνας ήταν ότι υπάρχει έλλειψη μετρήσεων και μετρικών στις αρχι-κές φάσεις της ανάπτυξης του λογισμικού. Τέλος οργανώσαμε και εκτελέσαμε δύο ελεγχόμενα πειράματα (ένα πιλοτικό και το κύριο του) για την αξιολόγηση της απο-τελεσματικότητας και του τρόπου υλοποίησης της δημοφιλούς πρακτικής του προ-γραμματισμού σε ζεύγη προγραμματιστών. Τα αποτελέσματα των πειραμάτων έδει-ξαν ότι τα ζεύγη προγραμματιστών με μεικτές προσωπικότητες και ιδιοσυγκρασίες είναι πιο αποτελεσματικά από τα ζεύγη με όμοιες προσωπικότητες και ιδιοσυγκρασί-ες. Από τα συμπεράσματα της διατριβής διαπιστώνεται ότι η εμπειρική απόδειξη και ιδιαίτερα η πειραματική συμβάλλει αποτελεσματικά στην αξιολόγηση, αποτίμηση και βελτίωση σημαντικών τομέων της τεχνολογίας λογισμικού. Η κύρια συνεισφορά της διατριβής είναι να παρουσιάσει, μέσα από διαφορετικές μελέτες, το μεθοδολογικό πλαίσιο οργάνωσης και υλοποίησης της πειραματικής αξιολόγησης. Η προτεινόμενη περαιτέρω πειραματική έρευνα στην αντικειμενοστρεφή τεχνολογία και στις ευέλι-κτες μεθόδους θα συμβάλλει ουσιαστικά στη βελτίωση των δύο αυτών επίκαιρων και δημοφιλών τομέων της τεχνολογίας λογισμικού

    ASSESSING THE MODIFIABILITY OF TWO OBJECT- ORIENTED DESIGN ALTERNATIVES – A CONTROLLED EXPERIMENT REPLICATION

    No full text
    This paper presents a replication study of a controlled experiment, investigating the impact of many design characteristics on one of the most desirable quality factors, modifiability. Two alternative design structures were used; a responsibility-driven (RD) versus a control-oriented “mainframe ” (MF) design. Two groups of undergraduate students participated, each performing on one of the two designs. The subjects designed, implemented in Java, and tested a set of three maintenance tasks in order to assess the degree of their understanding, effort, and performance. The results indicate that the RD version due to its delocalised structure, exhibited higher correctness, better extensibility, and design stability, than the MF version. In order to provide an objective assessment of the differences between the two versions, a considerable number of metrics were used on the delivered solutions, quantifying separately each produced design’s characteristics

    Selecting Refactorings: An Option Based Approach

    No full text
    Refactoring, aims to improve the design of existing code to cope with foreseen software architecture evolution. The selection of the optimum refactoring strategy can be a daunting task involving the identification of refactoring candidates, the determination of which refactorings to apply and the assessment of the refactoring impact on software product quality characteristics. As such, the benefits from refactorings are measured from the quality advancements achieved through the application of state of the art structural quality assessments on refactored code. Perceiving refactoring trough the lens of value creation, the optimum strategy should be the one that maximizes the endurance of the architecture in future imposed changes. We argue that an alternative measurement and examination of the refactoring success is possible, one, that focuses on the balance between effort spent and anticipated cost minimization. In this arena, traditional, quality evaluation methods fall short in examining the financial implications of uncertainties imposed by the frequent updates/modifications and by the dynamics of the XP programming. In this paper we apply simple Real Options Analysis techniques and we perceive the selection of the optimum refactoring strategy as an option capable of generating value (cost minimization) upon adoption. Doing so, we link the endurance of the refactored architecture to its true monetary value. To get an estimation of the expected cost that is needed to apply the considered refactorings and to the effect of applying them, in the cost of future adoptions we conducted a case study. The results of the case study suggest that every refactoring can be associated with different benefit levels during system extension

    A Sensitivity Study of High-Resolution Climate Simulations for Greece

    No full text
    In the present study, the ability of the Advanced Weather Research and Forecasting numerical model (WRF-ARW) to perform climate regionalization studies in the topographically complex region of Greece, was examined in order to explore the possibility of a more reliable selection of physical schemes for the simulation of historical and future high resolution (5 km) climate model experiments to investigate the impact of climate change. This work is directly linked to a previous study investigating the performance of seven different model setups for one year, from which the need was derived for further examination of four different simulations to investigate the model sensitivity on the representation of surface variables statistics during a 5-year period. The results have been compared with observational data for maximum and minimum air temperature and daily precipitation through statistical analysis. Clear similarities were found in precipitation patterns among simulations and observations, yielding smoothly its inter-annual variability, especially during the wettest months and summer periods, with the lowest positive percentage BIAS calculated at about 19% for the selected combination of physics parameterizations (PP3). Regarding the maximum and minimum temperature, statistical analysis showed a high correlation above 0.9, and negative bias around 1−1.5 °C, and positive bias near 2 °C, respectively

    High Resolution Future Projections of Drought Characteristics in Greece Based on SPI and SPEI Indices

    No full text
    Future changes in drought characteristics in Greece were investigated using dynamically downscaled high-resolution simulations of 5 km. The Weather Research and Forecasting model simulations were driven by EC-EARTH output for historical and future periods, under Representative Concentration Pathways 4.5 and 8.5. For the drought analysis, the standardized precipitation index (SPI) and the standardized precipitation-evapotranspiration index (SPEI) were calculated. This work contributed to achieve an improved characterization of the expected high-resolution changes of drought in Greece. Overall, the results indicate that Greece will face severe drought conditions in the upcoming years, particularly under RCP8.5, up to 8/5 y of severity change signal. The results of 6-month timescale indices suggest that more severe and prolonged drought events are expected with an increase of 4 months/5 y, particularly in areas of central and eastern part of the country in near future, and areas of the western parts in far future. The indices obtained in a 12-month timescale for the period 2075–2099 and under RCP8.5 have shown an increase in the mean duration of drought events along the entire country. Drought conditions will be more severe in lowland areas of agricultural interest (e.g., Thessaly and Crete)
    corecore