The link between maintenance and product quality, as well as the high cost of software maintenance, highlights the importance of efficient maintenance processes. Sustaining maintenance work efficiency in a global soft...
详细信息
ISBN:
(纸本)9781479921430
The link between maintenance and product quality, as well as the high cost of software maintenance, highlights the importance of efficient maintenance processes. Sustaining maintenance work efficiency in a global software development setting that involves a transfer is a challenging endeavor. Studies report on the negative effect of transfers on efficiency. However, empirical evidence on the magnitude of the change in efficiency is scarce. In this study we used a lean indicator to visualize variances in defect resolution cycles for two large products during evolution, before, during and after a transfer. Focus group meetings were also held for each product. Study results show that during and immediately after the transfer the defect inflow is higher, bottlenecks are more visible, and defect resolution cycles are longer, as compared to before the transfer. Furthermore we highlight the factors that influenced the change in defect resolution cycles before, during, and after the transfer.
Reuse is one of the key benefits of components. It inherently means that the functionality of a component may be employed only partially. This triggers the issue whether all of the component's interfaces have to b...
详细信息
ISBN:
(纸本)0769522459
Reuse is one of the key benefits of components. It inherently means that the functionality of a component may be employed only partially. This triggers the issue whether all of the component's interfaces have to be really bound to the other components in its current environment (missing binding problem). Assuming each of the components is equipped by its behavior protocol [19], we show that missing bindings can be statically identified via verification tools, in particular by employing the concept of bad activity error introduced in [1].
Plug-in frameworks facilitate the development of customizable and extensible software, yet they often lack support for flexible and dynamic (re) configuration. We have created Plux. NET, a novel plug-in framework for ...
详细信息
ISBN:
(纸本)9780769542669
Plug-in frameworks facilitate the development of customizable and extensible software, yet they often lack support for flexible and dynamic (re) configuration. We have created Plux. NET, a novel plug-in framework for plug-and-play composition. In Plux, a composer replaces programmatic composition with automatic composition. Components just specify their requirements and provisions using metadata, and the composer assembles the components guided by that metadata. This paper introduces rule-based composition behaviors, which are a means for controlling the composition process declaratively. Behavior rules constrain the composer by preventing certain operations or by triggering new ones. They help to establish a rule-conformant composition state. Thereby, Plux supports developers in declarative and rule-based composition in order to minimize programming effort.
It is useful if a bug tracking system can detect bug report duplication with unfinished bug reports. To investigate the feasibility, we study relations between accuracy of duplicate bug report detection using features...
详细信息
ISBN:
(纸本)9781467396448
It is useful if a bug tracking system can detect bug report duplication with unfinished bug reports. To investigate the feasibility, we study relations between accuracy of duplicate bug report detection using features extracted from textual information in bug reports and the number of words in bug reports in this paper. The results show that increasing the number of words to be used in duplicate detection over a certain number does not affect the accuracy very much. The results also indicate that we had better use about 100 and 80 words in Eclipse and OpenOffice, respectively, in the detection because we may have many wrong candidates of duplication if we use words of more than the numbers. We thus think that detecting bug duplication in writing a new bug report has potential of giving duplicate bug report candidates.
Model-driven approaches to softwareengineering have expanded their influence in recent years, with Object Management Group's Model-Driven Architecture (MDA) being the major force behind this boost. However, despi...
详细信息
ISBN:
(纸本)9780769530574
Model-driven approaches to softwareengineering have expanded their influence in recent years, with Object Management Group's Model-Driven Architecture (MDA) being the major force behind this boost. However, despite its merits, MDA remains insufficient for software system development, in the sense that it does not provide a concrete and comprehensive process for governing software development activities. There is there re a strongly felt need for new model-driven software development methodologies. In this paper we review a number of existing model-driven methodologies, and propose a general framework for Model-Driven Development (MDD) based on AMA. The framework can be used for assessing and comparing methodologies, engineering new methodologies, and adapting existing ones so that they meet the special requirements of the model-driven approach. We have used the framework herein to show how agile methodologies fare in this model-driven development context.
Background: researchers have a limited understanding of how practitioners conceive of and use evidence. Objective: to investigate how to automatically identify practitioner arguments and evidence in a corpus of practi...
详细信息
ISBN:
(纸本)9781509055753
Background: researchers have a limited understanding of how practitioners conceive of and use evidence. Objective: to investigate how to automatically identify practitioner arguments and evidence in a corpus of practitioner documents, and identify insights for further work. Method: we develop, apply and evaluate a preliminary process to identify practitioner arguments and factual stories, based on the presence of specific words, using a sample of 1,022 blog posts from a software practitioner's blog. Results: we identify unanswered questions relating to the process: selecting and scraping data, cleansing data, parsing components of arguments and stories, selecting the 'right' cases, and validating and interpreting the results. Conclusion: our work provides a foundation for more substantive research on identifying practitioners' evidence and arguments that, in turn, can support research in other areas e.g. evidence informed software practice.
Legacy systems pose significant challenges to companies. software modernization approaches have been proposed to address this issue. However, a lack of standardization and reliance on ad hoc processes often lead to so...
详细信息
ISBN:
(纸本)9798350344172
Legacy systems pose significant challenges to companies. software modernization approaches have been proposed to address this issue. However, a lack of standardization and reliance on ad hoc processes often lead to software modernization failures. Incremental modernization, a strategy that improves software systems in a step-by-step manner rather than attempting to simultaneously overhaul the entire system, aims to mitigate the risk of failure. However, this approach can increase costs owing to the complexity of integrating legacy and modernized products. In this paper, we present a case study that employs a cost-benefit estimation analysis in a large-scale industrial project that underwent incremental modernization in the past. We compare the actual and estimated cost-benefit values in the context of incremental modernization. As a result, we confirmed that the cost estimates were valid, but we could not judge whether the benefit estimates were valid.
The purpose of this study is to analyze the reliability growth of Open Source software (OSS) versus software developed in-house (i.e. Closed Source software, CSS) using software Reliability Growth Model. This study us...
详细信息
ISBN:
(纸本)9780769549224
The purpose of this study is to analyze the reliability growth of Open Source software (OSS) versus software developed in-house (i.e. Closed Source software, CSS) using software Reliability Growth Model. This study uses 22 datasets containing failure data of CSS and 18 datasets containing defect data of OSS projects. The failure data are modelled by eight SRGM (Musa Okumoto, Inflection S-Shaped, Goel Okumoto, Delayed S-Shaped, Logistic, Gompertz, Yamada Exponential, and Generalized Goel Model). These models are chosen due to their widespread use. The results can be summarized as follows All selected SRGM fit to defect data of the OSS projects in the same manner as that of CSS. OSS reliability grows similarly to that of CSS. Musa Okumoto and Inflection S-Shaped perform well for CSS, while for OSS Inflection S-Shaped and Gompertz are good performers. SRGM can be used for reliability characterization of OSS projects.
Embedded control programs are hard to analyse because their behaviour depends on how they interact with hardware devices. In particular, embedded code typically uses interrupts to respond to external events in a timel...
详细信息
ISBN:
(纸本)0769524656
Embedded control programs are hard to analyse because their behaviour depends on how they interact with hardware devices. In particular, embedded code typically uses interrupts to respond to external events in a timely manner Such asynchronous control constructs make static analysis difficult due to the potentially large number of alternative control-flow paths they allow. We show how model checking can be used to effectively analyse the behaviour of interrupt-dependent programs. This is done by developing an abstraction of the code that captures its essential timing and functional properties, including those related to external interrupts. The model is made efficient by grouping program instructions into basic blocks whose behaviour is atomic with respect to interrupts.
software undergoes changes at all stages of the software development process. Accepting too many changes will cause expense and delay and rejecting the changes may cause customer dissatisfaction. One of the inputs tha...
详细信息
ISBN:
(纸本)9780769549224
software undergoes changes at all stages of the software development process. Accepting too many changes will cause expense and delay and rejecting the changes may cause customer dissatisfaction. One of the inputs that help the software project management to decide whether to accept or reject the changes is by having reliable predictions of the impact of the changes. Change impact analysis is one of the methods that can be used to provide the predictive information. Many current impact analysis approaches have been developed for the software maintenance phase. These approaches assume that all classes in the class artifact are completely developed and the class artifact is used as a source of analysis since it represents the final user requirements. However, these assumptions are not practical for impact analysis in the software development phase as some classes in the class artifact are still under development or partially developed. This leads to inaccuracy. This paper presents a novel impact analysis approach to be used in the software development phase. The significant achievements of the approach are demonstrated through an extensive experimental validation using several case studies. The experimental analysis shows improvement in the accuracy over current impact analysis results.
暂无评论