Автор: Simon Brown
Издательство: Leanpub
Год: 2019-09-20
Страниц: 193
Язык: английский
Формат: pdf (true), epub
Размер: 54.3 MB
A short guide to visualising, documenting and exploring your software architecture.
This book focusses on the visual communication and documentation of software architecture, based upon a collection of ideas and techniques that thousands of people across the world have found useful. The core of this is my C4 software architecture model and the software guidebook. You'll also find discussion about notation, the various uses for diagrams, the value of creating a model and tooling.
Although the software development industry has moved on in many ways, we seem to have forgotten some of the good things that these prior approaches gave us, specifically relating to some of the artifacts these approaches encouraged us to create. Of course, the Unified Modelling Language (UML), a standardised notation for communicating the design of software systems, still lives on. However, while you can argue about whether UML offers an effective way to communicate software designs or not, that’s often irrelevant because many teams have already thrown out UML or simply don’t know it. Such teams typically favour informal boxes and lines style sketches instead but often these diagrams don’t make much sense unless they are accompanied by a detailed narrative.
Abandoning UML is all very well but, in the race for agility, many software development teams have lost the ability to communicate visually. The example software architecture sketches (pictured) illustrate a number of typical approaches to communicating software architecture and they often suffer from a number of problems.
This book aims to resolve these problems, by providing some lightweight ideas and techniques that software development teams can use to visualise and document their software. Just to be clear, I’m not talking about detailed modelling, comprehensive UML models, or model-driven development. This is about effectively and efficiently communicating the software architecture of the software that you’re building, with a view to:
• Help everybody understand the “big picture” of what is being built, and how this fits into the “bigger picture”.
• Create a shared vision of what you’re building within the development team.
• Provide a focal point for the development team to remain focussed on what the software is and how it is being built.
• Provide a point of focus for those technical conversations about how new features should be implemented.
• Provide a “map” that can be used by software developers to navigate the source code.
• Help you explain what you’re building to people outside of the development team, whether they are technical or non-technical.
• Fast-track the on-boarding of new software developers into the team.
Скачать Software Architecture for Developers: Visualise, document and explore your software architecture, Volume 2