DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Supercharging Productivity in Microservice Development With AI Tools
  • Testing Serverless Functions
  • Microservices Testing: Key Strategies and Tools
  • Low Latency Microservices, a Retrospective

Trending

  • Architecting Zero-Trust AI Agents: How to Handle Data Safely
  • From APIs to Actions: Rethinking Back-End Design for Agents
  • Mocking Kafka for Local Spring Development
  • Why AI-Generated Code Breaks Your Testing Assumptions
  1. DZone
  2. Data Engineering
  3. Data
  4. Four Pillars of Microservices Adoption — Process (Part 1)

Four Pillars of Microservices Adoption — Process (Part 1)

The foundation is important!

By 
somasree mandal user avatar
somasree mandal
·
Oct. 07, 19 · Tutorial
Likes (5)
Comment
Save
Tweet
Share
10.1K Views

Join the DZone community and get the full member experience.

Join For Free

The Four Pillars of Microservices.

The Four Pillars of Microservices.


Microservices are independently deployable, have centralized management of services, and can use its technology stack. Enterprises of all sizes are adopting the Microservice approach now. There are four major pillars of Microservices- Process, People, Platform and Practice.

You may also like: Microservices: Organizational Practices, Part 1

In the upcoming blog series, we will discuss what each of the pillars means to Microservices based application and in this blog, we will talk about the first pillar, ‘Process’.

Process

At a high level, Agile is the overarching methodology that fits Microservices well. There are a few key elements essential for Microservices. These elements are

  1. At the beginning of the Microservices development, at least three to four sprints dedicate to defining the software architecture, infrastructure architecture, DevOps architecture, standard guidelines and practices for the Microservices. This is very important to avoid massive reworks and failures later. A general naming, we follow for these sprints are Foundation sprints.
  2. Once the development has started, multiple parallel scrum teams need to run for the Microservice that are in development respectively. A scrum of scrums needs to run aligning the different delivery goals of the independent Microservices to an overall goal of the product release.
  3. The Testing strategy needs to be different for the Microservices application. Microservices should not rely on manual testing. Since Microservices are smaller in scope, the time required for this automation testing is generally small and it is simple.

Automation testing is the one that helps majorly in the faster release to market. Microservices without automation testing is a road to failure. The types of tests that each Microservices should develop are;

  • Unit Tests.
  • API Tests.
  • Even-driven Integration tests.
  • Saga automation tests.
  • Contract tests.
  • End to end tests.

Again, like any other application, these tests should follow a pyramid with the highest number of unit test cases to lowest end-to-end tests.

  1. A standardized DevOps process defines for all the Microservices. IAC and pipeline as a code need to adhere. It is highly anti-productive to define this process for each Microservices. IAC and Pipeline code library needs to be available from which each of the Microservices can choose from. If it is very much necessary, Microservices can alter it for their needs. This indicates specifically as a task during scrum planning.
  2. Dependency management highlights explicitly during planning. Developers need the habit of tracking and ensure that their versioning strategy does not affect the dependents. It is highly recommended to use a specialized Microservice dependency tracking system to do this.
  3. The release process needs an end-to-end automated process for Microservice. The stages for the release pipeline and the approval authorities need to be set in place from the beginning.
  4. Periodic audits conduct to ensure that Microservices are adhering to the right guidelines.


Further Reading

Microservices Architecture: Advantages of Microservices

Lessons From the Birth of Microservices at Google

microservice unit test Adoption

Opinions expressed by DZone contributors are their own.

Related

  • Supercharging Productivity in Microservice Development With AI Tools
  • Testing Serverless Functions
  • Microservices Testing: Key Strategies and Tools
  • Low Latency Microservices, a Retrospective

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook