Aequus is a human resources consulting company in Melbourne, Australia. Their intellectual property is directly reflected in a novel job slotting and performance ranking system that focuses on contributions as well as skills, and is appropriate for whole organizations, from the CEO to the mail room. Rather than requiring that this system be brought in house, customers and potential customers asked Aequus to provide their product in the Service Oriented Architecture (SOA) model to keep IT costs down.
The Aequus system also allows for configuration of rules for each customer's internal valuation of roles and the employees who fill them. The models are carefully worked out, and some customers use more than one model to better span all the jobs within the company.
The challenge lies in application and data security. The trust that users have in the security of web interfaces is inversely related to the value of the information secured, and when it comes to jobs and personnel, users are frankly paranoid. Thus the appeal of software as a service must be matched with confidence that remotely maintained data are secure.
The Aequus system is built atop Oracle 10g Express Edition. We constructed a network interface that sends and receives JSON messages on its client side, and using Oracle Instant Client and the Oracle oci8 programming interface, it speaks SQL on its server side. To better fortify the systems against SQL injection attacks, we took all the SQL queries out of the source code, and they are synthesized when the process starts.
The client code is relatively immune from injection attacks, and the programmers do not have to learn about Oracle. The addition of the middle layer between the web server and the database provides another barrier to entry. Because we used vanilla IPv4 sockets on the client side, the service can be on a different network from the web server, and that opens up another option in which customers can keep only the web interface on their own systems, and the Aequus system and the intellectual property therein can remain safely offsite.
English is a difficult language filled with ambiguity and misspelling. The accuracy of names of customers and service addresses are a persistent problem for telecom companies. Profit is lost when service personnel check the wrong address, when customers' names are duplicated, and when potential customers' information is misunderstood. Additionally, when potential customers faced complex address forms online, the drop out rate was high.
CavTel wanted to allow each potential customer to type in the service address with a minimum of impediments, in fact, to type it in just as the customer might address an envelope. CavTel also wanted to convert and standardize the eleven million service addresses already in their databases, and convert them from DB2 to Oracle in the process.
New customers make fewer mistakes with the simpler user interface, and the system corrects many of them when the users err. The new process allows free-form addresses to be correctly understood in less than a millisecond, and with all the data now in Oracle, the likely comparisons between addresses and names can be decided in only a few more milliseconds.
CavTel has the only approximate name matching system in the telecom industry, which has allowed them accurately calculate discounts as they co-market with DirecTV. Previously, the matching was done by hand, which required a person with knowledge of both product lines and the access to search the database. Now it is done automatically.