Robotics and Software Engineering - IEEE Xplore

4 downloads 118992 Views 71KB Size Report
way that software development is actually practiced in robotics and on the synergy ... control applications meet the tools and methods of software engineering to ...
TC SPOTLIGHT

Robotics and Software Engineering Davide Brugali, Giuseppe Menga, and Franco Guidi Polanco

T

he Technical Committee on software engineering for robotics (TC-SOFT) promotes dissemination activities and public relations that stimulate discussion on the way that software development is actually practiced in robotics and on the synergy between robotics and software engineering. Software engineering for robotics represents a confluence between two disciplines, where the requirements of robot control applications meet the tools and methods of software engineering to analyse, design, and build complex software systems and to enhance their maintainability and reusability. Control applications for autonomous robots are indeed complex software systems. They implement a large variety of algorithms, manage highly heterogeneous computational and robotics resources, and perform multiple concurrent activities on different time horizons (from milliseconds to minutes). Evolution is a recurrent step in their lifecycle. Typically, evolution takes place to address corrections (e.g., during experimentation), enhance modifications (e.g., for integrating new robotic resources), or change requirements (e.g., different tasks or operational conditions for the autonomous robot). Maintainability and reusability are software qualities that positively affect the economical and technical value of robotic software systems. In application domains with similar complexity, maintenance costs have been estimated to range between 85% and 90% of the total cost of a software development project [1]. This cost can be reduced by investing more resources in the development of open and flexible software systems. If a system is flexible, its functionality can be customized by replacing or customizing individual components. If a system is open, individual research groups can contribute to its evolution by providing leading edge research solutions. Several ongoing research projects worldwide pursue the objective to develop open source reusable software components and component systems for robotics (see Table 1). The two most recent initiatives are the Willow Garage ROS project and the EU FP7 BRICS project. The former is well known to the readers, as the “ROS Topics” column is published regularly in the IEEE RAM. The latter is worth mentioning in this column for the Research Camps initiative that may be interesting for the robotics community at large. The first of a series of research camps has gathered in Malaga (Spain) last October for one week where the robotics Ph.D. students worldwide explored, revised, and improved open source software that is considered best practice in mobile manipulation. The interest in the area of software development for robotics by an increasingly large community of researchers and developers stimulates the activities of TC-SOFT. A brief summary of recent activities organized by TC-SOFT members is as follows: Digital Object Identifier 10.1109/MRA.2010.938849

DECEMBER 2010

D. Brugali (Ed.). Software Engineering for Experimental Robotics Springer Tracts in Advanced Robotics, vol. 30, 2007 u D. Brugali and E. Prassler (Eds.). “Special issue on software engineering for robotics,” IEEE Robotics and Automation Magazine, March 2009 u D. Brugali, P. Scandurra, and A. Shakhimardanov, “Two-parts tutorial on component-based robotic engineering,” IEEE Robotics and Automation Magazine, December 2009 and March 2010 u Journal of Software Engineering for Robotics (JOSER), an online, international, peer-reviewed, open access journal, with ISSN registration and lawful free access for any reader without the requirement of a subscription or other fee (http://www.joser.org). Launched January 2009 u D. Brugali et al. “Workshop on software development and integration in robotics (SDIR)” at IEEE ICRA 2005, 2007–2011 u H. Hirukawa and A. Knoll. “Workshop on open source software in robotics” at IEEE ICRA 2009 u A. Shakhimardanov, K. Nilsson, and E. Prassler. “Workshop on rapid application development in robotics” at ICAR 2009 u S. Wrede, I. L€ utkebohle, and D. Brugali. “Workshop on event-based systems for robotics” at IEEE/RSJ IROS 2009 u T. Kotoku, N. Ando, and G. Biggs. “Tutorial on OpenRT middleware” at IEEE/RSJ IROS 2009 and 2010 u N. Hochgeschwender, A. Shakhimardanov, and G. Biggs. “Workshop on best practice in robot control architectures for service robots” at IEEE/RSJ IROS 2010 u H. Hirukawa and A. Knoll. “Workshop towards a robotics software platform” at IEEE/RSJ IROS 2010. The TC-SOFT Web Portal (http://robotics.unibg.it/ tcsoft/) has been recently ported to a more professional content management system that allows to update information about TC-SOFT activities more quickly. It now features five main services to the TC-SOFT community. u NEWS Section: Visitors can get information related to recent, ongoing, and planned activities. u Archive of Past Activities: Visitors can browse the list of past activities and access relevant information such as workshop proceedings, special issue table of contents, and book references. u References of Related Communities: A list of top community sites related to software development for robotics, such as the Object Management Group (OMG) Robotics Domain Task Force, the Microsoft Robotics Community, and the [email protected] Community. u Bibliography: A Web-based shared and annotated bibliography related to software development in robotics. u

IEEE Robotics & Automation Magazine 111

Table 1. Open source projects in robotics. Framework

URL

Licence1

Maintained by

ARIA BRICS MRPT OpenRTM OPRoS Orca OROCOS Player ROS Smartsoft YARP

robots.mobilerobots.com/wiki/ARIA www.best-of-robotics.org babel.isa.uma.es/mrpt www.is.aist.go.jp/rt/OpenRTM-aist opros.or.kr orca-robotics.sourceforge.net www.orocos.org playerstage.sourceforge.net ros.org smart-robotics.sourceforge.net/ eris.liralab.it/yarp/

GPL LGPL/BSD LGPL LGPL/GPL LGPL LGPL/GPL LGPL/GPL LGPL BSD LGPL LGPL

Mobile Robots Inc., USA FP7 BRICS, EU University of Malaga, Spain AIST, Japan Opros consortium, Korea University of Sydney, Australia KUL, Belgium Simon Fraser University, Canada Willow Garage, USA Hochschule Ulm, Germany University of Genova, Italy

1

http://www.opensource.org/licenses/

Glossary: A list of software related terms with links to articles documenting robotics software systems and research results. As a volunteer-based organization, TC-SOFT stands most in need of dedicated volunteers who can contribute in organizing new initiatives and updating the Web Portal with new contents. u

S T U D E N T ’ S

We encourage readers to become members of TC-SOFT by contacting the TC chairs.

Reference [1] L. Erlikh, “Leveraging legacy system dollars for E-business,” IEEE IT Professional, May/June 2000, pp. 17–23.

C O R N E R

(continued from page 106) u

u

u

u

u

u

u

u

It is good to stand up once the time is up. If the speaker exceeds the allotted time by 1 min, politely (but firmly) interrupt the speaker and conclude the presentation. Usually it is best to use the presentation laptop if one is provided by the organizers. In the worst case be ready to run presentations on your laptop if the speaker’s equipment does not work. Introduce all speakers with name, affiliation, and title of the work. Sometimes it is important to call attention to the audience that someone is a student author and/or is participating in a paper competition. Cover this with the presenters while setting up (including the adjustment of the mike), but try to keep it brief, not to steal the time of the presentation. Initiate applause when the presentation ends. You can end the Q&A session with a round of applause yet again. Ask presenters to speak up if necessary. Be mindful for the back of the room! Also, adjust lighting or the ac if necessary! Prepare a question for each presenter in case nobody has questions. This is especially important. A first question may open the way for many others and also shows respect. Repeat questions, or if you have a volunteer, make sure the microphone arrives to the questioner in time. Screen out complex questions and ask for them to be solved offline.

112 IEEE Robotics & Automation Magazine

u

u

u

Manage heated discussions with tact, channel them, and ask to continue in the breaks. Humor may help to lower the tension and shake up the audience. Do not overdo. In case a presenter is missing, you might want to wait to be on schedule. At conferences with several parallel sessions, people rely on presentations not being ahead of time.

End of the Session Thank the presenters and the audience as well. Summarize content if you have time. It may be good to address every talk individually, but remember that people will be ready to head out the door. u Remind the people to fill their evaluation forms, if there is any. u Give information on the upcoming session. Do not forget to reread general announcements if there were any. u Stay around: give an opportunity to people to find you. Share your personal impressions with the speakers in private if they approach you. Chairing a technical session is not only a great opportunity to get involved with the community but also carries great responsibility. However, effectively doing so will provide with a continuous and cohesive experience for all those taking part. u u

DECEMBER 2010