Agile development best practices
Best practices for agile development and release management
Agile development supports a customer's need to update their production environment as business needs change. Incorporating agile methodology in application development enables frequent changes and ensures that those changes work as expected.
Pega Platform™ includes best practices for agile development, including:
- Real-time updates: frequent development iterations that are small in scope
- Testing: continuous application validation to identify and address issues early
- Branches: concurrent team development environment to maximize productivity
An agile development approach provides continuous, iterative application development based on small-scope business requirements. When business requirements change, you can make smaller, more frequent updates. For example, you add a chatbot based on feedback, or fix a bug in the user interface.
DevOps tightens the integration between development teams, test teams, and post-go-live support teams to take the agile process further. DevOps teams work across the application life cycle to provide a more automated build, streamlining how you configure, validate, deploy, and deliver an application.
In the following image, click the + icons to learn more about agile development best practices.
Pega Express best practices
Pega Express™ delivery is an agile methodology tailored to application development using Pega Platform. It consists of four phases designed to support agile best practices in low-code application development.
Agile best practice examples by Pega Express phase include:
- Discover: Define your business outcomes and create a Day 1 Go-Live plan
- Prepare: Host a design sprint with end users to build a working prototype
- Build: Build your application based on user stories in the backlog
- Adopt: Once your application goes live, conduct a release retrospective
CI/CD best practices
A CI/CD pipeline models the two key stages of software delivery: continuous integration and continuous delivery.
In the continuous integration stage, developers continuously validate and merge branches into a target application.
During continuous integration, maintain these best practices:
- Test early and often: for example, identify issues early by running Pega unit tests and critical integration tests before packaging the application. If tests fail, stop the release pipeline until the issue is fixed.
- Automate: for example, trigger merges and builds by using the Deployment Manager.
- Update rules: for example, keep the product rule, Rule-Admin-Product, referenced in an application pipeline, up-to-date.
- Maintain version history: publish the exported application archives into a repository to maintain a version history of deployable applications.
In the continuous delivery stage, the target application is packaged and moved through progressive stages in the pipeline. After application changes have moved through testing cycles (Pega unit, regression, performance, and load testing), you deploy application packages to a production system. In Pega Platform, you can deploy changes manually or automatically.
Follow these continuous delivery best practices to ensure application quality:
- Create test environments: Use Docker or a similar tool to create test environments for user acceptance tests (UAT) and exploratory tests.
- Conduct regression tests: Create a wide variety of regression tests through the user interface and the service layer.
- Use version control: Define target ruleset versions for production deployment.
- Employ a rollback strategy: If a test fails, roll back the latest import.
- Document: If all the tests pass, annotate the application package to indicate that it is ready to be deployed. Deployment can be performed manually or automatically.
Check your knowledge with the following interaction: