An architecture cannot accomplish high security, high availability, high abstraction, and high performance all at once. All that software architects need to do is know, understand, and relate one real narrative to their peers and clients. I am speaking of Vaza’s history.
In 1620, there was a war between Sweden and Poland. An attempt was made to bring this expensive war to an early end by the Swedish King by ordering the construction of a galleon known as the vase. The ship was not like the others. It was unlike any other ship of the time in its features. It had to be longer than sixty meters in order to safely convey 300 men at a time to Poland while also carrying 64 weapons on two battery decks. Time was running out, and there wasn’t enough money—sounds familiar? The shipyard has never before designed such ships. Smaller, single-decker boats were his specialty. Still, he used his prior experience and abilities to develop and construct the Vaza. As a result, a ship was built to meet these specifications. The weather is going to fall today. The ship proudly entered the harbor and saluted with all of her cannons. Then he succumbed.
The Vaza problem was obvious to everyone who had seen the deck of a huge 17th-century battleship: these ships’ decks were dangerously crowded, especially during battle. Creating ships that could be used for both combat and transportation was an expensive mistake. To cater to the king’s every want, the shipwright built an unsteady and unbalanced ship.
A software architect may take this dismal experience into consideration and learn a lot from this story while designing the architecture of a software product. An unstable architecture is created when wants are tried to be satisfied all at once (like with the Vaza), making it impossible to accurately finish any of the jobs. A good example of this is forcing service-oriented architecture (SOA) to function in parallel as a point-to-point solution. This usually means that we have to steer clear of the numerous levels of abstraction generated by the SOA technique, and the result is an architecture that resembles spaghetti at a restaurant in Italy. An architect can use a range of methods to determine the necessary sacrifices when building architecture. Two popular methods of this kind are the Architecture Tradeoff Analysis Method (ATAM) and the Cost Benefit Analysis Method (CBAM).