Individual training courses
Would you like a training course tailored to you and your organizations needs? We offer a broad portfolio of training courses on OSGi, Bndtools as well as data and process modeling. All training courses and course content can be adapted to the specific structure and situation of your organization.
The goal of our training courses is to transfer knowledge according to your requirements. Our core elements are thematically prepared training workshops conducted by practitioners with decades of application experience. Depending on the initial situation, additional services are also possible. If required, we can moderate an orientation workshop at your premises prior to the training, in which we analyze your individual situation and recommend suitable content and training structures. If you wish, we can also support you in the follow-up of your training with implementation workshops or help you to multiply the newly acquired skills in your organization.
We will be happy to prepare a suitable offer for you. For all inquiries or information on the subject of training, please contact: training[at]datainmotion.com
Training locations and format
To ensure an efficient transfer of knowledge, we aim for an optimum group size of approx. 15 people.
We conduct the workshops on the premises of your organization in order to establish the closest possible practical connection. If required, remote/online training is also possible, or we can invite you to our company in Jena (maximum 10 participants).
Our current range of training courses
- Dynamic, modular and distributed software architecture with OSGi (2 days)
- OSGi development with Bndtools (1 day) (can be combined with OSGi course)
- Practical modeling with UML and EMF in software development (2 days)
- Modeling as a tool for digital transformation (2 days)
Our training on OSGi and Bndtools
As industry standard, OSGi offers a set of powerful specifications. Bnd or Bndtools is the optimal tool for development with OSGi. As active developers of the Bndtool project, we provide participants with comprehensive insights into the use of Bnd to make it easier to get started or migrate.
OSGi
Introduction
A central aspect of our courses is teaching the core ideas of modularity and dynamics on which OSGi is based. They require a different way of thinking than non-modular systems. When applied correctly, this paradigm shift increases the quality and maintainability of the software and its architecture.
As active members of the OSGi Working Group and chairs of the associated Steering Committee, we have background and detailed knowledge of specifications relating to OSGi. This includes not only programming, but also topics such as architecture, product development, development processes and tooling.
In addition to presentations, our courses also include practical sections to actively learn and practise using the technology. Bndtools is used as tooling, as it simplifies the development process and makes it easier to get started.
Course content (2 days)
Day 1:
- OSGi introduction - Dynamic and modular software with Java
- OSGi Core and OSGi Framework
- Modules and dynamic modules
- Declarative Services and SCR - The tool to orchestrate services
- Whiteboard Pattern / Event Admin - A powerful pattern for a service-based application
Day 2:
- Configurable Systems - Configuration Admin and Configurator
- Service Factories
- Condition Services
Up to this point, the training follows the predefined structure. Subsequently, content specific to your organizational context is covered in greater depth. Following is an example of possible in-depth content:
- Servlet Whiteboard
- Connection to web applications - HTTP and JakartaRs Whiteboard
- Distributed systems - remote services and remote service admin
- Testing with OSGi
- OSGi-fication of jars without OSGi metadata
- Build tools for OSGi: Bndtools, Maven
Bndtools
Introduction
With the latest versions of Bnd, development is easier than ever before. In addition, Bnd enables the correct and instinctive handling of dynamics. This allows for an efficient and clean development process.
As active developers and users of Bnd and Bndtools, we provide insight into their use. From the local development environment to release builds on a CI server, Bnd can do it all. Embedding in both Maven and Gradle is an option.
In addition to presentations, our courses also include practical sections to actively learn and practise using the technology.
Course content (1 day)
- Introduction to Bnd and Bndtools
- Bnd Workspace and Workspace Templates
- Bundle development and API baselining
- Macros, exporters and libraries
- Bnd Project Templates
- CI and release processes
- Bnd with Maven