Through the years most ERP companies have grown through acquisition.
From humble single product beginnings we’ve seen many companies including Sage North America evolve from a relatively tiny one product company called State of The Art which evolved to a company named Best Software then Sage Software then ultimately Sage North America or simply Sage.
As software companies grow and add products with different code bases the single most difficult issue is making each product share data. Acquired products have different core programming code as well as sometimes incompatible data dictionaries.
A common issue is how to link product A whose customer numbers can be 15 characters with product B whose customer numbers might only be 5.
For example the Sage Extended Enterprise is made up of at least three different products: Sage MAS200 + SageCRM + Sage FAS. Through the magic of programming, and brute force, Sage gets all three products to work together and exchange data.
But what if there was a standard that was simple and didn’t require extensive custom programming to enable communication between different products. This is where Sage’s open sourced SDATA protocols and SDATA extensions might come into play.
Stephen Smith, Chief Architect Sage Software, has done a great job of sharing some details of Sage’s SDATA protocols. Stephen’s job (from his LinkedIn profile) is:
Work on defining the architecture and technology direction for the Sage Accpac ERP line of accounting products. Leading the effort to modernize Accpac into a state of the art web based ERP package. Developing a shared Sage technology platform to bring together a number of Sage products into a unified end to end package with Accounting, CRM, HRMS and other vertical solutions; all sharing a common look and feel as nice user friendly web based applications.
According to Stephen’s blog posts (read the full post here) SDATA is a major new feature of Accpac 6.0:
One of the big features in Accpac 6 is SData support. What is SData? SData is a web services protocol based on REST. What is REST? REST is a web services protocol that is very popular among Internet companies. There are basically two main competing standards for web services. One is SOAP which is promoted by Microsoft, Oracle and IBM; this is a fairly heavy duty protocol which requires a fair bit of infrastructure (which is provided by the companies promoting this protocol). The other is REST which was invented as a University Research project and basically uses existing Web Technologies such as HTTP and RSS to implement a web services protocol. The nice thing about REST is that it doesn’t require any extra middleware. You are basically doing everything via standard web URLs. The infrastructure that supports this is basically just the standard Internet. SData is just an extension to REST, similar to Google’s GData which is also based on REST. REST protocols are used by Google, Amazon, eBay, Yahoo and all the main Internet companies. Gartner estimates that 75% of web services in use on the Internet are REST based. REST/SData also provides a standard mechanism for performing CRUD (create, read, update, delete) on all records.
While it may be too early to know how widespread the adoption of SDATA will be within all of Sage’s products, Sage certainly appears to be making a major push for it’s use. Sage ACCPAC is one of the ERP products (Sage ERP X3 is the other) that Sage has stated will be marketed worldwide.
I’ll be asking Sage where we can expect SDATA technology to appear next. For now it’s seems like an exciting addition to the Accpac 6.x product and will enable significantly greater interaction between different applications as Stephen explains:
All the new Sage ERP Accpac 6 screens are written entirely using SData. This means the screen can access any Accpac Views via SData, but additionally they can access any SData feeds from any product. In Accpac 5.x, the screen controls were mapped via datasource controls to views and view fields. This was great, but it limited you to only connecting our standard controls to fields in Views developed in our SDK. Now that the controls are mapped to a standards based SData fields, it means they will be able to be connected easily to much more data than just Accapc data. Look for other Sage products to start providing SData interfaces in their coming versions.