Software Architecture
58 items from simskij/awesome-software-architecture ★2,908
-
TDD, Where did it all go wrong?, by Cooper infoq.com
Suggestion on TDD practices and boundaries to reduce coupling 🎥.
-
Impact mapping impactmapping.org
A strategic planning technique used for building products and delivering projects.
-
How to learn software design and architecture - a roadmap freecodecamp.org
Additional things helpful to learn to get a firm understanding of software architecture.
-
Extreme Programming extremeprogramming.org
The most specific of the popular agile processes, focusing on engineering and development practices.
-
Event Storming eventstorming.com
Format for exploring domain driven-design.
-
Wikipedia: Lean Software Development en.wikipedia.org
Translation of lean manufacturing for the software development domain.
-
Wikipedia: DevOps en.wikipedia.org
Combining software development and operations practices to shorten time to market while maintaining high quality.
-
Wikipedia: Data modeling en.wikipedia.org
Great, short, introduction to data modeling.
-
Business Model Canvas en.wikipedia.org
Business plans made simple and visual.
-
Documenting architecture dzone.com
Pragmatic tips on how to effectively document software architecture.
-
Keep CALMS and carry on dwpdigital.blog.gov.uk
How BPDTS use the CALMS model as a reference for their devops adaptations.
-
Leader Election docs.microsoft.com
Coordinate distributed workloads by electing a leader.
-
Event Sourcing docs.microsoft.com
Instead of storing just the current state of the data in a domain, use an append-only store to record the full series of actions taken on that data.
-
CQRS docs.microsoft.com
Segregate operations that read data from operations that update data by using separate interfaces.
-
Bulkhead docs.microsoft.com
Partition resources to isolate failures.
-
N-tier architecture style docs.microsoft.com
Layers are a way to separate responsibilities and manage dependencies.
-
SOLID digitalocean.com
Lend to developing software with considerations for maintaining and extending as the project grows
-
The C4 Model c4model.com
Describe software using Context, Containers, Components and Code.
-
arc42 arc42.org
Template for documentation and communication of software and system architectures.
-
The Unicorn Project, by Gene Kim amazon.com
Developers, Digital Disruption and Thriving in the Age of Data :orange_book:.
-
Rolling rocks downhill, by Clarke Ching amazon.com
Business novel about agile and lean software development :orange_book:.
-
The Phoenix Project, by Gene Kim et al amazon.com
IT, Devops and helping your Business win :orange_book:.
-
The Goal: A Process of Ongoing Improvement, by Goldratt amazon.com
Business novel about contiuous improvements in a manufacturing setting. Easily adaptable to software development as well :orange_book:.
-
Design Patterns: Elements of Reusable Object-Oriented Software, by Gamma et al amazon.com
The one that started it all :orange_book:.
-
Clean Architecture, by Martin amazon.com
Key principles and concepts for building sustainable and maintainable software :orange_book:.
-
Business Model Generation, by Osterwalder & Pigneur amazon.com
Easily visualize your value proposition, costs and revenue streams :orange_book:.
-
Software Design Patterns: A Guide airbrake.io
Introduction to common software design patterns.
-
Architectural Decision Records adr.github.io
Version and document architectural decisions the same way you do with code.