{"id":9770,"date":"2023-02-22T12:03:12","date_gmt":"2023-02-22T20:03:12","guid":{"rendered":"https:\/\/www.microsoft.com\/insidetrack\/blog\/?p=9770"},"modified":"2023-03-01T14:05:41","modified_gmt":"2023-03-01T22:05:41","slug":"designing-a-modern-service-architecture-for-the-cloud","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/insidetrack\/blog\/designing-a-modern-service-architecture-for-the-cloud\/","title":{"rendered":"Designing a modern service architecture for the cloud"},"content":{"rendered":"

\"MicrosoftThe digital transformation that many enterprises are undertaking has its benefits and its challenges: while it brings new opportunities that add value to customers and help drive business, it also places demands on legacy infrastructure, making companies struggle to keep pace with the digital world\u2019s ever-increasing speed of business. Consider an enterprise\u2019s line-of-business (LOB) systems, such as for finance in general, or procurement and payment in particular. These business-critical systems are traditionally based on-premises, can\u2019t scale readily, and in many cases aren\u2019t available to mobile devices.<\/p>\n

As we continue along our digital transformation journey here at Microsoft, we have been looking to the cloud to reinvent how we do business, by streamlining our operations and adding value to our partners and customers. This technical blog post describes how our Microsoft Digital team saw our move to the cloud as an opportunity to completely rethink how we architect and run our core finance processes when they\u2019re built on a modern architecture. Here, we discuss the thought processes and drivers behind the approach that we took to design a new service architecture for our Finance department\u2019s Procure-to-Pay service.<\/p>\n

Evolving from an apps-oriented to a services-focused architecture<\/h2>\n

Financial systems need to be secure by their nature. Moreover, their designs are typically influenced by an organizational culture that is understandably risk averse, so the concept of moving sensitive financial processes to the cloud can be especially challenging. The technical challenges are equally significant: Consider the transactional nature of financial systems, their real-time transactional data processing, auditing frequency and scale, and the numerous regulatory aspects that are associated with financial operations.<\/p>\n

At Microsoft, many of our core business processes (such as procurement and payment) have traditionally been built around numerous monolithic, standalone apps. Each of these apps was siloed in its own on-premises environment, used its own copy of data, and presented one or more interfaces, often disconnected from each other. Without a unifying, overarching strategy, each of these apps evolved independently on an ad hoc<\/em> basis, updating as circumstances required without considering impacts on other parts of the Procure-to-Pay process.<\/p>\n

These complex and unwieldly apps required significant resources to maintain, and their redundant data led to inconsistent key performance indicators (KPIs) that were based on different underlying data sets. Furthermore, the user experience suffered because there wasn\u2019t a single end-to-end process for Procure-to-Pay. Instead, people had to work within several different apps\u2014each with its own interface\u2014to complete a task, forcing users to learn to navigate through many different user experiences as they attempted to complete each step. The overall process was made even more cumbersome because people still had to complete manual steps in between certain apps. This in turn slowed completion of every Procure-to-Pay instance and was expensive to maintain.<\/p>\n

At Microsoft Digital, our ongoing efforts to shift services to the cloud gave our Microsoft Finance Engineering team an opportunity to completely rethink how to approach Procure-to-Pay by designing a cloud-based, services-oriented architecture for the Finance department\u2019s procurement and payment processes. This, modern cloud-based service, known as Procure-to-Pay, would focus on the end-to-end user experience and would replace the app-centric view of the legacy on-premises systems. Additionally, the cloud-based service would utilize Microsoft Azure\u2019s inherent efficiencies to reduce capital expenditure costs, scale dynamically, and promote referencing of certified master data instead of copying data sets as the legacy apps did.<\/p>\n

In this part of the case study, we describe some key principles that we followed when designing our new service-based architecture, and then provide more insight into the architecture\u2019s data, API, and UI.<\/p>\n

[Learn how DevOps is sending engineering practices up in smoke<\/a><\/em>. <\/em>Get more Microsoft Azure architecture guidance from us.<\/a><\/em>]<\/p>\n

Principles of a service-based architecture<\/h3>\n

We started this initiative by defining the key principles that would guide our approach to this new architectural design. These principles included:<\/p>\n