Krishna Saxena, Jesuit High School, Portland, Oregon
Torin Perkins, Central Catholic High School, Portland, Oregon
Catherine Lee, Sunset High School, Portland, Oregon
James Menezes, Westview High School, Portland, Oregon
Bo Li, Logic Technology Development, Technology and Manufacturing Group, Intel Corp
Robotics software reliability is very crucial to control robot hardware while interacting with the physical world to accomplish a set of missions. The software needs to tackle senor errors, faulty functionalities, software exceptions and uncertainties from the external environment. This paper depicts the challenges of attaining software reliability in Android robotics through the experiences of FTC (First Tech Challenge) robotics team, the Bytes of Kitkats.
The software operation profile and software failure modes and effects analysis (SFMEA) is accomplished to prepare the statistic testing to evaluate and improve the software reliability. Software reliability is employed to predict the software reliability growth model(SRGM) through the stochastic process. The objectives are to build the software reliability model with finite or fixed number of inherent defects and accelerate the software reliability improvement process to ensure the robot behaves persistently in the field. Through the case study of building and testing an Android robot with different motors, sensors, and 3D-printed attachments, authors categorized sensor reading uncertainties (e.g., the position of the robot and surrounding objects, etc.) and multiple uncontrollable environmental factors from the physical world in software reliability modeling
The contributions of this paper are:
- To share the engineering experience and lessons learned to brew software reliability in Android robotic software-hardware integrated design, testing, defect removal, and prediction of software errors/corrections in the field.
- To profile the software operation model and establish software failure modes and effects analysis methodologies when interacting with the complex system in the physical world.
- To define the software reliability growth model based on the statistic testing and faulty events, etc. Apply this model to improve the software reliability effectively via handling the faulty in the presence of uncertainties, optimizing user interface to drive the robots, systematically removing defects in Android robots, and multi-objective based autonomous robot driving.