An Introduction to Software Architecture
Minimum price
Suggested price

An Introduction to Software Architecture

About the Book

"An Introduction to Software Architecture" explores the field of software architecture. The definition of software architecture, software architect role, and software architecture styles are all well covered. It presents several common architectural styles to guide architects and developers on how to design components and determine how those components should interact.

This book examines:

  • Software Architecture Definition: What is Software Architecture?
  • Software Architect Role: Expectations, types, and responsibilities.
  • Architecture Classification: Monolithic vs Distributed
  • Architecture Partitioning: Technical vs Domain
  • Software Architecture Styles: Layered, Microkernel, Event-driven, Microservices and Space-based

About the Author

Saúl Zalimben
Saúl Zalimben

Experienced in creating high-quality code considering the best coding practices, architectural patterns, and performance. Experienced in leading small development teams using agile methodologies. Interested in devising a better problem-solving method for challenging tasks, and learning new technologies and tools if the need arises.

Table of Contents

  • 1. Software Architecture
    • 1.1 Definition
    • 1.2 Dimensions
      • 1.2.1 Structure
      • 1.2.2 Architectural Characteristics
      • 1.2.3 Architectural Decisions
      • 1.2.4 Design Principles
    • 1.3 Characteristics
      • 1.3.1 Agility
      • 1.3.2 Simplicity
      • 1.3.3 Scalability
      • 1.3.4 Fault Tolerance
      • 1.3.5 Performance
      • 1.3.6 Extensibility
    • 1.4 Laws of Software Architecture
  • 2. Software Architect
    • 2.1 Expectations of an Architect
      • 2.1.1 Make Architecture Decisions
      • 2.1.2 Continually Analyze the Architecture
      • 2.1.3 Keep Current With Latest Trends
      • 2.1.4 Ensure Compliance With Decisions
      • 2.1.5 Diverse Exposure and Experience
      • 2.1.6 Have Business Domain Knowledge
      • 2.1.7 Possess Interpersonal Skills
      • 2.1.8 Understand and Navigate Politics
    • 2.2 Types of Architects
      • 2.2.1 Technical Architects
      • 2.2.2 Solution Architects
      • 2.2.3 Enterprise Architects
  • 3. Software Architecture Styles
    • 3.1 Architecture Classification
      • 3.1.1 Monolithic Architectures
      • 3.1.2 Headless Architectures
      • 3.1.3 Modular Monolithic Architectures
      • 3.1.4 Distributed Architectures
      • 3.1.3 Which One Should I Choose?
      • 3.1.4 Monolith First
  • 4. Architecture Partitioning
    • 4.1 Technical Partitioning
    • 4.2 Domain Partitioning
    • 4.3 Which One Should I Choose?
  • 5. Software Architecture Styles
    • 5.1 Layered Architecture
      • 5.1.1 Topology
      • 5.1.2 How does it work?
      • 5.1.3 Considerations and Analysis
      • 5.1.4 Architectural characteristics
    • 5.2 Microkernel Architecture
      • 5.2.1 Topology
      • 5.2.2 How does it work?
      • 5.2.3 Considerations and Analysis
      • 5.2.4 Architectural characteristics
    • 5.3 Event-Driven Architecture
      • 5.3.1 Topology
      • 5.3.2 How does it work?
      • 5.3.2 Event-Driven Versus Message-Driven
      • 5.3.3 Considerations and Analysis
      • 5.3.4 Architectural characteristics
    • 5.4 Microservices Architecture
      • 5.4.1 Topology
      • 5.4.2 Key Concepts
      • 5.4.3 How does it work?
      • 5.4.4 Considerations and Analysis
      • 5.4.5 Architectural characteristics
    • 5.5 Space-Based Architecture
      • 5.1.1 Topology
      • 5.1.2 How does it work?
      • 5.1.3 Considerations and Analysis
      • 5.1.4 Architectural characteristics
    • 5.6 Architecture styles rating summary

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub