Software Architecture Tips from the Man Building a Real HAL 9000
May 3, 2016: Grady Booch delivers keynote address "Architecting the Unknown" at the SATURN 2016 conference in San Diego.

Software Architecture Tips from the Man Building a Real HAL 9000

Grady Booch, Chief Scientist for Software Engineering and for Watson/M at IBM Research, addressed the audience of professional software architects attending the SATURN 2016 Conference.

“The fact that we have seen tremendous improvements in computational resources, improvements in algorithms, improvements in our processes, has only opened the aperture for our ability to dream.”

One of the dreams that Booch believes he is within reach of realizing is the creation of a real HAL 9000 computer (non-homicidal edition). The challenge, however, is how does one architect the unprecedented?

Grady Booch, holding replica of HAL 9000 film prop

There are other such systems of unprecedented complexity that are being created, such as the Internet of Things (IoT). With the ability to connect billions upon billions of devices, what is the best architecture to attend to all of them?

“There are other classes of problems which are at the edge of our imagination for which we hardly know how to begin to even architect those systems.”

Booch asserts that we can find guidance from the set of best practices that architects already use to build complex systems today. Finding the solution to ever more complex problems is an iterative process.


Booch likens the advancements made in the building of complex systems to the development of art over history.

Throughout history, artists built upon artistic accomplishments of previous generations and developments in science to advance from cave paintings, to ancient art, to the Dutch Golden Age, to the present day.

In a twist, Booch revealed that the “Rembrandt” depicted above is in fact completely computer-generated, which is just a hint of how far the evolution of complex systems has brought us towards being able to mimic human-like creations.

What are these best practices for architecting complex systems? All engineering problems deal with tradeoffs. There are a whole range of constraints, requirements, and priorities that will influence the architectural decisions.

The process of architecting is about spelling out the quality attributes and risks, using them to make design decisions, and then reasoning about those decisions.

Last year, Booch decided that he would like to attack this problem of how would one build a HAL? Booch says that it took him just an afternoon to sketch out the architecture, but really it took him 61 years to know out how to do it.

He does not know for sure if he can get there. He’s trying to take his own advice to fail early and fail big now, but he thinks that he knows the architectural decisions that will either get him there or close to it. This is a big unknown, but he’s having a lot of fun trying.

Booch offered these inspirational closing words to this audience of software architects, “You are the storytellers. You are the ones who write the stories, who tell the narratives, who guide the other storytellers and story makers into that unknown. How cool that is! What a great place to be! You are the Spielbergs of our software world. Go out and tell us some great stories because it’s your privilege and your responsibility.”

Selfie of the author with Grady Booch.

****

Please join the conversation...

What do you think? Comment below.

Thanks for reading. Please like and share. You can find my previous LinkedIn articles here (https://www.dhirubhai.net/today/author/davidpmax).

Vinny Issachaar

Digital Transformation Manager - Linaker

8 年

Great article

Chris C

AI developer NLP ML FINTECH

8 年

interesting I have alot of AI papers to discuss with him. I have been reading for the last 15 DTIC if your in that world

Gerald Weisz

entrepreneur - consultant - author "desclick"

8 年

Great ultimate advice: "Be inspired by the real world ... what does nature do ...

Jesús Megía Vega

Head of Software Engineering at TECNOBIT

8 年

Very interesting!

要查看或添加评论,请登录

David Max的更多文章

  • Said The Engineer, “Let Me Tell You a Story…”

    Said The Engineer, “Let Me Tell You a Story…”

    Have you ever found yourself reading a book, sitting cozy on the couch, only to look up after who-knows-how-long and…

    5 条评论
  • Slow Motion Change in Engineering Education

    Slow Motion Change in Engineering Education

    I wondered in my previous post, why have I met so many engineers who started out thinking that engineering wasn’t for…

    3 条评论
  • How Do You Know If You’re an Engineer?

    How Do You Know If You’re an Engineer?

    I’m an engineer, and I’ve met a lot of them. One thing I’ve noticed is that many of the engineers I know started out…

    6 条评论
  • What Makes a Good Online Group?

    What Makes a Good Online Group?

    Online groups have been around for longer than web browsers. If you're like most people reading this, you've visited or…

  • Embedding Content in LinkedIn Posts Using oEmbed

    Embedding Content in LinkedIn Posts Using oEmbed

    One of the more expressive features of LinkedIn’s Publishing Platform is the ability to embed content from another site…

    74 条评论
  • Coders Aren’t Assembly Line Workers

    Coders Aren’t Assembly Line Workers

    Clive Thompson wrote a thought-provoking piece in Wired, The Next Big Blue Collar Job is Coding. The usual definition…

    461 条评论
  • DON’T Follow Your Passion

    DON’T Follow Your Passion

    One of the most typical pieces of advice you’re likely to get for how to find a job that will bring you success and…

    303 条评论
  • The Job You Already Have Could Be The Job You Want (With a Few Tweaks)

    The Job You Already Have Could Be The Job You Want (With a Few Tweaks)

    I was sitting on a bus chatting with a couple. The husband is a software engineer like me, and his wife is a nurse who…

    64 条评论
  • What is Software Craftsmanship?

    What is Software Craftsmanship?

    I first started hearing about software craftsmanship when I started working at LinkedIn. It wasn’t a familiar term to…

    27 条评论
  • Single-Purpose Concepts, Single-Concept Purposes

    Single-Purpose Concepts, Single-Concept Purposes

    Have you ever encountered a confusing computer program? Just to take one example of many, the following question…

    1 条评论

社区洞察

其他会员也浏览了