A Study of Agile-Based Approaches to Improve Software Quality

Agile Software development approaches and techniques are being considered as efficient, effective, and popular methods to the development of software. Agile software developments are useful for developing high-quality software that completes client requirements with zero defects, and in short delivery period. In agile software development methodology, quality is related to coding, which means quality, is managed through the use of approaches like refactoring, pair programming, test-driven development, behavior-driven development, acceptance test-driven development, and demand-driven development. The quality of software is measured using metrics like the number of defects during the development and improvement of the software. Usage of the above-mentioned methods or approaches reduces the possibilities of defects in developed software, and hence improves quality. This paper focuses on the study of agile-based quality methods or approaches for software development that ensures improved quality of software as well as reduced cost, and customer satisfaction.

Automated Testing of Workshop Robot Behavior

Autonomous mobile robots can be found in a wide field of applications. Their types range from household robots over workshop robots to autonomous cars and many more. All of them undergo a number of testing steps during development, production and maintenance. This paper describes an approach to improve testing of robot behavior. It was inspired by the RoboCup @work competition that itself reflects a robotics benchmark for industrial robotics. There, scaled down versions of mobile industrial robots have to navigate through a workshop-like environment or operation area and have to perform tasks of manipulating and transporting work pieces. This paper will introduce an approach of automated vision-based testing of the behavior of the so called youBot robot, which is the most widely used robot platform in the RoboCup @work competition. The proposed system allows automated testing of multiple tries of the robot to perform a specific missions and it allows for the flexibility of the robot, e.g. selecting different paths between two tasks within a mission. The approach is based on a multi-camera setup using, off the shelf cameras and optical markers. It has been applied for test-driven development (TDD) and maintenance-like verification of the robot behavior and performance.