First Thoughts Syclo
I finished my Syclo Training on SMART Work Manager. This blog will point out my first thoughts on Syclo as a Product. A little bit about my background. I have been associated with Mobility all the while at SAP and have some basic idea about MI, but worked mainly on DOE/NW Mobile and later on SUP. The first fundamental difference that I noticed with Syclo is that there Middleware Server (Agentry Server) doesn’t store data. All the while both at SAP & Sybase the fundamental premise was, that in order to build offline applications you essentially need to stage Data on a Middleware and then distribute it to various devices, this was done primarily to provide flexible distribution and also to handle conflict detection. However Syclo takes this exactly in the opposite direction and has a Mobile Platform (for offline/complex/process apps) that doesnt stage data in a Middle Tier. And they have done this quite successfully with the SMART Work Manager and other applications that they have. The next obvious question is whether they will be able to scale up their architecture if they are not storing devices in the Agentry Server, I don’t have an answer to this question, maybe they can scale. But I would like to see real customer scenario’s where they have scaled for large data volumes. The other point related to conflict detection (An example of conflict – When a user changes a data in the mobile device and same data is changed in the backed). Syclo doesnt really have conflict detection. They post it to the back-end and its upto the backend to decide whether to accept it or not. Ofcourse they do have a concept of Exchange Object which can be used to identify Delta, then the Exchange Object can be used for conflict detection. However this will only indicate whether an instance has changed or not. There will be field/row level conflict detection possible without staging data in the Middle Tier. But again the point the backend is the driver of business data so its best for the back-end to decide what to do with the data. This leads to the next important point. Syclo Agentry Platform was built more from a business perspective. They have paid attention to what the business requires in terms of mobility and built the product step by step.
The other important point that I realized from Syclo’s architecture is that there Mobile Platform was built first by looking at the business and then the product was built to cater to those needs. Things such as adding a field in a UI or changing/disabling a field in the UI is very simple using the Agentry Editor. This is an important consideration especially when you are customize and app which invariably will happen when you implement a solution at a customer solution. Building an application from scratch with Syclo requires a lot of time, effort and money, but that should be the way it is especially if you want to build (complex/process apps) for the mobile devices that mimic the functionality of the back-end on the mobile devices. Because the apps that you are talking about is process intensive in nature. However if you have a solid product that needs to be customized or enhanced for a particular customer because of specific requirements at the customer site, its fairly easy to do it using the Agentry Platform. This is a very important consideration because most customers have requirements to enhance their functionality.
Syclo also supports cross platform development. It eliminates the need to generate, modify & maintain custom application code for every mobile OS. They use the Syclo Editor, Syclo Server & Syclo Client to achieve cross-platform portability of mobile solution.
Syclo Client – You develop the appliation using Syclo Editor and the resulting application definitions are published to the Syclo Server, NOTE: they dont compile it to native code.
Syclo Server – Manages all communication, synchronization, security & integrations acts as an integration server between mobile client and the SAP Backend. It also stores the application definitions.
Syclo Client – Basically its a native OS mobile application that understands the application definitions and renders the mobile application on the device. So the app provides you with Native Look and Feel.
The most important thing about this model they have is easy maintenance of application across different mobile platforms. Of course other points such as saving development time, project cost etc…
To summarize, I am fairly impressed with the way Syclo Platform as whole. Especially there customization/enhancement concept for extending the application. In addition there attention to detail for changes to the UI that most customers want and ease with which you can achieve them. Of course I would like to see more data to prove the scalability of the product.