Digital decoupling and "Next gen ERP" (SAP like) implementations - first considerations
Tags: sap, digitaldecoupling, togaf, referencearchitecture
Published: 2023-08-21 18:48:45

**DISCLAIMER:** **there is no silver bullet**, I'm not the the "self-proclaimed arbiter of truth" and I'm writing following my experience and research. Any "positive review" is welcome.
I'm not going to provide details here about any company implementations (due to privacy reasons) but write about the concept on "open way". And check against the real and academic point-of-view from Software Engineering and Enterprise Architecture - my thesis on MSc. program. 

---

All big companies are querying the consulting companies about sustainability, "Next Gen ERP" implementation, cloud usage, digital decoupling... so many acronyms through many challengers (SAP, Oracle, Salesforce, etc). The challenges for "NEW" implementations of Next Gen ERPs which encompass cloud implementation, digital decoupling, ESG in general way are:

1. Everybody seeks any good **Reference Architecture** to analyze and implement in your landscape. The challenge is finding anything open (I really don't know if exists as open source...). 
1.1. This point deserves attention. So, a good architectural / reference model - and people makes confusion with Reference Architecture, which needs details and deep knowledge about industries to be applied. 
1.2. A good draft for any landscape, which is going to mature and become a design blueprint is always requested. Many designs are coming up and converge on future, which enables good architectural model and developing real Reference Architectures.

2. Next Gen ERPs, based on packaged software, in general has its own start reference models and assets, which must be considered on any implementation. Avoid customization is good for several purpose, mainly to minimize implementation and operational costs - the client should upgrade its ERP or the platform using the upgrade packages and plan the upgrade (which includes regressive tests).

3. Use a good project structure / methodology for this kind of implementation. Scrum, Waterfalls, Kanban, XP, DevOps, Squads and others pretty words come to desk, focused on implementation but few people discuss the mandatory Strategic point-of-view: 
3.1. have we thought about our processes? Is there any assessment about our AS-IS?
3.2. are we aware about the future? Is the TO-BE process clear and embrace our businesses?
3.3. Is our C-suite level aligned about a conclusive Business Case? Does our CFO know the possible return of investment? Does our CIO aware about workaround plans, backup plan and the future _DevSecOps_ plan for this new landscape?
3.4. Was my company told about the advantages of using a solid enterprise architecture framework which encompasses my whole enterprise sectors, like TOGAF? Just to remember, any framework like this is required to ensure aligment for all layers of my company: Business, Technical, Application, Data Architectures, and the combination / alignment of their "powers" is the Enterprise Architecture.
![Picture 1. TOGAF model](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jqc1tl6y39875ewhy2ij.png)
Picture 1. TOGAF model - extracted from https://pubs.opengroup.org/togaf-standard/adm/chap01.html.

4. Everybody talks about Digital Decoupled applications but few knows how to make it feasible, specially when integrating with partners, suppliers and clients - business-to-business (B2B) scenarios. It's not only expose or consume APIs through the internet but let your integration able to communicate to other applications on "decoupled" way, letting the technical details transparent to business operations, in a meaningful way.

5. Digital transformation is not just implementing software and adding applications to landscape, in order to replace manual steps. It's more than this, it's a disruptive way to change the company mindset and align the technology view and business needs.

**A good strawman** for architecture model which is being followed by many companies (containing ERP, CRM and integration layer) is seen at below:
![Picture 2. Strawman for architecture model ("reference architecture" for dummies)](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ffkldrijiq9s7yxhtbts.png)
Picture 2. Strawman for architecture model ("reference architecture" for dummies)

**Remember**: this is a draft and for each client, each business scenario, it must be adapted. So, it's not a copy-and-paste process. 

The integration layer is in general composed by many components: service bus application, microservices, event services application, API Manager, ETL tool and on. All packaged vendors and cloud partners offers these services, in combination and getting better commercial offerings.

On this design, we see a lot of dependency on integration layer - we move the high need for ERP customization to microservices layer, which turns our ERP closer to standard packaged solution and decreases (sometimes...) the upgrade process of standard components.

In case of SAP implementation, focused on SAP BTP platform, we'll have for each box:
- ERP - SAP S/4 Hana
- Publish / Subscriber Event Manager - Event Mesh
- Service Bus - CPI
- Microservice - custom development on Java, JavaScript, Python TypeScript through SAP Cloud Platform, closer to any non-SAP development.
- ETL Tool - SAP DI, the new "SAP BODS".

It's possible to client needs to use, instead of using SAP BTP, combine these same applications to other Cloud applications or any other packaged vendors (eg: instead of SAP CPI, Mulesoft). So, the software selection is another mandatory process for enterprise architects alignment - costs, return of investment, functional match, better non-functional requirements attendance... many indicators must be defined on strategic time, before the project implementation, to be measured through the time.

On next posts: 

1. I'm getting a zoom over this strawman and make reflections about. I guess all architects should have, at least, this initial perspective and improve it, following the clients needs. This is where it's going to change. 
2. Another interesting layer to be added is the analytics layer (this is not my focus today...) and it'll take some posts too. 
3. We need to talk about TOGAF, on next posts.
4 - Talk about Cynefin Model.