CJML is a formal language for the specification and visualization of customer journeys and service processes. It is centered around humans and human activities, regardless of their role being a customer, user, citizen, consumer, patient, or employee…
Customer journeys are modeled as sequences or constellations of touchpoints for a customer to achieve a specific goal or outcome.
Actors are people who played an important role in your customer journey. All the actors involved in the journey have a separate swimlane. An actor could be a customer, user, citizen, consumer, patient, employee, attacker, system…
Actions are non-communicative events or activities conducted by an actor as part of a customer journey
For example, in a scenario that a customer wants to buy a pizza in the store, then 'reading menu and choosing pizza' is the customer's action.
Communication points are instances of communication or interaction between, for example, a user and a service provider
Communication points form "the backbone" of a customer journey, and they are associated with
For example, a customer 'paying for the pizza' is an interaction with the cashier in the pizza store, the cashier 'receiving customer's payment'. They might not have any conversation but this 'payment activity' needs two actors to be done in the in-store pizza purchasing scenario.
A communication point has a sender and a receiver that must be positioned in the corresponding swimlanes of the actors.
Everything/activities/events that might lead to an unwanted incident.
Activities/events that harm your assets.
To determine the Threat and Unwanted incident in customer journey, you have to clarify the asset that you want to protect in your scenario.
An asset is something has value and requires protection.
CJML diagram generator is a tool for users to make CJML swimlane diagrams by only filling in a simple form.
['Time' in the form is not required and the touchpoints will be sorted by time only after you filled in all touchpoint's start times]
After finishing adding all the actors information, add some touchpoints to describe your scenario.
Action
Communication Point
Scenario: You chose a restaurant, made an order and paid for it in the food app. After the restaurant received and confirmed your order by the app, you received a receipt and a confirmation SMS from the restaurant. The restaurant started making your pizza after they received your order. when the pizza was ready, they informed and waited for the delivery person to pick up the pizza. The delivery person picked up the pizza and then delivered it to you.
Scenario: A SME is exposed to a phishing attack. Several employees receive an e-mail asking them to log on to the company intranet. It turns out to be a fake intranet site. Now, one of the employees logs in and the hacker thus can access her login credentials. The employee do suspect that something went wrong and decides to alert the security team.
All service processes involve some steps, and it is not always easy to determine what are individual steps and how the delineation should be.
The general rule is that the process should be divided into touchpoints carrying "the smallest unit of meaningful content" considering the purpose of the mapping.
Another general rule is that when the communication channel change, a new step begins.
The description of a step is always a simplification. To illustrate this, when making a phone call some steps that are not necessary to describe, e.g. "holding the phone to the ear".
Delineation of steps must always be seen in relation to relevance. The step "dialing the telephone number" is usually not important to include. But in a process map for emergency routines, this step might be essential.
Steps that are essential:
Communication, as it is defined in CJML, requires that a sender sends a message directed towards a defined actor in a specific context.
Note that acquisition of information (perception and cognition) is not defined as communication in CJML unless the information is communicated actively to an intended receiver and in the context of a journey.
Example 1: John is reading the electricity meter and
writes down the number on a piece of paper.
This step is an action, as John has not yet communicated the number to anyone.
Example 2: John sends the meter reading to the utility company through an SMS.
This step is definitely a communication point,
as the message is actively sent to an intended receiver.
Other examples:
Examples of touchpoints that involve direct communication:
Examples of touchpoints that are not defined as direct communication: