Digital Media Web Blogs > Web

Perl Success Story: Bottom-Up Application Programming with Perl


James McGowan, a consultant for Barclays Bank at their technology center in Cheshire, England, sent me this story about an internal ordering system eSL(electronic Service Point) he designed and developed.

A Technology Ordering System

I was drafted in to an intranet project for a major UK bank. They wanted a Perl guru, but would settle for someone 'who knew a bit about everything'. While I couldn't claim to know everything, I did know quite a bit about Perl, and had enough experience of how powerful the combination of Perl and JavaScript could be in the rapid development of usable applications.

The bank still used a paper-based internal technology-ordering system, which meant that people who wanted telephone lines, networked PCs, or any other piece of provisioning had to phone an order desk to get a paper form. Once filled out, the form had to be authorized by a manager and sent back to the order team, who then logged the order on various online systems. This took time and effort� and wasted a lot of paper.

Before I was called in, the bank�s developers had spent time automating the end-to-end supply of a number of products. On the strength of that process improvement and cost savings, an expansion of this work was required to uplift a further twelve paper forms onto a web-based system. This time they wanted a fully configurable shopping-basket ordering system. While Perl may not have seemed the obvious choice for such a system, the existing system was already using it, and they wanted the existing functionality to be transferred to the new site.

I started working on a requirements document, and it soon became apparent that it was only a starting point. I switched the project methodology to a derivative of Extreme Programming, and set about writing two major spike developments as proof of concept, interlinking with their existing proprietary work management tool, Siebel, and their Oracle-based HR database. The system allowed bank branch admin staff to order technology services online instead of going through an IVR system or email. Orders could be saved, duplicated, transferred between users, and monitored as they were processed. The greatest time savings was that many of the orders could be transferred directly by email or Siebel from the server to the workgroup responsible for filling the orders, cutting out the paperwork altogether.

Within two XP iterations, the site was ready to go out for beta testing with about twenty services. By word of mouth only, the site had nearly 300 users within a few weeks, and suggestions for improvements were coming in thick and fast. Because I had designed it with maximum configuration in mind, new forms could be added with ease� with no knowledge of HTML, since I had written a simplified coding language to code forms that non-technical people could use. All of this was done on web GUI configuration pages, so the number of forms available on the system started to grow.

A year later, the system includes full, live status reports, an authorization process, over 350 forms, and has processed almost 30,000 orders since going live. There are over 3000 regular users within the bank, all running from a single AIX web server, with full session management�written in Perl, with DBI links to Oracle databases and COM links into Siebel and Exchange. And the system is growing all the time. This work has led to commissions for other pieces of work linking directly into the order-processing function of the main site, which will include workflow management, asset booking, and property management applications, as well as incident reporting and a complaints procedure.

What started as a small-scale tactical solution has grown into a group-wide strategic tool. The bank has been pleasantly surprised by the cost-effectiveness and efficiency of the tool: less than a year after implementation, the system is now supported by just one developer with the trusty Perl 'camel' book and one full-time project manager. In addition, the bank has been introduced to the concept of rapid bottom-up application development using Extreme Programming concepts, as well as the versatility of Perl as a core development platform for web-based applications.

Whoever said Perl wasn't scalable?

--James McGowan

James works as a freelance web application consultant all over the UK. For the last year, he has been working for Barclays Bank, at their technology center in Cheshire, England, designing and developing an internal ordering system eSP (electronic Service Point). He is also a partner in Diamond Iris, a company dedicated to providing SMEs with inexpensive bespoke high functionality websites using rapid application design principles.



To learn how large and small companies are using Perl to meet their goals, check out Perl Success Stories.

If you have a Perl success story of your own that you'd like to share, please let me know. You can reach me at: betsy@oreilly.com

Categories





AddThis Social Bookmark Button

Read More Entries by Betsy Waliszewski.

Recommended for You

Topics of Interest

Archives


 
 


Or, visit our complete archive.