PAAS requirements and the Enterprise
If the history of programming would be written then the Holy Grail would be to empower the end users to create such computer programs sans layers of translations from business to technical to programming languages. The basic idea behind this is to ensure that the languages are simpler and more abstract. The generations of programming languages when loosely defined can be described as 1GL (1st generation language): Machine Language, 2GL (2nd generation language): Assembly Language, 3GL (3rdgeneration language: Procedural Languages): Fortran, COBOL, C, Pascal, Algol, 4GL (4thgeneration language: Declarative Language): SQL, Power builder, FoxPro, Oracle, Forms, eDeveloper, Cold Fusion, 5GL (5thgeneration language: Constraint based Language): Prolog, LISP. However the goal towards simpler languages is still far from being realized. While there exist little commercial software that allows end users or business analysts to act as proxy for the end users create ‘prototypes’ especially for user interface but they only a generate a prototype with nice interface without the actual engine since it still needs traditional programming to create a meaningful engine.
There are various visual languages led by Microsoft and Borland that provide various visual (read drag and drop) widgets to generate the programs in traditional languages namely Pascal, C++, Java.
Platform as a Service (PaaS for applications generation) is a logical next step of Software as a Service. Forrester defines PaaS quite simply as “an externally hosted service providing a complete platform to create, run, and operate applications including development tools, administration and management tools, runtime engine(s), data management engine(s), security facilities, and user-management services. PaaS is based on Internet protocols and patterns.” The idea is to have such a PaaS service provider that includes all components of the platform as defined above. The PaaS software should not need any specific coding and should provide for a set of common building blocks that may be needed for developing RIA (Rich Internet Application) with database. Additionally it should account for distributed collaborative applications and should provide all necessary tools for users of various disciplines to be able to collaborate effectively online.
The IT service management provider should also offer PaaS solutions that follows a traditional database development methodology by defining multiple Entities and creating relationship among them – as one can visualize in an Entity Relationship Diagram. Also such IT service management solutions when they offer best process management platform they can be immensely beneficial since it allows users to create industry strength workflow automation on top of any of the applications they are developing using a unique process engine. Most of the PaaS are weak due to their lack of any built-in integration built-in SOA based integration technology, that can easily integrate with any applications running anywhere in the world on any technology platform.
Learn more about: Application Lifecycle Management & software development life cycle