Introduction to 6M

Thousands of software developers are working at TUI. They work in different business units and under different brands within the TUI Group, but many of them face the same challenges and develop similar solutions. This site explains how the software teams develop frontend applications for TUI based on a paradigm called 6M.

The 6M Paradigm

6M is an ecosystem of business components for the web. Each 6M component solves a particular business “problem”. These may be things like a product search, maps with region information, interactive product promotion, or a gallery for hotel images. These components can either be used stand-alone, but they can also be combined into larger workflows or integrated into customer journeys.

The term 6M describes the ideal traits of such a component: it should support …

  • Multiple languages,
  • Multiple currencies,
  • Multiple markets (e.g. Germany, Austria, Sweden, …),
  • Multiple brands (e.g. TUI, Robinson, …),
  • Multiple device types and
  • Multiple tenants.

An ideal 6M component will solve a given business problem (or cluster of problems) in as many different contexts as possible.

The 6M Community

In order to share our knowledge and help each other across organisational boundaries, we maintain a community of practice, involving as many developers as possible from all areas of TUI. Note that the term “developer” does not only include programmers, but also product owners, designers, infrastructure operators and other related roles. Even external companies and their employees (working for TUI on a regular basis) are welcome.

The first step to participate is to join our Slack Workspace. Simply sign up and say hello! Once you have joined, feel free to ask questions, tell us about your work or simply read what others have to say.

6M Technology

Technically, 6M is TUI’s implementation of the Micro Frontend paradigm.

A 6M component has a frontend, which is implemented as a Web Component. It usually also comes with a private middelware service, the “middle layer”, which is the bridge to the backend world.

A 6M component is loosely coupled with other components, the host site and public APIs. This means that it has (almost) no dependencies and cross-effects in the frontend, and only mandatory dependencies to public APIs and backends.

6M layer architecture