780,079 research outputs found

    An algorithmic-based software change effort prediction model using change impact analysis for software development

    Get PDF
    Software changes are inevitable due to the dynamic nature of the software development project itself. Some software development projects practice their own customised methodology but mostly adopt two kinds of methodologies; Traditional and Agile. Traditional methodology emphasizes on detailed planning, comprehensive documentation and extensive design that resulted a low rate of changes acceptance. In contrast, Agile methodology gives high priority on accepting changes at any point of time throughout the development process as compared to the Traditional methodology. Among the primary factor that has direct impact on the effectiveness of the change acceptance decision is the accuracy of the change effort prediction. There are two current models that have been widely used to estimate change effort which are algorithmic and non-algorithmic models. The algorithmic model is known for its formal and structural way of estimation and best suited for Traditional methodology. While non-algorithmic model is widely adopted for Agile methodology of software projects due to its easiness and requiring less work in term of effort predictability. The main issue is that none of the existing change effort prediction models is proven to suits for both, Traditional and Agile methodology. Additionally, there is as yet no clear evidence of the most accurate change effort prediction model for software development phase. One of the method to overcome these challenges is the inclusion of change impact analysis in the estimation process. The aim of the research is to overcome the challenges of change effort prediction for software development phase: inconsistent states of software artifacts, repeatability using algorithmic approach and applicability for both Traditional and Agile methodologies. This research proposed an algorithmic change effort prediction model that used change impact analysis method to improve the accuracy of the effort estimation. The proposed model used a current selected change impact analysis method for software development phase which is the SDP-CIAF (Software Development Phase-Change Impact Analysis Framework). A software prototype was also developed to support the implementation of the model. The proposed model was evaluated through an extensive experimental validation using case scenarios of six real Traditional and Agile methodologies software projects. A comparative study was also conducted for further validation and verification of the proposed model. The analysis result showed an accuracy improvement of 13.44% average mean difference for change effort prediction over the current selected change effort prediction model. The evaluation results also confirmed the applicability for both Traditional and Agile methodologies

    Enabling Multi-Stakeholder Cooperative Modelling in Automotive Software Development and Implications for Model Driven Software Development

    Get PDF
    One of the motivations for a model driven approach to software development is to increase the involvement for a range of stakeholders in the requirements phases. This inevitably leads to a greater diversity of roles being involved in the production of models, and one of the issues with such diversity is that of providing models which are both accessible and appropriate for the phenomena being modelled. Indeed, such accessibility issues are a clear focus of this workshop. However, a related issue when producing models across multiple parties,often at dierent sites, or even dierent organisations is the management of such model artefacts. In particular, different parties may wish to experiment with model choices. For example, this idea of prototypingprocesses by experimenting with variants of models is one which has been used for many years by business process modellers, in order to highlight the impact of change, and thus improve alignment of process and supporting software specications. The problem often occurs when such variants needed to be merged, for example, to be used within a shared repository. This papers reports upon experiences and ndings of this merging problem as evaluated at Bosch Automotive. At Bosch we have dierent sites where modellers will make changes to shared models, and these models will subsequently require merging into a common repository. Currently, this work has concentrated on one type of diagram, the class diagram. However, it seems clear that the issue of how best to merge models where collaborative multi-party working takes places is one which has a significant potential impact upon the entire model driven process, and, given the diversity of stakeholders, could be particularly problematic for the requirements phase. In fact, class diagrams can also be used for information or data models created in the system analysis step. Hence, we believe that the lessons learned from this work will be valuable in tackling the realities of a commercially viable model driven process

    A Re-engineering approach for software systems complying with the utilisation of ubiquitous computing technologies.

    Get PDF
    The evident progression of ubiquitous technologies has put forward the introduction of new features which software systems can sustain. Several of the ubiquitous technologies available today are regarded as fundamental elements of many software applications in various domains. The utilisation of ubiquitous technologies has an apparent impact on business processes that can grant organisations a competitive advantage and improve their productivity. The change in the business processes in such organisations typically leads to a change in the underlying software systems. In addressing the need for change in the underlying software systems, this research is focused on establishing a general framework and methodology to facilitate the reengineering of software systems in order to allow the incorporation of new features which are introduced by the employment of ubiquitous technologies. Although this thesis aims to be general and not limited to a specific programming language or software development approach, the focus is on Object-Oriented software. The reengineering framework follows a systematic step-based approach, with greater focus on the reverse engineering aspect. The four stages of the framework are: program understanding, additional-requirement engineering, integration, and finally the testing and operation stage. In its first stage, the proposed reengineering framework regards the source code as the starting point to understand the system using a static-analysis based method. The second stage is concerned with the elicitation of the user functional requirements resulting from the introduction of ubiquitous technologies. In the third stage, the goal is to integrate the system’s components and hardware handlers using a developed integration algorithm and available integration techniques. In the fourth and final stage, which is discussed in a general manner only in this thesis, the reengineered system is tested and put in the operation phase. The proposed approach is demonstrated using a case study in Java to show that the proposed approach is feasible and promising in its domain. Conclusions are drawn based on analysis and further research directions are discussed at the end of the study

    A Change Support Model for Distributed Collaborative Work

    Full text link
    Distributed collaborative software development tends to make artifacts and decisions inconsistent and uncertain. We try to solve this problem by providing an information repository to reflect the state of works precisely, by managing the states of artifacts/products made through collaborative work, and the states of decisions made through communications. In this paper, we propose models and a tool to construct the artifact-related part of the information repository, and explain the way to use the repository to resolve inconsistencies caused by concurrent changes of artifacts. We first show the model and the tool to generate the dependency relationships among UML model elements as content of the information repository. Next, we present the model and the method to generate change support workflows from the information repository. These workflows give us the way to efficiently modify the change-related artifacts for each change request. Finally, we define inconsistency patterns that enable us to be aware of the possibility of inconsistency occurrences. By combining this mechanism with version control systems, we can make changes safely. Our models and tool are useful in the maintenance phase to perform changes safely and efficiently.Comment: 10 pages, 13 figures, 4 table

    Flexible Global Software Development (GSD): Antecedents of Success in Requirements Analysis

    Get PDF
    Globalization of software development has resulted in a rapid shift away from the traditional collocated, on-site development model, to the offshoring model. Emerging trends indicate an increasing interest in offshoring even in early phases like requirements analysis. Additionally, the flexibility offered by the agile development approach makes it attractive for adaptation in globally distributed software work. A question of significance then is what impacts the success of offshoring earlier phases, like requirements analysis, in a flexible and globally distributed environment? This article incorporates the stance of control theory to posit a research model that examines antecedent factors such as requirements change, facilitation by vendor and client site-coordinators, control, and computer-mediated communication. The impact of these factors on success of requirements analysis projects in a “flexible” global setting is tested using two quasi-experiments involving students from Management Development Institute, India and Marquette University, USA. Results indicate that formal modes of control significantly influence project success during requirements analysis. Further, facilitation by both client and vendor site coordinators positively impacts requirements analysis success

    Control, Process Facilitation, and Requirements Change in Offshore Requirements Analysis: The Provider Perspective

    Get PDF
    Process, technology, and project factors have been increasingly driving organizations to offshore early software development phases, such as requirements analysis. This emerging trend necessitates greater control and process facilitation between client and vendor sites. The effectiveness of control and facilitation has, however, not been examined within the context of requirements analysis and change. In this study, we examine the role of control and facilitation in managing changing requirements and on success of requirements gathering in the Indian offshore software development environment. Firms found that control by client-site coordinators had a positive impact on requirements analysis success while vender site-coordinators did not have similar influence. Process facilitation by client site-coordinators affected requirements phase success indirectly through control. The study concludes with recommendations for research and practice
    corecore