DEV Community

Cover image for 🖐 5 Things Every Developer Must Know about Software Architecture
Abdulcelil Cercenazi
Abdulcelil Cercenazi

Posted on

🖐 5 Things Every Developer Must Know about Software Architecture

1. Software Architecture Isn’t About Big Design Upfront ☝️

Big designs upfront are usually done in waterfall models of software development.

  • The waterfall model is predicted to be bad by its own inventor :)

The upfront design should be a basic, good one done with an iterative and incremental process.

When Do We Stop The Architecture Planning? ⛔️

When we have a solid understanding of the following aspects:

  • The significant architectural drivers
    • Cost, Response Time, etc...
  • Requirements.
  • Constraints.
  • The context and scope of the product.
  • The significant design choices.
  • Technology used.
  • Is our application a Monolith or is a set of Microservices?
  • The risks associated with the product.

2. Every Software Team/Product Needs To Consider Architecture And Needs To Have A Technical Leader ✌️

This is crucial to have consistent patterns in the product.


3. What's The Software Architect Role About 👨‍🔧

  • Coding.
  • Keeping an eye on what’s going on with the code base.
  • Coaching.
  • Collaboration with others to incrementally draw the architecture of the application.

It’s a continuous role that spans the life of the project.


4. An Architect Doesn’t Need To Use UML 📐

There are several other tools that enable us to create architecture diagrams using GUIs or even using code.


5. A Good Software Architecture Enables Agility ❤️


Credits 🙌

This post has been prepared using the lecture of Simon Brown Five Things Every Developer Should Know about Software Architecture

Top comments (3)

Collapse
 
gillarohith profile image
Rohith Gilla •

Very nice post, it would be more cool and visually pleasing with images/gifs.

Collapse
 
jarjanazy profile image
Abdulcelil Cercenazi •

Thanks a lot for the feedback :) I will try to include more visuals into my posts in the future.

Collapse
 
_genjudev profile image
Larson •

Explain the architecture without a GUI or any graphics and you know it's a good one.