System integration - the aim is the name
System integration promises a lot but is often the downfall of a cogent cloud transformation program. One of the most frequently asked questions from our clients is “Does Moodle integrate with CRM?” or, “Does Moodle integrate with our HRIS?”, since the integration dream was pitched as part of procuring that product. The answer that our clients want to hear is “Yes, out-of-the-box, it just works.”
In the real world, the quality and specifics of system integration depend on some deep context of the requirements. Let’s explore what system integration is and look at it from the perspective of the Moodle Learning Management System (LMS).
What is system integration?
In IT terms, system integration means that users, processes and technology can all map into our existing technology tool sets to achieve business our learning goals. These integrations are usually between disparate solutions, whether they are on-premise or cloud-based technologies and typically require some means of exchanging data as well as coordinating workflows and business rules.
Today, integration and technical interoperability is more important than ever. Within the education sector “technology integration” is a prerequisite to effective learning, where the use of technology tools support students to apply computer and technology skills to their learning and problem-solving.
The impact of cloud services
Enterprise organisations have an ever-growing suite of technology applications to service their business requirements. Retaining control over these technology stacks is challenging, given many best-of-breed business solutions are provided as-a-service.
The technology landscape available to organisations when they’re looking to support a business function like sales, for example, is vast. As organisations grow, many migrate their internal capabilities into workflows supported by industry standard solutions, such as the Salesforce Customer Relationship Management (CRM) platform. Initially, these tools provide relief, removing some of the burden of managing the solution stack for their customer relationship management program. However, the loss of IT control can leave some important legacy processes stranded. A good Enterprise-level integration solution is required.
If you run an internal Moodle to provide LMS capabilities to your students, you might have a simple integration with your Active Directory identity management solution, allowing you to automatically register new students when you create their domain account.
By choosing Salesforce as your CRM, you may want all your customer management workflows (from sales, contact management and onboarding) managed through this single platform, which makes a lot of sense. In effect, your CRM is now the single source of truth for customer information. Consequently, you need a way to ensure your Moodle LMS can integrate with Salesforce to provision user accounts at the right time, once students have enrolled and paid. Reliable and fully automated real time integration reduces massive amounts of painful manual work (which we all remember well).
An as-a-service CRM like Salesforce isn’t the same as an on-premise Active Directory server. Your team will need to understand its Application Programming Interface (API) tools and develop software integration solutions that synchronise the right data via that interface. They also need to make sure that the process follows all your business rules and keeps the data secure.
For many organisations, this level of custom development is beyond their reach, causing the transformation project to falter; they may have required automations clearly defined, but they don’t have the skilled resources to be able to implement them.
The plethora of integration challenges faced by organisations as they adopt a cloud strategy is not limited to on-premise to cloud integrations. Challenges can also arise when bringing in new on-premise solutions, moving to additional cloud technology (so cloud-to-cloud integration becomes a challenge). Even within the same cloud, different solution elements can have their own integration costs and issues.
System integration challenges
Staying in control
Control over technology solutions, even when procured from the cloud, often shifts from the central IT team to the business team that is using it.
In traditional IT service the internal team looks after user account provisioning, service management, hardware and software licensing and maintenance. These activities are still required for on-premise solutions. However, they are not always required in many cloud sourced Software as a Service (SaaS) platforms. Instead of robust and repetitive internal processes, with SaaS solutions the business rules are what define the way that cloud services are used. These business rules need to be defined by the business team using the solution, which is quite a paradigm shift.
Internal skills for custom software development
More often than not, there are integration elements that need to interoperate with other cloud solutions or the organisation’s internal IT. Many of these integrations require custom software development, which is often not a skillset that exists in internal IT teams. This leaves a knowledge and experience gap where these challenges cannot be easily met.
Continuous integration and continuous development
Release cycles can also be challenging for internal IT teams, particularly as the project management approach switches from traditional waterfall style workflows to continuous integration and continuous development (CI/CD). Release workflows that utilise CI/CD are rapid, with timeframes running over days or weeks rather than months or years. The ways of working within an organisation need to reflect this new paradigm; cloud services update on these new, faster timeframes, so the internal teams need to keep up.
Lack of experienced planning
All experienced managers have been proximate to an integration solution where there were promises that “it just works”, before the rubber actually hit the road. Only when the integration is actually attempted do all parties realise the off-the-shelf functionality is not what was promised or expected. This might result in a major shortfall in the final integration outcome, which then creates a requirement for extra software development that was not budgeted for.
One of the biggest challenges of system integration is governance. In traditional, on-premise environments, internal IT teams would have responsibility for all technology systems. However, with the digital revolution, comes a new model, where governance is split across business units. In this environment, of devolved authority and technical responsibility, good governance becomes critical.
Solving LMS system integration issues
A Moodle example
Using the example of an integrated LMS, the team at Catalyst sometimes use OneRoster to ensure we can synchronise data and workflows between Moodle and a university’s Student Management System / Student Information System (SIS).
OneRoster allows our cloud service architects to define the standards for securely sharing a university’s class rosters with Moodle and its SIS. It supports direct system integrations using REST APIs, so that our clients can automate the provisioning and publishing workflows for teaching and learning.
Some of the integration workflows that we can easily set up for our clients include student scoring, management of resources and enrolment. For example, universities using Moodle can deploy an integration with their Student Information System such that student enrolment data, at the beginning and end of courses (includes course dates), are all synchronised. This level of systems integration supports Moodle to create courses and classes with all the correct dates and enrolled students, without any manual interaction from the teachers.
Cloud migration considerations
When creating your cloud migration project plan, system integration should be a key priority, along with things like information security (where you may have compliance obligations to fulfil). We will be taking a closer look at elements across the integration layer in some of our future blogs on this subject.
Find out more
Should you have any questions on system integration and how you can streamline your workflows, please get in touch.