Context Is King

编程知识 更新时间:2023-04-03 19:47:00

Context Is King

Edward Garson

i FEEl THERE iS A CERTAin iRony in trying to impart something about architectural ideals, when the very premise I wish to begin with is that effec- tively there are no ideals. If this is indeed the case, then surely there is nothing to write; I am a contradiction and by doing this I run the risk of the universe imploding or something like that.
But alas, ceci n’est pas une pipe.
One of the most valuable lessons that I have learned as a software architect is that context is king, and simplicity its humble servant. What this means in practical terms is that context is the only force that trumps simplicity when you’re making architectural decisions.
When I say context, I refer not only to high-level, immediate forces such as key business drivers, but also to elements in the periphery, such as emerging technologies and thought leadership on diverse topics. Indeed, good architects keep track of several fast-moving targets.
What constitutes good architecture? It is the product of decisions made within a context usually tainted with multiple competing priorities. Those competing priorities mean that sometimes the most important decisions are not about what you put in, but rather what you omit. The currency of good architecture is simply astute decision-making (while the products are all only about com- municating your intent).
Historically, there have been some fascinating examples of the influence that context can have on architecture. A favorite example involves the database selected to support an ambitious new software system for a modern battlefield

tank.1 (Deciding what database to use is not usually architecturally significant; this example merely serves to illustrate a point.)
When it came time to choose the database, the team assessed many. It found that while the tank was moving quickly over undulating terrain while tracking a target, the majority of the databases were capable of supporting the maximal throughput required of the navigation and targeting systems. But the team was taken by surprise when it discovered that firing the main gun on the tank caused such a strong electromagnetic pulse that it totally crashed the onboard systems and of course the database along with it! On a modern battlefield, a tank without its software running is quite literally in the dark. In this context, recovery time was the overwhelming factor in the choice of database, and no database did that better at the time than InterBase,2 and that is why it was cho- sen for the M1 Abrams tank.
So, while newsgroups rage with the flames of technology debates of X versus Y, it is idle amusement. The reason these debates rage is often not because of huge disparities in their technical merits, but rather because there are more subtle differences between them, and what features individuals value more than others when there is no guiding context to act as a trump card.
Your team should be free of ideals, reflect on context in the first instance, and reach for the simplest solutions from there.

更多推荐

Context Is King

本文发布于:2023-04-03 19:47:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/2e8078f22744e8a3c9c37a6ec618d2a3.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Context   King

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 39804文章数
  • 14阅读数
  • 0评论数