Sustainability as a key Software Architecture Choice


As an architect my day-to-day involves helping my clients solve wicked problems while delighting their customers and staying profitable and sustainable as a business. I do this by obsessively reasoning about software architecture and design choices. As an architect circa 2021 growing climate crisis has me concerned especially as the software industry and the solutions we build and host continues to consume more energy – so I wonder if Sustainability can be key “ility” for us to consider and how we might do this?

What do software engineers, designers and architects do?

We build awesome solutions to wicked problems … an host it in the cloud. This line of thought leads to “the environment is therefore not my problem, it is the hosting platform’s and the client’s problem” thinking which is what I would like us to change today. We engineer our way through other constraints, why is ecology not one?

The key to software architecture and design is to master the balance between the needs of the client (& their customers) vs their key constraints. These constraints and needs in balance equation are called ilities“ in the software architecture lingo and range from reliability, operability, usability, scalability to things that do not rhyme with the word ility such as security, performance etc.

As a father and human being, what pleases me is that Sustainability is also now on the radar as a key ility for a lot of organisations. Info Q magazine in its “2021 Software Architecture and Design Trends” report quoted Holly Cummins from IBM on the subject of designing for sustainability because this topic is one of InfoQ’s key innovator trends

She is quoted as saying, “This (Sustainability) is emerging because people are realizing the software industry is responsible for a level of carbon usage comparable to the aviation industry. Some of this is almost directly measurable, as the bill for compute usage is highly correlated to energy consumption. Where CTOs and architects can have an impact is by either reducing unnecessary compute usage or utilizing more sustainable cloud hosting options. Some cloud data centers run on 100% green energy, while data centers in Virginia are powered by coal”

This means the leading indicators are clear: Our solutions needs to cater for sustainability as a key ility while staying profitable. Personally for me as an architect building solutions in the cloud or on the edge – the innovation agenda has been to ensure my clients are commercially viable while balancing the ecologically viable aspect as well!

So how do architects build sustainable solution?

In a Science Direct article by KatrinaBrown, Neil Adgera and all propose empathy as a key phenomenon that shapes human-environment relations. They used the term “Biosphere Empathy” to describe this relationship and I quite like it!

Architects can build biosphere empathy along with business empathy to build sustainable solutions which delight their customers. Now as we apply business empathy and walk in our client’s shoes we can start to imagine the impact from our solution choices on the ecology as well

It might be the case your customers do not see sustainability as a key concern though. They may be focussed on remaining commercially viable or relevant to their customers and may not have considered the impact of their solution to the ecology especially since this can be implicit or a long term problem to solve

In such cases, Architects (of plant earth 2021) should help clients consider sustainability as a NFR (non-functional requirement) similar to other NFRs. Architects should effectively articulate the hidden ecological values to their clients and also show the clients how to articulate to their customers the positive impact of their business through their solutions

Summary

Sustainability is fast becoming a key concern globally as ecological issues become a priority. Software industry is fast becoming the major energy consumer and if you are a software architect the sustainability is a key ility to consider with your clients and their customers. This is similar to making the client aware of non-functional requirements in existing practice but can have measurable impact to the green credentials and the wider ecosystems

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s