Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Layers apply dependencies from the top down. From the diagram above, the Presentation layer depends on all other layers, while the Domain Infrastructure layer has no immediate dependencies. The order of the layers shown above is what is commonly used.

...

Rule

Use patterns where appropriate.

Time Zone Handling

Date and time values must be expressed in such a way that there is no ambiguity about the time zone of the date/time value. A format described in the ISO 8601 standard must be used to represent dates and times. Where specific technical limitations prevent this (e.g. SAP-standard database tables which store dates in the YYYYMMDD format).

Rule

Only use formats defined in ISO 8601 for representing date and time values, unless a specific technical limitation makes this impossible.

  • Where a date or time is rendered as a string for output to a user and can be guaranteed to never be used as an input by another system (e.g. when included in a PDF document), in this case, a more “user-friendly” formats may be used.
  • Code which processes dates or times (e.g. input screens, interfaces, SOAP web services, etc.) must be able to properly determine the time zone of an input and normalize it to the system-internal time zone.

User Interface Framework

Syensqo has invested in a diverse SAP platform which spans both hosted ABAP based applications for delivering core business suite functionality and cloud-based applications such as Success Factors for HR, C4C for CRM and Concur for Travel Management. Delivery of these applications will be primarily via a Web Browser, and additional UX concerns such as responsive design for Mobile and Tablet users’ needs to be considered when developing custom user interfaces or extending existing applications.

To support the development and extension of these new applications SAP has delivered the UI Development Toolkit for HTML5 (SAPUI5) which is a UI framework based on Jquery, HTML5 and CSS3. This framework is designed to provide a modern web experience for consumer grade applications and casual enterprise users by enabling the development of highly interactive and focused applications that support responsive design. SAPUI5 applications can be targeted at desktop, tablet and mobile phone users.

SAPUI5 apps are compliant with the SAP UX Strategy and deliver on the Fiori UX experience. The Fiori Elements framework allows you to generate UI5 apps based on meta data additions in CDS views and RAP. If the required app is targeted to expert users, or has a higher complexity than Fiori Elements can handle, a Freestyle app needs to be developed. Freestyle apps start with a blank canvas. These apps can be built in SAPUI5 or React. All SAPUI5 apps can be deployed on either S/4Hana or BTP. React apps can only be deployed to BTP.

User Interface Framework

Syensqo has invested in a diverse SAP platform which spans both hosted ABAP based applications for delivering core business suite functionality and cloud-based applications such as Success Factors for HR, C4C for CRM and Concur for Travel Management. Delivery of these applications will be primarily via a Web Browser, and additional UX concerns such as responsive design for Mobile and Tablet users’ needs to be considered when developing custom user interfaces or extending existing applications.

To support the development and extension of these new applications SAP has delivered the UI Development Toolkit for HTML5 (SAPUI5) which is a UI framework based on Jquery, HTML5 and CSS3. This framework is designed to provide a modern web experience for consumer grade applications and casual enterprise users by enabling the development of highly interactive and focused applications that support responsive design. SAPUI5 applications can be targeted at desktop, tablet and mobile phone users.

SAPUI5 apps are compliant with the SAP UX Strategy and deliver on the Fiori UX experience. The Fiori Elements framework allows you to generate UI5 apps based on meta data additions in CDS views and RAP. If the required app is targeted to expert users, or has a higher complexity than Fiori Elements can handle, a Freestyle app needs to be developed. Freestyle apps start with a blank canvas. These apps can be built in SAPUI5 or React. All SAPUI5 apps can be deployed on either S/4Hana or BTP. React apps can only be deployed to BTP.

ABAP Dynpro is not allowed in custom development. If there is a legitimate requirement to transform an existing Dynpro application to conform to the Fiori UX experience, i.e. for a mobile device screen, or to simplify the UI and a suitable standard SAPUI5 cannot be used, then SAP Screen Personas can be used to transform the Dynpro to a Fiori type ABAP Dynpro is not allowed in custom development. If there is a legitimate requirement to transform an existing Dynpro application to conform to the Fiori UX experience, and a suitable standard SAPUI5 or Web Dynpro ABAP application cannot be used, and a custom development is not deemed appropriate, then SAP Screen Personas can be used to transform the Dynpro to a Fiori type User Interface.

SAP has positioned the Business Technology Platform (BTP) as the extension platform for all SAP Solutions. When building front end extensions using the BTP, the SAPUI5 framework or React JS is to be used.

...

Use Case

Dynpro/ Floor Plan Manager WDA

Fiori Elements

Freestyle (SAP UI5/React JS)

Single purpose focused application or casual use

Transactional application targeted at an expert user

Image Removed

Image Added

Responsive Design; Support for tablet or mobile phone.

...

In these scenarios, you would want to apply the restriction to the dataset via parameters or filters in the CDS view.or filters in the CDS view.

Besides small data sets, we also want to avoid cases where data sets are accessed frequently. The concept is to cater for ad-hoc requests rather than be a frequently recurring path to access data.

The CDS views are using associations, which means that master data is only accessed on demand. This does result in an efficient data access request.

Other SAP development tools to be considered where appropriate:

  • Custom Analytical Queries (F1572) - however, this uses deprecated views rather than projections
  • Manage KPI's and Reports (F2814) 


Extraction of data to be acquired in Datasphere will require a delta scenario by way of Change Data Capture (CDC) being applied to the CDS view. In this case you would not want to have parameters or filters. If no fields available for a timestamp, then a suedo pseudo-delta can be used where for example the current month can be extracted in full.

...

Rule

Realtime analytics only to be used for small data sets that are accessed on an ad-hoc basis.

Development Tool Decision Trees

The following set of decision trees shows the decision path to take to find the right development tool and approach to deliver compliant objects in SAP.


BTP vs S/4HANA on stack vs Others

Image Added

Workflow


Analytics

Image RemovedImage Added


Integration Process

SCPI - Integration Development Process

Image RemovedImage Added

APIM Management/CI/Event Mesh

Image RemovedImage Added


System Interface

Image RemovedImage Added



Enhancement


Form (Output)


User Interface

Image Added


Link to the original file containing the drawings: SAP Development Approach drawings Image Removed

Development Process

...

While onboarding new resources to the development team it is mandatory for them to read, understand and acknowledge the Development Approach document and relevant Standards.

This acknowledgement is a pre-requisite to approving the SAP user provisioning.

...

Standard and Guideline

Link

SAP Development Standards

SAP Development Standards

SAP Integration Development Standards

SAP Integration Development Standards

SAP Analytics and Reporting Development Standards

SAP Analytics and Reporting Standards