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
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Because the DevOps movement has redefined engineering responsibilities, SREs now have to become stewards of observability strategy.

Apache Cassandra combines the benefits of major NoSQL databases to support data management needs not covered by traditional RDBMS vendors.

The software you build is only as secure as the code that powers it. Learn how malicious code creeps into your software supply chain.

Generative AI has transformed nearly every industry. How can you leverage GenAI to improve your productivity and efficiency?

Related

  • Fast Deployments of Microservices Using Ansible and Kubernetes
  • Maximizing Business Benefits: Building Microservices Architecture in Azure
  • Mastering Microservices: Best Practices for Seamless Implementation
  • What Is API-First?

Trending

  • The Ultimate Guide to Code Formatting: Prettier vs ESLint vs Biome
  • Agentic AI Systems: Smarter Automation With LangChain and LangGraph
  • Proactive Security in Distributed Systems: A Developer’s Approach
  • How to Format Articles for DZone
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. Deployment
  4. Microservices Best Practices: Why Build a Vertical Slice?

Microservices Best Practices: Why Build a Vertical Slice?

In this article, we look at what a vertical slice is, why we build it, some best practices involved in building vertical slices.

By 
Ranga Karanam user avatar
Ranga Karanam
DZone Core CORE ·
Jun. 21, 19 · Analysis
Likes (6)
Comment
Save
Tweet
Share
21.9K Views

Join the DZone community and get the full member experience.

Join For Free

In this article, we look at what a vertical slice is and why we build it. We also discuss the best practices involved in building vertical slices.

What You Will Learn

  • What is a vertical slice?
  • When do you build a vertical slice?
  • What are the advantages of building a vertical slice?
  • What are the best practices for building a vertical slice?

Best Practices With Cloud and Microservices

This is the third article in a series of six articles on best practices with cloud and microservices. The first two articles can be found here: 

  1. The 12 Factor App: Best Practices in Cloud Native Applications and Microservices

  2. Microservices Architectures: Event Driven Approach

Need for a Vertical Slice

Let's say you want to start off writing a new microservice, or developing any new application. There are several technical risks that need to be addressed, such as deciding what framework to use, identifying the layers of the architecture, figuring out communication with other systems, and so on.

You want to make sure you have great unit tests in place, and also have a good continuous integration and deployment system to process the builds.

How do we address these challenges?

What Is a Vertical Slice?

A vertical slice involves selecting one or more of the complex or risky use cases of the system(s), and implementing them first.

Typically, this involves addressing all the risks listed above — selecting the right framework, organizing it into layers, handling communication properly, having great tests in place, and following a CI/CD process.

You should also deploy and test it to make sure all requirements are met.

Benefits of a Vertical Slice

A vertical slice will help you identify and solve technology risks faster. Once a vertical slice is built well, adhering to quality coding and other standards, it could also act as a reference point for other developers on your team.

Best Practices

Lets quickly look at a few best practices around building vertical slices.

Ensure Static Analysis

Make sure that a tool to perform static analysis of your code is in place during the development of the vertical slice. Also make sure development adheres to all relevant best practices.

Ensure Continuous Integration

It is very important that you have a continuous integration process in place, to take the vertical slice build through development, QA, staging, and deployment.

Address Technical Training Issues

If the vertical slice is well implemented, it acts as a good reference point. This means that the development team can be trained using the vertical slice as a case study.

Challenges

It is very important that care be shown in selecting the use case for your vertical slice. Make sure that you choose a sufficiently complex use case, because you need to explore how the various technical risks will be addressed.

Summary

In this article, we had a look at the technical risks involved in starting application development. We then saw how creating a vertical slice, using a complex use case, helps in exploring solutions to these risks, and acts as a reference point for the development team. We explored the best practices for creating a vertical slice, and looked at the challenges involved.

Continuous Integration/Deployment microservice

Published at DZone with permission of Ranga Karanam, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Fast Deployments of Microservices Using Ansible and Kubernetes
  • Maximizing Business Benefits: Building Microservices Architecture in Azure
  • Mastering Microservices: Best Practices for Seamless Implementation
  • What Is API-First?

Partner Resources

×

Comments
Oops! Something Went Wrong

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

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

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 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!