Who Needs an Architect?
Before this reading, I had a definition or visualization of an architect similar to what's concluded, an architect, is like a designer but more professional, the one that mostly decides what to do, to use and how everything shall work, may be the most skilled and wise of the team, hence why he is left with the more "important" decisions on a project.There are two architects presented:
- Architectus Oryzus: he is what in modern terms is defined a leader, someone who is in charge but not necessarily the only one who knows, he has a team and he has not only to direct them but to support and work alongside them, he may be the one with more abilities and in the end the one that decides everything but is not alone.
- Architectus Reloadus: basically, a one-man army, not only does he decides but also develop.
For me a software architect, is a mix of both, has to be good (really good) but also needs to work appropriately with a team, I hate when someone does everything and expects that the entire team will know what it did and how it works or when without any advice that person goes missing and the team is left without any idea of what to do with his part, this takes me to the next part of the reading.
A good architecture made by a good architect and his team, must be easy to manipulate (under legal terms), to understand, to upgrade, to change in general, and not because it's simple or basic (or insecure) but because all of the components were carefully designed, developed and implemented, no extra things were added and everything has its reason to exist, so, iif for some random reason, the original team changes or the project migrates to another platform, it is "easy" to perform, with minor trouble, if this is accomplished, it is (for me) a sign that a software was developed by a good architect.