Software Architecture
-
Learning, Programming Principles, Quality Assurance, Software Architecture, Software Engineering, SW-Architecture Framework
The Rise of the Modular Monolith: A Pragmatic Approach to Software Architecture
Introduction In the ever-evolving world of software architecture, the debate between monolithic and microservices architectures continues to spark discussions. While microservices have gained immense popularity…
-
Is Technical Debt a Silent Killer of Productivity and Growth?
Is Technical Debt a Silent Killer of Productivity and Growth? Every software project has technical debt—those shortcuts we take to meet deadlines, save resources, or…
-
When to Use Composition and Inheritance in Software Development
In object-oriented programming (OOP), two key approaches for code reuse and structuring are inheritance and composition. Understanding when to use each can significantly affect the…
-
Software Design Principles: SOLID, DRY, WET, and More
When developing software, applying established design principles helps ensure your code is clean, maintainable, and scalable. In this article, we explore some of the most…
-
High Cohesion vs. Low Cohesion in Software Design
When designing software systems, the concept of cohesion plays a crucial role in determining the quality and maintainability of your code. Cohesion refers to how…
-
Understanding Loosely Coupled and Tightly Coupled Code with Examples
In software development, the concepts of loose and tight coupling play a critical role in determining the flexibility, maintainability, and scalability of your code. Coupling…
-
Understanding Polymorphism in C# Through a Shape Drawing Example
Polymorphism is a fundamental concept in object-oriented programming (OOP) that allows objects to be treated as instances of their parent class rather than their actual…
-
Effektive Softwarearchitekturen von Gernot Starke: Ein unverzichtbarer Leitfaden für Softwarearchitekten
Gernot Starkes Buch Effektive Softwarearchitekturen – Ein praktischer Leitfaden ist ein Standardwerk für Softwareentwickler und Architekten, die robuste, wartbare und effiziente Softwarelösungen entwerfen möchten. Mit…
-
Die arc42-Methode
https://www.arc42.de Erfolgreiche Softwarearchitektur Entwerfen, kommunizieren und dokumentieren. Bewährt, praktisch und pragmatisch. Frei verfügbar, Open-Source und schmerzfrei.
-
Architecture Improvement Method
https://www.aim42.org Iterative improvement in phases aim42 works iteratively in three phases (analyze, evaluate, improve) supported by crosscutting activities. For each phase, aim42 proposes a number…