Posts filed under: Software Architecture

Software Architecture

This page contains posts by Jayme related to the architecture of digital products and services. Software architecture is the up-front selection of tools, patterns, and technologies that will be used to develop software on a project.

Rather than make all decisions about tools, patterns, and technologies mid-project – software architecture leverages the skill of experienced members of the team to make some decisions before starting. This doesn’t mean these can’t change, and they often do, it simply helps a team get started with some solid guidance from the get go.

Products of significant complexity that involve multiple components, or use microservices, are especially in need of software architecture decisions as in lieu of this the complexity of a solution can quickly fall into technical debt that must be paid back at the expense of adding value.

Any team that has a designated person who is the Software Architect should try and select someone who is willing to solicit ideas from anyone on the team. This person should be an advocate for others’ contributions to software architecture and balance their experience with leveraging the ideas of their team members.


Democratic Software Architecture – Sharing Technology Decisions

Do your teams have an "elite few" that are making technology decisions? Do you wish people would work together to drive software architecture?...

How UNCERTAINTY Impacts Software Development Processes

Other software developers often disagree with us about what processes to use due to how uncertainty impacts software development....

Evolving Software Architecture To Adapt With Product Growth

Evolving software architecture to adapt to product growth can help your team deliver faster and accommodate refactoring needs easier as the project progresses....
>