<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Modularization of Procedural ABAP Code in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199626#M1203094</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Does anyone know of sources which make the argument for or speak of the benefits of modularizing classical (procedural) ABAP code into procedures (a.k.a. sub-routines)? When I refer to modularization and procedures, I mean much more than just breaking up the code into FORMs. With modularization, global variables, structures, and tables are not referenced in sub-routines. Instead, the sub-routine's input and output are governed exclusively by the sub-routine's formal parameters (i.e., USING... and CHANGING...). Within the sub-routine, i/o parameters and locally-declared variables, structures and tables are referenced. This approach has a variety of benefits: improved program readability; easier program maintenance and troubleshooting; and data encapsulation. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;While such an approach is embraced near-universally in the academic community and extensively in the professional world (for most computer languages), I find that modularization is rare in the ABAP world. I suspect that this is the case due to some combination of the following reasons:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1)  ABAP descended extensively from Cobol which does not well-facilitate modularization (if my recollection is correct);&lt;/P&gt;&lt;P&gt;2)  Modularization was unwieldy and syntactically cumbersome in the earlier versions of ABAP (i.e., IMPORTING..., EXPORTING...); and&lt;/P&gt;&lt;P&gt;3)  A large percentage of ABAP coders, particularly years ago, were not university-trained in computer science. So they were never taught the benefits or the discipline of modularization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, in an effort to persuade my colleagues and manager of the benefits and reasonableness of modularization, I would like to present to them numerous texts which advocate it. Given how modularization is ubiquitously embraced in the larger computer science world, I am afraid that it may be hard to find texts which advocate what is generally viewed as obvious. So far, I have found two sources:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&lt;EM&gt;ABAP Objects&lt;/EM&gt; written by Horst Keller and Sascha Kruger; and &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&lt;EM&gt;Data Structures&lt;/EM&gt;, Algorithms, and Program Style by James F. Korsh (a Pascal-centric book). &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would much appreciate being pointed to any on-line or hardcopy sources. While ABAP-focused books may be most persuasive to my colleagues, I would appreciate any source regardless of which computer programming language the text primarily deals with.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 16 Feb 2009 21:31:17 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2009-02-16T21:31:17Z</dc:date>
    <item>
      <title>Modularization of Procedural ABAP Code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199626#M1203094</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Does anyone know of sources which make the argument for or speak of the benefits of modularizing classical (procedural) ABAP code into procedures (a.k.a. sub-routines)? When I refer to modularization and procedures, I mean much more than just breaking up the code into FORMs. With modularization, global variables, structures, and tables are not referenced in sub-routines. Instead, the sub-routine's input and output are governed exclusively by the sub-routine's formal parameters (i.e., USING... and CHANGING...). Within the sub-routine, i/o parameters and locally-declared variables, structures and tables are referenced. This approach has a variety of benefits: improved program readability; easier program maintenance and troubleshooting; and data encapsulation. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;While such an approach is embraced near-universally in the academic community and extensively in the professional world (for most computer languages), I find that modularization is rare in the ABAP world. I suspect that this is the case due to some combination of the following reasons:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1)  ABAP descended extensively from Cobol which does not well-facilitate modularization (if my recollection is correct);&lt;/P&gt;&lt;P&gt;2)  Modularization was unwieldy and syntactically cumbersome in the earlier versions of ABAP (i.e., IMPORTING..., EXPORTING...); and&lt;/P&gt;&lt;P&gt;3)  A large percentage of ABAP coders, particularly years ago, were not university-trained in computer science. So they were never taught the benefits or the discipline of modularization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, in an effort to persuade my colleagues and manager of the benefits and reasonableness of modularization, I would like to present to them numerous texts which advocate it. Given how modularization is ubiquitously embraced in the larger computer science world, I am afraid that it may be hard to find texts which advocate what is generally viewed as obvious. So far, I have found two sources:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&lt;EM&gt;ABAP Objects&lt;/EM&gt; written by Horst Keller and Sascha Kruger; and &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&lt;EM&gt;Data Structures&lt;/EM&gt;, Algorithms, and Program Style by James F. Korsh (a Pascal-centric book). &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would much appreciate being pointed to any on-line or hardcopy sources. While ABAP-focused books may be most persuasive to my colleagues, I would appreciate any source regardless of which computer programming language the text primarily deals with.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Feb 2009 21:31:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199626#M1203094</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-16T21:31:17Z</dc:date>
    </item>
    <item>
      <title>Re: Modularization of Procedural ABAP Code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199627#M1203095</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Donald,&lt;/P&gt;&lt;P&gt;              i would like to share that ABAP is not just a procedural , book coded language.In real time scenarion we get far more different scenarion which we generally read in the book.So when it comes to performance we need to adopt methodology.Now which method we use depends on various circumsatnces. We keep in mind the customer what they need.Do they need to save money or time.Ac cording to them the procedures are plan.Different modularization gives various quality results.Anyhow it will be better if you go more in detail using this link.It is official Subroutine link by SAP.&lt;/P&gt;&lt;P&gt;Link:[Subroutine|http://help.sap.com/saphelp_46c/helpdata/EN/9f/db975c35c111d1829f0000e829fbfe/content.htm]&lt;/P&gt;&lt;P&gt;Hope your query resolves.&lt;/P&gt;&lt;P&gt;Have a best day ahead.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Feb 2009 08:49:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199627#M1203095</guid>
      <dc:creator>gaursri</dc:creator>
      <dc:date>2009-02-17T08:49:11Z</dc:date>
    </item>
    <item>
      <title>Re: Modularization of Procedural ABAP Code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199628#M1203096</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;just a question, on which release is your impression about ABAP coding based, on 4.6 or 7.0?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Feb 2009 08:59:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199628#M1203096</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-17T08:59:49Z</dc:date>
    </item>
    <item>
      <title>Re: Modularization of Procedural ABAP Code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199629#M1203097</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;"An Insider's guide to writing robust, understandable, maintainable, state-of-the-art ABAP programs" by #1 ABAP gurus Andreas Blumenthal and Horst Keller, also deals with modularization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[Part 1|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c2992ca9-0e01-0010-adb1-b7629adb623c] - [Part 2|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/4fbafc9e-0e01-0010-dea9-9d23d1b269fb] - [Part 3|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f2dac69e-0e01-0010-e2b6-81c1e8e5ce50]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In short: use ABAP Objects &lt;SPAN __jive_emoticon_name="wink"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thomas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Feb 2009 09:20:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199629#M1203097</guid>
      <dc:creator>ThomasZloch</dc:creator>
      <dc:date>2009-02-17T09:20:39Z</dc:date>
    </item>
    <item>
      <title>Re: Modularization of Procedural ABAP Code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199630#M1203098</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; on which release is your impression about ABAP coding based, on 4.6 or 7.0?&lt;/P&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My company is running ECC 6.0 which I find easily faciliates modularization.  I am glad to be working with it.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Feb 2009 14:33:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199630#M1203098</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-17T14:33:04Z</dc:date>
    </item>
    <item>
      <title>Re: Modularization of Procedural ABAP Code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199631#M1203099</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I recommended to my staff, who'd had no formal training on the best way to program, the book "The Pragmatic Programmer".  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rather than convince your team, why not convince your manager - then your team have to do it!  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Modularised code, with correct typing and correct scoping of variables is, in terms of total cost of ownership of the development, much much &lt;STRONG&gt;cheaper&lt;/STRONG&gt;.  And, once the habit is ingrained, it doesn't take much longer.  You don't save in the initial development - the harvest is reaped later, because a well-written program is much easier to debug, fix, enhance, maintain.  And it's in those areas that you save time and therefore &lt;STRONG&gt;money&lt;/STRONG&gt;.  And that's what a manager is interested in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And a badly written program can be very expensive.  In one place I worked, there was a very complicated program that calculated commission payments for sales staff.  A new payment mode was introduced and the program didn't work.  The program had multiple SELECT... ENDSELECTs, tables called "itab1", "itab2", wasn't modularised at all,  and only used global variables.  We had to redevelop the whole program, which took 3 weeks.  In the meantime, the company reached agreement to pay the sales-staff a fixed rate of commission that was &lt;STRONG&gt;much higher&lt;/STRONG&gt; than they were likely to have earned - but it was either that, or get a strike.  The additional payments cost the company several hundred thousand Euro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For papers and academic treatise, why not contact some universities that teach computer science directly?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;matt&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Feb 2009 07:05:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/modularization-of-procedural-abap-code/m-p/5199631#M1203099</guid>
      <dc:creator>matt</dc:creator>
      <dc:date>2009-02-18T07:05:05Z</dc:date>
    </item>
  </channel>
</rss>

