Tools and prep for work

Know your tools and prepare for work

Hi and welcome to another article of the Akino Fishing Company BPM initiative series.

Last week we described our pilot process in plain english. We wrote what is the process, what does it do, what are the expected inputs and outputs and how the information is processed.

Today we’ll start with that description, do a little preparation work around it and we’ll get to know the tools we’ll be using to build our BPM project.

Preparation for Work

A quick recap

Parking Space

Parking Spaces. Image by Maarten

So, our pilot process is the now famous “Request a parking space” process. After starting with a very simple/direct description (the happy path):

This process starts with a request from someone, either internal or external to the company. The requester fills in a small form with his name, his company name and the period in which he will need the parking space. The system will check if there are available parking spaces in that period and returns a response to the requester: Either “Please park on parking space X” or “We’re sorry but there are no parkins spaces available for that period”

we then elaborated it, adding depth and “not so happy” paths, without going overboard with the complexity to reach this:

This process starts with a request from an external entity or an employee, by filling and submitting a simple form with the following fields:

  • Name
  • Company name
  • Period to use the parking space
    • Date
    • Start Time
    • End Time

The system will then check if there are any parking spaces available for that period.

If the requester is NOT an Akino Fishing Co. employee and

  • The system returns that the requester can take parking space X, then
    • The requester is presented with a message stating “Your parking space is reserved. Please park on space X. Thank you”
  • The system returns that there are no spaces available, then
    • The requester is presented with a message stating “We’re sorry but currently there aren’t any parking spaces available in the requested period. Would you care to leave us your contacts and we’ll try to arrange a parking space for you?”, together with 2 fields: e-mail and mobile number.
    • If the requester chooses to submit the contact information, the system should create a task to a group of people, called “concierge”, that will try internally to arrange a space.
      • If they can, they’ll mark the task as OK and give the information about the parking space number. From then, the system will generate an e-mail and/or an SMS to the requester, depending on the contact data they filled in, stating that they can use parking space X.
      • If they can’t, they’ll mark the task as NOT OK. From then, the system will generate an e-mail and/or an SMS to the requester, depending on the contact data they filled in, stating that despite the efforts they couldn’t arrange a space.
  • The system doesn’t return anything, then
    • The requester is presented with a message stating “We’re sorry but we can’t check parking space availability right now. Would you care to leave us your contacts and we’ll try to arrange a parking space for you?”, together with 2 fields: e-mail and mobile number.
    • If the requester chooses to submit the contact information, the system should create a task to a group of people, called “concierge”, that will try internally to arrange a space.
      • If they can, they’ll mark the task as OK and give the information about the parking space number. From then, the system will generate an e-mail and/or an SMS to the requester, depending on the contact data they filled in, stating that they can use parking space X.
      • If they can’t, they’ll mark the task as NOT OK. From then, the system will generate an e-mail and/or an SMS to the requester, depending on the contact data they filled in, stating that despite the efforts they couldn’t arrange a space.

If the requester is an Akino Fishing Co. employee and

  • The system returns that the requester can take parking space X, then
    • The requester is presented with a message stating “Your parking space is reserved. Please park on space X. Notice that you may need to give up your seat, if it’s deemed necessary to receive visitors.Thank you”
  • The system returns that there are no spaces available, then
    • The requester is presented with a message stating “We’re sorry but currently there aren’t any parking spaces available in the requested period. Thank you”
  • The system doesn’t return anything, then
    • The requester is presented with a message stating “We’re sorry but we can’t check parking space availability right now. Check back later. Thank you”

This is the process we’ll model.

The Analyst Method

At Red Mavericks we like to exercise our creativity, do things out of the ordinary, but sometimes, we need to do things with a certain consistency, with a certain methodology. For instance, to pickup information from a plain English description into structured information we follow a certain method. Now, again, there are other ways to do it, but we like to do it like this.

We go through a series of steps:

  1. Identify the verbs in the process description
  2. Identify the nouns in the process description
  3. Identify decision words (if, then, else, while, when, until, or, and, not)
  4. Identify time associating words (after, before, during, at start, in the end, prior)
  5. Build a table with your findings, identifying for each finding their type(1, 2, 3, or 4) and try to answer the 3W1H (What, Who, When and How)

it may not seem like it at the moment, but 80% of what you need to know to model your process is right here. Now eliminate any repitions that mean the same. For instance, in the description you have “…The requester is presented with a message stating “We’re sorry but currently there aren’t any parking spaces available in the requested period. Would you care to leave us your contacts and we’ll try to arrange a parking space for you?”, together with 2 fields: e-mail and mobile number. If the requester chooses to submit the contact information…“. In this case keep only e.mail and mobile number, as the contact information already refers to these two fields.

I’ll let you do the work for now, and identify them for yourself. Come back in 10 minutes when you’re finished. :)

10 Minutes

You should end up with a list similar to this one, give or take a few:

  1. Verbs – filling form, submitting form, check available spaces, returns message, submitting contact information, create a task, generate e-mail or SMS,
  2. Nouns – Request, Requester, Form, Name, Company Name, Period Date, Period Start Time, Period End Time, External Entity, Employee, Parking Space, Message, E-mail, Mobile Number, System, Task, Concierge
  3. Decisions – if there are any parking spaces, if the requester is NOT an Akino Fishing Co. employee, if the system returns that the requester can take parking space X, if the system returns that there are no spaces available, if the requester chooses to submit the contact information, “if they can, they’ll mark the task as OK”, “if they can’t, they’ll mark the task as NOT OK”, if the system doesn’t return anything
  4. Time Associations – This process starts with a request, the system will then check, “from then, the system will generate an e-mail”

The Tools and Artifacts

My Lego

Designing a BPMN process model is a bit like playing with Legos. You have your building blocks and you have rules to connect them (in the Lego blocks the rules are Physics). You can configure and change your blocks, so that their behavior changes, which is something you can’t do with your normal Legos. Consider it a bonus.

BPMN: Business Process Modelling Notation.

It’s a notation to represent process models that ensures a relatively easy way of understanding a process and that allows an actual implementation. Oracle BPM Suite uses BPMN models to represent and actually automate and execute processes, so there’s never a gap between what is designed and what is actually running. And because it’s a standard, it ensures easy import/export from several tools because the process models are the same.

As with all games, you first need to know the pieces you use, the rules of the game and the playing field/board, so that’s what we’ll do now.

There are 6 different types of pieces/blocks

  • Tasks to be performed by users
  • Automated tasks to be done by systems
  • Groups of tasks built together that do something self contained – subprocesses
  • Decision points where, depending on conditions, the process does different things
  • Tasks that represent events
  • Measurement instruments, used to collect information on specific parts of the process

There are several subtypes that belong to a given block type, each with a specific behavior. For instance, users tasks can be:

  • A “normal” user task, where a user fills in the associated information and registers the task result
  • For your information (FYI) tasks, meant to give some information to the user and for him to confirm he received it. This task type doesn’t wait for a user intervention to allow the process flow to continue
  • The initiator task, which has built-in capabilities to allow someone to start a process on their own
  • Approval cycle tasks, a.k.a. Management tasks, which are tasks that need to be performed by several persons inside an approval cycle. For instance, I respond, my superior confirms my decision, his superior also confirms and so on.
  • Voting tasks, which consider that the task is performed when a voting result is reached. You can configure the expected voting result. This task is sent to a group of people. For instance, you can set the if 3 out of 5 people vote yes, the task is marked as done with a “Yes” result.
  • Manual tasks are tasks that are performed without any control of any system. We use manual tasks to represent work that needs to be done, but without actual interaction with any system or the BPM Suite.

We’ll provide a list of the most common building blocks of Oracle BPM Suite in a nice poster so that you can print it, and a wallpaper for your PC and mobile devices. It will be available in the next few days.

Connecting the description with your Lego pieces

Now that you know your Lego pieces, let’s connect them to what we found out about our process description:

  • The verbs with tasks (automated and human)
  • The nouns with roles, groups (refers to “who”) or data (refers to “what”)
  • Decision words with decision points (gateways)
  • Time associated words order the previous points (one after the other)

The Oracle Process Composer

We know our process, we know our building blocks, we now need to know our playing field: the Oracle BPM Process Composer.

The Oracle BPM Process Composer

The Oracle BPM Process Composer

In the latest 12c version, the process composer suffered a major overhaul, with a large number of new features brought in, a new Business Architecture area, and a man improvement on robustness, performance and ease of use. You can now really do a complete end-to-end process, from design to modelling, to implementation, to testing, to deployment without the use of any other tool (No more of that JDeveloper – good news to business analysts) and in a very easy way. That’s what we’ll be focusing on this pilot project: how to get business users, not IT staff, to do all of these things by themselves.
So, the process composer is now a tool divided into two areas: the business architecture area, suitable to model an Enterprise-wide BPM initiative, with the use of enterprise process maps, strategy models and value chain diagrams;

The Business Architecture part of Process Composer

The Business Architecture part of Process Composer

and the BPM project area, suitable to model, implement and deploy BPM processes.
We’ll be working on the BPM project area for now.

Process Composer BPM Project Area

Process Composer BPM Project Area

Let’s take a closer look at it.

The BPM project area

This area is divided into logical concepts:

Process Composer's BPM project area detail

Process Composer’s BPM project area detail

  1. Artifacts type choice – where’s you choose what kind of artifacts do you want to see, create or change
  2. Artifacts list – the list of already created artifacts
  3. Overall definitions – Enterprise and process wide definitions
  4. Project settings – Project definition and settings
  5. Project File Management – toolset to allow project file management and project actions

We’ll need most artifacts, so we’ll learn about the assets as we go along with our pilot project.

Wrap up

You now know everything you need to start designing your process in the Oracle BPM Suite Process Composer. Our next article will cover the first part of a step-by-step build of our pilot process.
Next week I’ll be travelling, so next article will probably only go out in a fortnight, by the end of December’s 1st week.

Cheers,

Maverick

Post header image by zzpza

2 replies

Trackbacks & Pingbacks

  1. […] complete the survey. Thanks to the Link Consulting team for the great introduction in starting a BPM Suite process model. To learn more about process modelling make sure you read the BPM Suite 12c Modeling Patterns book. […]

  2. […] Once the project is created, click on it to access its details. You’re then presented with the project area, where you can create all your project artifacts, create project snapshots and set the organization’s departments and roles. You can check it out more in detail in our previous post. […]

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>