An Internet Banking Framework with Perl Javier Rodríguez, Carlos de la Guardia. Aldea Internet, México.

Slides:



Advertisements
Similar presentations
웹 서비스 개요.
Advertisements

Websydian Anne-Marie Arnvig Manager, Websydian Communications & Relations.
Websydian products.
DIGIDOC A web based tool to Manage Documents. System Overview DigiDoc is a web-based customizable, integrated solution for Business Process Management.
ICS 434 Advanced Database Systems
Chapter 13 Review Questions
Chapters 14 & 15 Internet Databases. E-Commerce  Bringing new products, services, or ideas to market, supporting and enhancing business operations 
Time Scalability Single User Unlimited Users 100s of Users Several Users PC based Single user Late 1980sNow PC based, file-level locking Single user or.
Adding scalability to legacy PHP web applications Overview Mario A. Valdez-Ramirez.
Sergio Ferreira MoreData I16 Thursday, October 12, :30 a.m. – 11:30 a.m. Platform: Informix How to call Informix 4gl code from J2EE.
8.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Technical Architectures
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
DATABASE APPLICATION DEVELOPMENT SAK 3408 The Web and DBMS.
Lecture 2 Web application architecture. Themes Architecture : The large scale structure of a system, especially a computer system Design choice: The need.
Chapter 7: Client/Server Computing Business Data Communications, 5e.
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
The Architecture of Transaction Processing Systems
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
4/25/ Application Server Issues for the Project CSEP 545 Transaction Processing for E-Commerce Philip A. Bernstein Copyright ©2003 Philip A. Bernstein.
INTRANETS DEFINITION (from Cambridge International Dictionary of English) intra- Combining form used to form adjectives meaning 'within' (the stated place.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
The Design Discipline.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
PayDox Corporate Document Management System Rotech AB Interface Ltd Business Software Integration.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Week 7 Lecture Web Database Development Samuel Conn, Asst. Professor
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Quality Attributes of Web Software Applications – Jeff Offutt By Julia Erdman SE 510 October 8, 2003.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
UNIT – II ARCHITECTING WEB SERVICES. WHAT ARE WEB SERVICES ? Web Services are loosely coupled, contracted components that communicate via XML-based interfaces.
Enterprise Java Beans Part I Kyungmin Cho 2001/04/10.
COLD FUSION Deepak Sethi. What is it…. Cold fusion is a complete web application server mainly used for developing e-business applications. It allows.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Living markets ® living agents ® Adaptive Execution in Business Networks January 21 st, 2002.
Fundamentals of Database Chapter 7 Database Technologies.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
National Center for Supercomputing Applications NCSA OPIE Presentation November 2000.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
CSE 219 Computer Science III Program Design Principles.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
1 CS122B: Projects in Databases and Web Applications Spring 2015 Notes 03: Web-App Architectures Professor Chen Li Department of Computer Science CS122B.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
EJB. Introduction Enterprise Java Beans is a specification for creating server- side scalable, transactional, multi-user secure enterprise-level applications.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
6. Application Server Issues for the Project
WebSphere Diego Leone.
Netscape Application Server
Server Concepts Dr. Charles W. Kann.
#01 Client/Server Computing
Top Reasons to Choose Angular. Angular is well known for developing robust and adaptable Single Page Applications (SPA). The Application structure is.
Web Application Architectures
Chapter 17: Client/Server Computing
Web Application Architectures
Component-based Applications
DATABASE DESIGN & DEVELOPMENT
AIMS Equipment & Automation monitoring solution
#01 Client/Server Computing
Presentation transcript:

An Internet Banking Framework with Perl Javier Rodríguez, Carlos de la Guardia. Aldea Internet, México.

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California The Challenge In the summer of 1997, Banco del Atlántico (a Mexican bank) asked us to develop a web front end for their remote banking application Our mission: to create a middleware capable of communicating with a session-oriented COBOL application running in a UNISYS mainframe, which could interface with a stateless web server Obstacles included a small time frame and the need to interact with old applications, coded in different languages and very poorly documented

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California Our goals Extensibility –implement and integrate new business functions easily Scalability –Handle huge numbers of users –Work with multiple servers if necessary Security –Secure server and protected CGI execution environment Portability –Easily migrate to other Operating Systems –Database engine independence

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California Our Approach Use of a Modular Architecture –hide the implementation details from the main application and each other –encapsulate tasks like communication with legacy systems and business logic into separate modules Use of persistent connections to solve the stateless protocol problem (fastcgi was the tool of choice) Use of a process manager to route petitions to the first available server process, to add new servers easily as the number of customers required it Use of existing code wherever possible to improve development cycle time

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California Why Perl? Deciding to use Perl is easy, convincing people in corporate circles that it is the way to go is a lot harder Perl has a lot of advantages meaningful to our project: –Short development cycle –Maintainability –Excellent language features –Code reuse through the addition of existing modules –We love Perl! There were a couple of drawbacks too: –No multithreading –Considerable footprint

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California Perl in Action We developed a low-level communications module to talk directly to the legacy server (telnet.pm came in handy) We also developed a mid-level operations module to encapsulate all needed banking operations –A single line of perl code in the main CGI script could then commit a complete transaction: $message=commitTransfer($nip,$date,$time,\%source,\%destination); The process manager, the tool to interface with session based legacy systems using stateless protocols, was also programmed in Perl The use of DBI, CGI.pm and other modules simplified our work Quickly assembled debugging tools later became monitoring applications for the systems managers

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California Architecture

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California The User Side The user interacts with the application using a web browser All user operations are sent to the Mainframe via a CGI script which uses the developed modules The proccess manager takes care of asigning the connections

An Intranet Banking Framework with PerlPerl Conference 2.0 Javier Rodríguez, Carlos de la Guardia, Jose, California Conclusion The project proved to many unbelievers that Perl can really offer solutions to complex problems in the real world of financial institutions You can save time and money using Perl, and also develop a strong and scalable solution The extensibility we achieved using Perl, allowed us to extend the application to interact with point of sale equipment and serve as a front end for a mini bank in a little over a month! As a sad colophon to this story we must state that the Banco del Atlántico was bought by another bank shortly after the project was completed. The new administration dropped the project completely