Skip to main content

Who needs an archiect?


In this blog entry we are going to talk about an article written by Martin Flowers entitled, “Who needs an architect”, were it talks about software architecture (kind of obvious don’t you think) and the architect's role in a software development team. To be honest, a didn’t get the author’s purpose of the article, but I think I have got the general idea, so I can review this properly.

On the article the author gives many two explanations the software architecture, one of them is quoted by someone else which basically says that a high level concept of a system is only visible (or significant) to developers, now, for me this is really abstract, because I don’t thing it applies to all the projects of this topic, but the second one which is given by the author himself says that the architecture is a a shared understanding of the system design by all of the expert developers involved in the Project, now this makes more sense to me because we can understand that not only the developers knows about the project, but also the other members working on it.
About the role of the architect in a project, the author says that there are to kinds of it, the reloadus and the oryzus. The first kind, the reloadus, is the kind of architect who makes the big calls all by himself, but on the other hand the second kind, the oryzus, is the kind of architect who doesn’t makes the important decisions by himself because it is the one that mentor or tutors the development team so that they can help him to make the decisions.

Now, for me the oryzus is the better kind of architect because is the one that creates a clear way to share the information in regard to the project to all the members, and by doing so it creates a better trust among the team, is like the true team leader in my own opinion.

Comments

Popular posts from this blog

Is Design Dead?

On today’s entry we are going to talk about the article “Is design dead?”, which talks about how the design has been changing through the years and how the good practices were developed in order to create a good design. Is no lie that for all the people that develops software, is kind of difficult to come up with a good design because of the lack of and standards to create it, other areas may have standards or even a methodology, but not us. Because of these needs, developers have created a bunch of good practices, not to create, but to reach a good design probably in a 85% of success. For example, a good practice is a that the code we create has to be modular in order to make corrections or complete alterations in a easier, this changes may occur for many reasons, manteinance, update the information or just to simply chage the entire code to something more efficient, the same goes to the design, but the problem is that a design is more difficult to modify when is already d...

Microservices

On today’s blog entry we are going to talk about the Microservices architecture. This architecture has an approach where when we are developing a single app, we develop it as lots of small services, each of them running on its own process and communicating with each other with something that can bind them together. Now I have already used microservices without knowing I was actually using them, perhaps this architecture is quite intuitive for best practices or something like that, but anyway the author of the article gives some characteristics about this which are the following: ·          Componentization via Services: The components of the microservice need to be gather into libraries that will be used later on by the microservice to communicate with remote parts of the whole program. ·          Organized around Business Capabilities: This characteristic refers that we need to create divisions, e...

Understanding the SOLID principles

On today’s blog we are going to talk about the SOLID principles, which were discovered by Robert Martin, the famous Uncle Bob from the podcast of the previous entry. This principles are recommended to be used whenever someone wants to create an object oriented program. There are 5 principles where the acronym SOLID comes from which are the following S ingle Responsibility Principle (SRP) -> it says that any class should only have one responsibility. Yet, the author ends up saying that there might be some classes that have two responsibilities (the invoicing class that has some logging routines). In the end, I didn’t understand this principle well because I found the explanation confusing (as the author said, practice is much more difficult than theory).  O pen/Closed Principle (OPC) -> open extension but closed modification Although the author says that if you change a parent class method it might kill another part of the ...