|
| Guião, S.A. |
 |
| Context |
Guião needed to remodel its internal system of information organization.
The old system was composed of a set of applications in COBOL and RPG, which were running on an AS400 system. The technical team decided to re-engineer the whole information management system, because those applications made the data structures confusing and less functional, which duplicated work and effort (when they introduced new data for example).
The Guião team collaborated with Máquina de Estados to develop a functional strategy, in order to prepare the company for a future in e-commerce and for increasing demand of its Internet services.
|
| Máquina de Estados' Approach |
Our professionals analysed the different systems that had been developed over the last 25 years by several programmers, in order to construct a new strategy for Guião's expansion.
After an initial analysis and a cautious investigation of the whole computing system, we started to develop a new technological strategy, which incorporated the existing team.
Firstly, we selected a Client-Server based Philosophy, because there were innumerable systems which would access the ERP. This approach facilitated the convergence of the Internet services with the management information system that operated on different databases.
The second stage was the selection of a reliable operating system capable of responding to server demands - we chose the UNIX System.
After the selection of the operating system, our professionals needed to choose a databases server adequate for the demands of the enterprise. After carrying out a technical analysis, trials, and a commercial study of Oracle, IBM and Informix products, our team opted for the Informix Dynamic Server, as it had the necessary engine to respond to Guião's requirements.
This however, posed a new problem: how would the server manage the access requests, and how would it serve as a go-between to the databases and the Client? The Apache Web Server appeared to be the best solution to resolve this issue. Thus, the interaction methods between databases would be requested by the Costumer through http, executed in Perl by Apache (through the mod_perl module) and returned via the same protocol.
Perl was elected to be the development language for the whole project, Client and Server side, as it is very comprehensive and easy to learn.
To establish communication between the structures of variable complexity between the Server and the Customer we used XML-RPC coding, a standard that allowed function calling through the HTTP Protocol to other computers, independently of the environment. The Client, in turn, would simply function as an interface between the user and the rest of the system.
The Graphical User Interface (G.U.I.) functioned like a browser where the research and data editing screens were integrated. The graphical objects of the G.U.I. were created in GTK, a graphical toolkit that can be controlled through Perl, from descriptive structures sent by the server in GladeXML.
This whole scheme was based on an Xwindows graphical environment, as it is frequently used in UNIX operative systems, and integrated in Macintosh systems through MacOSX (which represented the majority of Guião's computers). For the remaining computers, we used VNC, a remote visualization system that allows interaction with graphical applications, which run on other machines, in order to access the G.U.I.
At the same time as the project details were being developed, Guião´s technical team was restructured and trained. With the entry of the new currency, it was necessary to hire new professionals for that team. Máquina de Estados participated in the recruitment and selection of new candidates, and in their training in UNIX system administration and utilization of, Entity-Relation Models, SQL, Perl and GTK (this training was complemented by instruction in database administration, Networking, Back-Up Servers, etc., taking the enterprise's necessities into account).
Besides this restructuring effort, our professionals also installed all the hardware related to the servers (namely: the Databases Server, the HTTP Apache Server, the Server for the G.U.I. and the development team's Server). |
|