Technology & Entrepreneurship

Suresh Sambandam

Subscribe to Suresh Sambandam: eMailAlertsEmail Alerts
Get Suresh Sambandam: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: Cloud Computing, SaaS Journal, Cloud Expo on Ulitzer, Platform as a Service, Cloud Computing for SMBs, Cloud Application Management

Cloud App Mgmt.: Blog Post

Why Most Visual Development / 4GL Tools Fail? – Part 1

How and Why 'Top Down' approach kills Visual Development Tools

There are quite a few visual development tools that have failed in the past. When I say past, I meant the pre-cloud era. The commercially successful ones are Visual Basic, PowerBuilder (just googled and found out that PowerBuilder still exists (and has its own Journal) and Oracle Forms 4.5. Although, popularity and merits of the language need not co-relate.  :-) !

And, there are quite few that have come up in the current cloud paradigm. Few Examples : Coghead (already in dead pool), VisualForce of Force.comWaveMakerZoho Creator. My POV is on the approach taken to  solve the problem (of visual development) rather than any of the companies/products itself.

Square peg in a round hole

Image Credit: casa.pokayoke @ Flickr.com

If you take a closer look at most of the visual products one subtle but startling similarity is:Most of them take a Top-Down approach for developing the application.  In my opinion, the problem lies here! If you want to know why see this Article on Wikipedia and Paul Graham‘s blog post on ‘Programming Bottom Up‘. While Paul’s article goes into a little tangential context of enriching Lisp, leading to a richer dialect – the essence of ‘Bottom Up’ comes out when you read between the lines. Also check out this thread Top Down vs Bottom Up on TheServerSide.com

It is natural for human comprehension to think of a system’s high level design and functional use cases in a ‘Top Down’ style. However, when it comes to implementation, ‘bottom up’ approach has to be followed. The shortcoming with most of the visual development tools is that they have extended the natural human comprehension far too much into the implementation. To the extend that, most of these tools start with a visual canvas where the user starts painting the application by ‘drag and drop’-ing widgets from the palette box. While I understand that this is easy for business users and analysts to start off quickly – there can be no compromise on the abstraction that is required to build good software.

The approach of starting from the page or a canvas can accomplish simpler – situational applications (use and throw). However,  it will be close to impossible to build industrial strength SaaS Business Application like an Insurance Underwriting System or an Automobile Dealer Management System. Also, the applications built using these tools will be little more than a ‘data entry’ / ‘book keeping’ system with very little capability to support sophisticated business logic (more on this in Part 2 of this series). In fact, when prospects approach us for simpler situational apps that doesn’t involve heavy duty business logic we have recommended ‘Zoho Creator‘ – another ‘Made In India, Made for the World‘ product. In fact, unlike other products Zoho Creator clearly mentions in their home page ‘Build Your own online Database’.

So, what is the correct approach solution? Just like in OOP, implementation has to be bottom up. You define the object model  for small components and start relating them with other components. An object model or data model, we use both these terms  inter-changeably at OrangeScape, contains how an object is represented in an optimized / co-related fashion in conjunction with other objects in the system. Again, just like in OOP, the object is an encapsulated atomic unit that represent data + business logic (How do we deal with logic in Part 2). Many such fine grained objects together make up the data model of a logical business component. Putting all these logical business component model together in perspective gives the developer the full picture of the software –  I call this macro-model for want of better term.

All of this is not some theoretical rant! One Example. OrangeScape’s SI Partner Wipro – using their development team – with consulting from OrangeScape has implemented a very large ERP for a  government organization where the ERP is being rolled out across 743 office locations in India. Each office location is a Tenant in this huge multi-tenant ERP. This project (I can’t name it yet, due to confidentiality clauses) is a prestigious project similar to the Citizen UID Project. We haven’t gone outside of OrangeScape’s Studio to build anything in this huge ERP implementation. The success of this project is a ‘proof point’  for my argument on ‘bottom-up’ approach supported by the OrangeScape PaaS Platform among many other capabilities.

Finally, in my view, starting from ‘Object Model / Data Model’ is closer to OOP and starting from UI Pages takes us back to days of  ’Procedural Coding’!  After all these advancements in programming, why go back in time?

I see you asking:  ’How does one or OrangeScape for that matter bring out object modeling in a non-intrusive visual manner?” Will talk about that in an another post.

More Stories By Suresh Sambandam

After an initial entrepreneurial stint for three years at the age of 19, Suresh Sambandam went on to work at Hewlett-Packard. Later, Suresh joined Selectica and rose to senior position, as Director of e-Insurance product division in a short-span. The e-Insurance division and its products were later acquired by Accenture. Suresh is a technocrat specializing in product engineering with expertise in software architecture for complex enterprise applications, inference engines, configuration engines, rule-based computing and enterprise middleware. He has applied for multiple patents. Suresh is passionate about entrepreneurship, technology startups and spends a significant amount of personal time in the start-up ecosystem in Chennai. Suresh is a member of the National Council for Emerging Companies Forum and also a core committee member of Product Forum at NASSCOM. He also does mentoring for budding entrepreneurs at IIT Bombay, E-Cell. Suresh is a regular speaker at various industry forums & academic institutions.

Suresh is the Founder & CEO of OrangeScape. OrangeScape is a platform (PaaS - Platform as a Service) to develop process oriented business applications that can be deployed "On Cloud" and "On Premise". OrangeScape supports platforms like Google App Engine and Microsoft Azure as cloud deployment option and Microsoft .Net and J2EE as on-premise deployment options. OrangeScape has 50+ customers including global brands like Unilever, Citibank, Pfizer, AstraZeneca, Fullterton, etc. OrangeScape in the only Indian company has been featured in the PaaS research reports of Forrester and Gartner. OrangeScape has been featured as 'India's Rising Tech Stars' by Forbes(US) magazine. OrangeScape was showcased as one of the 3 emerging product companies in India by Nasscom and was also awarded 'Top IT Innovations' for 2 consecutive years.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.