224,498 research outputs found

    Explanatory and Causality Analysis in Software Engineering

    Get PDF
    Software fault proneness and software development efforts are two key areas of software engineering. Improving them will significantly reduce the cost and promote good planning and practice in developing and managing software projects. Traditionally, studies of software fault proneness and software development efforts were focused on analysis and prediction, which can help to answer questions like `when’ and `where’. The focus of this dissertation is on explanatory and causality studies that address questions like `why’ and `how’. First, we applied a case-control study to explain software fault proneness. We found that Bugfixes (Prerelease bugs), Developers, Code Churn, and Age of a file are the main contributors to the Postrelease bugs in some of the open-source projects. In terms of the interactions, we found that Bugfixes and Developers reduced the risk of post release software faults. The explanatory models were tested for prediction and their performance was either comparable or better than the top-performing classifiers used in related studies. Our results indicate that software project practitioners should pay more attention to the prerelease bug fixing process and the number of Developers assigned, as well as their interaction. Also, they need to pay more attention to the new files (less than one year old) which contributed significantly more to Postrelease bugs more than old files. Second, we built a model that explains and predicts multiple levels of software development effort and measured the effects of several metrics and their interactions using categorical regression models. The final models for the three data sets used were statistically fit, and performance was comparable to related studies. We found that project size, duration, the existence of any type of faults, the use of first- or second generation of programming languages, and team size significantly increased the software development effort. On the other side, the interactions between duration and defective project, and between duration and team size reduced the software development effort. These results suggest that software practitioners should pay extra attention to the time of the project and the team size assigned for every task because when they increased from a low to a higher level, they significantly increased the software development effort. Third, a structural equation modeling method was applied for causality analysis of software fault proneness. The method combined statistical and regression analysis to find the direct and indirect causes for software faults using partial least square path modeling method. We found direct and indirect paths from measurement models that led to software postrelease bugs. Specifically, the highest direct effect came from the change request, while changing the code had a minor impact on software faults. The highest impact of the code change resulted from the change requests (either for bug fixing or refactoring). Interestingly, the indirect impact from code characteristics to software fault proneness was higher than the direct impact. We found a similar level of direct and indirect impact from code characteristics to code change

    Удосконалення моделі ISBSG для оцінювання тривалості програмних проектів для mainframe та розробка програмного забезпечення для її реалізації

    Get PDF
    Мишенін, О. І. Удосконалення моделі ISBSG для оцінювання тривалості програмних проектів для mainframe та розробка програмного забезпечення для її реалізації = Improving the ISBSG model for estimating the mainframe software project duration and developing the software for its implementation : магістерська робота ; спец. 121 “Інженерія програмного забезпечення“ / О. І. Мишенін ; наук. кер. А. В. Пухалевич. – Миколаїв : НУК, 2020. – 98 с.Кваліфікаційна робота на здобуття освітнього рівня магістра зі спеціальності 121 – «Інженерія програмного забезпечення». Національний університет кораблебудування імені адмірала Макарова. Миколаїв, 2020 р. Обсяг роботи: 98 стор., 8 табл., 10 рис., 34 використаних джерела, 5 додатків. Актуальність теми роботи: необхідність підвищення достовірності оцінювання тривалості програмних проектів для mainframe. Мета та завдання дослідження. Метою роботи є підвищення достовірності оцінювання тривалості програмних проектів для mainframe. Об’єкт дослідження: процес оцінювання тривалості програмних проектів для mainframe. Предмет дослідження: математичні моделі для оцінювання тривалості програмних проектів для mainframe. Методи дослідження. Для вирішення поставлених завдань в дослідженні були застосовані методи теорії ймовірностей, математичної статистики, регресійного аналізу. Наукова новизна одержаних результатів: удосконалено нелінійну регресійну модель ISBSG для оцінювання тривалості програмних проектів для mainframe в залежності від трудомісткості розробки цих програмних проектів за рахунок побудови рівнянь границь довірчого інтервалу та рівнянь границь інтервалу прогнозування нелінійних регресій, що дозволяє підвищити достовірність оцінювання тривалості програмних проектів для mainframe. Практичне значення одержаних результатів. Розроблене програмне забезпечення для оцінювання тривалості програмних проектів для mainframe дозволить скоротити час відповідного оцінювання, забезпечить зберігання результатів оцінювання, а також надасть швидкий доступ до результатів попередніх оцінювань. Апробація результатів досліджень. Основні положення і результати досліджень, викладені в роботі, пройшли апробацію на III Всеукраїнській науково-практичній інтернет-конференції студентів, аспірантів та молодих вчених за тематикою «Сучасні комп’ютерні системи та мережі в управлінні» (м. Херсон, 30 листопада 2020 р.). Публікації. Результати роботи опубліковано в 1 матеріалі конференції.The qualification work in obtaining a master's degree in specialty 121 – "Software Engineering". Admiral Makarov National University of Shipbuilding. Mykolaiv, 2020 Volume: 98 p., 8 tables, 10 figures, 34 sources, 5 appendixes. Topic Relevance: Demand of improvement of mathematical models for estimating the duration of software applications development and developing software for its implementation. Research goal and objectives: increasing the reliability of estimation of the duration of the mainframe software application development. Object of research: the process of the estimation the duration of the mainframe software applications development. Subject of research: mathematical models for estimating the duration of the mainframe software applications development. Methods of research: methods of probability theory, mathematical statistics, regression analysis. Scientific contribution: nonlinear regression model ISBSG for estimating the mainframe software project duration depending on the effort was improved by developing the equations of the ranges of confidence interval and prediction interval of the nonlinear regression that enabled increasing the reliability of estimation of the duration of software application development. Practical value of obtained results. Developed software allows to automate and shortening the time of the estimation the duration of software applications development. Approbation of the thesis results. III All-Ukrainian scientific-practical Internet conference of students, graduate students and young scientists on the topic "Modern computer systems and networks in management" (Kherson, November 30, 2020)

    Software cost estimation

    Get PDF
    The paper gives an overview of the state of the art of software cost estimation (SCE). The main questions to be answered in the paper are: (1) What are the reasons for overruns of budgets and planned durations? (2) What are the prerequisites for estimating? (3) How can software development effort be estimated? (4) What can software project management expect from SCE models, how accurate are estimations which are made using these kind of models, and what are the pros and cons of cost estimation models

    From critical success factors to critical success processes

    Get PDF
    After myriad studies into the main causes of project failure, almost every project manager can list the main factors that distinguish between project failure and project success. These factors are usually called Critical Success Factors (CSF). However, despite the fact that CSF are well-known, the rate of failed projects still remains very high. This may be due to the fact that current CSF are too general and do not contain specific enough know-how to better support project managers decision-making. This paper analyses the impact of 16 specific planning processes on project success and identifies Critical Success Processes (CSP) to which project success is most vulnerable. Results are based on a field study that involved 282 project managers. It was found that the most critical planning processes, which have the greatest impact on project success, are "definition of activities to be performed in the project", "schedule development", "organizational planning", "staff acquisition", "communications planning" and "developing a project plan". It was also found that project managers usually do not divide their time effectively among the different processes, following their influence on project success

    Relationship between size, effort, duration and number of contributors in large FLOSS projects

    Get PDF
    This contribution presents initial results in the study of the relationship between size, effort, duration and number of contributors in eleven evolving Free/Libre Open Source Software (FLOSS) projects, in the range from approx. 650,000 to 5,300,000 lines of code. Our initial motivation was to estimate how much effort is involved in achieving a large FLOSS system. Software cost estimation for proprietary projects has been an active area of study for many years. However, to our knowledge, no previous similar research has been conducted in FLOSS effort estimation. This research can help planning the evolution of future FLOSS projects and in comparing them with proprietary systems. Companies that are actively developing FLOSS may benefit from such estimates. Such estimates may also help to identify the productivity ’baseline’ for evaluating improvements in process, methods and tools for FLOSS evolution
    corecore