robots. We designed and implemented an emulator
based on mobile agents and a virtual machine. Each
emulator could emulate its target robot. Since they
were provided as mobile agents, which can travel be-
tween computers, they could carry and test software
designed to run on their target robots in the same way
as if they had been moved with the robots executed
them, and connected to services within their current
local area networks. Our early experience with the
prototype implementation of this framework strongly
suggested that the framework could greatly reduce
the time needed to develop and test software for net-
worked industrial computers.
REFERENCES
Alur, R. and Wang, B.-Y. (2001). Verifying network pro-
tocol implementations by symbolic refinement check-
ing. In Proceedings of the 13th International Confer-
ence on Computer Aided Verification, CAV ’01, pages
169–181. Springer-Verlag.
Beck, K. (2002). Test Driven Development. By Example
(Addison-Wesley Signature). Addison-Wesley.
Biggs, G. (2010). Applying regression testing to software
for robot hardware interaction. In ICRA, pages 4621–
4626. IEEE.
Chen, I. Y.-H., MacDonald, B. A., and Wunsche, B. C.
(2011). A flexible mixed reality simulation framework
for software development in robotics. Journal of Soft-
ware Engineering for Robotics, 2(1):40–54.
Chung, Y. K. and Hwang, S.-M. (2007). Software testing
for intelligent robots. In 2007 International Confer-
ence on Control, Automation and Systems, pages 40–
54. IEEE.
Davies, N., Blair, G. S., Cheverst, K., and Friday, A.
(1995). A network emulator to support the develop-
ment of adaptive applications. In Proceedings of the
2nd Symposium on Mobile and Location-Independent
Computing, MLICS ’95, pages 47–56, Berkeley, CA,
USA. USENIX Association.
Feamster, N. (2004). Practical verification techniques for
wide-area routing. SIGCOMM Comput. Commun.
Rev., 34(1):87–92.
Gelperin, D. and Hetzel, B. (1988). The growth of software
testing. Commun. ACM, 31(6):687–695.
Laval, J., Fabresse, L., and Bouraqadi, N. (2013). A
methodology for testing mobile autonomous robots.
In 2013 IEEE/RSJ International Conference on Intel-
ligent Robots and Systems, pages 1842–1847.
Le, T., Seshan, S., and Burghardt, F. (1994). Software archi-
tecture of the infopad system. In In Mobidata Work-
shop, page 93.
Musuvathi, M. and Engler, D. R. (2004). Model check-
ing large network protocol implementations. In Pro-
ceedings of the 1st Conference on Symposium on Net-
worked Systems Design and Implementation - Volume
1, NSDI’04, pages 12–12. USENIX Association.
Noble, B. D., Satyanarayanan, M., Narayanan, D., Tilton,
J. E., Flinn, J., and Walker, K. R. (1997). Agile
application-aware adaptation for mobility. In Proceed-
ings of the Sixteenth ACM Symposium on Operating
Systems Principles, SOSP ’97, pages 276–287. ACM.
Park, H. and Seok Kang, J. (2012). Sitaf: Simulation-based
interface testing automation framework for robot soft-
ware component.
Perkins, C. (2002). Ip mobility support for ipv4. Technical
report, RFC, United States.
Petters, S., Thomas, D., Friedmann, M., and von Stryk,
O. (2008). Multilevel testing of control software for
teams of autonomous mobile robots. In Carpin, S.,
Noda, I., Pagello, E., Reggiani, M., and von Stryk, O.,
editors, Simulation, Modeling, and Programming for
Autonomous Robots, pages 183–194, Berlin, Heidel-
berg. Springer Berlin Heidelberg.
Satoh, I. (2006). Mobile Agents, pages 231–254. Springer
US, Boston, MA.
Satoh, I. (2015). An approach for developing software on
robots (short paper). In International Workshop on
Factory Control Systems, 2015, pages 1–2.
Satoh, I. (2019). An approach to testing software on net-
worked transport robots. In 5th International Confer-
ence on Advances and Trends in Software Engineering
(SOFTENG 2019), to appear.
Sistla, A. P., Gyuris, V., and Emerson, E. A. (2000). Smc:
A symmetry-based model checker for verification of
safety and liveness properties. ACM Trans. Softw. Eng.
Methodol., 9(2):133–166.
Udrea, O., Lumezanu, C., and Foster, J. S. (2008). Rule-
based static analysis of network protocol implemen-
tations. Information and Computation, 206(2):130 –
157. Joint Workshop on Foundations of Computer Se-
curity and Automated Reasoning for Security Protocol
Analysis (FCS-ARSPA ’06).
Wang, A., Basu, P., Loo, B. T., and Sokolsky, O. (2009).
Declarative network verification. In Proceedings of
the 11th International Symposium on Practical As-
pects of Declarative Languages, PADL ’09, pages 61–
75. Springer-Verlag.
Whittaker, J. A. (2000). What is software testing? and why
is it so hard? IEEE Software, 17(1):70–79.
Developing and Testing Networked Software for Moving Robots
321