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.
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.
©2018, O’Reilly UK Ltd • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org