Automation platforms like Pega have capabilities that span tactical intent and strategic intent, namely Pega robotics, cognitive decision making, business function transformation, and analytics. If you include the possible machine learning capabilities residing on top of such platforms, practical adoption patterns and methods vary widely. Traditional development methodologies normally called for, like Agile, need to be used with the understanding that you're customizing your approach for automation initiatives.
For example, the most successful preferred method for scaled business transformation would be Distributed Agile, which is nothing but user story-based incremental development done with geographically distributed teams. But if you have Pega robotics as the entry point, the development lifecycle actions follows the sequence of Assess, Record, Design, Unit Test, Verify, Soft Launch, Iterate and Manage Exceptions, and Full Launch.
Creating a foundation for "cognitive computing," includes the creation of a system that simulates the human thought process. As you create this by adding machine learning that involves solution architecture feeder systems, you need to consider the integration of these to the cognitive engine. Here the methodology may be Agile. The machine learning process itself is a longer cycle, which is iterative over large datasets and is experimental at best. The output will be derived patterns. The entire Build, Test, QA, Deploy cycle is called into question here, because you have to ask, what exactly is deployment in this case? Therefore, you really need to understand how and which flavors of automation are coming together and plan the implementation methods accordingly.
If you’re working with flawed legacy business process and IT ecosystems, you're hampered by limitations that do not always offer a production-like feel for robotics development. Robotic Process Automation (RPA) is essentially nonintrusive because it works on top of existing implementations. But when you're creating cognitive automation processes, these work on data and patterns produced by RPA systems, other IT systems, or all of them. The accuracy depends on your team's understanding of your organization's IT environment. The development methodology is based on access to live data, and calls for risk-managed conditions.
Evolving Traditional Development Methodologies
In Agile and Waterfall development methodologies, there is separation maintained between live systems and work-in-progress software. This line is blurred in the development cycles for implementing systems with robotics and automation processes.
Because of the underlying risk involved in working with production data, process, and soft launch iterations, production movement, and deployment planning is the most important element of the development cycle.
Defining a Successful Implementation Strategy
Carefully planning which transactions to automate and deciding the volume successfully completed (say more than 95 percent pass-through transactions achieved) would be a measure of success. Creating a timeline to measure your team's goals related to production speed (say three months) is also important. If the automation continues to produce exceptions beyond accepted levels, you should identify the missteps in your production efforts quickly. In the end, the ability to have a robust exception management system is also a measure of success.
With cognitive computing, the learning mechanism itself is part of the solution's design, and if this is done without intensive human intervention, then that would be deemed a success.
- Check whether the functions selected for automation are the right ones or if you need to make additional solution design modifications.
- Check whether you have enough production-like samples to make sure you've implemented the maximum spread of RPA coverage.
- Recognize where there is a technology fitment issue and advise your team on alternate methods to adopt better automation technology choices.
You have three different flavors to consider and plan for in an automation program. The development methodology would vary accordingly:
- Tactical Automation: The steps are Assess, Design, Configure, Unit Text, Verify, and Soft Launch
- BPM/Decision Management: Agile, Distributed Agile, Waterfall, or Iterative
- Cognitive Automation: The steps are Cognitive Assessment, Data Feeder Design, Machine Learning Design, "Learning" Process Management, Soft Launch, Verify, and Roll Out/Monitor
Be sure to keep these variations in mind while planning the adoption of any automation technologies in your enterprise.