Software Architecture and Design InfoQ Trends Report—April 2022 – InfoQ.com

Live Webinar and Q&A: Streaming SQL on Apache Kafka for Real-Time Processing (Live Webinar May 26th, 2022) Register Now
Facilitating the Spread of Knowledge and Innovation in Professional Software Development


The panelists discuss the operating system they are building on Rust, and where they’d like to see both Oxide and the Rust language go in the next five years.
Raymond Roestenburg, Sergey Bykov discuss event-driven architectures and some of the challenges they present.
Fabio Grätz, Thomas Wollmann discuss the MLOps Automation tool, how it can be used to perform DevOps tasks on ML across teams.
In this podcast, Shane Hastie spoke to Keren Halperin about what’s needed to recruit and retain great technologists in today’s dynamic employment environment.
Different areas of cloud security must be examined to strengthen security in the cloud versus security of the cloud. This includes identifying requirements, defining the architecture, analyzing controls, and identifying gaps. Security must be both proactive and reactive, so it needs to be considered in every step of development.
Uncover emerging trends and practices from software leaders. Attend online on May 10-20, 2022.
Learn how cloud architectures achieve cost savings, improve reliability & deliver value. Register Now.
Understand the emerging software trends you should pay attention to. Attend in-person on Oct 24-28, 2022.
InfoQ Homepage Articles Software Architecture and Design InfoQ Trends Report—April 2022
This item in japanese
Apr 04, 2022 7 min read
by
Thomas Betts
Eran Stiller
Vasco Veloso
Daniel Bryant
Sarah Wells
reviewed by
Thomas Betts

Each year, InfoQ editors discuss what we’ve been observing across the entire software development landscape, and create several trends reports, each with its own graph of the adoption curve. This helps the editorial team focus its reporting on innovative technologies and ideas, and also provides our readers with a high-level overview of topics to keep an eye on.

There are two major components of these reports. The first is the written report you are currently reading, and includes the trends graph and details on individual items that have been added or changed in the past year, as well a general analysis from the InfoQ editors.

The second part of the report is an episode of the InfoQ Podcast, which is a chance to listen in on part of the editors’ conversation and hear some anecdotal examples from our panel of expert practitioners. 
In 2021, we looked at many ways architects shape their designs, considering major "-ilities." This year, we’ve added "design for security" to that list, and consider it at the early adopter stage. While security has always been a factor, it is increasingly important to consider security early and repeatedly when designing a system and its components.
Uncover software emerging trends and practices from domain experts. Attend in-person QCon Plus (May 10-20, 2022).
Architecture may not be part of the portmanteau triplet DevSecOps, but it is an underlying component of that idea. There are also many similarities between cybersecurity and software architecture, as discussed with Maxime Lamothe-Brassard on the InfoQ Podcast.
We considered adding “design for scalability” but decided it was captured under the idea of “design for resilience” and other trends that exist to accommodate scalability. In the second year of the pandemic, consumption of online services continued to grow, and companies had to be able to scale to meet the demand.
eBPF, extended Berkley packet filters, are a way of programming the Linux kernel, and allowing developers a way of adding capabilities to the operating system at runtime. We’ve added eBPF as an innovator trend and will watch its adoption over the coming years. Liz Rice provided a great overview of the technology in a recent episode of the InfoQ Podcast.
The term "Next-gen GraphQL" was changed to GraphQL Federation, as it is the foremost aspect being adopted by companies building on top of their existing GraphQL implementations.
“Data gateways” was removed, and replaced with the “Data + Architecture.” Also, Architect Elevator was replaced with Architecture Decision Records. These changes are discussed in detail later in this report.
Both Dapr and WebAssembly have moved from Innovators to Early Adopters.
A couple of items were removed due to a lack of adoption and insufficient innovation being mentioned in the past few years. These were Open Application Model (OAM) and RSocket & Reactive Streams. 
We’re seeing a transition from data being considered only at the storage or transport layers in a system to data being a defining element of the system. This is apparent in AI/ML systems, which are built from data, as well as in design patterns such as event sourcing. Sometimes this is manifested in a well-defined concept, such as data mesh, which we are continuing to watch as a separate innovator trend. More often, architects are just considering data differently, which led to the addition of “data + architecture” on this year’s trends graph.
In an interview on the InfoQ Podcast, Neal Ford and Mark Richards talked about the need to include chapters about data in their new book, Software Architecture: the Hard Parts. Neal said:
We wanted to make sure that we have a more complete picture because we firmly believe that data plus architecture is going to be one of the themes over the next few years. And it is very much the theme of a lot of our professional work that we’re doing right now—untangling that relationship and getting that to be a smooth working relationship is a collaboration again, between DBAs, architects, and getting those practices into the same kind of practices we’re getting accustomed to in architecture and design.
Data + architecture encompasses some of the SEO-friendly terms, such as data gateways which it replaced on the graph. It also includes ideas like data quality, and the introduction of tooling that tries to solve the problem of “How do we make sure that the data we use is correct? How do we know that it is what we expected?” The consequences of not dealing with this question can be disastrous.
InfoQ editor Eran Stiller considers data quality in his work at Badook and has the following to say on the subject:
Companies today are increasingly relying on Artificial Intelligence and Machine Learning algorithms. They use them to power their customer experience, forecast their sales and stock level, and gain valuable insight into their business. In some cases, they even make fully automated decisions without human intervention. These algorithms rely on data. If the data is good, they can build a usable model. But unfortunately, our data changes over time, and its quality decreases. Errors in data collection occur, data pipelines can inadvertently wreak havoc on our data, and assumptions that we previously had on our data change over time and might no longer be valid, causing potentially catastrophic business results.
For example, real-estate company Zillow recently wrote down more than half a billion dollars after its data model for predicting house prices and driving its business decisions failed to adapt to a changing reality.
In addition, regulators around the world, such as the European Union, are in the process of regulating the way Artificial Intelligence algorithms are created and used. A similar Algorithmic Accountability Act was recently introduced in the US Congress. A crucial part of these regulations will be ensuring that the data used to derive the algorithm is valid.
Consequently, I predict that data quality and reliability will be a topic of growing concern with most, if not all, tech companies. Like we test our code, we should test and validate our data and ensure that it behaves as we expect it to. If we don’t do that, we might wake up one morning and base our business strategy on corrupt forecasts, or even worse—make catastrophic fully-automated financial decisions that could cost us billions. I’m sure that none of us wants to be in that position. 
Across the industry, there is a wide spectrum for defining the role of an architect and the practices of software architecture and design. Many companies do not have a job title for a software architect, and those that do can have very different responsibilities. Despite this, software is always designed and always has an architecture. Our challenge is to identify the innovative ways architecture is being done, and how this can manifest in the role of software architects.
This is a hard idea to condense into a short concept on the trends graph. Last year, we had “architect elevator” Gregor Hohpe’s idea of the architect needing to communicate at multiple levels of the organization. Before that, we had “architect as technical leader.” Both of those were in the early adopter category, mostly from a gut feeling that they weren’t necessarily innovative, but also not widely adopted. 
This year, we have included “architecture decision records (ADRs)” as an early adopter idea. A great reference for ADRs is from a 2011 article by Michael Nygard. Most software teams are familiar with “boxes and arrows” architecture diagrams, which are useful for documenting either a desired or current state of a system. 
However, it is often useful to understand why those design decisions were made, which is the purpose of ADRs. By capturing the decision, along with other options considered and the trade-off analysis done at the time, an ADR can be very useful when a design has to be updated in the future, or simply as a reminder when the design is questioned.
One side-effect of building distributed systems, and microservices built by semi-autonomous teams, is that architecture decisions also become distributed. Therefore, architects need to help empower teams to perform architecture tasks, such as trade-off analysis, making good decisions, and documenting and communicating those decisions. ADRs can be an important part of scaling software architecture, according to Andrew Harmel-Law.
To hear more discussion on the role of architects and the practice of software architecture, I highly encourage you to listen to the accompanying podcast
 
Upcoming QCon Events 2022
QCon, the international software development conference, is returning (in-person and online) in 2022.
QCon brings together the world’s most innovative senior software engineers across multiple domains to share their real-world implementation of emerging trends and practices.
Find practical inspiration (not product pitches) from software leaders deep in the trenches creating software, scaling architectures and fine-tuning their technical leadership to help you make the right decisions.
Attend in person at QCon London, (April 4-6) or online at QCon Plus (May 10-20).





Becoming an editor for InfoQ was one of the best decisions of my career. It has challenged me and helped me grow in so many ways. We’d love to have more people join our team.

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

We protect your privacy.
You need to Register an InfoQ account or or login to post comments. But there’s so much more behind being registered.
Get the most out of the InfoQ experience.
Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p
by John Broderick,
by Thomas Betts,
by John Broderick,
Your message is awaiting moderation. Thank you for participating in the discussion.
Any info on what this is? Is it something specific or a set of practices?
by Thomas Betts,
Your message is awaiting moderation. Thank you for participating in the discussion.
It’s a collection of many practices, and also the avoidance of anti-patterns. A well-designed and built distributed system involves low coupling between the independently-deployable components, isolates failures, and is observable. By contrast, some companies move to a microservices architecture without considering these ideas, and end up with a distributed monolith.

There was a brief description of the topic last year: www.infoq.com/articles/architecture-trends-2021/

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

We protect your privacy.
Real-world technical talks. No product pitches.
Practical ideas to inspire you and your team.
QCon Plus – May 10-20, Online.

QCon Plus brings together the world’s most innovative senior software engineers across multiple domains to share their real-world implementation of emerging trends and practices.
Find practical inspiration (not product pitches) from software leaders deep in the trenches creating software, scaling architectures and fine-tuning their technical leadership to help you make the right decisions.
InfoQ.com and all content copyright © 2006-2022 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we’ve ever worked with.
Privacy Notice, Terms And Conditions, Cookie Policy

source

Enable Exclusive OK No thanks