smartshift whitepaper abapcodedevelopmentandqualityassurance 2015

13
7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015 http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 1/13  Global Market Leader in Enterprise Transformation and Management, including  Automated ABAP ®  Code Transformations  A Whitepaper by John Conte Gregory Sabatino ABAP Code Development and Quality Assurance

Upload: xchitta

Post on 25-Feb-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 1/13 

Global Market Leader in Enterprise Transformation and Management, including Automated ABAP®

 Code Transformations

 A Whitepaper by

John Conte

Gregory Sabatino 

ABAP Code Development and Quality Assurance

Page 2: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 2/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

Contents

Executive Summary .............................................................................................. 2

1 SAP ABAP® Custom Code Management Challenges .................................... 4

2 Industry Best Practices Fall Short .................................................................. 6

3 A Better Solution – The Concept .................................................................... 8

4 A Better Solution – Delivered ......................................................................... 9

5 Conclusion ................................................................................................... 11

6 About smartShift Technologies .................................................................... 12

Page 3: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 3/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

Executive Summary

SAP® is a software package used by a majority of enterprise corporations and governments

worldwide to manage their organizations. Although SAP is highly configurable, custom

programming is needed in SAP’s proprietary programming language, called ABAP , to

incorporate the strategic business processes that can deliver a competitive advantage.

This is normally accomplished using a variety of resourcing models, including internal and

outsourced development. Distributed on-shore or off-shore, 3rd

-party packages are also used

to fill functional gaps or optimize usability. ABAP has evolved over 30 years and it currently

contains over 350 constructs. Although many are obsolete, most remain operational due to

backward compatibility concerns. Custom code has generally NOT been modernized as a

part of SAP Upgrades or other events. This is because of the project time, scope, risk andcost constraints involved.

Over time, four main factors have come into play that directly impact the quality of custom

code:

  The evolution of ABAP

  Multiple resourcing models and changing resources

  Weak QA tools and processes

  Lost opportunities to modernize during key events, such as upgrades

Together, these factors have made custom ABAP more difficult to maintain, lower quality

than it should be, non-compliant with company standards or SAP best practices and not

optimized for performance. Ultimately, all of these issues lead to a higher total cost of

ownership (TCO) for your SAP system.

To solve these issues, an ideal solution is discussed in this paper. It consists of 4 key

capabilities:

  The ability to capture all custom code, ensuring 100% coverage

  Automated analysis and correction of the code, using state-of-the-art parsing

technology - in conjunction with an extensible library of pre-built rules containing

SAP best practices, changes across releases and performance analysis

  Flexible review as early in the process as possible

  Full integration into the SAP development process

Page 4: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 4/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

 At smartShift Technologies, we have created smartDevelop to meet these requirements

using patented technology and processes. With smartDevelop, it is now possible to truly

improve the quality of your custom ABAP, ensure compliance and lower your SAP

maintenance and development costs.

Page 5: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 5/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

1 SAP ABAP ® 

 Custom Code ManagementChallenges

SAP is a leading provider of enterprise-level business software solutions worldwide, with more

than 282,000 customers operating in more than 130 countries. SAP provides facilities for custom

 ABAP development to support its large and diverse customer base. Customers and third-party

providers can develop programs in the proprietary ABAP language to add strategic, company-

specific business functionality to the standard SAP environment.

 A significant majority of SAP customers rely on custom ABAP programs to fill functional gaps.

Many of these developments involve mission-critical applications and represent significant

investments in time, money and resources.

ABAP’s Complex Evolution

 ABAP is a large and complex programming language that supports a wide range of functionality.

It is optimized for enterprise-level business programming. Since its inception over three decades

ago, ABAP has followed an evolutionary strategy of continuous enhancement and expansion. As

a result, it has grown to contain more than 350 constructs, some of which overlap in functionality.

In comparison, COBOL has about 70. Additionally, multiple coding paradigms are supported:

  Unstructured

  Structured (Function Groups & FORMs)  Object-oriented

Each successive ABAP release has added new constructs and functions, rendering others

obsolete. However, in the interest of backward compatibility, these obsolete constructs remain

operational. While backward compatibility helps maintain interoperability between code created

in different releases, it also increases system complexity and may conceal issues that affect

system maintainability, performance, and security:

  A given ABAP function or operation can be coded in multiple ways, making

standardization more difficult to achieve and code more difficult to understand.

  Developers may continue to use outdated procedural programming and obsolete code

constructs, thereby increasing the amount of rework necessary to eventually update the

system.

Page 6: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 6/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

  Outdated code may contribute to system performance degradation and expose security

vulnerabilities.

  Custom ABAP that is outdated and difficult to understand costs more to maintain and

consumes time and resources, which could otherwise be spent on system

enhancements and other initiatives.

  With the introduction of Unicode SAP systems, stricter ABAP syntax rules on variables

and structures using character or string fields, as well as file processing that were not

available in the past are enforced.

Development Team Complexity

From our experience with hundreds of SAP customers, we have found that the complexity

encountered in these environments is compounded by the evolution and/or distribution of

development resources. Whether it is as a result of multiple instances deployed across

geographies, vagaries of corporate structure, or different teams for implementation vs.

maintenance, there are frequently multiple sourcing arrangements involved in the evolution and

management of a customer’s ABAP code-base:

  Internal

  Outsourced

  On-shore

  Off-shore

Frequently, two or more of these models are active at the same time. Without a strong

governance model in place, such team member diversity (and varying skill levels) when touching

a code base will result in non-standard development practices. Given the flexible nature of the

 ABAP language and backward-compatibility requirements, issues can arise with maintainability,

compliance, performance and security. These problems can present ongoing challenges to

delivering routine enhancements and projects. They can also manifest significant issues during

system upgrades. In tangible terms, these issues lead to business-user dissatisfaction with the

SAP implementation, as well as increased maintenance costs and constrained flexibility to

modify it.

Lost opportunities during major (and minor) events

SAP recommends that custom code be continuously updated to comply with release specific

changes to ABAP and take advantage of the new technology capabilities of the SAP

NetWeaver ® stack. Unfortunately, very few customers take advantage of this opportunity. In the

Page 7: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 7/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

case of upgrades, most customers choose a pure ‘technical upgrade’ approach instead of taking

the opportunity to improve their investments in key strategic developments.

This has the effect of promoting ABAP code from 3.x, 4.x and 5.x environments into the new

ECC 6.0 environments ‘as-is’. There are some exceptions, particularly in the context of Unicode

enablement, where the directive generally is ‘fix only what generates hard-errors’.

This approach, while pragmatic, is short-sighted. Let’s consider an example. SAP’s new

enhancement pack approach and enhancement points with the switch framework allows

customers to flexibly turn on newly available functionality. This same mechanism can be used by

customers to enhance SAP. In customer systems, we still see the significant existence of ‘old-

style’ user -exits (FORM-based, FUNCTION-based). If these had all been converted to object-

oriented ABAP (a.k.a. BADIs or even just Classes) at some point, the exercise of leveraging the

new enhancement techniques would be significantly easier. The benefits of this should not be

underestimated. Clean isolation of custom code, the ability to turn code off without programming

and the ability to better compare and decide if SAP’s newly available functionality can be used

instead of the custom code are all powerful arguments for moving towards the flexibility and

agility of a system.

2 Industry Best Practices Fall Short

Existing solutions for the governance of development teams have proven to be inadequate at

managing the challenges of significant custom ABAP code bases. Common frameworks put in

place consist of varying degrees of the following elements:

  Documentation of best practices and corporate standards

  Training (formal and/or informal)

  Code reviews to evaluate compliance

These solutions, while well-intentioned, can achieve some level of impact in the short term.

However, they frequently breakdown over time. Common challenges include:

  Maintaining standards: As SAP and ABAP evolve over time, so should the best practices

and standards. Devoting time from senior resources to keep these relevant is a

challenge.

Page 8: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 8/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

  Coverage: Dedicating time to review 100% of developed and modified code simply isn’t

realistic. In reality, a small fraction of the code gets reviewed for compliance. While this

is an issue for internal developers, this becomes a significant risk with outsourced teams.

  Dedication:  When the inevitable crunch of project schedules hit, review processes are

often the first to become sacrificed. While time becomes short for everyone, this is

particularly true for the senior resources required to conduct reviews as they are often

tasked with solving the complex issues which are jeopardizing project timelines.

  Follow-through: As remediation issues are identified as part of the code review process,

these issues typically result in tickets for developers to execute upon. Often, these are

not high priority items and they are sacrificed in favor of delivering tickets that produce

functionality.

  Visibility: The latent risk in a fractured, aging and ill-maintained code base is a difficult

item to quantify. Similarly, the effort to clean it up is difficult to quantify, as is the efficacy

of a governance process put in place to police it.

In essence, the state of custom ABAP development across the majority of mature SAP

customers can be depicted by the following diagram:

Figure 1: Impact on custom development over time

Page 9: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 9/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

The market, including SAP, has recognized many of these challenges and responded. Products

exist that will alleviate the challenges of a manual governance process and provide visibility into

overall quality of the code base.

3 A Better Solution – The Concept

From working with hundreds of SAP customers as a leading ABAP transformation and

management service provider, smartShift believes an ideal solution to governing ABAP

development teams consists of several key qualities:

  Complete coverage:  The sparse selection of code artifacts associated with manual

review processes simply doesn’t get the job done. To use a common phrase in a

different context: “you get what you measure”. If you measure a small fraction of your

code base, how much of it is likely to comply? To maintain quality, a large percentage

(ideally 100%) must be evaluated. Additionally, a mechanism must be available to

analyze and remediate new development projects and production support.

  Automated

o   Analysis: The manual effort involved in measuring 100% of a custom ABAP code

base is simply not realistic in most cases. To achieve this goal, rule-based

automation is required.

o  Correction:  To solve the ‘follow-through’ challenge regarding remediation of

identified issues, automated correction is required to ensure complete and timely

compliance.

  Early in SDLC: Numerous studies have demonstrated that fixing any type of defect

costs more as the development lifecycle progresses. The out-of-band nature of many

review and remediation processes results in defects getting addressed post-QA or post-

production. Requiring re-validation, this increases risks and costs.

  Integrated: To ensure the complete and timely execution of the review and remediation

process, integration with existing development lifecycle tools and processes is desired.

Requiring external tools to be run and/or reports to be reviewed that are outside of the

normal day-to-day will create friction. The more streamlined and integrated the process,

the greater the probability of adherence.

Page 10: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 10/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

Figure 2: Steps of an ideal solution

While the market has produced solutions that address some of these qualities, only

smartDevelop from smartShift meets all of them.

4 A Better Solution – Delivered 

smartDevelop was designed to provide a complete, sustainable and effective solution for

managing custom ABAP code quality. Enterprise organizations leverage smartShift’s  mature,

customizable and patented technology to ensure the maximum quantity of metrics can be

applied. The SaaS-appliance solution layers in a patented 4 step process to your SAP

development environment that governs the code-base with minimal supervision:

  Capture:  By integrating into SAP’s development process (CTS –  Correction and

Transport System), all development work is captured and analyzed for new projects and

maintenance.

  Detect:  A rules-driven parser, together with an extensive library of rules, ensures that

the code is thoroughly reviewed for compliance with company standards, along with SAP

Page 11: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 11/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

1

recommended syntax and best practices, security and performance. Additionally, rules

can be added to meet customer-specific requirements.

  Correct: Only smartDevelop has the technology to detect and correct custom code. This

powerful approach dramatically reduces development and testing time. It also helps

developers with new and improved syntax.

  Review:  Development managers have the opportunity to review and assign detected

issues from within the SAP environment, while developers are empowered to review

before/after code comparisons and accept/modify/reject changes. All changes are

audited within the SAP environment and they can be reported against. Reporting

features allow for monitoring of the code base quality level. Objects can be manually

selected for analysis.

This process and technology meet the necessary requirements for an ideal code quality

governance solution:

  Complete coverage: By capturing code via SAP’s CTS, 100% of the code will be

analyzed.

  Automated analysis and correction: Leveraging smartShift’s patented engine, an

innovative level of automation is delivered - unmatched by solutions in the market today.

  Early in SDLC:  Prior to testing, the remediation process is automatically triggered

immediately following the development phase.

  Integrated: smartDevelop integrates with SAP’s CTS. Code analysis and correction take

place transparently and injected back into the system for in-line review/acceptance. No

manual steps are required to initiate it and the process cannot be bypassed.

Page 12: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 12/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

1

5 Conclusion

 ABAP, SAP’s programming language, has had three decades of evolutionary history. Customer

experiences in the market across numerous industries has revealed that this evolution has

impacted their implementations. Obsolete constructs and old programming paradigms are

commonly found. Exacerbated by varied sourcing models for project teams, this frequently

results in a code base which is suffering from a lack of flexibility and maintainability, as well as an

increased risk of performance issues and security holes.

To manage these risks and issues, a robust governance process and tools are required to

monitor code quality. To be effective, the following qualities are required in a solution:

  Complete code coverage

  Automated analysis and remediation

  Applied early in the SDLC

  Integrated seamlessly into the development process

The market has responded with software solutions to address these challenges. However, only

smartDevelop from smartShift can deliver on all of these qualities through its patented

technology and processes. Simply put, smartDevelop can do this:

Faster   - With the ability to auto-correct code and native integration into the SAP developmentprocess early in the lifecycle, smartDevelop can significantly speed up all of your custom

development efforts. It will also increase the agility of your development teams from a staffing

perspective.

Less Expensive  - Since the code is reviewed and corrected by a tool early in the cycle,

development time, re-work, QA, testing and training costs are considerably reduced.

Furthermore, since the resulting code is more maintainable and stable, maintenance and support

costs will also decrease.

Higher Quality - Analysis and correction is applied consistently across the code-base. Variances

due to resource quality are ‘absorbed’ by the tool. A rules -driven parser, together with an

extensive library of rules, ensures that the code is thoroughly reviewed for compliance with your

company standards, SAP recommended syntax and best practices. Security and performance

optimization is also included as part of the analysis.

Page 13: SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

7/25/2019 SmartShift WhitePaper ABAPCodeDevelopmentandQualityAssurance 2015

http://slidepdf.com/reader/full/smartshift-whitepaper-abapcodedevelopmentandqualityassurance-2015 13/13

 

© 2015 smartShift Technologies. Proprietary and Confidential. 

6 About smartShift Technologies

 At smartShift, we’re radically improving how businesses accomplish transformations with

innovative automation throughout the entire enterprise software lifecycle. And, at a quality level

you’ve never seen before. Our modern, breakthrough approach to enterprise software

management is gaining serious momentum.

We specialize in helping enterprises upgrade to high performance, next generation computing

environments, including moves from on-premise to Cloud, relational data to big data and

platform-to-platform.

Unlike anything else you’ve seen in the market, smartShift’s patented suite of innovative

automation tools will help you replace the people-intensive approach to managing enterprise

applications. You’ll dramatically reduce the risk, cost and cycle times (from years to weeks) for

complex IT transformations and technology overhauls.

smartShift was founded in 2002 by a team of German engineers who pioneered automated

systems transformation software in the early 1990s. Since then, we have grown to become an

elite transformation and management partner to the world’s leading enterprise IT organizations.

We have a solid heritage of building robust, extremely high quality algorithmic tools covering

SAP and over 20+ other legacy programming languages.

smartShift has served more than 200 global enterprise organizations across numerous vertical

markets with over 700 successful project deliveries. We are headquartered in New York and

have a worldwide presence with locations in North America, Europe and Asia-Pacific.

For more information on how smartShift can help your organization with your next ABAP

transformation initiative, please call us at 917-793-2500 or visit www.smartShiftTech.com. 

SAP, ABAP, and all SAP logos are trademarks or registered trademarks of SAP AG in Germany

and in several other countries.

 All other product and service names mentioned are the trademarks of their respective

companies.