System reliability and operational resilience are two critical success factors in the retail industry that are directly connected to customer satisfaction and business sustainability. Staying competitive in today'...
详细信息
System reliability and operational resilience are two critical success factors in the retail industry that are directly connected to customer satisfaction and business sustainability. Staying competitive in today's dynamic and rapidly evolving market requires rapid adaptability. However, it contradicts the reliability and resilience. This paper proposes an innovative solution, the Retail Resilience Engine (RRE), to establish a balance between these success factors and market demand. It is a unique framework that combines test-driven development (TDD) with a Large Language Model (LLM). This framework follows the state-of-the-art Agentic-AI architecture. It effectively evaluates the decision-making process at rapid speed in retail by incorporating diverse factors, including inventory management, demand forecasting, and customer feedback. As a result, the system reliability is improved significantly. The experimental analysis of the proposed framework shows its decision-making is similar to human experts with a similarity index of 97.5%. It further proves the reliability of the system. The framework also scales effectively, maintaining high accuracy, precision, recall, and F1 scores across varying dataset sizes. The robustness analysis of the system demonstrates the agility enhancement across diverse retail domains, ensuring consistent performance with accuracy exceeding 90% across all tested scenarios. The integration of a creative filtering mechanism further enhances the performance of the RRE framework by preventing 98.2% of the irrelevant inputs. Overall, the proposed RRE framework demonstrates the impressive potential to transform retail systems by enhancing reliability, scalability, and decision-making quality through an Agentic-AI approach.
Scientific software developers are increasingly employing various software engineering practices. Specifically, scientists are beginning to use test-driven development (TDD). Even with this increasing use of TDD, the ...
详细信息
Scientific software developers are increasingly employing various software engineering practices. Specifically, scientists are beginning to use test-driven development (TDD). Even with this increasing use of TDD, the effect of TDD on scientific software development is not fully understood. To help scientific developers determine whether TDD is appropriate for their scientific projects, we surveyed scientific developers who use TDD to understand: (1) TDDs effectiveness, (2) the benefits and challenges of using TDD, and (3) the use of refactoring practices (an important part of the TDD process). Some key positive results include: (1) TDD helps scientific developers increase software quality, in particular functionality and reliability;and (2) TDD helps scientific developers reduce the number of problems in the early phase of projects. Conversely, some key challenges include: (1) TDD may not be effective for all types of scientific projects;and (2) Writing a good test is the most difficult task in TDD, particularly in a parallel computing environment. To summarize, TDD generally has a positive effect on the quality of scientific software, but it often requires a large effort investment. The results of this survey indicate the need for additional empirical evaluation of the use of TDD for the development of scientific software to help organizations make better decisions.
test-driven development (TDD) is a popular design approach used by the developers with testing being the important software development driving factor. On the other hand, mutation testing is considered one of the most...
详细信息
test-driven development (TDD) is a popular design approach used by the developers with testing being the important software development driving factor. On the other hand, mutation testing is considered one of the most effective testing techniques. However, there is not so much research on combining these two techniques together. In this paper, we propose a novel, hybrid approach called TDD+M which combines test-driven development process together with the mutation approach. The aim was to check whether this modified approach allows the developers to write a better quality code. We verify our approach by conducting a controlled experiment and we show that it achieves better results than the sole TDD technique. The experiment involved 22 computer science students split into eight groups. Four groups (TDD+M) were using our approach, the other four (TDD) - a normal TDD process. We performed a cross-experiment by measuring the code coverage and mutation coverage for each combination (code of group X, tests from group Y). The TDD+M tests achieved better coverage on the code from TDD groups than the TDD tests on their own code (53.3% vs. 33.5% statement coverage and 64.9% vs. 37.5% mutation coverage). The TDD+M tests also found more post-release defects in the TDD code than TDD tests in the TDD+M code. The experiment showed that adding mutation into the TDD process allows the developers to provide better, stronger tests and to write a better quality code.
With the advent of HTML 5, we can now develop rich web apps in Javascript that rival classical standalone apps. Nevertheless, developing in Javascript is still challenging and error prone because of the language's...
详细信息
With the advent of HTML 5, we can now develop rich web apps in Javascript that rival classical standalone apps. Nevertheless, developing in Javascript is still challenging and error prone because of the language's ambiguous semantics and quirks. In this paper, we advocate that the popular solution of using another language with better semantics and constructs is not enough. Developers should be provided with an IDE that eases the integration of Javascript libraries and enables testing an application across the many available Javascript interpreters. We introduce PharoJS,(1) an infrastructure that allows testdrivendevelopment (TDD) in Pharo Smalltalk of applications that ultimately run on a Javascript interpreter. PharoJS makes it possible to run interactive tests within the Pharo IDE, so as to fully exploit the debugging and development environment, while UI and libraries reside on the Javascript side. (C) 2018 Elsevier B.V. All rights reserved.
This paper describes the use and benefits of the test-driven development paradigm in parallel application development. A brief background on test-driven development for traditional applications, techniques for paralle...
详细信息
ISBN:
(纸本)9781509048793
This paper describes the use and benefits of the test-driven development paradigm in parallel application development. A brief background on test-driven development for traditional applications, techniques for parallel development, and the xUnit framework is given. This work then gives direction for using the given technologies for the development of parallel applications using the test-driven development process by mapping the functions of a parallel language to the functions of the testing framework as illustrated by a programming assignment given to college sophomores.
This paper advocates the test-driven development of concurrent Erlang programs in order to detect early and eliminate the vast majority of concurrency-related errors that may occur in their execution. To facilitate th...
详细信息
ISBN:
(纸本)9781450308595
This paper advocates the test-driven development of concurrent Erlang programs in order to detect early and eliminate the vast majority of concurrency-related errors that may occur in their execution. To facilitate this task we have developed a tool, called Concuerror that exhaustively explores process interleaving (possibly up to some preemption bound) and presents detailed interleaving information of any errors that occur. We describe in detail the use of Concuerror on a non-trivial concurrent Erlang program that we develop step by step in a test-driven fashion.
test-driven development is one of the foundational Agile techniques with well known benefits. But it has not reached mainstream adoption. One possible reason is the way it is taught. This article presents a thematic a...
详细信息
ISBN:
(纸本)9798331540982;9798331540975
test-driven development is one of the foundational Agile techniques with well known benefits. But it has not reached mainstream adoption. One possible reason is the way it is taught. This article presents a thematic analysis study on challenges and recommendations for those trying to teach test-driven development. It is based on 15 interviews with educators and practitioners from different countries with experience teaching TDD. Our study identified six challenges and 21 recommendations grouped in four themes that can help educators and trainers to design and deliver effective test-driven development training.
Model transformations enable the automated development paradigm proposed by Model driven Engineering. However, since the requirements for building a model transformation are usually expressed informally, requirements ...
详细信息
ISBN:
(纸本)9783642044243
Model transformations enable the automated development paradigm proposed by Model driven Engineering. However, since the requirements for building a model transformation are usually expressed informally, requirements descriptions are difficult: to keep updated and synchronized with their. Corresponding implementations. Therefore, human effort is usually required for validating model transformations. The present work defines a test-driven method for the development;process of model-to-model transformations. This method is focused on the capture of requirements for transformations in such a way that guides the development and the documentation of model transformations. Requirements are expressed by means of test crises that: can be automatically validated. The proposal has been applied to the MOSKitt open source CASE tool in all industrial scenario.
Background: test-driven development (TDD) is a technique that repeats short coding cycles interleaved with testing. The developer first writes a unit test for the desired functionality, followed by the necessary produ...
详细信息
Background: test-driven development (TDD) is a technique that repeats short coding cycles interleaved with testing. The developer first writes a unit test for the desired functionality, followed by the necessary production code, and refactors the code. Many empirical studies neglect unique process characteristics related to TDD iterative nature. Aim: We formulate four process characteristic: sequencing, granularity, uniformity, and refactoring effort. We investigate how these characteristics impact quality and productivity in TDD and related variations. Method: We analyzed 82 data points collected from 39 professionals, each capturing the process used while performing a specific development task. We built regression models to assess the impact of process characteristics on quality and productivity. Quality was measured by functional correctness. Result: Quality and productivity improvements were primarily positively associated with the granularity and uniformity. Sequencing, the order in which test and production code are written, had no important influence. Refactoring effort was negatively associated with both outcomes. We explain the unexpected negative correlation with quality by possible prevalence of mixed refactoring. Conclusion: The claimed benefits of TDD may not be due to its distinctive test-first dynamic, but rather due to the fact that TDD-like processes encourage fine-grained, steady steps that improve focus and flow.
test-driven development (TDD) is a software development practice, where test cases are incrementally written before implementing the production code. This paper presents the results of a multi-case study investigating...
详细信息
test-driven development (TDD) is a software development practice, where test cases are incrementally written before implementing the production code. This paper presents the results of a multi-case study investigating the effectiveness of TDD within an industrial environment. Three comparable medium-sized projects were observed during their development cycle. Two projects were driven without TDD practice, while the third one introduced TDD into the development process. The effectiveness of TDD was expressed in terms of external code quality, productivity, and maintainability. Our results indicate that the TDD developers produced higher quality code that is easier to maintain, although we did observe a reduction in productivity.
暂无评论