SOFTWARE
One of the goals of wearIT@work project is the definition, design and implementation of an Open Wearable Computing Framework (OWCF), which aims at being a standardized, cost-effective platform that can attract the interest and consensus of the major players in the field of development of wearable applications.
This part of the technology repository describes the major components of the OWCF. OWCF is a framework, or a middleware: it is a software infrastructure that supports the construction (or operation) of other software (i.e. the wearable applications, or, in the scope of wearIT@work, the four pilot applications).
OWCF is a software layer, which enables wearable applications built on top of it to seamlessly take advantage of its functionalities/capabilities. The main reasons for having such a layer are:
- simplify the development of wearable applications
- encourage reuse of software components across different applications
- promote better software engineering practices
OWCF is an artefact of wearIT@work that can outlast the demonstrators developed in the project and that can also potentially outlast the project itself. If wearIT@work succeeds at laying a solid foundation for an effective framework (i.e. a software infrastructure in the sense sketched above), and is able to demonstrate its usefulness, then maintenance and further developments of such a framework may become major activities for a wider community that could be embodied in the envisioned Open Wearable Computing Group (OWCG).
Furthermore, the OWCF is meant to be a standard-based platform. This means that the design and implementation of the framework not only leverage on existing standards, but potentially bring to the modification of existing standards, or the definition of new ones. In fact, project research activities, and software technologies built in the framework may be consolidated through a bottom-up approach in proposals for new standards (or for modifications of existing standards) that may outlast the wearIT@work project. These standardization efforts (supported by thorough research background, solid technical design and implementation, and adequate dissemination) may be inherited and further pursued within the envisioned OWCG or other existing standardization bodies.
The following picture shows the general architecture of the wearIT@work framework in the context of the wearable operating system and the application.
The OWCF has a service-based architecture. A set of services are available for the developers of the end-user application, who can select and use only those that support their specific requirements. The framework has a core component, which provides some basic functionalities both for the framework's services and for the application developers.
There is no single overall system that can be used for all wearable applications. Instead we provide a set of software components (framework services), which can be used together in different applications. The framework services simplify the development process, and encourage the reuse of software components across different applications.
The OWCF is currently developed for two platforms:
- Java (J2SE)
- .NET
The following picture shows the current availability of framework's services on the two platforms:
The service-based architecture provides good extendibility and flexibility. All services are basically independent from each other, and therefore it is possible to extend the framework with new services according to new requirements. At the same time the developers of the end-user application can selectively pick the services that they need to build their application. Our experiences with the four pilots of wearIT@work has confirmed that such architectural approach is valid.
The framework core services are:
- Core Framework
- Context Services
- JContextAPI
- .NET Context Framework - Communication Services: intermittent networking
- User Interface Services: Wearable User Interface Toolkit
- Multimedia Services:
- Content Management Services
- Speech Recognition Services - Workflow Services
There are some framework domain services, which are currently under development:
- Localization Framework
- Collaboration service


