SAP. Many say it is a new technology, used for business especially. Still, for many outsiders SAP is a black box. I have been a developer for a considerable amount of period with a variety of programming languages. I thought: “What is SAP? What could it bring new to the world which has great technologies like Java which fits itself everywhere?”. Recently, I got a chance to undergo training in SAP ABAP and consequently I’m working on an SAP platform.
What I learned about the company…
SAP is a German company formed by a set of people who worked in IBM in 1972. It released a product named R/1 as an Enterprise Resource Planning (ERP) system. It is not a new technology as many people say, rather its one of the oldest solution for business purpose. Neither Object Oriented Programming nor Relation DBMS existed at that time. R/1 evolved with the gradual growth of computer science into R/2 and finally R/3 was released on 1993. Its main customers were very big organizations (more often Fortune 500 companies) who wanted to manage all the business information under a single roof.
Nothing we discussed so far is developer’s perspective. Now we will look into it. As a developer, whenever you want to develop a business solution for any particular organization, you will start to list the requirements. More often, most of the requirements for a variety of the business remain common.
What I learned about the platform….
SAP R/3 is a system, which was developed to satisfy every possible requirement of every possible industry (most of the large scale industry). Is that possible? Yes, SAP made it possible. Database design is the most important part of developing a solution for business purpose. So, they made a database design, which is capable of storing and relating every requirement of business purpose. Could you imagine how many tables present in the database? Nearly, 70,000 tables where each table is having nearly hundred fields. Moreover SAP is an environment, so it had its own programming language named ABAP (Advanced Business Application Programming) to create the applications (which are called ‘transactions’) that run in the SAP system for processing the data stored in the database. It has its own architecture of window and web programming which is way different from conventional technologies.
What I learned about the database design…..
I would like to give you an example which shows the power of SAP’s database design. In many industries, there is a need for maintaining the customer data. In SAP the table that has been designed for storing customer information has nearly 200 fields! There are even fields to store the nearest railway station and the nearest express railway station separately. No doubt, SAP has tried to cover everything as much as possible. However, no company will require maintaining all these information. Hence SAP has to be customized to satisfy the company’s needs. This customization is done by using ABAP. Moreover, the possibility of errors or data inconsistency is far less as the environment is specifically created for business purpose.
What I learned as a Java developer….
Despite its huge implementation cost and time, SAP has remained the best ERP Software since its beginning. What I tried to explain here is a very small part of the story compared to what SAP exactly is. However, I tried to explain it from the point of a developer who uses some conventional technology such as Java to create an ERP for a company.