Starring as "The Monolith"

Marketing Facts

Visibility

Keep track of your products, streamline operations and better manage your assets.

Monitoring

Proactive control to help you maintain your supply chain integrity and efficiency.

Collaboration

Improves the communication and collaboration with your supply chain partners.

Information Management

Business intelligence tools that convert your data into information for effective decision making.

SRP Violation...

...detected on marketing level!

Project Facts

  • Ongoing development since 2007
  • More than 1.500.000 lines of code
  • 197+ developers over time

Historically grown system...

...detected on application level!

Technical Facts

  • Self-made Java Web Framework
    (by now out of commission)
  • Multiple UI Technologies
    (JSP/jQuery, Swing/ULC, GWT/GXT, JSF)
  • Monolithic underlying database
    (used for operations, visibility and reporting)

Legacy system...

...detected on architecture level!

Three Red Alerts

  • Responsibility
  • Maintenance
  • Technology

How to turn the corner...?

#1: Restraint

Do not put more stuff into your monolith!

Fixes and small changes only!

No more new big features!

No facelift projects!

#2: Research

Find the seams in your monolith!

Components of KN Login

Product clusters

#3: Repercussion

Realize that most of your seams are just wishful thinking!

Transitive dependency hell

Cycle prevention components™

#4: Rehabilitation

Continually desiccate the monolith in spite of #3!

Seemingly low-hanging fruits

Well defined bounded context

Real pain spots

#5: Rewording

Moving to Microservices might be a too drastic step! Self-Contained Systems (SCS) are a viable alternative!

Self-Contained System (SCS)

  • Autonomous web application (including UI, Logic and Data)
  • Favors UI-level over API-level integration
  • Prefers asynchronous integration
  • Individually deployable
  • Owned by one team

KN FreightNet







Domain-driven SCS Composition

KN FreightNet SCS'

  • Airfreight
  • Seafreight
  • Overland
  • Account
  • Addressbook
  • Quote List
  • Booking List
  • Chat
  • Document Center
  • Product Transit Time Simulator

KN FreightNet SCS Architecture

Final Takeaway

The transition from a monolithic application to a microservice architecture is not recommended as a "Grand Redesign" project. Instead of moving to Microservices consider adding/migrating to SCSs instead. This can give you a Dev- and Ops-friendly system landscape with enough flexibility and stability!

Recommended Resources

THE END...?

MonolithFirst

THE END......?

Don't start with a monolith

THE END!

Questions?

Credits