2 The Problem From mnemonics to high level language to IDEs, computer languages have evolved progressively over the years, adding increased degrees of automation and sophistication. However, as businesses evolve, so do their needs for creating portable, scalable business applications. Today s businesses need the ability to integrate complex applications with web-based technologies, as in the case of CRM solutions, in order to remain competitive. With ever-changing market demands, companies must employ new programming paradigms that are designed to 1) simplify software design, 2) increase productivity, and 3) reduce development costs. Luckily, there s a new generation of 5GL tools that can minimize the time and effort required to develop and deploy web-based business applications, including complex CRM solutions. Proof the Problem Exists Since the 1950s, each generation of software language has evolved with its inherent set of advantages and shortcomings: First and Second Generation Languages (1GL and 2GL) First generation language showed the computing world that, just because it s convenient for computers to process code and data using only two voltage levels, it doesn t mean it s feasible for any lucid programmer to write program in machine language. So assemblers, as second generation languages (2GL), were introduced. For non-programmers, assembly language looks different than machine language. For system programmers, however, assembly language is just another way to represent machine instructions using one-to-one human readable equivalents called mnemonics. Interestingly, assemblers are still in use today for small specific tasks in embedded systems, OS device drivers, graphic intensive applications, or even real-time desktop applications when fine-tuning critical code passages and time intensive loops, which can easily become the main bottleneck for real-time applications. On the downside, 2GLs are not portable, tie the program to computer architecture details, and are thus ineffective for writing portable, scalable code. Third generation languages (3GL) Third generation languages (3GL) started the high-level language (HLL) revolution by the early 1960s and were marked by the adoption of FORTRAN and ALGOL as potential alternatives to assembly language. They simplified the burden of programming by allowing programmers to focus more on the actual solution logic instead of being limited by assembly instruction sets and computer hardware dependencies. Eventually, FORTRAN, ALGOL, and newer 3GLs (COBOL, BASIC, PASCAL, C, etc.) rose to the challenge and steadily reached hardware independence. 3GLs have literally flooded application development ever since. The reason is twofold: 3GLs offer a compromise for implementing system software as well as productivity software while simplifying program flow, control logic, and programming effort. Indeed, 3GLs offer the simplicity, structure, and clarity absent in early 2GLs while making software development more programmer-friendly. For 2

3 instance, 3GLs such as C and C++ give enough flexibility for the programmer to talk directly to the computer hardware if needed, while allowing the use of higher software abstractions to implement more complex functionality if desired. The object oriented programming (OOP) paradigm further strengthened the proliferation of 3GLs such as Java, Eiffel, Python, Ruby, C#, etc. by adding new enhancements such as polymorphism, inheritance, encapsulation, templates, etc. on top of existing 3GL features such as structured blocks, control statements, strongly or explicitly declared types, and abstract data types (ADTs), among others. Fourth generation languages (4GLs) Fourth generation languages (4GLs) brought more control, automation, and higher abstraction to software development. The creation of visually integrated development environments (IDEs) with automated project wizards and other graphic based toolkits where programmers build applications by manipulating blocks of programming units, modules, or functions, are all good examples of 4GLs that made software development less cumbersome and tedious as compared to 3GLs [1]. 4GLs are typically used to implement graphical user interface (GUI) frontends, office applications, and middleware services, among other software. Yet another common criterion to classify 4GLs is when they attempt to simplify semantics and get a step closer to natural language. Although 4GLs reduce development, integration, and deployment time to some extent, it is still often necessary for programmers to implement certain requirements using 3GL code during the development process. This prompted the creation of fifth generation languages (5GL). The Basic Solution Cloud-based 5GL tools can minimize the time and effort required to develop and deploy web-based business applications, particularly CRM solutions. In fact, results from a recent research study conducted at Harrisburg University showed that certain 5GL tools, specifically WorkXpress, were easier to learn and use than most 3GLs, reduced development times and effort, and offered more flexibility overall. In order to form an impartial comparison between 5GL and 3GL, the study utilized a small group of 2 nd year Computer Science students, and asked them to implement (after minimal training) the five primary building blocks of WorkXpress Platform as a Service. Tables Forms Fields Relationships Actions (using the expression builder and query builder) Performance was measured using the following five rubrics: 3

4 Ease of use All five students were captivated by how easy it was to create a small CRM application from scratch just by performing a few clicks and filling out a few forms and tables. The fact that most of the implementation details were being transparently handled by the 5GL tool was one of the most useful features the tool offered, they argued. However, one student clearly biased for 3GLs, while acknowledging the clear time savings achieved by the 5GL tool, still favored using 3GLs alleging more control and customization of the final application. One reason for this bias could be twofold: Most 3GL programmers do not have the experience or the need to implement full CRMs from scratch; they either use 3GLs to solve smaller problems, or write optimized library modules to add middleware or frontend functionality. Second, most 3GL programmers might overlook other stages of the CRM development process besides implementation that are handled behind the scenes by the 5GL tool and the cloud-based environment, such as DBMS setup, database connectivity, backend interactions between the DBMS and the web server, and the final integration of all CRM modules and components. Development time and effort Although all five students agreed that development time and effort was definitely reduced using the 5GL tool, there was no consensus on the amount of time required to implement a similar CRM application using 3GL technology. Most students underestimated the potential time required to implement the same features using 3GL tools. Time estimates varied widely from just 6 hours to 2 or 3 days at most. This is not surprising since most of the students who participated in the experiment, although intelligent programmers, do not have extensive experience building CRMs or production software with real project deadlines and deliverables - students take Software Engineering later in their junior year. Also, the fact that the 5GL tool conveniently performs most of these implementation and integration details under the hood is another reason for their underestimation of the required development time and effort. Time Savings with WorkXpress: Quantitatively, the students found at least a 60-90% reduction in development times with WorkXpress versus 3GL's, and likely that time savings is much higher. The students had little experience with CRM applications and coding the detailed specifications in 3GL are probably much more time intensive than they realized. 4

5 Testing capabilities During development of the CRM application, each student was given a specific module to work with. Since each of the modules was chosen to be independent, the 5GL tool not only allowed students to implement each of the module specifications independently, but also to test them separately using the unit test feature. Students overall agreed that this was a very convenient and necessary feature already available from the 5GL tool. Because business logic in any significant implementation can be deep and complex, a need has been identified for debugging tools that supersede any simplicity in actual software development. In other words, even using a 5GL that renders the act of writing code fast and easy, the business logic itself can become quite complex. WorkXpress has evolved a series of debugging tools to address these needs. First, the presentation layer can be debugged simply because the tools are WYSIWYG (what you see is what you get). Queries of the data layer are debugged with live querying of sample results as a query is developed. At any point of writing a query, the developer can see a sample of the records being returned. The logic layer is debugged using a logging feature that records results returned from each step of a logic chain; this feature is turned on, an activity is performed, and then turned off, and step by step results can be reviewed in the log. And if it were not enough, the application explorer allows detailed crawling and editing of any connected elements of the application structure and data records. Web based vs. standalone IDE Most students also realized the advantages of a cloud-based environment for both application development and deployment over the web. The tool allowed them to work remotely on the same project using different login credentials. This was not a problem since each student worked on a Prefer WorkXpress: Qualitatively, the students prefer many aspects of 5GL development, namely elimination of redundant activity, and unit testing. different module. The tool also provides version and revision control features, although this was not explored thoroughly for time reasons. In contrast, from the experience students already had using 3GLs, they quickly realized that project integration during development and eventual deployment was harder to coordinate and achieve using standard 3GL technologies. The cloud infrastructure obviously plays a major role in this coordination transparently on behalf of the tool. Assignment of tasks Most students seem to agree that a cloud driven 5GL tool like WorkXpress facilitates task assignments and teamwork among developers in a smoother and easier fashion than most 3GLs would. However, it can also be argued that this is due in part to the modular nature inherent in most business 5

6 applications tackled by 5GL technologies: ERPs and CRMs among others. On the other hand, students also quickly realized that a cloud environment allows both the 5GL tool and the developer to focus more on building the actual application and worry less about software and hardware integration details. Cloud-based 5GL tools minimize the time and effort required to develop and deploy web based business applications. 5GL tools perform most of the implementation, connectivity, and integration details transparently on behalf of the developer. 5GLs can truly remove the dependency on the programmer for certain application domains where 3GL or 4GL tools just fall short. The choice of sophomore students from a CS2 class to run a software experiment allowed us to perform an unbiased analysis of 5GL features vs. 3GL based on a generic CRM application. WorkXpress: Streamline Development with Intuitive Visual Tools WorkXpress leverages programming concepts from earlier generation languages, but abstracts and visualizes their implementation so as to make the act of coding much easier. For example, WorkXpress requires the creation of a data layer using tables and relationships, a presentation layer using fields and forms, and a logic layer using logic blocks in a procedural and, at times, object oriented logic framework. However, the developer implements these layers in a drag and drop, iconographic environment. Additionally, WorkXpress provides a rich visual tool to query the data layer, and a visual expression builder tool to perform what are essentially 3GL functions to manipulate data. The combined effect is a replication of the most common concepts of 3GL languages but in visual environment that is easy to learn and very fast to build with. But since software development is only a part of software deployment, WorkXpress leverages cloud computing technologies to bring fast, easy to learn, visual tools when tackling all other aspects of software development lifecycle management, systems administration, and other typical database administration functions. This proves that software lifecycle management, software deployment, and ongoing software administration and management can also be performed easily and in a visual environment. Looking Ahead: Harrisburg University faculty recognizes that 5GL is a natural evolution of software development. As such, they are considering adding an elective course on 5GL development. Additional more detailed studies may be forthcoming. Finally, WorkXpress provides visual tools for other important tasks such as data integration, debugging, and more. For instance, WorkXpress development tool bar utilizes easy-to-select icons that allow for the creation of the five basic building blocks: tables, forms, fields, relations and actions. Visual overlays 6

7 allow direct interaction with each layer, including their edition and dragging and dropping elements around the screen. The remaining tools include a recycle option, an online manual that launches wizards to assist in hundreds of miscellaneous programming tasks, and last but not least, an application explorer. This explorer tool uses a search and a tree interface to crawl though all tables, relationships, forms, fields and actions to better understand or edit your application structure, or data records. To learn more about WorkXpress, to receive a free demonstration or to receive the full study by Harrisburg University, please contact: 7

Module 1 Introduction to Software Engineering Lesson 2 Structured Programming Specific Instructional Objectives At the end of this lesson the student will be able to: Identify the important features of

zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant

Transworld Data Mary E. Shacklett President Transworld Data For twenty-five years, Transworld Data has performed technology analytics, market research and IT consulting on every world continent, including

School of Computing FACULTY OF ENGINEERING MEng, BSc Applied Computer Science Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give a machine instructions

1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level

Chapter 1 1.1Reasons for Studying Concepts of Programming Languages a) Increased ability to express ideas. It is widely believed that the depth at which we think is influenced by the expressive power of

GE Intelligent Platforms Work Process Management Achieving Operational Excellence through Consistent and Repeatable Plant Operations With Work Process Management, organizations can drive the right actions

C H A P T E R 4 Software: Systems and Application Software Software and Hardware Software can represent 75% or more of the total cost of an IS. Less costly hdwr. More complex sftwr. Expensive developers

Sisense Product Highlights Introduction Sisense is a business intelligence solution that simplifies analytics for complex data by offering an end-to-end platform that lets users easily prepare and analyze

School of Computing FACULTY OF ENGINEERING MEng, BSc Computer Science with Artificial Intelligence Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give

: Managing the complexities of virtualization and legacy technologies with a unified access, power control and auditing platform. 2010 Raritan Inc. Overview Virtualization has emerged as a tremendous solution

ZULTYS CLOUD SERVICES WHY CHOOSE ZULTYS CLOUD SERVICES? With Zultys Cloud Services, you get a fully-hosted telephone system that is secure and reliable enterprise-class service without the enterprise-class

How Business People can Create Mobile Apps without Programmers Today over 90% of Americans own a Smartphone, and close to half own a Tablet. These mobile devices have become the de facto standard devices

Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice

Jitterbit allows you to easily integrate Microsoft Dynamics CRM with any cloud, mobile or on premise application. Jitterbit s intuitive Studio delivers the easiest way of designing and running modern integrations

Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today

Disclaimer: The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS In order to ease the burden of application lifecycle management,

Service Oriented Architecture Version 9 2 SOA-2 Overview Ok, now we understand the Web Service technology, but how about Service Oriented Architectures? A guiding analogy Terminology excursion Service,

White Paper Elastic Private Clouds Agile, Efficient and Under Your Control 1 Introduction Most businesses want to spend less time and money building and managing IT infrastructure to focus resources on

WHY UPGRADE/MIGRATE ORACLE FORMS APPLICATIONS? A WHITEPAPER The information provided in this white paper is for general information only. It is not a specific guide to any particular upgrade/migration.

Web Application Development for the SOA Age Thinking in XML Enterprise Web 2.0 >>> FAST White Paper August 2007 Abstract Whether you are building a complete SOA architecture or seeking to use SOA services

White Paper Connected Product Maturity Model Achieve Innovation with Connected Capabilities What is M2M-ize? To M2Mize means to optimize business processes using machine data often accomplished by feeding

Oracle Planning and Budgeting Cloud Service Oracle Planning and Budgeting Cloud Service enables organizations of all sizes to quickly adopt world-class planning and budgeting applications with no CAPEX

Rapidly build, test and deploy Web, Web services and Java applications with an IDE that is easy to learn and use IBM Rational Web Developer for WebSphere Software Version 6.0 Highlights Accelerate Web,

Secure Networks for Process Control Leveraging a Simple Yet Effective Policy Framework to Secure the Modern Process Control Network An Enterasys Networks White Paper There is nothing more important than

Virtualization: The 5 Trends That Can Extend Its Value Now that virtualization is the enterprise IT norm, how can you make it work best for you? Virtualization has become the norm in today s business and

The Missing Link in Data Management Introduction Digital properties are a nexus of customer centric data from multiple vectors and sources. This is a wealthy source of business-relevant data that can be

Java Technology in the Design and Implementation of Web Applications Kavindra Kumar Singh School of Computer and Systems Sciences Jaipur National University Jaipur Abstract: This paper reviews the development

Zend and IBM: Bringing the power of PHP applications to the enterprise A high-performance PHP platform that helps enterprises improve and accelerate web and mobile application development Highlights: Leverages

Wealth Management System Clients in the new economy demand straight answers. With ubiquitous information on the Internet and an around-the-clock global financial market accessible by pagers, email, mobile

The IT and Business Process Automation Platform The demand for software developers far exceeds the supply. For this reason as well as limited budgets and the need for greater employee efficiency, 11,000

Demystifying Platform as a Service The dividing lines between PaaS and IaaS may be blurring, but it s important for outsourcers of IT infrastructure to understand what sets Private PaaS apart from commodity

Realization of Inventory Databases and Object-Relational Mapping for the Common Information Model Department of Physics and Technology, University of Bergen. November 8, 2011 Systems and Virtualization

1 A Software and Hardware Architecture for a Modular, Portable, Extensible Reliability Availability and Serviceability System James H. Laros III, Sandia National Laboratories (USA) [1] Abstract This paper

Product Datasheet Actuate Business Intelligence and Reporting Tools (BIRT) Eclipse s BIRT project is a flexible, open source, and 100% pure Java reporting tool for building and publishing reports against

AppStack Technology Overview Model-Driven Application Management for the Cloud Accelerating Application Time-to-Market The last several years have seen a rapid adoption for public and private cloud infrastructure

The Recipe for Sarbanes-Oxley Compliance using Microsoft s SharePoint 2010 platform Technical Discussion David Churchill CEO DraftPoint Inc. The information contained in this document represents the current

HOW THE WEB IS CHANGING EVERYTHING WHITE PAPER HOW THE WEB IS CHANGING EVERYTHING IN THE SIGN INDUSTRY And what you need to know to take advantage Topics included in this paper Introduction SaaS and Cloud-based

WHITE PAPER Elastic Cloud Infrastructure: Agile, Efficient and Under Your Control - 1 - INTRODUCTION Most businesses want to spend less time and money building and managing infrastructure to focus resources

Workflows as Applications Applications in Workflows DD Web based graphic designer for SharePoint workflows DD Central administration for processes and permissions DD Powerful capabilities with and without