Start your Journey with PEGA
Tags: java, pega, bpm, automation
Published: 2020-06-21 11:33:22

Hey Guys, I recently started my Journey with PEGA and wanted to share my understanding with DEV Community ❤

*P.S- This post is just a basic understanding of PEGA and its features. If you are someone who just started your journey with PEGA or you are interested to start learning PEGA, this is just for you.*

So as the title suggests let's begin your journey with PEGA.
Those who don't know what *PEGA* is. Here's a quick intro:

**PEGA** is a BPM(Business Process Management) tool or a web application developed on Java which helps automate a lot of processes by avoiding the use of hard coding. Thanks to PEGA technologies which brought this and made the developer's life easy.

One can use PEGA as a cloud environment as well as in their local machine. But cloud one makes sense as it's better to leave things in one place and catch it at some other place easily.

*Fun Fact: PEGA means Job in Spanish* 😀

*P.S - You don't have to be a pro in Java* 😯 *to understand PEGA If you got some basics you are well and good to go. BTW I've seen people who don’t even know Java, have been doing well in PEGA.*

PEGA comes with an inbuilt server called as **PRPC**(PegaRules Process Commander) contains a lot of rules.
*Remember!! Everything you create or use is called a Rule in PEGA. Let's say flow, flow action, activity, property, etc.,*

I will be explaining some of the important rules of PEGA for your basic understanding.
PEGA is like an Ocean..!😰 It’s not possible to give you even basic understanding in just a single post. So I am categorizing into a few posts. Check them out every week.

If you are interested in learning PEGA in-depth, don’t mind checking out [PDN](https://community.pega.com/) for official PEGA Academy, Documentation, and community. It's the only best resource you can find online.

Firstly, Let’s have a look at how PEGA **Designer Studio** looks.

![Pega Environment](https://dev-to-uploads.s3.amazonaws.com/i/zgjcoii4nu9z7myz5pc2.png)

The landing page is a *Case designer studio* that contains Admin, Dev, App studios designed for development and testing purposes.

In this post, I will be explaining about **Process** category.
Some important things you should know are:
1. Flow
2. Flow action
3. Case management
4. Correspondance Rule
5. SLA Rule
6. Validate Rule
7. Work Parties

Let’s see them in detail-

##**1. Flow Rule:**

The most important thing one should know about PEGA is **Flow rule**. It is very important to have, as in every business there are several tasks involved to be performed by a particular case. 

A **Flow rule** helps in achieving a sequence of events using shapes and connectors.
There are two types of flow.
A. Screen flow
B. Process flow

**Differences**
Only one person can work on **Screen flow** whereas **Process flow** can be routed to many people. As many business processes involve routing and involving multiple people, the Process flow is mostly used.

##**2. Flow Action Rule:**

So, we know that every business process follows a certain flow. Flow action rules will be called inside the flow.
Flow action rule contains all the configuration points that describe how a user interacts with an assignment using work forms.

There are multiples assignments and decision shapes along with **connectors** and are used to map things based on  business requirements. This is how generally Flow looks like.

![Flow](https://dev-to-uploads.s3.amazonaws.com/i/dybzp8s8hm028f4z5wit.png)

Also, remember **Section rule** is called inside the **Flow Action rule** and I will be talking more about **Section rule** in **UI Category** of PEGA.

##**3. Case Management:**

A **case**, which represents a business process is made up of many stages, processes, tasks. The case as a whole continues to change throughout its life cycle due to internal and external events.

We usually design various case types based on business requirements. These **Case types** are again divided into various *Stages* which again divided into processes thereby steps. The *Process* is nothing but **Flow**. *Steps* are called an assignment that represents the task to be performed; it may be a manual or an automated one. PEGA helps you configure many automated tasks to be performed based on decisions.
We can say that “Case is an instance of Case type”.

This is how Case Management tab looks like :

![Case Management](https://dev-to-uploads.s3.amazonaws.com/i/ll392fushs64u37x9ngu.png)

*P.S - Case Management is a huge topic where you can learn about Child case, parallel process, stage wide and case wide actions**, etc., Refer PDN for the more detailed explanation on these. It’s a very important topic you should know. If possible, I'll try to make future posts on it.*😉


##**4. Correspondance Rule:**

At times we need to inform customers, employees, application users with case status or any information through a mail, text message, fax, etc., This is where **Correspondance rule** comes into the picture. **PegaRULES Process Commander** provides facilities for application designers to create multiple types of **correspondence** using standard, out-of-the-box rules and templates. You may also create your own customized rules and templates.

It’s easy to use templates that are already available, which also helps save development time. If **OOTB rules** are insufficient then it’s ideal to configure your own rules.

*P.S - OOTB is Out- Of-The-Box functionalities PEGA has provided by default which can be used accordingly.*


##**5. SLA Rule:**

SLA means **Service Level Agreement**. As we all know in business, timely completion of work is most important and the SLA rule takes care of it. There is a *Goal* for every task to be completed. If it is not completed in that particular time, SLA sends a warning stating the failure of completion in goal time by increasing its **urgency level**. Similarly, if it reaches *Deadline* the same thing happens with an increase in urgency. If the task isn’t completed even after the deadline then it reaches to *Passed deadline* state where **urgency level** becomes high and repetitive warnings to be generated until the task is completed. All these things can be configured using the SLA Rule. Also, Assignment level and Case level SLA’s can be configured.

##**6. Validate rule:**

As the name says it is to validate data. When a user is entering details into the form,  data needs to be validated. So *Validate rule* helps in doing so by avoiding this error in data entry. When a field in a form fails validation, then validate rules stops the form from submitting by adding an error message indicating the mistake of the user. We can add validation to any **property**. It's as simple as that.

##**7. Work Parties:**

A **work party** is a person, organization, or business that is involved in some way with the progress or status of a work object.  It is a rule which can list the people who are interested in the case life cycle. We can add **work parties** in the rule to get them tagged to the particular case. Every business process involves different people say, customer and retailer. So here they are **work parties** who need to be notified of the status throughout its life cycle from beginning to end. It happens with **OOTB notify functionalities** of PEGA.
         
             .   .   . 
So You are at the End of the **Technical Category** 😎,
I just gave an easy definition of what these things of PEGA are. To learn how to configure and use them, check out [PDN](https://community.pega.com/) for more details about these topics.

Will see you guys in my next post ✌

*NEXT POST:* Who doesn't love data.! That's what I am gonna talk about handling data in PEGA, in my next post. Stay Tuned..! 🙂