Intelligent Pathways Lead Architect & Founder Gary Crosby is a problem solver at heart. Always at the forefront of new ways to use technology, Gary is a skilled architect who prides himself on delivering innovative and pragmatic solutions that change businesses for the better. Below, we had a chat with him about what’s on his mind as we continue to navigate an interesting and exciting digital age.
As our Lead Architect you are often involved in solving some very complex problems for our clients with technology. What have you been working on lately?
I’ve been heavily involved in one large project for the last couple of years. It’s been a very exciting project that is using several technologies to produce a clever product for dynamic approval flows and governance in an international construction company. I wrote an article here about one of those enabling technologies called Intelligent Agents.
Basically the concept is a combination of attribute-based access control, policy-based access control, and dynamic decision making through Intelligent Agent Architecture. It’s something that we’ve done before, but now we are doing this on a much larger scale and providing a UX for analysts to control system behaviour more directly. The Client operates a number of different types of projects in the construction industry, and this product enables the level of governance and approvals to fluctuate dynamically based on defined policies and rules, while also acting as a collaboration tool and chatbot.
Essentially the tool makes decisions based on policies, and it minimises the number of steps, approvals and documents required to give the business confidence that the project will go ahead smoothly. So we’ve actually reduced costs and effort in project management across the globe quite substantially, as opposed to a ‘one-size-fits-all’ workflow approach.
You mention the collaboration aspect, and obviously this has been a huge factor to organisations in the past 2 years. How has covid affected this project?
Well interestingly the product itself enables collaboration and was started before anyone knew about the pandemic – it just happens that it’s an extra variable they didn’t plan for but it’s worked really well. It has meant that on the business side, technology is allowing BAU when people aren’t physically coming together, and it’s allowing that without a loss in governance or increased risk.
Also interestingly, we’ve delivered the product itself when a number of the people on the project haven’t ever met in person! We’ve been running under agile processes that continue to be refined, so daily standups and our retrospectives, all of the management of the backlog and aligned to the product roadmap and business outcome. The whole agile methodology that we’ve been using there has been successful in a large virtual team.
What kind of things or thinking were important to the success of this project?
I think firstly that it wasn’t really about technology – technology was an enabler, but the real problem we were solving was dynamic processes across a business that has massive variation. The policies are expressed in a natural language, making it intuitive for business analysts to configure and control the ever-changing behaviour. The most beneficial part of this model is the reduced reliance on developers to change the system behaviours. This extends through most aspects of the solution including the steps in a flow, the number and type of notifications, the guidance provided on the UX and many other components.
It’s also not just a data story. It’s not about putting data in one spot and then querying it, it’s a real-time event-driven decision-making concept, where we’re observing the environment and then using defined policies and rules to make decisions and then acting as a result. Stimulus, decision, action. That’s a really different approach than some more static technologies that we’ve used in the past. And we’re able to do it now because of the broad technology offerings that can play well together, that don’t lock you into a design around the vendor’s capabilities. 5 or 10 years ago you had to design heavily around a vendor’s capabilities or just the one stack – now you don’t have to.
Would you say that the likes of AWS and Azure have really enabled that approach?
Of course, even this project spans across AWS services, Java services, Azure services and we’re about to go into the Google Cloud, so there are services everywhere. You don’t need one vendor to do this – but what you do need is a consistent design. And I think the thing to look at is how do you design for success, and how do you do that independently of technology to allow yourself to leverage different technologies as they emerge? I think that’s a really important thing I try to get executives thinking about: the importance of design, whether it’s API design or process design or whatever, it’s more about bringing that design approach into the foreground rather than just technology and implementation of technology.
What are you looking at for the future?
So the project I’m working on is about observing continuous changes in the environment and then acting in a predictable way. But it’s a real departure from the past – now, it’s about being able to say ‘it doesn’t matter what technologies are there’ and getting past the traditional approach of ‘I’ve got 10 systems and I need to integrate them all.’ Well…maybe not. Maybe you just need to integrate your very core business systems and observe others. By focusing more on observation and the introduction of stimulus from systems and the environment (because it’s all cloud-based now) and then layering that with business decision frameworks, saying ‘how do we act when we observe these things are occurring or not occurring’ you can rethink the traditional story of integration with all systems and move more towards a system that is truly reactive. So that’ll be an interesting space.