ITEA Services for All (S4ALL) Final Report for HIIT Kenneth Rimey 16.1.2008 Project duration: 19.1.2005 30.9.2007 Tekes diary number: 46/31/05, 3419/31/05 Decision number: 40290/05, 40131/06 Introduction The ITEA Services for All (S4ALL) project set out to make possible a world of user-centric services that are easy to create, share, and use. HIIT's contribution focused on developing the Interactive Service Composer for S60, and demonstrating the usefulness of this in the device management domain in collaboration with Capricode Oy. We also developed a number of useful open source libraries and tools for rapid service development on mobile phones using scripting language technologies. Much of our work was done with the Python programming language on S60 phones. S4ALL was a European project labeled by ITEA and led by Alcatel, with partners in France, Finland, Germany, and Spain. The Finnish partners were HIIT, Capricode Oy, and Nokia. This report addresses only HIITʼs contribution. S4ALL envisioned providing end users with an interactive application enabling them to compose useful applications by combining component web services. HIIT created a working prototype of this Service Composer for the mobile phone. We then proceeded to develop this as a flexible controller for the SyncShield device management server from Capricode. We also developed a number of enhancements to the scripting tool set, such as a wrapper generator to facilitate access from scripts to the phone's various native application database APIs, and a compatibility library enabling running of many scripts on the desktop for testing purposes. The project generated two masters theses and an assortment of useful open source software. Results The original project proposal defined two work areas service prototypes and scripting for rapid service development. We developed the Interactive Service Composer concept soon after starting the project and outlined our plans for this in the 2006 update to the project plan. As the project progressed, we further shifted our focus towards applications of service composition to device management in order to better align ourselves with the interests of the Finnish consortium.
Interactive Service Composer HIIT created an initial prototype of an Interactive Service Composer for S60 phones. This is a graphical application that enables end users to compose primitive actions selected from a library into linear workflows. This limited form of programming is easy to learn and yet useful for many practical tasks. The actions can be web service invocations or operations acting upon the phone itself. This application was first demonstrated for the project consortium on 6.4.2006 in Grenoble. We focused a substantial part of our subsequent work on the application of Composer to the domain of device management. This was done in collaboration with Capricode Oy, based on their SyncShield device management server. SyncShield enables an operator or SME to manage handheld devices through OMA device management. In the case of S60 third edition phones, this utilizes Nokiaʼs integrated device management agent. We adapted Composer as an alternative, programmable controller for SyncShield. The idea is to enable, say, an IT manager for an SME to perform urgent management operations on employee mobile phones from his own mobile phone when he is away from his desk and does not have a laptop with him. The operations we prototyped (to varying levels of completion) were locking a lost or stolen phone, initializing a new phone, and sending updated settings to a phone. Capricode provided us with appropriate SOAP web service interfaces to SyncShield for this purpose. For performance reasons, however, we preferred to invoke REST-style web services from Composer. To make this possible, we implemented a server-based proxy component to convert between the two protocols. We demonstrated all of this for Capricode and Nokia at our closing seminar in Oulu on 24.9.2007. Service Prototypes Here is a brief summary of our work on the three service concepts outlined in the original project plan. Household Device Manager My personal work during the first half of 2006 focused on ad hoc device groups, or the problem of how to enable the personal devices belonging to an individual or family to recognize each other. Based on this experience, however, I took the work in a new direction starting in the second half of 2006, in the context of the EU FP6 P2P-Fusion project. There we are taking an information networking approach, embracing public-key cryptography, even if this restricts usage of the technology on todayʼs handheld devices. This line of work has produced input for the Information Networking work package of the Future Internet ICT-SHOK initiative. Contextual Messaging We completed and published PyS60 and Nokia Internet Tablet XMPP clients as a foundation for further work, which we did not continue. Digital Asset Management We completed a report on the state of the art in Alternatives to Hierarchy in Organizing a Personal Archive. We chose to take the prototyping work forward in the context of the EU FP6 P2P-Fusion project instead of S4ALL.
Scripting for Rapid Service Development Desktop Emulation of Symbian OS Scripts Review and publication of the software was completed in 2005. Several enhancements, including canvas and graphics support, were subsequently contributed by members of the open source community. The software is available at SourceForge (sf.net) as pys60-compat. It has been downloaded several thousand times, and we have received positive feedback from several users. Tools for exposing native services One of the project members has written a preliminary draft of a licentiate thesis in the area of domain-specific languages and software development tools for high-end embedded systems. In particular, he is studying the problem of how to make it easier to expose system APIs, including Symbian C++ APIs, as interfaces for invocation from dynamic languages, such as Python, or for use in a serviceoriented architecture (SOA). See the following section for more information about our software development activities. We have also done work on replicated file systems and on identity and security issues in web mashups. Software Open source software published by HIIT included the following. Interactive Service Composer application on PyS60. Jabber clients for PyS60 and the Nokia 770 Internet Tablet. Pretty-printing engine (qretty) for generating C++ code. Miso Toolkit a set of libraries and development tools for Python for S60 programming. The libraries expose some of the S60 platform functionality to Python programmers, while the tools are intended to assist in creating and building more Python extensions. See http://www.hiit.fi/files/fi/da/miso/. - Miso Utilities (PyS60 library) - Miso Alarm (PyS60 library) - Miso Build Tool aka Sake (PyS60 extension build system) - Miso Compiler aka wrapgen (C++ metaprogramming system) Ports to S60 of the Python ctypes module and libffi (foreign function interface). PDIS Messaging Toolkit (messkit). Updated PDIS XPath evaluator (pdis-xpath at sf.net). Updated PyS60 Compatibility Library (pys60-compat at sf.net). Reference snapshot of the PDIS source tree. Work on the PDIS concept is now continuing in the EU FP6 P2P-Fusion project, with a new information networking orientation.
Publications The project resulted in two masters theses, one workshop paper, and one HIIT technical report, as well as some internal reports. Ville Mäntysaari, Service Composition on a Mobile Phone, masters thesis, University of Helsinki, November 2007. Tuomas Piispanen, Business Process Management: State of the Art Technologies, masters thesis, Helsinki University of Technology, January 2008. Tero Hasu, Programmatic Building of Models Just for Pretty Printing, 6th OOPSLA Workshop on Domain-Specific Modeling, Seattle, 2006. Pekka Kanerva, State of the Art of SOAP Libraries in Python and Ruby, HIIT Technical Report 2007-2. Tea Silander, State of the Art in Alternatives to Hierarchy in Organizing a Personal Archive, internal report, 2006. Tero Hasu, S4ALL Wrapper Generator: June 2006 Milestone Report, internal report, 2006. Personnel HIIT researchers participating in S4ALL were as follows: Kenneth Rimey Tero Hasu Ville Mäntysaari Pekka Kanerva Tea Silander (2005-2006) Tuomas Piispanen (2006-2007) Tancred Lindholm (2005) Sasu Tarkoma (2007) The total effort was approximately 10 person-years, spread fairly evenly among the three calendar years (2005 2007). Finnish and European Cooperation The Finnish consortium met on 31.8.2005, 6.4.2006, 9.6.2006, and 24.9.2007 (final seminar at Capricode Oy). HIIT participated in S4ALL meetings in France on 1.7.2005, 12.9.2005, 5-6.12.2005, 14.3.2006, 7.4.2006, 28-29.6.2006 (first ITEA review), and 20.6.2007 (final ITEA review). Several HIIT researchers also attended the 22.2.2007 S4ALL workshop in Berlin. HIIT presented a well-received demonstration of its handheld Interactive Service Composer to representatives of ITEA, funding agencies, and consortium members at the S4ALL first-year review on 29.6.2006 in Paris. The European consortium held its final ITEA review in Paris on 20 June 2007, with Kenneth Rimey representing HIIT and Risto Mäkikyrö representing Tekes.
The Finnish consortium (Nokia, Capricode, and HIIT) held a final seminar at the premises of Capricode Oy in Oulu on 24 September 2007, at which HIIT demonstrated its adaptation of the S60-based Interactive Service Composer application to interface with Capricode's SyncShield device management server. HIIT also demonstrated its S60 Questioner application and associated BPEL-based service implementation. The S60 client for the SyncShield server is a potential product concept for Capricode, who wrote the following in their 29.10.2007 press release: "In S4ALL ITEA project the idea of flexible MDM was taken one step further: to administrate mobile devices from another mobile device... The benefit...is that IT administration does not have to be at a workstation for executing device management operations. This means that IT support can e.g. remotely lock an employeeʼs device from his/her mobile phone in a case of theft or loss emergency." Contact Information For further information, please contact the author: Kenneth Rimey Senior Research Scientist Helsinki Institute for Information Technology (HIIT) +358-40-580 7717 rimey@hiit.fi Attachments 29.10.2007 press release by Capricode Oy: ITEA ʻServices for Allʼ project ended SyncShield successful in mobile service delivery. Collected quarterly progress reports. Abstract of Ville Mäntysaariʼs masters thesis: Service Composition on a Mobile Phone. Abstract of Tuomas Piispanenʼs masters thesis: Business Process Management: State of the Art Technologies. Tero Hasu, Programmatic Building of Models Just for Pretty Printing, 6th OOPSLA Workshop on Domain-Specific Modeling, Seattle, 2006. Pekka Kanerva, State of the Art of SOAP Libraries in Python and Ruby, HIIT Technical Report 2007-2. Tea Silander, State of the Art in Alternatives to Hierarchy in Organizing a Personal Archive, internal report, 2006. Tero Hasu, S4ALL Wrapper Generator: June 2006 Milestone Report, internal report, 2006.