We are rolling out a project next week that is really one of our crowning achievements as a small company. The project involves replacing an out-dated and cumbersome Access database that runs a sales and loan process for our medium sized client with an end-to-end solution based on QuickBase. What is most exciting is that we are integrating three external data sources as part of the process; web based application capture, credit reports and electronic signatures.
Our recent adoption of the Talend ETL technology to run our integrations has opened the door for us to tackle this project at an accelerated pace and reduced cost to our client. Even with the new tools the human and partnering elements of the integration processes make a great study in the good, bad and ugly of system and service integration.
Web Application Capture
This integration was the easiest of the three but still brings to light some interesting challenges. Early in the process we identified that over time our client had posted a number of application capture websites for their loan product. The websites were hosted with different providers that had different data policies. It turned out that only one of the sites was hosted by a provider that would allow access to the site database. This restriction on the database can be quite common with low cost providers.
In the end we were able to work with the client to consolidate hosting providers and set up the domains on a single hosting service that allowed database access via ODBC. We were then easily able to connect and extract the data using Talend ETL tools.
As part of the loan approval process, our client checks credit on all applications. They use the Equifax credit reporting service and currently pull each credit report individually over the web. This process can take hours per day for the staff and also delays the speed at which agents can follow up and contact loan applicants. Using the Talend ETL tools we were able to automate the credit report retrieval and push the data to QuickBase for review. Low credit scores can automatically be filterd out and the applications reviewed and assigned to sales within minutes of the client submission.
Integrating with the Equifax credit reporting service is not without it challenges. Administratively Equifax is very bureaucratic about gaining access due to security concerns. This is not without good reason but needs to be planned for. The API documentation is not published for the public, so can only be accessed when the (system-to-system) STS service is negotiated with Equifax sales. Once we gained access to the API we also had to undergo and on-site security review of of our development facilities and our client had to work with Equifax to gain approval and access codes for the integrated service.
The technical integration with Equifax also has a number of complexities. The most well documented method post fixed length data using HTTP. Setting up fixed length data is quite cumbersome so we pursued the less well documented XML method. Fortunately Equifax employs a full time staff person from IBM to oversee their integration services. We were able to get some specific instruction on several minor nuances of the XML integration that are not documented and thus succeed in connecting and accessing the needed data.
Especially in a loan processing environment, collecting signatures electronically can save tons of time, avoid errors and save overnight document shipping costs. What’s exciting is the ability to not just get electronic signatures but to dynamically populate the agreements from QuickBase data and also collect data entered by the signers back to the QuickBase application.
Our client initially selected one of the larger electronic document services. After struggling for weeks with a poorly documented API and a service department that admitted they were not even sure how their own API worked we succeeded on structuring the correct calls to connect to the service. then just before going live the service informed our client that they would have to pay a $2500 fee to use the service with integrated data. As a result we worked wit the client to find Agreement Express, a newer and exciting player in the electronic signature space.
Yet again, the integration with Agreement Express has not been without complexity. Their HAPI API is designed primarily for web site based document creation and not system to system data exchange. Fortunately the Agreement Express technologists have a firm control and understanding of their technolgy and have been able to quickly work with us to develop a tailored API that fits our client’s needs and will likely benefit other clients in the future.
As we move to the roll out of this exciting project, it has been valuable to reflect back on the challenges above. One of the most important takeaways for looking at system to service integrations is to understand that the underlying technologies, clarity and completeness of documentation and service technology staff all play a significant role in how well an integration project succeeds.
Our conversation continues about the optimal mix of technology to support business process. In our last TechWise blog,“Living IT, QuickBase Leads The Way”, we discussed the concept of Living IT and why organizations should plan for changing and dynamic technology. To elaborate further on this topic we want to introduce some ideas around what we refer to as the the Application Ecosystem and how technologies such as PaaS and ETL fit in.
The Application Ecosystem of an organization is a broad way to refer to the various technology tools that the organization uses. This applies to government, for-profit and non-profit organizations. At the center of the Application Ecosystem is what we refer to as Core Systems. These tools are typically associated with basic organizational functions required for accounting and transactional purposes. For smaller businesses, tools like QuickBooks or PeachTree are the frequent choice while larger organizations have mostly deployed ERP systems like Oracle ERP or SAP.
While accounting and ERP systems have expanded to include broader functionality few if any organizations are able to function with a single technology to manage business processes. This is due to the fact that ERP and Accounting systems are designed fir best practices and with transaction management as the primary focus with process management flexibility given limited attention. This means that organizations are pushed to find technologies that complement and extend core systems. We refer to the multitude of applications that support defined and ad hoc organizational processes outside the core systems as the Extension Layer.
The Extension Layer
There are two basic types of applications in the Extension Layer, Point Solutions and Situational Applications. Point Solutions are specialized, typically best of breed applications that solve a specific and typically well defined need. Image management, warehouse management and CRM are areas that often are targeted for point solutions. The other type of application in the Extension Layer is often referred to as Situational Applications. These are applications that solve more unique or possibly temporary organizational needs where no viable Point Solution exists. Often these types of applications are managed ineffeciently using spreadsheets or simple databases.
The final but very important element of the Application Ecosystem is the body of interconnections between applications. These connections or integrations may be between applications in the Extension Layer or with Core Applications. In many cases organizations lack the technical capability to effectively integrate applications so information is moved between applications with human, manual processes. Only when extension applications reach a significant size and value are they integrated in an automated way with other applications.
Paas & ETL Enable Flexibility in Extension Layer Application Creation and Interconnectivty
Platform-as-a-Service (PaaS) tools such as QuickBase and Wolf Frameworks provide organizations with tool sets to rapidly build and deploy Extension Layer applications that extend core accounting and ERP systems or provide effective departmental or workgroup functionality. PaaS is frequently utilized for Situational Applications but also quickly becoming a strong choice for CRM, sales force automation and other areas often relegated to Point Solutions.
One of the main benefits of PaaS as part of an organizations Extension Layer is the ability to quickly and easily interconnect data and processes between applications designed on the same PaaS technology. For example, QucikBase allows the ability to create cross application relationships between applications as a simpel and easy way to share information.
A technology that is rapidly becoming mainstream is Extract-Transform-and-Load (ETL) tools. Open Source technologies like Talend ETL are allowing rapid, low cost development of integration. This means that organizations can choose to automatically tie together applications, processes and information that previously could not have been efficiently integrated.
It seems there is a continual push and pull in the technology world between centralizing and consolidating technology vs. distributing and diversifying. We’ve asked ourselves this question often of whether our clients will be better served with a single technology to support their needs.
This line of questioning typically leads to the evaluation of the trade off between a single multi-purposed technology that solves many problems but none well as opposed to a number of “best-of-breed” solutions.
In reality organizations seem to answer this perennial question with decisions that shift the balance continually. These decisions and the resulting daily interactions with IT systems are what we refer to as “Living IT”. By acknowledging that technology within an organization is a dynamic entity allows for a whole new approach to solving business process and technology challenges. A number of important factors are defining “Living IT” and it’s place in the 21st century organization.
1. The gap between management and technology is shrinking
As the Cloud evolves and the explosion of advanced collaboration and business process tools continues, technology that previously relied on IT staff to deploy and support is becoming accessible directly to information and process managers. Platform-as-a-Service (PaaS) technologies such as QuickBase are a perfect example of tools that are narrowing this gap. While QuickBase has the ability to handle advanced technological problems, the codeless development environment is used by managers with limited technical skills in tens of thousands of companies to deploy collaborative information gathering and process applications.
2. The costs and risks of change are shrinking as the benefits are growing
The 21st century company has to adapt quickly. This means adding capacity and scaling quickly but also being nimble enough to shrink and shift directions nimbly. In the “Living IT” environment companies need tools that are flexible, scalable and in many cases expendable. QuickBase is again an ideal model for supporting change at a low cost. The QuickBase subscription model is user based allowing organizations to develop as many platform applications as are needed with the scaling costs based on users only. As organizations needs change applications can be retired without concern and new ones rapidly developed and deployed.
3. Interconnectivity and security, two sides of the same coin are the main drivers of 21st century technology
Ubiquitous access to the internet has opened the doors to a new wave of collaboration between people and between technologies. This new power of communication has also brought with it very real organizational concerns about security and accessibility of information. QuickBase provides powerful tools to take advantage of collaboration but also manage the associated risks.
- Domain/application user model: QuickBase users are registered with the QuickBase domain or with a private domain for enterprise accounts. Application managers can then invite users who have registered in their domain to applications to allow access. This simple but powerful model allows for easy collaboration with users inside and outside the organization without compromising security.
- Role based security: within an application access is defined for each user by designated roles. Roles can be easily configured for simple access rules or more complex data driven models. This enables applications to effectively create different user and data experiences tailored for each application user.
- Secure and capable API: QuickBase supports communication to and from external application via an HTTP API model. The API enables interaction with all application tables for query, record add/update and import actions as well as more advanced interactivity. All API interaction required authenticated sessions and for increased security, applications can enforce API token requirements.
The most important consideration in creating a true “Living It” environment is to embrace and not fear technology change. Even very traditional technologies like accounting systems have to flex and change as the tax and other financial policies change. Process and collaboration tools need to be even more flexible to support organizational evolution. QuickBase is in ideal tool for supporting the “Living IT” environment due to it’s ability to enable development of secure, collaborative process and information management applications.
Much of the value of software is determined by how completely an application solves a particular user problem and meets a user need. The Web 2.0 revolution is evidence that no application can fully solve every nuance for every customer within an area of requirement.
This has long been evidenced by the proliferation of bolt-ons, add-ons, extensions, etc. designed for traditional software. In the Web 2.0 world, adding on and extending software is an assumed critical element of the application value. Software providers that fail to provide ample hooks into their applications will inevitably fail to maximize their value to customers.
As a long time developer and integrator of the Intuit QuickBase platform, we have become intimately familiar with the QuickBase API. The simplicity of the QuickBase API means that, in almost 5 years of use, we have rarely needed more than a few basic request types to command substantial interactivity with the application. In addition to being open to external calls, the QuickBase API can be used inside the application to create simple and complex customizations. What’s great about having such a simple but powerful API model is that it allows developers and reasonably savvy end users to solve a myriad of information problems that could not possibly have been anticipated by the platform designer.
One of the greatest leaps in our business came recently with our move to utilizing open source ETL as a method for interacting with and controlling QuickBase applications. Because QuickBase does not have it’s own logic processing tools, it has become essential for us to tie in processing capability to best support our client’s value. The Talend Integration Suite allows us to provide this type of processing capability with advanced Java components for executing business processes and integration. Once again, one of our key decision points for selecting Talend to provide ETL services in connection with QuickBase was related to the platform openness. Talend’s Java and Perl components are all user configurable but also fairly easy to customize, which allows for expansion and extension of the toolkit whenever needed.
For a recent project with ENSAT, there was a need to provide EOHS and ISO compliance. To deliver on the need, we developed asynchronous routines that would run periodically throughout the day, check for certain information updates and propagate the changes to the compliance requirements to assure staff of a major manufacturing facility had proper training for their assigned work. QuickBase was already being used successfully to capture training and staff information, so it seemed logical to extend QuickBase for the EOHS and ISO compliance handling. In order to execute the data processing required for the compliance determinations, a Talend job was created to pull QuickBase data, generate compliance records and load them back for reporting. With just hours of assistance from Talend services, and a lot of brain-power applied to writing compliance data rules, we were able to set up the necessary Java componentry for an effective QuickBase integration and go live inside of a week.
As we evolve our practice at MCF Tech to support the future of cloud based, Web 2.0 technology it is apparent that the key is not to find the silver bullet technologies that aim to solve all problems, but rather to choose those that have the humility to know their limitations. Important questions to ask about any platform or application are whether there is an API, WSDL or other integration method and whether customization is encouraged. It is surprising how many traditional and even cloud based applications fail in the area of openness.