Engineering the Future of Software
29–31 Oct 2018: Tutorials & Conference
31 Oct–1 Nov 2018: Training
London, UK

Documenting serverless architectures: Could we do it better?

Asher Sterkin (Blackswan Technologies)
14:1515:05 Tuesday, 30 October 2018
Serverless
Location: King's Suite - Balmoral
Secondary topics:  Best Practice, Overview
Average rating: ***..
(3.00, 5 ratings)

Who is this presentation for?

  • Cloud architects and CTOs

Prerequisite knowledge

  • Familiarity with serverless computing principles
  • A basic understanding of UML (useful but not required)

What you'll learn

  • Understand why consistent architecture representation is important
  • Explore new tools for expressing your architectural thoughts clearly

Description

Serverless cloud computing is potentially a tectonic shift in the software industry. For the first time, software developers have an opportunity to fully concentrate on developing business features. However, when trying to describe serverless architectures, they normally use informal diagrams that are of little help for conducting architectural analysis of latency, throughput, security, availability, cost, productivity, potential duplication, or comparing multiple architectural options. These diagrams are too informal. There are not even clear guidelines for which icon to use and when (AWS Lambda has four). Also, this diagramming style does not scale beyond the scope of very simple applications. When the application size grows, intellectual control over its structure is usually lost. At serverless meetups, it’s not uncommon to hear worrisome stories about startups that produced ~500 Lambda functions within six months of development, and now, nobody has a clue what’s going on and how to maintain them. Sometimes it seems that serverless computing is just a new fancy way to mess ourselves up beyond all recognition.

Drawing on his recent article, Asher Sterkin explains why this is a problem and what we can do about it. Asher details an adaptation of the 4 + 1 view of software architecture to reflect the specifics of serverless computing in order to achieve consistent presentation of serverless architectures in the form of five orthogonal yet coordinated models: use case, logical, process, implementation, and deployment. Each model has its own semantics of graphical elements and scope of architectural challenges to be addressed. While all five models will seldom be required, it’s very important to have a clear understanding of scope of applicability of each model. Along the way, Asher discusses advanced topics such as observability and strategic play.

While this presentation is based on AWS’s serverless offerings, the core principles discussed are equally applicable to any serverless platform.

Photo of Asher Sterkin

Asher Sterkin

Blackswan Technologies

Asher Sterkin is CTO at IRKI. A software technologist and architect, Asher specializes in connecting dots across multiple software engineering disciplines. He’s currently focused on on serverless architecture and strategic domain-driven design.