In software development, a component is a self-contained unit of functionality that can be integrated with other components to build a larger system. Components are often designed to be reusable, meaning they can be used in multiple places within the same application or across different applications.
There are several types of components, including:
UI components: These are visual elements that make up the user interface, such as buttons, forms, and tables.
Logic components: These are used to implement business logic, such as algorithms and calculations.
Data components: These are used to store and manage data, such as databases and data models.
Middleware components: These are used to handle communication between different parts of the system, such as message queues and web services.
Third-party components: These are pre-built components developed by other companies or organizations that can be integrated into the system.
Components are often designed to be modular and loosely coupled, meaning they can be replaced or updated without affecting the rest of the system. This allows for more flexibility and easier maintenance of the system.
A Pega components is also collection of rule set that create feature / reusable feature that can be added to any Pega platform application or same Pega applications used in a organization.
So broadly, there can be two types of Pega components
Generic to any Pega application ( few are available of Pega marketplace/ can create new )
Specific to an organization ( Like some integration component )
Lets now, create a Pega Component .
Think of an organization, that is using an API to get the currency information. Now, this API is used in multiple project . So, the organization decided to create a component for this , so that later any application can used it.
Step 1 - Log in to Pega > Click on Configure > Application> Component
Step 2- Click on New Component
Step 3 - Fill the details
Label - This is a short description of the component
Version - Give a version
Once created ; open the component. It will create one Rule set .
Pega provides us options to
Add Rule set - The rule set where the rules will be hold.
Add Application - The base application, on which it will run.
Add Component - Any depended component .
Enabling Component
Once, the component is created we can enable it from application.
Step 1 - Open the Application definition
Step 2- Click - Manage components
Step 3- Click on enabled checkbox
Step 4 - Click - Ok
The component will be listed in enabled components .
Using a component
Now we will use the component to build out integration reusable assets.
Step 1 - For this component, we will be building an integration category rule ( Connector ) . Click Configure > Integration > Connector > Rest Wizard
Step 2 - Select the component and the rule set .
I have not given the details step , how to run the wizard.
Step - Click Create
The component ruleset will have all the details to run this API .
This is an independent feature now, available to other applications also. This component was created on top of the Organization class , if we want to make its organization independent it has to be made on top of the pega classes.
Benefits of components
There are several benefits of using components in software development, including:
Reusability: Components can be used across multiple parts of an application, or even across different applications, which can save development time and effort.
Modularity: Components can be built and tested independently, which makes it easier to understand and maintain the system.
Flexibility: Components can be replaced or updated without affecting the rest of the system, which allows for more flexibility and easier maintenance.
Scalability: Components can be easily added or removed from the system, which makes it easier to scale the system up or down as needed.
Improved quality: Components can be rigorously tested and validated before being integrated into the system, which can improve the overall quality of the system.
Cost effectiveness: Reusing the same component multiple times reduces the development cost and also reduces the overall cost of the system.
Easy maintenance: since the system is divided into smaller components, it's easier to find and fix bugs, and maintain the system.
Better collaboration: Components can be developed and maintained by different teams or individuals, which can improve collaboration and communication within the development team.
Comments