Tagged articles
24 articles
Page 1 of 1
Tencent Cloud Developer
Tencent Cloud Developer
Jul 22, 2025 · Fundamentals

Why Good Software Architecture Is the Key to Solving Complex Business Problems

This article explores the essence of software architecture, tracing its definition, its role in solving division‑of‑labor challenges, and how a pragmatic, balanced design that treats architecture as software design itself can deliver sustainable value while navigating business complexity, team coordination, and evolving requirements.

Domain-Driven DesignSoftware Architecturecomplexity management
0 likes · 47 min read
Why Good Software Architecture Is the Key to Solving Complex Business Problems
DevOps
DevOps
Sep 19, 2024 · Fundamentals

Understanding Software Architecture: Concepts, Layers, and Design Principles

This article explains the fundamentals of software architecture, covering its definition, key components such as systems, modules, components, and subsystems, and explores vertical (layered) and horizontal (modular) architectures, design principles, complexity evaluation, cross‑platform considerations, and practical guidelines for building maintainable applications.

App DevelopmentLayered DesignSoftware Architecture
0 likes · 10 min read
Understanding Software Architecture: Concepts, Layers, and Design Principles
DevOps
DevOps
Jul 18, 2024 · Fundamentals

Architectural Thinking: Five Core Principles for Managing Complexity

The article explains architectural thinking as a systematic approach to decompose problems, highlighting five core principles—abstraction, global perspective, layered design, evolutionary mindset, and standardization—that help engineers manage complexity, improve design quality, and adapt software systems over time.

Software Architectureabstractioncomplexity management
0 likes · 10 min read
Architectural Thinking: Five Core Principles for Managing Complexity
FunTester
FunTester
Jun 28, 2024 · Industry Insights

Why System Thinking Matters: From Architecture Basics to Managing Complexity

An in‑depth exploration shows how viewing software as a system, mastering architectural models like 4+1, C4 and TOGAF, and applying the Cynefin framework for complexity can guide developers from basic system concepts to effective microservice design and complexity management.

C4 ModelCynefinMicroservices
0 likes · 20 min read
Why System Thinking Matters: From Architecture Basics to Managing Complexity
Tencent Cloud Developer
Tencent Cloud Developer
Jun 26, 2024 · Fundamentals

Why System Thinking and Architecture Matter: A Deep Dive into Complexity and Design

This article explores how a systematic, high‑dimensional view of software systems—covering system theory, architectural models like 4+1, C4 and TOGAF, micro‑service design, and the Cynefin complexity framework—helps developers move from code‑writing to strategic architecture while managing complexity.

C4 ModelCynefin frameworkMicroservices
0 likes · 21 min read
Why System Thinking and Architecture Matter: A Deep Dive into Complexity and Design
Tencent Cloud Developer
Tencent Cloud Developer
Mar 5, 2024 · Fundamentals

Programmer's Growth: Eight Key Lessons from 15 Years of Experience

After fifteen years of software development, the author learns that writing good code demands rapid trial‑and‑error, modular design, SOLID principles, early unit testing, and controlled complexity, while avoiding perfectionism, embracing stakeholder communication, and focusing on high‑ROI learning to create reusable, maintainable tools.

Career DevelopmentSoftware Engineeringcode quality
0 likes · 21 min read
Programmer's Growth: Eight Key Lessons from 15 Years of Experience
21CTO
21CTO
Feb 7, 2024 · Fundamentals

Mastering Architectural Abstraction: Simplify Complex Systems

This article explains how architects manage complexity through abstraction, offering practical induction and deduction techniques to identify commonalities, relationships, and characteristics, and illustrating these methods with real‑world examples like installment financing and Java technology.

Software Architectureabstractioncomplexity management
0 likes · 9 min read
Mastering Architectural Abstraction: Simplify Complex Systems
DevOps
DevOps
Jan 2, 2024 · Fundamentals

Understanding Software Architecture: Principles, Design, and Practices

This article explores the fundamentals of software architecture, discussing entropy, the dual value of behavior and structure, core design principles such as SOLID, DRY, layering, orthogonality, component coupling, boundary definition, communication patterns, and modeling tools, while also offering practical guidance for building maintainable systems.

DRYSOLIDSoftware Architecture
0 likes · 18 min read
Understanding Software Architecture: Principles, Design, and Practices
Qunar Tech Salon
Qunar Tech Salon
Dec 20, 2023 · R&D Management

Digital Quality Measurement System at Qunar: Building, Implementing, and Operating a Comprehensive R&D Metrics Framework

This article details Qunar's end‑to‑end digital quality measurement system, describing how over 100 indicators were defined, filtered, and organized into a hierarchical model, how the platform ingests and visualizes data, and how continuous governance and PDCA cycles improve system stability and reduce complexity.

R&D metricscomplexity managementdigital measurement
0 likes · 21 min read
Digital Quality Measurement System at Qunar: Building, Implementing, and Operating a Comprehensive R&D Metrics Framework
Architect
Architect
Nov 29, 2023 · Fundamentals

Domain-Driven Design: Core Concepts, Methods, and Practical Cases

This article explains Domain-Driven Design as a methodological approach for handling software complexity by aligning business, system, and organizational structures through modeling, detailing its core concepts, goals, key methods, and real‑world case studies from large‑scale systems.

DDDDomain-Driven DesignModeling
0 likes · 10 min read
Domain-Driven Design: Core Concepts, Methods, and Practical Cases
Tencent Cloud Developer
Tencent Cloud Developer
Nov 22, 2023 · Backend Development

Domain-Driven Design: Core Concepts, Key Methods, and Practical Application in Complex Systems

Domain‑Driven Design is a methodological approach that refactors large, complex systems by aligning business language with architecture through metaphors, layering, refinement and abstraction, organizing code into high‑cohesion, low‑coupling bounded contexts, and applying strategic and tactical modeling—illustrated by Tencent Video case studies and contrasting lightweight versus rigorous practice styles.

Domain-Driven DesignTactical ModelingUbiquitous Language
0 likes · 10 min read
Domain-Driven Design: Core Concepts, Key Methods, and Practical Application in Complex Systems
Architects Research Society
Architects Research Society
Sep 7, 2023 · Fundamentals

Chapter 1: Foundations of Enterprise Architecture

This article introduces the fundamentals of enterprise architecture, defining its scope, reference models, and maturity stages, and explains how architects manage complexity, control costs, ensure SLA compliance, and apply iterative, partitioning, and simplification techniques to modernize enterprise IT systems.

Cost OptimizationModernizationSLA
0 likes · 14 min read
Chapter 1: Foundations of Enterprise Architecture
Alipay Experience Technology
Alipay Experience Technology
May 11, 2023 · Backend Development

How DDD Tames Microservice Complexity: A Practical Guide

This article explains why architecture design, especially Domain‑Driven Design, is essential for controlling the complexity, cost, and scalability of microservice systems, detailing common misconceptions, sources of complexity, and concrete steps to define clear domain and service boundaries.

BackendDomain-Driven DesignMicroservices
0 likes · 26 min read
How DDD Tames Microservice Complexity: A Practical Guide
Alibaba Cloud Developer
Alibaba Cloud Developer
Apr 4, 2023 · Fundamentals

Why Solving Business Problems Is the True Role of Engineers – A Deep Dive into DDD

This article explains that an engineer's primary responsibility is to solve business problems, explores the challenges across a product's lifecycle, outlines software complexity dimensions, and demonstrates how Domain‑Driven Design, strategic and tactical patterns, and modern architectural styles like Hexagonal and CQRS can effectively manage that complexity.

CQRSHexagonal Architecturecomplexity management
0 likes · 31 min read
Why Solving Business Problems Is the True Role of Engineers – A Deep Dive into DDD
Architecture Digest
Architecture Digest
Mar 21, 2023 · Fundamentals

Understanding and Controlling Software System Complexity

The article explains the definition of complexity, analyzes its causes and how they manifest in software systems through scale and structure, and proposes domain‑driven design techniques such as bounded contexts, layered architecture, and change‑boxing to manage and reduce software complexity.

System Architecturecomplexity managementdesign principles
0 likes · 8 min read
Understanding and Controlling Software System Complexity
Architect's Guide
Architect's Guide
Dec 13, 2022 · Fundamentals

Complexity Must Exist Somewhere: Reflections on Software Architecture and Design

The article argues that complexity is an unavoidable aspect of software development that cannot be eliminated, only managed or transferred, and discusses how design choices, build‑tool trade‑offs, and knowledge models influence the way engineers cope with inevitable complexity.

Resilience EngineeringSoftware Architecturecomplexity management
0 likes · 7 min read
Complexity Must Exist Somewhere: Reflections on Software Architecture and Design
Sohu Tech Products
Sohu Tech Products
Nov 17, 2022 · Mobile Development

Applying MVP Architecture to Reduce Complexity in Android Search UI

This article explains how managing complexity by layering responsibilities and introducing an MVP architecture separates UI rendering from business logic in Android search features, illustrating the problems of high coupling and low cohesion with concrete Kotlin code examples and discussing AB testing and decorator patterns.

AndroidDesign PatternsMVP
0 likes · 18 min read
Applying MVP Architecture to Reduce Complexity in Android Search UI
Java High-Performance Architecture
Java High-Performance Architecture
Jul 11, 2021 · Fundamentals

Why Domain‑Driven Design Is the Secret Weapon for Tackling Complex Business Systems

This article explains how Domain‑Driven Design (DDD) helps teams manage rising business and technical complexity by promoting a ubiquitous language, strategic and tactical design, layered and hexagonal architectures, and seamless integration with microservices, enabling rapid adaptation and robust, maintainable systems.

CQRSDomain-Driven DesignMicroservices
0 likes · 42 min read
Why Domain‑Driven Design Is the Secret Weapon for Tackling Complex Business Systems
Alibaba Cloud Developer
Alibaba Cloud Developer
Jun 21, 2021 · Fundamentals

Mastering DDD in Supply Chain: Overcoming Complexity with Strategic Design

This article shares practical experiences and insights on applying Domain‑Driven Design to the supply‑chain product domain, explaining software complexity, core DDD concepts, layered architecture, bounded contexts, and implementation challenges, and offering concrete techniques for continuous model evolution.

Domain-Driven DesignSupply Chaincomplexity management
0 likes · 12 min read
Mastering DDD in Supply Chain: Overcoming Complexity with Strategic Design
IT Architects Alliance
IT Architects Alliance
Nov 27, 2020 · R&D Management

Why Do We Really Need Software Architecture? Uncovering the True Purpose

This article examines common misconceptions about software architecture, explains that its core purpose is to manage system complexity, offers practical guidance for identifying complexity hotspots, and presents a concrete university student‑management system case study to illustrate effective architectural decision‑making.

R&DSoftware ArchitectureSystem Design
0 likes · 11 min read
Why Do We Really Need Software Architecture? Uncovering the True Purpose
Alibaba Cloud Developer
Alibaba Cloud Developer
Sep 24, 2020 · Fundamentals

Mastering Complex Business Logic: Matrix Analysis & Polymorphic Design

This article explains how to replace tangled if‑else branches in complex business code by using multidimensional matrix analysis, polymorphic extensions, and code separation, providing practical examples, design guidelines, and a step‑by‑step methodology for clearer, more maintainable software architecture.

Domain ModelingPolymorphismbusiness logic
0 likes · 16 min read
Mastering Complex Business Logic: Matrix Analysis & Polymorphic Design