SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
ABAP state-of-the-art –
Do’s and Don’ts and How to be
Successful when going beyond
Simple Prototypes
Martin Fischer BridgingIT GmbH
Tobias Trapp AOK Systems GmbH
Motivation
Using new tools and frameworks is sometimes like a first ascent in
mountaineering: the challenges are quite high and the way to the
summit is not always clear and straight forward. But it’s also much
more interesting then hiking a well paved trail.
But the feeling on the summit must be beyond words!
Modern Application Architecture
• Domain Driven Development
• Digitization
• Expose Business Functions as (Micro) Services
• Beautiful User Interfaces
• Principle of One
Domain Driven Development
• Do’s:
• focus on the core domain and domain logic
• design business objects processes based on conceptual model
• think in term of resources: RESTful thinking
• avoid abstraction
• develop business processes and not frameworks
Digitization
• Do’s:
• three layer architecture
• support full automatic and mass processing as well as beautiful user
interfaces
• identify services that are corner stones of your digitization strategy (f.e. SAP
Hybris Commerce)
• learn API design: services should be small & fine-grained to perform a single
function
Beautiful Use Interfaces
• Do’s:
• follow Fiori Design Principles
• use Fiori Elements whenever possible
• Dont’s:
• don’t use Fiori Elements when using Design Thinking methodology
• don’t think that beautiful freestyle apps come for free
Principle of One
• Do’s:
• use strategic Frameworks: BOPF, BRFplus…
• apply the new ABAP programming model:
data model-> CDS -> BOPF -> Gateway -> Fiori
• look at SAP Partner Guides for S/4HANA
• Benefits:
• standardization & good maintainability
• high productivity (after training period)
• you are close to SAP’s technology strategy & tool support
The New Programming Model
SAP UI5 and Fiori Smart Elements
SAPNetWeaverASABAPUI
Core Data Services
SAP Gateway Service
Business Object Processing
With Smart Elements it is possible to
create SAP Fiori Apps without coding
• SAP Fiori Apps as Frontend
• SAP Gateway Services
• Data and Application Modelling: CDS
• Implement Business Logic with BOPF
The back-end integration is done via
OData-based SAP Gateway Services
CDS is used for modelling data and the
BOPF application
The whole business logic is
implemented in ABAP using the BOP
Framework
SAP introduces with S/4 HANA the new
Fiori Programming Model. This can also
be used for custom development!
Start the Climb now!
Even if the implementation of S/4
HANA is not on the horizon yet, start to
use the tools and frameworks
whenever possible!
Make your development team familiar
with new concepts in order to be ready
for the S/4 HANA climb!
BOPF, Gateway and BRF+ are there
since ages!
CDS can be used also with anyDB!
Further advantages:
• the development time will get
reduced due to efficient frameworks
• Maintenance efforts get reduced due
to more uniform code base
… be aware of pitfalls!
Attention:
• BOPF changed over time:
Dynpro based tooling vs.
ADT vs. modelling with CDS
=> SAP offers no migration
path for applications
• CDS with anyDB: the
performance can differ a lot
between different DBs
• CDS on releases below 7.5
may cause problems during
transports
Architecture Patterns
• spend effort on the data model based on
domain model
• create business objects
• identify services as cornerstone for
digitization:
• how can they outshine competitors?
• use user journeys for validation
• create internal & external APIs
• use ABAP package concept
• apply TDD & develop Unit Tests
• usage of ABAP OO & modern ABAP syntax
is evident so we don’t mention it in the
rest of this lecture
Architecture Nightmares
• application design as generic
frameworks that can work
with any business object
• generic persistence esp. XML
• batch-driven architecture
• reuse without use case
• don’t start developing
frameworks – they have the
tendency to constrict yourself
What may
cause problems?
• ABAP CDS on anyDB
• CDS lifecycle problems
• Fiori UIs with more than 1 business object
• limitations of OData V2
• missing Gateway features
• missing features of Fiori Smart Elements in
NW 7.5
• wishful thinking: “this feature is necessary and
should be there – so I base my design on it
without doing a prototype”
• missing skills within development team
How to go Directly
to Hell when Using CDS
• ignore warnings during activation
• fix activation errors with the debugger
• reuse between different software
components & transport layers
• mixing analytical & transactional models
• reuse between applications unless you
don’t have a good plan (I confess I don’t
have - so I don’t do it)
• too complex code pushdown to
S/4HANA with CDS: try analytical CDS
and use ADMP when necessary
Avoid cyclic CDS models
whenever possible
• they make it complex
• they have lifecycle problems:
https://help.sap.com/doc/abapd
ocu_750_index_htm/7.50/de-
DE/abenddic_cds_cycle_problem
s.htm
• use them only in BOPF models -
you can’t avoid them
• transport early
• apply OSS notes when transport
problems occur
Best Practices for CDS
Models
• start with NW 7.5
• get latest version of ADT tools
• use DCL
• follow SAP Guidelines for anyDB:
https://tinyurl.com/SAP-ABAP-CDS-on-anyDB
• check whether your DB platform supports
the features you use
• do performance testing – even on HANA
• governance of CDS models
• get SQL skills in your team – f.e. SAP BW
experts can help you
• check DB versions and get DB admins on
board
Apply CDS Patterns &
Conventions of S/4HANA
Consumption Views
different views for transactional UIs
(RDS, transient data), Analytics
Interface Views
public & stable – foundation für BOPF object
Basic Views
Projection of DB table used for Draft
Database
Best Practices for Backend
Development of UIs
• study CDS UI annotations
• be prepared that there are no
annotations for domain values
• complex search helps are a
challenge
• follow NW roadmap: complex
types for function imports are
supported not till NW 7.51 f.e.
Best Practices for Fiori
Development
• keep high UI5 level
• apply Fiori Design Principles:
https://experience.sap.com/
• use Smart Elements – but be
aware of missing features
(read the documentation)
• use Drafts (NW 7.51 and
higher)
What to do without
Drafts?
• use optimistic locking concept
• follow SAP floorplan:
• save data when moving from
master to detail and back
• SAP Web IDE will help you when
there is no ACTIVATE function
• if you don’t follow that advice
trouble will occur when
temporal GUIDs remain
because of failing validations
Be Aware of Limitations
of Auto Exposure
• auto exposure replaces Gateway programming
• you cannot navigate from one
#TO_COMPOSITION_ROOT view to another BO‘s
associated objects
Picture taken from SAP Library
https://help.sap.com/viewer/cc0c305d2fab47bd80
8adcad3ca7ee9d/7.5.9/en-
US/79cb3bf4eafd4af9b39bc6842e5be8bd.html
Use Referenced Data Sources
• use OData Service Based on a
Referenced Data Source (RDS) –
NW 7.5ff
• read Documentation in SAP
Library & André Fischer’s blogs
about RDS:
https://blogs.sap.com/2016/06/
02/odata-service-development-
with-sap-gateway-using-cds-via-
referenced-data-sources-how-to-
implement-updates/
BOPF model
RDS based on
Consumption view
on top of BOPF
model +
SEGW programming
for updates
Transient Data
for Fiori Apps
• BOPF exposed as CDS doesn’t supports virtual
elements in NW 7.51
• IMHO there are some missing features – so I
recommend prototyping
Picture taken from SAP Library
https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/1709.001/en-
US/a7fc007921d44263b09ccc092392b05f.html

Contenu connexe

Tendances

Sap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP bookSap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP bookYVIKASH
 
Sap Process Integration
Sap Process Integration Sap Process Integration
Sap Process Integration Tauhidul Islam
 
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.Coy Currin
 
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...Robert Eijpe
 
Alfresco Day Barcelona 2016 - Conversaciones con Partners: Pernexas
Alfresco Day Barcelona 2016 - Conversaciones con Partners: PernexasAlfresco Day Barcelona 2016 - Conversaciones con Partners: Pernexas
Alfresco Day Barcelona 2016 - Conversaciones con Partners: PernexasAlfresco Software
 
Abap in eclipse
Abap in eclipseAbap in eclipse
Abap in eclipsesanjevguru
 
SAP ABAP Development Tools - Introduction in productive environments (EXP1779...
SAP ABAP Development Tools - Introduction in productive environments (EXP1779...SAP ABAP Development Tools - Introduction in productive environments (EXP1779...
SAP ABAP Development Tools - Introduction in productive environments (EXP1779...SbgMartin
 
HANA WITH ABAP OVERVIEW
HANA WITH ABAP OVERVIEWHANA WITH ABAP OVERVIEW
HANA WITH ABAP OVERVIEWdheerajad
 
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOTSAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOTGlobal Online Trainings
 
SAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course ContentSAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course ContentZaranTech LLC
 
HANA Playground Session_Latest
HANA Playground Session_LatestHANA Playground Session_Latest
HANA Playground Session_LatestAbhishek Agrawal
 
SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...
SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...
SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...onlinetrainingplacements
 
Full-Stack JavaScript Development on SAP HANA Platform
Full-Stack JavaScript Development on SAP HANA PlatformFull-Stack JavaScript Development on SAP HANA Platform
Full-Stack JavaScript Development on SAP HANA PlatformHP Seitz
 
Anubhav abap on hana course details
Anubhav abap on hana course detailsAnubhav abap on hana course details
Anubhav abap on hana course detailsin031295
 
Sapabapcoursecontent 130302033356-phpapp02
Sapabapcoursecontent 130302033356-phpapp02Sapabapcoursecontent 130302033356-phpapp02
Sapabapcoursecontent 130302033356-phpapp02Hemanth Kumar
 
SAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURES
SAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURESSAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURES
SAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURESIQ Online Training
 

Tendances (20)

SAP PI and SOA Overview
SAP PI and SOA OverviewSAP PI and SOA Overview
SAP PI and SOA Overview
 
Sap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP bookSap ha400 en col13_hana 2.0 sps00 sAP book
Sap ha400 en col13_hana 2.0 sps00 sAP book
 
Sap Process Integration
Sap Process Integration Sap Process Integration
Sap Process Integration
 
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
The Best SAP ABAP on HANA Online Training in USA, UK, Canada.
 
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...SAPTECHED 2016  EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
SAPTECHED 2016 EMEA - 10 Golden Rules for Designing a Custom-Built SAP Fiori...
 
Alfresco Day Barcelona 2016 - Conversaciones con Partners: Pernexas
Alfresco Day Barcelona 2016 - Conversaciones con Partners: PernexasAlfresco Day Barcelona 2016 - Conversaciones con Partners: Pernexas
Alfresco Day Barcelona 2016 - Conversaciones con Partners: Pernexas
 
Abap in eclipse
Abap in eclipseAbap in eclipse
Abap in eclipse
 
SAP ABAP Development Tools - Introduction in productive environments (EXP1779...
SAP ABAP Development Tools - Introduction in productive environments (EXP1779...SAP ABAP Development Tools - Introduction in productive environments (EXP1779...
SAP ABAP Development Tools - Introduction in productive environments (EXP1779...
 
HANA WITH ABAP OVERVIEW
HANA WITH ABAP OVERVIEWHANA WITH ABAP OVERVIEW
HANA WITH ABAP OVERVIEW
 
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOTSAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
SAP HANA ABAP TRAINING | SAP HANA ABAP ONLINE COURSE TRAINING - GOT
 
Sap abap on hana
Sap abap on hanaSap abap on hana
Sap abap on hana
 
SAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course ContentSAP Abap on Hana Training Course Content
SAP Abap on Hana Training Course Content
 
HANA Playground Session_Latest
HANA Playground Session_LatestHANA Playground Session_Latest
HANA Playground Session_Latest
 
SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...
SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...
SAP ABAP Training | SAP ABAP Online Training | SAP ABAP Course | SAP ABAP Cer...
 
Prashantini Krishnan Chandrakumar
Prashantini Krishnan ChandrakumarPrashantini Krishnan Chandrakumar
Prashantini Krishnan Chandrakumar
 
Full-Stack JavaScript Development on SAP HANA Platform
Full-Stack JavaScript Development on SAP HANA PlatformFull-Stack JavaScript Development on SAP HANA Platform
Full-Stack JavaScript Development on SAP HANA Platform
 
Anubhav abap on hana course details
Anubhav abap on hana course detailsAnubhav abap on hana course details
Anubhav abap on hana course details
 
Sapabapcoursecontent 130302033356-phpapp02
Sapabapcoursecontent 130302033356-phpapp02Sapabapcoursecontent 130302033356-phpapp02
Sapabapcoursecontent 130302033356-phpapp02
 
SAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURES
SAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURESSAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURES
SAP UI5 OVERVIEW | SAP UI5 PRE-REQUISITES – FEATURES
 
SAP ABAP
SAP ABAPSAP ABAP
SAP ABAP
 

Similaire à ABAP State of the Art

Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018Daniel Graversen
 
Bi4.1 and beyond
Bi4.1 and beyondBi4.1 and beyond
Bi4.1 and beyondsapbisignz
 
Hunter 1 - BI Technology Update Feb'15
Hunter 1 - BI Technology Update Feb'15Hunter 1 - BI Technology Update Feb'15
Hunter 1 - BI Technology Update Feb'15James Miller, MBA
 
Introduction to SAP, Systems, Applications
Introduction to SAP, Systems, ApplicationsIntroduction to SAP, Systems, Applications
Introduction to SAP, Systems, ApplicationsMahmoud Tolba
 
Branding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnPBranding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnPThomas Daly
 
Branding office 365 with front end tooling
Branding office 365 with front end toolingBranding office 365 with front end tooling
Branding office 365 with front end toolingThomas Daly
 
You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...
You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...
You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...Carrie Bucko
 
sap abap training in chennai
sap abap training in chennaisap abap training in chennai
sap abap training in chennaisanjai rsamy
 
Integroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja AzurellaIntegroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja AzurellaBilot
 
SAP Teched 2016 best practive BPMN development
SAP Teched 2016 best practive BPMN developmentSAP Teched 2016 best practive BPMN development
SAP Teched 2016 best practive BPMN developmentDaniel Graversen
 
How to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power UserHow to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power UserStrongback Consulting
 
Vishwanath_M_CV_NL
Vishwanath_M_CV_NLVishwanath_M_CV_NL
Vishwanath_M_CV_NLVishwanath M
 
SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint DevelopmentMalin De Silva
 
Nishant Resume 1 year
Nishant Resume 1 yearNishant Resume 1 year
Nishant Resume 1 yearNishant kumar
 
Extending SAP SuccessFactors in the Cloud and how not to do it
Extending SAP SuccessFactors in the Cloud and how not to do itExtending SAP SuccessFactors in the Cloud and how not to do it
Extending SAP SuccessFactors in the Cloud and how not to do itChris Paine
 
Nishant Resume 1 year
Nishant Resume 1 yearNishant Resume 1 year
Nishant Resume 1 yearNishant kumar
 
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...Sébastien Levert
 
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
Uncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint DevelopmentUncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint DevelopmentEric Overfield
 
SharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 DevelopmentSébastien Levert
 

Similaire à ABAP State of the Art (20)

Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018
 
Bi4.1 and beyond
Bi4.1 and beyondBi4.1 and beyond
Bi4.1 and beyond
 
Hunter 1 - BI Technology Update Feb'15
Hunter 1 - BI Technology Update Feb'15Hunter 1 - BI Technology Update Feb'15
Hunter 1 - BI Technology Update Feb'15
 
Introduction to SAP, Systems, Applications
Introduction to SAP, Systems, ApplicationsIntroduction to SAP, Systems, Applications
Introduction to SAP, Systems, Applications
 
Branding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnPBranding Office 365 w/ Front End Tools + SharePoint PnP
Branding Office 365 w/ Front End Tools + SharePoint PnP
 
Branding office 365 with front end tooling
Branding office 365 with front end toolingBranding office 365 with front end tooling
Branding office 365 with front end tooling
 
You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...
You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...
You Can Teach an Old Dog New Tricks -- My Journey from an ABAP Developer to a...
 
sap abap training in chennai
sap abap training in chennaisap abap training in chennai
sap abap training in chennai
 
Integroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja AzurellaIntegroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja Azurella
 
SAP Teched 2016 best practive BPMN development
SAP Teched 2016 best practive BPMN developmentSAP Teched 2016 best practive BPMN development
SAP Teched 2016 best practive BPMN development
 
How to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power UserHow to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power User
 
Vishwanath_M_CV_NL
Vishwanath_M_CV_NLVishwanath_M_CV_NL
Vishwanath_M_CV_NL
 
SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint Development
 
Nishant Resume 1 year
Nishant Resume 1 yearNishant Resume 1 year
Nishant Resume 1 year
 
Extending SAP SuccessFactors in the Cloud and how not to do it
Extending SAP SuccessFactors in the Cloud and how not to do itExtending SAP SuccessFactors in the Cloud and how not to do it
Extending SAP SuccessFactors in the Cloud and how not to do it
 
Nishant Resume 1 year
Nishant Resume 1 yearNishant Resume 1 year
Nishant Resume 1 year
 
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
 
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
 
Uncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint DevelopmentUncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint Development
 
SharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 Development
 

Plus de Tobias Trapp

Logical Abduction and an Application on Business Rules Management
Logical Abduction and an Application on Business Rules ManagementLogical Abduction and an Application on Business Rules Management
Logical Abduction and an Application on Business Rules ManagementTobias Trapp
 
Coolcats don't Use Customzing
Coolcats don't Use CustomzingCoolcats don't Use Customzing
Coolcats don't Use CustomzingTobias Trapp
 
Building Next Generation Apps using DSAM - session at sitHH 2014
Building Next Generation Apps using DSAM - session at sitHH 2014Building Next Generation Apps using DSAM - session at sitHH 2014
Building Next Generation Apps using DSAM - session at sitHH 2014Tobias Trapp
 
BRFplus in der Prozessautomatisierung
BRFplus in der ProzessautomatisierungBRFplus in der Prozessautomatisierung
BRFplus in der ProzessautomatisierungTobias Trapp
 
Lecture about SAP HANA and Enterprise Comupting at University of Halle
Lecture about SAP HANA and Enterprise Comupting at University of HalleLecture about SAP HANA and Enterprise Comupting at University of Halle
Lecture about SAP HANA and Enterprise Comupting at University of HalleTobias Trapp
 
Abap package concept
Abap package conceptAbap package concept
Abap package conceptTobias Trapp
 
Custom Development of Enterprise Services
Custom Development of Enterprise ServicesCustom Development of Enterprise Services
Custom Development of Enterprise ServicesTobias Trapp
 
SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...Tobias Trapp
 

Plus de Tobias Trapp (9)

Logical Abduction and an Application on Business Rules Management
Logical Abduction and an Application on Business Rules ManagementLogical Abduction and an Application on Business Rules Management
Logical Abduction and an Application on Business Rules Management
 
Coolcats don't Use Customzing
Coolcats don't Use CustomzingCoolcats don't Use Customzing
Coolcats don't Use Customzing
 
Building Next Generation Apps using DSAM - session at sitHH 2014
Building Next Generation Apps using DSAM - session at sitHH 2014Building Next Generation Apps using DSAM - session at sitHH 2014
Building Next Generation Apps using DSAM - session at sitHH 2014
 
BRFplus in der Prozessautomatisierung
BRFplus in der ProzessautomatisierungBRFplus in der Prozessautomatisierung
BRFplus in der Prozessautomatisierung
 
Lecture about SAP HANA and Enterprise Comupting at University of Halle
Lecture about SAP HANA and Enterprise Comupting at University of HalleLecture about SAP HANA and Enterprise Comupting at University of Halle
Lecture about SAP HANA and Enterprise Comupting at University of Halle
 
SAP Reuse Tools
SAP Reuse Tools SAP Reuse Tools
SAP Reuse Tools
 
Abap package concept
Abap package conceptAbap package concept
Abap package concept
 
Custom Development of Enterprise Services
Custom Development of Enterprise ServicesCustom Development of Enterprise Services
Custom Development of Enterprise Services
 
SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...
 

Dernier

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 

Dernier (20)

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 

ABAP State of the Art

  • 1. ABAP state-of-the-art – Do’s and Don’ts and How to be Successful when going beyond Simple Prototypes Martin Fischer BridgingIT GmbH Tobias Trapp AOK Systems GmbH
  • 2. Motivation Using new tools and frameworks is sometimes like a first ascent in mountaineering: the challenges are quite high and the way to the summit is not always clear and straight forward. But it’s also much more interesting then hiking a well paved trail. But the feeling on the summit must be beyond words!
  • 3. Modern Application Architecture • Domain Driven Development • Digitization • Expose Business Functions as (Micro) Services • Beautiful User Interfaces • Principle of One
  • 4. Domain Driven Development • Do’s: • focus on the core domain and domain logic • design business objects processes based on conceptual model • think in term of resources: RESTful thinking • avoid abstraction • develop business processes and not frameworks
  • 5. Digitization • Do’s: • three layer architecture • support full automatic and mass processing as well as beautiful user interfaces • identify services that are corner stones of your digitization strategy (f.e. SAP Hybris Commerce) • learn API design: services should be small & fine-grained to perform a single function
  • 6. Beautiful Use Interfaces • Do’s: • follow Fiori Design Principles • use Fiori Elements whenever possible • Dont’s: • don’t use Fiori Elements when using Design Thinking methodology • don’t think that beautiful freestyle apps come for free
  • 7. Principle of One • Do’s: • use strategic Frameworks: BOPF, BRFplus… • apply the new ABAP programming model: data model-> CDS -> BOPF -> Gateway -> Fiori • look at SAP Partner Guides for S/4HANA • Benefits: • standardization & good maintainability • high productivity (after training period) • you are close to SAP’s technology strategy & tool support
  • 8. The New Programming Model SAP UI5 and Fiori Smart Elements SAPNetWeaverASABAPUI Core Data Services SAP Gateway Service Business Object Processing With Smart Elements it is possible to create SAP Fiori Apps without coding • SAP Fiori Apps as Frontend • SAP Gateway Services • Data and Application Modelling: CDS • Implement Business Logic with BOPF The back-end integration is done via OData-based SAP Gateway Services CDS is used for modelling data and the BOPF application The whole business logic is implemented in ABAP using the BOP Framework SAP introduces with S/4 HANA the new Fiori Programming Model. This can also be used for custom development!
  • 9. Start the Climb now! Even if the implementation of S/4 HANA is not on the horizon yet, start to use the tools and frameworks whenever possible! Make your development team familiar with new concepts in order to be ready for the S/4 HANA climb! BOPF, Gateway and BRF+ are there since ages! CDS can be used also with anyDB! Further advantages: • the development time will get reduced due to efficient frameworks • Maintenance efforts get reduced due to more uniform code base
  • 10. … be aware of pitfalls! Attention: • BOPF changed over time: Dynpro based tooling vs. ADT vs. modelling with CDS => SAP offers no migration path for applications • CDS with anyDB: the performance can differ a lot between different DBs • CDS on releases below 7.5 may cause problems during transports
  • 11. Architecture Patterns • spend effort on the data model based on domain model • create business objects • identify services as cornerstone for digitization: • how can they outshine competitors? • use user journeys for validation • create internal & external APIs • use ABAP package concept • apply TDD & develop Unit Tests • usage of ABAP OO & modern ABAP syntax is evident so we don’t mention it in the rest of this lecture
  • 12. Architecture Nightmares • application design as generic frameworks that can work with any business object • generic persistence esp. XML • batch-driven architecture • reuse without use case • don’t start developing frameworks – they have the tendency to constrict yourself
  • 13. What may cause problems? • ABAP CDS on anyDB • CDS lifecycle problems • Fiori UIs with more than 1 business object • limitations of OData V2 • missing Gateway features • missing features of Fiori Smart Elements in NW 7.5 • wishful thinking: “this feature is necessary and should be there – so I base my design on it without doing a prototype” • missing skills within development team
  • 14. How to go Directly to Hell when Using CDS • ignore warnings during activation • fix activation errors with the debugger • reuse between different software components & transport layers • mixing analytical & transactional models • reuse between applications unless you don’t have a good plan (I confess I don’t have - so I don’t do it) • too complex code pushdown to S/4HANA with CDS: try analytical CDS and use ADMP when necessary
  • 15. Avoid cyclic CDS models whenever possible • they make it complex • they have lifecycle problems: https://help.sap.com/doc/abapd ocu_750_index_htm/7.50/de- DE/abenddic_cds_cycle_problem s.htm • use them only in BOPF models - you can’t avoid them • transport early • apply OSS notes when transport problems occur
  • 16. Best Practices for CDS Models • start with NW 7.5 • get latest version of ADT tools • use DCL • follow SAP Guidelines for anyDB: https://tinyurl.com/SAP-ABAP-CDS-on-anyDB • check whether your DB platform supports the features you use • do performance testing – even on HANA • governance of CDS models • get SQL skills in your team – f.e. SAP BW experts can help you • check DB versions and get DB admins on board
  • 17. Apply CDS Patterns & Conventions of S/4HANA Consumption Views different views for transactional UIs (RDS, transient data), Analytics Interface Views public & stable – foundation für BOPF object Basic Views Projection of DB table used for Draft Database
  • 18. Best Practices for Backend Development of UIs • study CDS UI annotations • be prepared that there are no annotations for domain values • complex search helps are a challenge • follow NW roadmap: complex types for function imports are supported not till NW 7.51 f.e.
  • 19. Best Practices for Fiori Development • keep high UI5 level • apply Fiori Design Principles: https://experience.sap.com/ • use Smart Elements – but be aware of missing features (read the documentation) • use Drafts (NW 7.51 and higher)
  • 20. What to do without Drafts? • use optimistic locking concept • follow SAP floorplan: • save data when moving from master to detail and back • SAP Web IDE will help you when there is no ACTIVATE function • if you don’t follow that advice trouble will occur when temporal GUIDs remain because of failing validations
  • 21. Be Aware of Limitations of Auto Exposure • auto exposure replaces Gateway programming • you cannot navigate from one #TO_COMPOSITION_ROOT view to another BO‘s associated objects Picture taken from SAP Library https://help.sap.com/viewer/cc0c305d2fab47bd80 8adcad3ca7ee9d/7.5.9/en- US/79cb3bf4eafd4af9b39bc6842e5be8bd.html
  • 22. Use Referenced Data Sources • use OData Service Based on a Referenced Data Source (RDS) – NW 7.5ff • read Documentation in SAP Library & André Fischer’s blogs about RDS: https://blogs.sap.com/2016/06/ 02/odata-service-development- with-sap-gateway-using-cds-via- referenced-data-sources-how-to- implement-updates/ BOPF model RDS based on Consumption view on top of BOPF model + SEGW programming for updates
  • 23. Transient Data for Fiori Apps • BOPF exposed as CDS doesn’t supports virtual elements in NW 7.51 • IMHO there are some missing features – so I recommend prototyping Picture taken from SAP Library https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/1709.001/en- US/a7fc007921d44263b09ccc092392b05f.html