I had read this interesting article somewhere.
Here is my list of what makes someone qualified to claim “SAP Custom application development experience”.
- I can play 20 questions with non-technical users to learn their current process, the exceptions, the variations, and the vision for future business needs.
- I can design data dictionary objects from the ground up to support those needs including domains with value tables, text tables, table maintenance views, database views, and structures for screens and reports.
- I can write functional and technical specifications that speak to both business persons and ABAP developers. My documents incorporate flowcharts using Visio or Powerpoint diagrams.
- I can generate function modules and includes for change documents to provide standard change history analysis for my applications.
- I can create a custom IMG structure to organize all configuration tables, setup programs, and link documentation together.
- I can use the SAP documentation transaction SE61 and know how to use hyperlinks and includes so that any user will have access to online help from any screen or report I’ve developed.
- I can build applications that utilize parallel processing when performance is critical.
- I know the reason for the Update Task and table locking. Nobody will ever lose their changes in one of my applications.
- I can capture background messages in the Application log if it is not feasible to transmit them back to the user.
- I can incorporate email functionality into my screens and background jobs to eliminate hard copy printouts or the need for users to remember to “go online and check”.
- I know the difference between a perform, a function module, and a class method and when to use each in my design.
- I know how to incorporate hooks and user exits into my application so that future developers can easily make changes without touching the core modules.
- All screens have search helps, F1 documentation, memory IDs, and double-clicking on stuff naturally takes you to the most meaningful screen for that particular element. I even include documentation for future programmers to give them some hints on how to extend or enhance the application.
- I know what makes a BAPI different than just any old RFC. I also know when I should use a real-time ALE interface instead of a BAPI and vice-versa.
- I know how to work with Grid controls, Tree controls, Text editor controls, and splitter controls to provide the most robust user tools possible.
- I know how to code in order to handle Unicode files and text. My applications are fully multi-lingual, requiring only someone bilingual to help with the translations.
And lastly, most encompassing:
- When people use my applications, they would swear it was just another SAP transaction.
I hope this highlights some of the value that a skilled ABAP developer can bring to a project. Custom SAP application development can cost companies hundreds of thousands of dollars per year. A well designed application with attention paid to the details will surely save as much over the course of its lifetime.