Note For PegaCSA

<h1>Note For PegaCSA</h1>
<h2>1.0版（2021/09/11）</h2>
<h2>説明</h2>
このノートについては、モジュールごとに、pegaがどういう場面で、どういった機能が提供されているのか、どういう設定のバリエーションがあるのか、およびルール間のつながり周りの説明になります。

<h2>目次</h2>

[0. low-code-defined](#0-low-code-defined)<br/>
[1. defining-customer-microjourney](#1-defining-customer-microjourney)<br/>
[2. user-guidance](#2-user-guidance)<br/>
[3. completing-work-time](#3-completing-work-time)<br/>
[4. capturing-and-presenting-data](#4-capturing-and-presenting-data)<br/>
[5. calculating-values](#5-calculating-values)<br/>
[6. creating-data-relationship](#6-creating-data-relationship)<br/>
[7. viewing-data-model](#7-viewing-data-model)<br/>
[8. routing-assignments-users](#8-routing-assignments-users)<br/>
[9. designing-approval-process](#9-designing-approval-process)<br/>
[10. sending-emails-during-case-processing](#10-sending-emails-during-case-processing)<br/>
[11. managing-application-development](#11-managing-application-development)<br/>
[12. sizing-pega-platform-project](#12-sizing-pega-platform-project)<br/>
[13. adding-optional-actions-workflow](#13-adding-optional-actions-workflow)<br/>
[14. automating-workflow-decisions](#14-automating-workflow-decisions)<br/>
[15. automation-shapes-case-life-cycle](#15-automation-shapes-case-life-cycle)<br/>
[16. creating-child-case](#16-creating-child-case)<br/>
[17. identifying-duplicate-cases](#17-identifying-duplicate-cases)<br/>
[18. skipping-process-or-stage](#18-skipping-process-or-stage)<br/>
[19. pausing-and-resuming-case-processing](#19-pausing-and-resuming-case-processing)<br/>
[20. validating-data-against-business-logic](#20-validating-data-against-business-logic)<br/>
[21. exploring-application-data-insights](#21-exploring-application-data-insights)<br/>
[22. gaining-insight-business-efficiency](#22-gaining-insight-business-efficiency)<br/>
[23. customizing-ui-elements](#23-customizing-ui-elements)<br/>
[24. customizing-portal-content](#24-customizing-portal-content)<br/>
[25. customizing-dashboard](#25-customizing-dashboard)<br/>
[26. designing-mobile-app-experience](#26-designing-mobile-app-experience)<br/>
[27. calculating-fields-using-decision-tables](#27-calculating-fields-using-decision-tables)<br/>
[28. inviting-users-application](#28-inviting-users-application)<br/>
[29. dev-studio-overview](#29-dev-studio-overview)<br/>
[30. creating-rule](#30-creating-rule)<br/>
[31. application-data-manipulation](#31-application-data-manipulation)<br/>
[32. escalating-late-work](#32-escalating-late-work)<br/>
[33. configuring-cascading-approvals-reporting-structure](#33-configuring-cascading-approvals-reporting-structure)<br/>
[34. automating-decisions-decision-tables](#34-automating-decisions-decision-tables)<br/>
[35. automating-decisions-decision-trees](#35-automating-decisions-decision-trees)<br/>
[36. configuring-cascading-approvals-authority-matrix](#36-configuring-cascading-approvals-authority-matrix)<br/>
[37. creating-and-managing-teams-users](#37-creating-and-managing-teams-users)<br/>
[38. viewing-data-memory](#38-viewing-data-memory)<br/>
[39. validating-data-dev-studio](#39-validating-data-dev-studio)<br/>
[40. setting-default-property-values](#40-setting-default-property-values)<br/>
[41. accessing-sourced-data-case](#41-accessing-sourced-data-case)<br/>
[42. saving-data-system-record](#42-saving-data-system-record)<br/>
[43. pega-ux-solutions](#43-pega-ux-solutions)<br/>
[44. designing-ui-multiple-devices](#44-designing-ui-multiple-devices)<br/>
[45. customizing-appearance-form](#45-customizing-appearance-form)<br/>
[46. grouping-fields-views](#46-grouping-fields-views)<br/>
[47. displaying-list-data-views](#47-displaying-list-data-views)<br/>
[48. localizing-application-content](#48-localizing-application-content)<br/>
[49. enabling-accessibility-features-applications](#49-enabling-accessibility-features-applications)<br/>
[50. simulating-external-data-source](#50-simulating-external-data-source)<br/>
[51. adding-external-data-source-data-type](#51-adding-external-data-source-data-type)<br/>
[52. configuring-security-policies](#52-configuring-security-policies)<br/>
[53. managing-application-access](#53-managing-application-access)<br/>
[54. tracking-and-auditing-changes-data](#54-tracking-and-auditing-changes-data)<br/>
[55. debugging-application-errors](#55-debugging-application-errors)<br/>
[56. unit-testing-rules](#56-unit-testing-rules)<br/>
[57. creating-and-executing-scenario-based-test-cases](#57-creating-and-executing-scenario-based-test-cases)<br/>
[58. skins](#58-skins)<br/>
[59. creating-rule-specialized-circumstance](#59-creating-rule-specialized-circumstance)<br/>



# 0. low-code-defined
- [low-code-defined](https://academy.pega.com/module/low-code-defined/v3/in/24071/24041)


# 1. defining-customer-microjourney
- [defining-customer-microjourney](https://academy.pega.com/module/defining-customer-microjourney/v3/in/24071/24041)

- [pega-express-methodology](https://academy.pega.com/topic/pega-express-methodology/v3/in/24071/24041/24346)
  1. Name stages by using a noun or noun phrase to describe the section context. As much as possible, try to use no more than two words.

- [case-life-cycle](https://academy.pega.com/topic/case-life-cycle/v2/in/24071/24041/24346)
  1. To define an MLP release, the methodology focuses on three core elements of a great application: Microjourneys, personas and channels, and data and interfaces.
  2. Name processes and steps by using the verb + noun naming convention.
  
- [case-life-cycle-design](https://academy.pega.com/topic/case-life-cycle-design/v2/in/24071/24041/24346)
  1. The first stage in the case life cycle is the <b>Create stage</b>, which is denoted by a green bar. The Create stage should contain processes and steps for users to enter initial data upon case creation.The Create stage cannot be deleted or repositioned in the case life cycle.
  2. Cases that include the Create stage are persisted by default and are assigned a case ID upon case creation. Cases that were created before 8.5 do not have the Create stage.
  3. By default, the Create stage contains a <b>Create process</b>, which you can modify to meet your business needs. The steps in the Create process should capture initial data.
  4. You can add a channel-specific Create process for each channel you have configured for your application. You can configure Create processes to start conditionally.(Todo)
  5. Create processes that are not channel-specific can only include Collect information steps.(Todo)
  5. You can configure two or more processes that users can perform in any order as <b>parallel processes</b>.These processes can run at the same time.(Todo)
  6. For alternate stages, it can't be set to automatically move to next stage.(Todo:why)
  7. With the Waiting for a user action option, when all stage processes are complete, the case worker receives the option to complete the stage.(Todo)

- [draft-mode](https://academy.pega.com/topic/draft-mode/v1/in/24071/24041/24346)
  1. When you create a case type in App Studio, by default all processes you configure are created in <b>draft mode</b>.(Todo: how to know if it is in draft mode)
  2. Once flows are completed, before an application can be released to production, draft mode must be turned off on all process flows. Failure to do so results in a guardrail violation.
  3. When you save a case type in App Studio, Pega Platform™ automatically switches off draft mode for processes that do not contain configuration issues. 
  4.  You can only manually turn off draft mode from Dev Studio.(Todo)

- [multi-step-forms](https://academy.pega.com/topic/multi-step-forms/v2/in/24071/24041/24346)
  1. A multi-step form represents a single assignment completed by a single user.

# 2. user-guidance
- [user-guidance](https://academy.pega.com/module/user-guidance/v3/in/24071/24041)
- - 

# 3. completing-work-time
- [completing-work-time](https://academy.pega.com/module/completing-work-time/v3/in/24071/24041)

- [service-level-agreements](https://academy.pega.com/topic/service-level-agreements/v1/in/24071/24041/24356)
  1. You can configure SLAs on case types, stages, processes, and Collect Information and Approval steps.
  2. An assignment has a default urgency of 10.
  3. The Pega Platform™ <b>Get Next Work</b> functionality assigns high-urgency tasks before low-urgency tasks to ensure that assignments finish on time.
  4. You can configure escalation actions on service-level agreements to notify the assignee, the manager, and the participants; to reassign the task; or to resolve the case as the goals or deadlines occur.

# 4. capturing-and-presenting-data
- [capturing-and-presenting-data](https://academy.pega.com/module/capturing-and-presenting-data/v3/in/24071/24041)


# 5. calculating-values
- [calculating-values](https://academy.pega.com/module/calculating-values/v3/in/24071/24041)


# 6. creating-data-relationship
- [creating-data-relationship](https://academy.pega.com/module/creating-data-relationship/v2/in/24071/24041)


# 7. viewing-data-model
- [viewing-data-model](https://academy.pega.com/module/viewing-data-model/v3/in/24071/24041)

- [data-records](https://academy.pega.com/topic/data-records/v3/in/24071/24041/24416)
  1. By creating local data storage, all associated data records can be packaged and distributed as part of the application.

- [data-pages-and-visual-data-model](https://academy.pega.com/topic/data-pages-and-visual-data-model/v1/in/24071/24041/24416)
  1. In previous versions of Pega Platform™, data pages were called <b>data views</b>.
  2. The <b>Visual Data Model</b> is a diagram that shows links among case type,field,data object.

- [integration-designer](https://academy.pega.com/topic/integration-designer/v3/in/24071/24041/24416)
  1. The <b>Integration Designer</b> provides a single location in App Studio for viewing all the data objects, data pages, object dependencies, and external systems in an application.
  2. The <b>Integration Map</b> is a diagram of the data objects, cases, and systems of record in the application and where they are sourced.

# 8. routing-assignments-users
- [routing-assignments-users](https://academy.pega.com/module/routing-assignments-users/v3/in/24071/24041)

- [routing-work](https://academy.pega.com/topic/routing-work/v2/in/24071/24041/24381)
  1. You can route a step or a multi-step form to a single user or to a team of users.
  2. A <b>worklist</b> is a list of all open assignments, in order of importance, for a specific user.
  3. A <b>work queue</b> is a list of all open assignments, in order of importance, for a group of users.
  4. You route an assignment to the <b>current user</b> if the user who completed the preceding assignment should complete the current task.
  5. You route an assignment to a <b>specific user</b> if an individual user must complete the assignment.
  6. You route to a <b>work queue</b> if anyone in the group can complete the assignment.
  7. You can also use <b>business logic routing</b> when you want to route work based on certain conditions.

# 9. designing-approval-process
- [designing-approval-process](https://academy.pega.com/module/designing-approval-process/v3/in/24071/24041)


# 10. sending-emails-during-case-processing
- [sending-emails-during-case-processing](https://academy.pega.com/module/sending-emails-during-case-processing/v3/in/24071/24041)



# 11. managing-application-development
- [managing-application-development](https://academy.pega.com/module/managing-application-development/v3/in/24071/24056)

- [agile-workbench](https://academy.pega.com/topic/agile-workbench/v2/in/24071/24056/24251)
  1. In Agile Workbench, you create <b>work items</b>: user stories, bugs, and feedback.Typically, the majority of development work consists of user stories.
  2. You can optionally associate work items with features or subfeatures. <b>Features</b> are capabilities that you want your application to support. <b>Subfeatures</b> are features within a feature.

- [release-management-pega-platform](https://academy.pega.com/topic/release-management-pega-platform/v1/in/24071/24056/24251)
  1. DevOps methodology operates under three pillars: people, process and technology.
  2. With <b>continuous integration</b>, application developers frequently check in changes to the source environment and use an automated build process to automatically verify these changes.
  3. With <b>continuous delivery</b>, application changes run through rigorous automated regression testing and are deployed to a staging environment for further testing to ensure that the application is ready to deploy on the production system.

- [agile-development-best-practices](https://academy.pega.com/topic/agile-development-best-practices/v1/in/24251)
  1. Agile development best practices include:
    1).Frequent development iterations that are small in scope.
    2).Continuous application testing to identify issues early.
    3).Branched development that ensures only quality configurations are introduced.

# 12. sizing-pega-platform-project
- [sizing-pega-platform-project](https://academy.pega.com/module/sizing-pega-platform-project/v1/in/24071/24056)

- [roles-pega-project](https://academy.pega.com/topic/roles-pega-project/v2/in/24071/24056/23626)
  1. <b>Specialty Architects</b>: Engage with project development depending on project needs and skills alignment. For example, a UX Architect or a Deployment Architect.
  2. <b>Citizen Developers</b>: Citizen developers are non-technical business users who participate in application development. These developers bring valuable knowledge about the business needs.
  3. <b>Subject Matter Expert (SME)</b>: Has deep understanding of a particular business topic or domain. The SME works with the project team to convey business needs and helps validate information accuracy.
  4. <b>Business Architect (BA)</b>: Works with subject matter experts and stakeholders to understand business needs. In a Pega Platform™ application, Business Architects define business rules, service level agreements, and processes.
  5. <b>Quality Assurance (QA)</b>: Creates and executes functional and performance test scripts, participates as part of the Scrum team.
  6. <b>System Architect (SA, SSA, LSA)</b>: Designs and configures the application.
  7. <b>Product Owner</b>: Owns the product backlog and prioritization of backlog items. Creates acceptance criteria.
  8. <b>Project Delivery Leader</b>: Provides overall project plan and delivery guidance.

# 13. adding-optional-actions-workflow
- [adding-optional-actions-workflow](https://academy.pega.com/module/adding-optional-actions-workflow/v4/in/24071/24056)

- [optional-actions](https://academy.pega.com/topic/optional-actions/v3/in/24071/24401)
  1. Use an <b>optional action</b> to configure a single action that users can invoke at any time during a particular stage, or at any time during the case, such as updating information in a single screen or transferring the case to another user. 
  2. Use an <b>optional process</b> to configure a series of steps that users can invoke at any time during a particular stage or at any time during the case.

# 14. automating-workflow-decisions
- [automating-workflow-decisions](https://academy.pega.com/module/automating-workflow-decisions/v2/in/24071/24056)
  1. could call a when rule.


# 15. automation-shapes-case-life-cycle
- [automation-shapes-case-life-cycle](https://academy.pega.com/module/automation-shapes-case-life-cycle/v1/in/24071/24056)

- [automation-shapes](https://academy.pega.com/topic/automation-shapes/v1/in/24071/24056/23901)
  1. The <b>Create PDF</b> automation helps to create and attach a screenshot of a view to the case in the PDF format.
  2. The <b>Run data transform</b> automation helps to run the selected data transform rule at run time.
  3. <b>Post to pulse</b>: Creates a message and sends it to the Pulse social stream.
  4. <b>Push notification</b>: Sends a notification to an iOS or Android mobile device to indicate that a case requires user action.
  5. <b>Send notification</b>: Sends a notification to recipients over multiple channels.
  6. <b>Update a case</b>: Updates the current case or all child cases and descendants.


# 16. creating-child-case
- [creating-child-case](https://academy.pega.com/module/creating-child-case/v3/in/24071/24056)

- [child-cases](https://academy.pega.com/topic/child-cases/v3/in/24071/24056/24406)
  1. Different parties with different expertise can handle each child case in parallel.
  2. Implementing a business process in a separate case type also allows you to reuse the case type as needed.
  3. you can also specify the information that does not change to copy from the parent case to the child case through a process known as <b>propagation</b>.(Todo)
  4. if the data may change on the parent case, then it is more appropriate to <b>reference the data</b> in the parent case. 

# 17. identifying-duplicate-cases
- [identifying-duplicate-cases](https://academy.pega.com/module/identifying-duplicate-cases/v2/in/24071/24056)


# 18. skipping-process-or-stage
- [skipping-process-or-stage](https://academy.pega.com/module/skipping-process-or-stage/v3/in/24071/24056)

- [conditional-execution-processes-and-stages](https://academy.pega.com/topic/conditional-execution-processes-and-stages/v3/in/24071/24056/24121)
  1. configure one or more condition to start a process or skip a stage.


# 19. pausing-and-resuming-case-processing
- [pausing-and-resuming-case-processing](https://academy.pega.com/module/pausing-and-resuming-case-processing/v3/in/24071/24056)

- [case-workflow-dependency](https://academy.pega.com/topic/case-workflow-dependency/v3/in/24071/24056/24411)
  1. The Wait step can be configured to pause case processing based on Wait type: Case Dependency or Timer.
  2. <b>Case Dependency:</b> When a parent case reaches the Wait step, the case pauses until all child cases or any child case of a given type reach a defined status.
  3. The <b>Timer</b> wait type pauses a case until the Set date/time interval expires or until a Reference date/time is reached.

# 20. validating-data-against-business-logic
- [validating-data-against-business-logic](https://academy.pega.com/module/validating-data-against-business-logic/v3/in/24071/24056)

- [data-validation](https://academy.pega.com/topic/data-validation/v2/in/24071/24056/24421)
  1. you can validate a single field against multiple constant values when different values are required across the application.
  2. On a <b>stage entry validation</b>, if a data value meets the condition for invalid data, the case cannot enter the stage, and an error message is displayed.
  3. When an error message is triggered on a stage validation, end users need to have the ability to update invalid data or perform an action, such as returning to a previous stage or closing the case.(Todo: how to)


# 21. exploring-application-data-insights
- [exploring-application-data-insights](https://academy.pega.com/module/exploring-application-data-insights/v1/in/24071/24056)

- [explore-data-landing-page](https://academy.pega.com/topic/explore-data-landing-page/v1/in/24071/24056/24986)
  1. You can save queries you make on the <b>Explore Data landing page</b> as <b>insights</b>.
  


# 22. gaining-insight-business-efficiency
- [gaining-insight-business-efficiency](https://academy.pega.com/module/gaining-insight-business-efficiency/v2/in/24071/24056)

- [report-browser](https://academy.pega.com/topic/report-browser/v1/in/24071/24056/24126)
  1.  A <b>category</b> defines an organizational framework for reports displayed in the Report Browser. Each category consists of a label and an owner type that exposes the category to a specific audience: an individual user, a group of users, or all users. The two types of categories are private and public.
  2. Reports in the <b>Analyze Performance</b> category analyze and summarize resolved (completed) work items along quality dimensions.
  3. Reports in the <b>Analyze Quality</b> category identify, by assignment, which actions were selected, how often, and the timeliness of the selection.
  4. Reports in the <b>Case Metrics</b> category provide information about open and resolved cases, and historical views of step performance.
  5. Reports in the <b>Monitor Assignments</b> category provide information about open assignments.
  6. Reports in the <b>Monitor Processes</b> category list or summarize open (unresolved) work items in the current application.

- [reports](https://academy.pega.com/topic/reports/v1/in/24071/24056/24126)
  1. <b>Business metrics</b> measure the success or failure of business processes, and are based on the data you define for an application.
  2. <b>Process metrics</b> measure how work is performed, and are based on data automatically collected by Pega Platform™.
  3. For columns, You can format the data value in various ways, such as text, currency, or date.
  4. You cannot display a data relationship in a column.
  5. You can use calculations in columns to make reports more useful. Calculations, also known as functions, enable you to calculate results derived from data in the database.
  6. When you use date or date-time column data in your filter, you can select time periods by using <b>symbolic dates</b>. Symbolic dates let you select time periods or dates without having to build functions.

# 23. customizing-ui-elements
- [customizing-ui-elements](https://academy.pega.com/module/customizing-ui-elements/v2/in/24071/24056)

- [controls-and-presentation](https://academy.pega.com/topic/controls-and-presentation/v2/in/24071/24056/24431)
  1. The <b>predefined style formats</b> for a button include Standard, Simple, and Strong.

- [dynamic-functionality-ui-elements](https://academy.pega.com/topic/dynamic-functionality-ui-elements/v1/in/24071/24056/24431)
  1. Configure the visibility of a field or layout to display the field or layout when a specific condition is satisfied.
  <b>visibility setting:</b> Always,Condition (expression),Condition (when rule).etc.
  2. Configure when a field or layout is disabled to limit user access to a field. A field or layout is disabled when a specific condition is satisfied.
  <b>disable setting:</b> Always,Condition (expression),Condition (when rule).etc.
  3. Configure when a field or layout is required to ensure that a user specifies a value. A field or layout is required when a specific condition is satisfied.
  <b>required setting:</b> Always,Condition (expression),Condition (when rule).etc.

- [event-processing-action-sets](https://academy.pega.com/topic/event-processing-action-sets/v1/in/24071/24056/24431)
  1. <b>action set</b> consists of: one or more events, one or more actions, Optionally conditions to each action so that the action occurs only when the conditions are met.And Applicability configured for use only when a field is in an editable state, read-only state, or both states.


# 24. customizing-portal-content
- [customizing-portal-content](https://academy.pega.com/module/customizing-portal-content/v3/in/24071/24056)

- [channel-interfaces](https://academy.pega.com/topic/channel-interfaces/v2/in/24071/24056/24436)
  1. You can also create a <b>channel-specific process</b> in the Create stage.

- [portals-and-landing-pages](https://academy.pega.com/topic/portals-and-landing-pages/v1/in/24071/24056/24436)
  1. A <b>portal</b> is a web channel in use by your application. End users experience the portal through a browser, regardless of device type (such as a desktop or mobile device).
  2. A portal consists of landing pages that consolidate information for easy access.
  3. Pega Platform provides out-of-the-box landing pages, called <b>Custom pages</b>.
  4. you can manage access to landing pages by specifying visibility by role.

# 25. customizing-dashboard
- [customizing-dashboard](https://academy.pega.com/module/customizing-dashboard/v3/in/24071/24056)

- [dashboards](https://academy.pega.com/topic/dashboards/v2/in/24071/24056/24441)
  1. The developer can configure the dashboard for a role by publishing changes to the default dashboard.
  2. End users can also personalize the default dashboard by publishing changes to their dashboard instance.

# 26. designing-mobile-app-experience
- [designing-mobile-app-experience](https://academy.pega.com/module/designing-mobile-app-experience/v2/in/24071/24056)

- -


# 27. calculating-fields-using-decision-tables
- [calculating-fields-using-decision-tables](https://academy.pega.com/module/calculating-fields-using-decision-tables/v1/in/24071/24056)


- [decision-tables](https://academy.pega.com/topic/decision-tables/v2/in/24071/24056/23741)
  1. you can call a decision table from a declare expression.

# 28. inviting-users-application
- [inviting-users-application](https://academy.pega.com/module/inviting-users-application/v3/in/24071/24056)

- [users-and-personas](https://academy.pega.com/topic/users-and-personas/v3/in/24071/24056/24446)
  1. In Pega Platform, user interfaces are also called channel interfaces.
  2. Create additional personas when a unique combination of channel interface, responsibilities, permissions, and work routing requires differentiation from an existing persona.
  3. Multiple personas can share a channel interface if appropriate.


# 29. dev-studio-overview
- [dev-studio-overview](https://academy.pega.com/module/dev-studio-overview/v3/in/24071)


# 30. creating-rule
- [creating-rule](https://academy.pega.com/module/creating-rule/v2/in/24071)


# 31. application-data-manipulation
- [application-data-manipulation](https://academy.pega.com/module/application-data-manipulation/v3/in/24071)

- [data-transforms](https://academy.pega.com/topic/data-transforms/v2/in/24071/24461)
  1. Data transforms can be used to convert data from one type to another, iterate over page lists, or page groups and copy entire pages at a time.

- [data-transform-actions-clipboard](hhttps://academy.pega.com/topic/data-transform-actions-clipboard/v3/in/24071/24461)
  - Todo


# 32. escalating-late-work
- [escalating-late-work](https://academy.pega.com/module/escalating-late-work/v2/in/24071)


# 33. configuring-cascading-approvals-reporting-structure
- [configuring-cascading-approvals-reporting-structure](https://academy.pega.com/module/configuring-cascading-approvals-reporting-structure/v3/in/24071)

- [cascading-approvals-reporting-structure](https://academy.pega.com/topic/cascading-approvals-reporting-structure/v2/in/24071/24476)
  1. The two cascading approval models are reporting structure and authority matrix.
  2. For reporting structure, You can also configure business logic to set thresholds to determine the number of required approvals.


# 34. automating-decisions-decision-tables
- [automating-decisions-decision-tables](https://academy.pega.com/module/automating-decisions-decision-tables/v2/in/24071)

- [decision-tables-dev-studio](https://academy.pega.com/topic/decision-tables-dev-studio/v1/in/24071/24216)
  1. A decision table can be delegated to a process owner, who can update the decision logic as needs change.(Todo)
  2. how to use Additional Allowed Results.(Todo)
  3. you can use decision tables in a process are determining the next step in a flow and routing an assignment.(Todo)

# 35. automating-decisions-decision-trees
- [automating-decisions-decision-trees](https://academy.pega.com/module/automating-decisions-decision-trees/v2/in/24071)


- [decision-trees](https://academy.pega.com/topic/decision-trees/v1/in/24071/24221)
  1. You can reference decision trees in flow rules, declare expressions, activities, or routers.(Todo)

- [decision-rule-conflicts](https://academy.pega.com/topic/decision-rule-conflicts/v1/in/24071/24221)
  1. Check conflict to specify the condition that did not evaluate.
  2. Use the completeness test to find missing conditions or branches in a decision rule.


# 36. configuring-cascading-approvals-authority-matrix
- [configuring-cascading-approvals-authority-matrix](https://academy.pega.com/module/configuring-cascading-approvals-authority-matrix/v2/in/24071)

- [cascading-approvals-authority-matrix](https://academy.pega.com/topic/cascading-approvals-authority-matrix/v1/in/24071/24481)
  1. You use the authority matrix model when configuring a process that requires approvals from multiple entities, with at least one  entity outside of the reporting structure. 
  2. When using a decision table with an authority matrix, set the decision table to Evaluate all rows to return a list of results. 
  3. The application evaluates the decision table. Each satisfied row or condition adds the results to a list of approvers.


# 37. creating-and-managing-teams-users
- [creating-and-managing-teams-users](https://academy.pega.com/module/creating-and-managing-teams-users/v3/in/24071)

- [teams-users](https://academy.pega.com/topic/teams-users/v2/in/24071/24486)
  1. A <b>work group</b> identifies a cross-functional team that contains a manager and a <b>work queue</b>.
  2. An operator must be associated with at least one work group and can belong to more than one work group.
  3. A work group identifies one operator who is the work group manager.
  4. Work groups can contain <b>Authorized managers</b> who can perform some of the manager responsibilities to help transfer assignments.
  5. the deffrences between work group and reporting hierhachy.(Todo)


# 38. viewing-data-memory
- [viewing-data-memory](https://academy.pega.com/module/viewing-data-memory/v3/in/24071)

- [data-storage-memory](https://academy.pega.com/topic/data-storage-memory/v2/in/24071/24491)
  1. Each <b>data element</b> in a Pega Platform application is a pairing of two pieces of information: the name of the data element (determined by a property rule), and the value assigned to the data element or property.
  2. Each data element is stored in memory on a page. A <b>page</b> is a structure for organizing data elements in an application.
  3. The <b>clipboard</b> consists of all of the pages used to track the property-value pairs that represent case and session data.

- [clipboard-data](https://academy.pega.com/topic/clipboard-data/v2/in/24071/24491)
  1. all the pages used to store data about the case such as page pyWorkPage are listed in the <b>User Pages</b> category.
  2. The <b>Data Pages</b> category contains read-only data pages defined by data page rules.
  3. The <b>Linked Property Pages</b> contains read-only pages created by linked properties
  4. The <b>System Pages</b> category contains pages that describe the current user session, such as the active user and the active application.

- [pyworkpage](https://academy.pega.com/topic/pyworkpage/v2/in/24071/24491)
  1. <b>pyWorkPage</b> stores data that is generated during case creation and processing. pyWorkPage is a specific page on the clipboard and stores data such as the case creation date or the case ID.
  2. When you open a child case, the clipboard also contains the page <b>pyWorkCover</b> that contains the case data for the parent case.
  3. When you configure a rule that references a page such as pyWorkPage, you indicate the class of the referenced page.(Todo:class指定しないとデフォルトで参照するclassとかないの？)




# 39. validating-data-dev-studio
- [validating-data-dev-studio](https://academy.pega.com/module/validating-data-dev-studio/v3/in/24071)


- [data-validation-dev-studio](https://academy.pega.com/topic/data-validation-dev-studio/v1/in/24071/24496)
  1. apply an edit validate rule to a property: Edit validate rules are used for client-side validation, which means that the value users enter is validated immediately without referencing the server.
  2. call an edit validate rule from a validate rule: validation occurs when the system runs the validate rule, which occurs when the user submits the form.
  3. You can qualify validation for a property based on the Input property，Proposed work status，Flow action，Stages。

# 40. setting-default-property-values
- [setting-default-property-values](https://academy.pega.com/module/setting-default-property-values/v2/in/24071)

- [default-property-values](https://academy.pega.com/topic/default-property-values/v1/in/24071/24501)
  1. As a best practice, use <b>pySetFieldDefaults</b> to set values for UI fields, and use <b>pyDefault</b> for properties not referenced in the UI.
  2. When a new case is created, the pyDefault data transform is invoked by the <b>pyStartCase</b> process. PyDefault then invokes the pySetFieldDefaults data transform.

- [superclass-feature](https://academy.pega.com/topic/superclass-feature/v1/in/24071/24501)
  1. You use the superclass feature when you call a data transform to set a different default value for the same property within a hierarchy of subclasses.
  2. The standard Work- pyDefault data transform sets property values that are used in all case types. The properties include work status, work urgency, and operator organization information.

# 41. accessing-sourced-data-case
- [accessing-sourced-data-case](https://academy.pega.com/module/accessing-sourced-data-case/v3/in/24071)


# 42. saving-data-system-record
- [saving-data-system-record](https://academy.pega.com/module/saving-data-system-record/v3/in/24071)


# 43. pega-ux-solutions
- [pega-ux-solutions](https://academy.pega.com/module/pega-ux-solutions/v2/in/24071)
- [pega-cosmos-design-system](https://academy.pega.com/topic/pega-cosmos-design-system/v1/in/24071/24516)
  1. A design system is a builder kit that is composed of a shared library of UX patterns.
  2. A design system is also defined as a set of UI elements, styles, patterns, themes, and guidelines that are used and referenced by development teams to provide a consistent user experience

# 44. designing-ui-multiple-devices
- [designing-ui-multiple-devices](https://academy.pega.com/module/designing-ui-multiple-devices/v3/in/24071)

- [responsive-user-interface](https://academy.pega.com/topic/responsive-user-interface/v2/in/24071/24521)
  1. With a dynamic layout, the responsive behavior is applied to the layout When the display width crosses a <b>breakpoint</b>.
  2. You can select the behavior that you want to trigger with the breakpoint. Options for responsive breakpoint behaviors include:Hide this component, Transform to other format, Transform to list, Drop columns with importance 'other'.(Todo)

- [responsive-ui-and-tabular-data](https://academy.pega.com/topic/responsive-ui-and-tabular-data/v1/in/24071/24521)
  1. The column importance options are Primary, Secondary, and Other; Pega Platform automatically sets the leftmost column to primary importance and the remaining columns are set to secondary importance.
  2. By default, two responsive breakpoints are set for tables. At the first, wider breakpoint, columns with importance set to Other are not displayed. At the second, narrower breakpoint, the table is displayed as a list.

- [mobile-design-best-practices](https://academy.pega.com/topic/mobile-design-best-practices/v1/in/24071/24521)
  1. There are two categories of mobile-specific design considerations: design for offline use, and design for the characteristics of the device itself.
  2. Follow these best practices for offline mobile use:
  ①Enable client-side decisions and validations.
  ②Use data pages as data sources.When a mobile application is in offline mode, the data pages store all completed work. The data pages sync to your application server when the mobile device is online.
  ③Using responsive UI, layout groups automatically switch to a specific layout based on the resolution size.



# 45. customizing-appearance-form
- [customizing-appearance-form](https://academy.pega.com/module/customizing-appearance-form/v3/in/24071)

- [repeating-layouts](https://academy.pega.com/topic/repeating-layouts/v1/in/24071/24526)
  1. There are different types of repeating layouts that support different use cases:
  - A <b>table layout</b> is useful when you want to present tabular data in a series of columns and rows. Generally, you do not want to use a table layout to present images.
  - A <b>repeating dynamic layout</b> is useful when you want to group and present content in a nonlinear, more aesthetic format.Repeating dynamic layouts have the same responsive capabilities of a dynamic layout.

- [dynamic-layouts](https://academy.pega.com/topic/dynamic-layouts/v1/in/24071/24526)
  1. As screen sizes change, <b>dynamic layouts</b> shift on-screen content by wrapping elements to the next line.
  2. Each view can contain one design template. You can combine smaller, modular views into one larger view to mimic the use of multiple templates in a single view.

# 46. grouping-fields-views
- [grouping-fields-views](https://academy.pega.com/module/grouping-fields-views/v3/in/24071)

- [layout-groups](https://academy.pega.com/topic/layout-groups/v2/in/24071/24531)
  1. It is a best practice to use this option only when the number of panels is limited.
  2. A layout group can contain any number of dynamic layouts, column layouts, repeating dynamic layouts, or other layout groups. 
  3. You can configure a layout group to organize panels of information in a stacked, tab, accordion, or menu format.

# 47. displaying-list-data-views
- [displaying-list-data-views](https://academy.pega.com/module/displaying-list-data-views/v3/in/24071)


# 48. localizing-application-content
- [localizing-application-content](https://academy.pega.com/module/localizing-application-content/v3/in/24071)

- [localization](https://academy.pega.com/topic/localization/v3/in/24071/24541)
  1. To ensure that you design your application for localization, create <b>field value</b> rules for capturing labels and notes, <b>paragraph</b> rules for instructions and messages, and <b>correspondence</b> rules for emails and other correspondence.
  2. You define field value rules for those rule types that use labels or other text strings under 64 characters.
  3. Paragraph rules make content reusable. Instructions on a UI form, copyright declarations, and privacy notifications are all examples of reusable paragraph rules. Paragraphs longer than 64 characters can remain intact as boilerplate content and easily applied multiple times in an application.
  4. Correspondence rules generate outbound emails, faxes, printed letters, telephone messages, and other notifications.
  5. <b>Language packs</b> are collections of language-specific rulesets that support the localization of Pega Platform.
  6. While most records in the Pega Platform are set as translatable by default, records from previous versions of Pega Platform may not have the Localize option preselected.
  7. Rules such as correspondence, paragraph, and work party rules contain text that is translated manually and stored in the corresponding translation ruleset with the aid of the Localization wizard.


# 49. enabling-accessibility-features-applications
- [enabling-accessibility-features-applications](https://academy.pega.com/module/enabling-accessibility-features-applications/v3/in/24071)


# 50. simulating-external-data-source
- [simulating-external-data-source](https://academy.pega.com/module/simulating-external-data-source/v3/in/24071)

- [simulated-external-data-sources](https://academy.pega.com/topic/simulated-external-data-sources/v2/in/24071/24551)
  1. External data source simulation is also useful to unit test, since you can dictate the returned response.

# 51. adding-external-data-source-data-type
- [adding-external-data-source-data-type](https://academy.pega.com/module/adding-external-data-source-data-type/v3/in/24071)

- [connectors-and-services](https://academy.pega.com/topic/connectors-and-services/v3/in/24071/24556)
  1. A connection between systems consists of two parts: a connector (sometimes referred to as a service connector) to initiate a request, and a service to fulfill the request.
  2. <b>Connectors</b> pass application data to an external data source through required or optional parameters and parse the response to map source data to the data structure used in the application.
  3. When you use a connector to request information from a data source, you can call the connector from a data page.
  4. <b>Services</b> define parameters for passing data needed to fulfill the request and the structure and format of the response.
  5. The listener runs in the background on the server, waiting for requests. When a request arrives, the listener analyzes the request and calls the service to process the request and return a response.

- [external-data-sources-data-types](https://academy.pega.com/topic/external-data-sources-data-types/v2/in/24071/24556)
  1. In App Studio, you can source a data type from an external system of record through a Representational State Transfer (REST) service by using GET or POST commands.
  2. data transforms are automatically generated to map data between the data models for the data type and the host service.
  3. If the service requires a user name and a password for access, you can optionally configure an authentication profile and OAuth 2.0 provider for the data type.

# 52. configuring-security-policies
- [configuring-security-policies](https://academy.pega.com/module/configuring-security-policies/v3/in/24071)


# 53. managing-application-access
- [managing-application-access](https://academy.pega.com/module/managing-application-access/v3/in/24071)


# 54. tracking-and-auditing-changes-data
- [tracking-and-auditing-changes-data](https://academy.pega.com/module/tracking-and-auditing-changes-data/v3/in/24071)

- [field-level-auditing](https://academy.pega.com/topic/field-level-auditing/v2/in/24071/24566)
  1. By default, Pega Platform maintains a history of actions performed on cases (Work- instances), such as when the case status changes, when the case is routed to an operator, or when the time to execute a service-level agreement expires.
  2. An audit entry shows the old value, the new value, who made the change, and when the change occurred.
  3. There may be two audit entries for data fields: one entry for modifying the initial value and another entry for adding a new value.

# 55. debugging-application-errors
- [debugging-application-errors](https://academy.pega.com/module/debugging-application-errors/v3/in/24071)


# 56. unit-testing-rules
- [unit-testing-rules](https://academy.pega.com/module/unit-testing-rules/v3/in/24071)

- [unit-tests](https://academy.pega.com/topic/unit-tests/v2/in/24071/23866)
  1. The main purpose of unit testing is to identify configuration errors in a rule before the errors are compounded in an application when the result of the rule depends on another rule.
  2. If you unit test a rule, and there is a higher version of the rule, the system runs the higher version of the rule.
  3. To create a test case, you convert a test in the Run Rule window and define the results that indicate a successful unit test. Each expected result consists of an assertion, which describes one or more conditions to test and the expected outcome for each condition.
  4. Best practices to configure unit tests: Saving the test case requires access to a ruleset that is configured to store test cases.
  5. From the Unit testing landing page, you can also create <b>test suites</b> that consist of one or more related test cases. Pega unit test suites run multiple test cases in the order that you specify. 

# 57. creating-and-executing-scenario-based-test-cases
- [creating-and-executing-scenario-based-test-cases](https://academy.pega.com/module/creating-and-executing-scenario-based-test-cases/v3/in/24071)


- [cenario-testing](https://academy.pega.com/topic/scenario-testing/v3/in/24071/23576)
  1. Specify either a Case type or Portal scenario test when initiating the test recorder. 
  2. The Mark for assertion icon(<b>Explicit assertions</b>) on the orange highlight box provides two features: adding wait time following an action within the test scenario, and the ability to create validation steps in the test scenario.

# 58. skins
- [skins](https://community.pega.com/knowledgebase/articles/user-experience/86/skins)
  1. By default, a portal points to the <b>skin</b> that is specified in the application, which ensures that all portals in your application have the same look and feel. You can associate each of your portals with a different skin, but having a single skin for the entire application is the best practice. If you do not specify a skin for your application, the application defaults to the <b>pyEndUser</b> skin.
  2. If the skin in your application has many sets of settings that define the same type of a component, and these sets vary only slightly, you might benefit from using <b>Cascading Style Sheet (CSS) helper</b> classes to adjust layouts and cells.
  3. you can adjust the responsive behavior in the skin for optimal viewing in the mobile portal.


# 59. creating-rule-specialized-circumstance
- [creating-rule-specialized-circumstance](https://community.pega.com/knowledgebase/articles/application-development/86/creating-rule-specialized-circumstance)
  1. Create a rule specialized by circumstance to provide a variant of the rule that your application triggers only conditionally under specified conditions.