Parameter is nothing but passing the dynamic value on Excecution.It improves the performance of the applications by passing the value dynamically and avoids hardcoding which is not a best practice.
Parameters can be passed in various rules in PEGA like Activity, Report Defincation and Sections, etc and we can pass parameter to the activity based on methods we work. Parameters of the calling activity can also be passed to called activity by checking "Pass Current Parameter Page" checkbox of Calling method.
If a rule is configured with the input Parameters, then the rule referencing the parameterized rule seeks the value for the input parameter while referencing. Parameter values can be accessed in the rule with the keyword "Param" like "Param.PropertyName". All the Parameters of any type mentioned in the Parameters tab resides in a page object ParameterPage. You can also add some properties dynamically in the rule by setting a value to the "Param.NewPropertyName" which also resides on the current rule ParameterPage.
For detailed concept please refer to the parameterizing concept in Application Design Chapter in CSSA 7.2 PDN Course.
The above comments are correct. Basically the parameters are used to reuse the rules. Mostly during the execution time. For example in the data table we have two columns namely age,class. You want to return the values form the data table based on age and class at different places in the application. Generally we will create a two rules by giving the property directly which increase in rule count. When we use the parameter based on the value and property it will take at the run time.
If you are familiar with any of the programming languages, then let me put it this way.
The different variables that are passed to the function are called parameters. now, like mentioned in the comments above, there are multiple rule types in Pega to which parameters can be passed and received.