DEV Community

Leonardo Gasparini Romão
Leonardo Gasparini Romão

Posted on • Updated on

Software Enginnering and Software Architecturing still matters.

Artigo publicado originalmente em portuges no link:

Software architecture is those decisions which are both important and hard to change. This means it includes things like the choice of programming language, something architects sometimes gloss over or dismiss. Both aspects land squarely on the economics of software development. Said another way, software architecture is those decisions which, if made poorly, will make a project either succeed or fail, in a needlessly expensive way.

Martin Fowler

I said in other articles, it is important that corporations and people change the thought that T.I is cost and treats it as investment. Thinking that way, the engineering and software architecture would be as safe for your investment, while they would also be a more profitable portfolio in investing for the cost savings they can get, but then why we neglect so much These 2 topics in making software projects

"Done is better than perfect"


That was a phrase I heard not so long ago, and I agree and disagree with it. This phrase from what I researched, probably came from the area of administration or professional coaching. But Although this phrase is very much applied in corporations, when we talk about T. I, there is a very big problem in saying this.

There are many things that we demand perfection

There are many products and services (Mainly services of T. I), which we wish it to work perfectly, after all you would feel confident in getting on a plane that was made by teams who think by the phrase above, or would feel confident in directing a Car that was conceived based on this phrase, would live in a house thought of like that, or I'd trust the doctor to do a surgery on your heart that said that kind of thing, probably not.

The T.I scenario ends up being quite different

When we talk about T. I, the final results are what matters or how makeup spoke "The ends justify the means", this in the short term ends up being rewarding even, but every programmer knows that at some point, his haste to deliver a software goes " Haunt him "afterwards. That's Why software engineering is so important, to help us create deliveries that have value to the customer in shorter deadlines, meeting expectations over time without creating a monster that will then give a headache to its creator haha.

lack of qualification on software architecture In Brazil

I Have already presented this in other articles, about the lack of Qualification of T.I professionals in Brazil, I say this mainly about software architecture. At the same time that experienced managers are more concerned about meeting the business needs (rightly) than technical needs, programmers do not have a qualified Mentor who knows how to apply well knowledge such as Design Patterns, DDD, SOLID, Dry, Kiss, Microservices. Good programmers need to be with this keen knowledge, at least enough to know how to leverage them so that we can reduce our reworks. As the image illustrates, as programmers it is not good to deliver a good service and by fire in the kitchen Rs.

Software Engineering and architecture help to save long-term

Source: casavogue

This House is here in São Paulo, in the neighborhood of Vila Matilde, it is an excellent example of how architecture besides leaving your project much better it can cost less. The difference is sharp when we see for example the house next door. In The case of this House, a group of architects managed with a limited budget to create a house restructuring project, and the result was exceptional. So this serves as a warning the corporations- software architecture makes your project better and cheaper, the best of the worlds when it comes to business interests.

[Conclusion]: We are still coming out of the mooring of very archaic concepts on how to make software, hopefully new developers understand that mainly, both engineering and software architecture has as the largest beneficiary the programmers themselves, besides the Corporations understand that these concepts have by default help in a big business goal-Cutting costs. From this understanding it may be that we have better systems to care for and fewer burnt kitchens or monsters created, we need to understand that good programmers have been able to be good architects and software engineers eventually, while bad Programmers will be imposters that will create monsters for other people to face. And for you, Software achitecture and Engineering still matters?

Useful links


Top comments (0)