Leanpub Header

Skip to main content

Quality Tactics

Developing Quality-Driven Solution Strategies for Software Architectures

This book provides software architects with a comprehensive collection of quality tactics to improve the quality of software systems. It serves as a source of ideas for different situations and contexts and helps to achieve the required level of quality for stakeholders. With hundreds of proven tactics, it is an indispensable tool for designing high-quality software architectures.

This book is a translation into English of Qualitätstaktiken which was originally written in German

Minimum price

$17.99

$23.99

You pay

$23.99

Author earns

$19.19

Packages

Details
$

...Or Buy With Credits!

You can get credits with a paid monthly or annual Reader Membership, or you can buy them here.
PDF
EPUB
298
Pages
68,629Words
About

About

About the Book

In a world where software architecture makes the difference between success and failure of a project, a box of ideas full of suitable strategies is needed to create quality in software systems at an appropriate level. The book lists several hundred quality tactics for software architects, which raise the quality of software systems (and everything around them) to an appropriate level. It serves as a source of ideas for finding initial answers in a wide variety of situations and contexts in order to create exactly the right level of quality for relevant stakeholders that is required and can also be realized by the development team.

This book is a translation into English of Qualitätstaktiken which was originally written in German

Packages

Pick Your Package

All packages include the ebook in the following formats: PDF and EPUB

Book

Minimum price

Suggested price$23.99

$17.99

    Book with flashcards

    Minimum price

    Suggested price$25.99

    $19.99

    • Quality Tactics Cards
      This is the cards version of quality tactics containing the core information.

    Author

    About the Author

    Markus Harrer

    Markus is a software engineer who’s passionate about improving the way we do software development. He specializes in the analysis of software data such as source code, application performance data or version control repositories to show the underlying problems of the symptoms we face on the surface.

    Translations

    Translations

    Languages

    Contents

    Table of Contents

    Foreword

    1. Acknowledgments
    2. Use of AI
    3. About this edition

    About Quality Tactics

    Functional Suitability

    1. Requirements Analysis
    2. User Stories
    3. Prototyping
    4. Functional Tests
    5. User Acceptance Tests
    6. Definition of Done
    7. Product Owner
    8. Personas
    9. Continuous Feedback
    10. Direct Feedback
    11. Domain Experts
    12. On-Site Customer
    13. Iterative Development
    14. Feature Driven Development
    15. Domain Modeling
    16. Domain-Driven Design
    17. Bounded Contexts
    18. Domain-Aligned Architecture
    19. Business Process Modeling
    20. Standard Software
    21. Evolutionary Requirements Development
    22. Subject Matter Reviews
    23. Code Reviews
    24. Architecture Reviews
    25. Functional Debt Management
    26. Usability Tests
    27. Business Test Cases
    28. Domain Quiz
    29. Business Quality Scenarios
    30. Behavior-Driven Development (BDD)
    31. Acceptance Tests
    32. Domain-Specific Languages
    33. Domain Patterns
    34. Continuous Delivery
    35. Business Metrics
    36. Prototypes
    37. Tracer Bullets
    38. Functional Spike
    39. Customizing
    40. Decision Tables
    41. Business Process Automation
    42. Rule-Based Systems
    43. Business Event Processing
    44. Data Quality Checks
    45. Value Range Definition
    46. Domain-Based Authorization Concept
    47. Domain Data Versioning
    48. Microservices
    49. Datensparsamkeit
    50. Data Integration
    51. Data Enrichment
    52. Data Modeling
    53. Ubiquitous Language
    54. Impact Mapping
    55. Story Mapping
    56. Event Storming
    57. Specification by Example
    58. Requirements Traceability Matrix
    59. Functional Gap Analysis
    60. Design by Contract
    61. Regression Testing
    62. Feature Flags

    Usability

    1. User-Centered Design
    2. Usability Tests
    3. Wireframing
    4. Responsive Design
    5. Mobile First Design
    6. Consistent User Interface
    7. Style Guide
    8. Consistent Terminology
    9. Cognitive Load Minimization
    10. Intuitive Navigation
    11. Icons
    12. Visual Hierarchy
    13. Progressive Disclosure
    14. Plain Language
    15. Understandable Error Messages
    16. Real-time Input Validation
    17. Contextual Help
    18. Feedback
    19. Gamification
    20. Customizable User Interface
    21. Custom Views
    22. Adaptive Behavior
    23. Localization
    24. Performance Optimization
    25. Asynchronous Operations
    26. Single Page Application
    27. Keyboard Support
    28. Search Function
    29. Integrated Onboarding
    30. Interactive Tutorials
    31. Video Tutorials
    32. Frequently Asked Questions (FAQ)
    33. Feedback Mechanisms
    34. A/B Testing
    35. User Communities
    36. Personal Support
    37. Knowledge Base
    38. Accessibility Concept
    39. Assistive Technology Support
    40. Adjustable Font Sizes
    41. High Color Contrasts
    42. Subtitles and Transcripts
    43. Micro Interactions
    44. Form Design and Multi-Step Wizards
    45. Input Constraints and Defaults
    46. Confirmation Dialogs for Destructive Actions
    47. Undo and Redo
    48. Auto-Save
    49. Empty States and First-Use Guidance
    50. Drag-and-Drop Interaction
    51. Focus Management
    52. Dark Mode
    53. Design Tokens and Theming

    Reliability

    1. Error Handling
    2. Redundancy
    3. Exceptions
    4. Checklists
    5. Runbooks
    6. Error Logging
    7. Monitoring
    8. Monitoring System Utilization
    9. Boring Technologies
    10. Resilience
    11. Disaster Recovery
    12. On-Call Duty
    13. Load Balancing
    14. Chaos Engineering
    15. Elastic Resource Utilization
    16. Proactive Capacity Management
    17. Service Level Agreements
    18. Service Level Objectives
    19. Service Level Indicators
    20. Data Replication
    21. Failover Mechanisms
    22. Self-Monitoring and Diagnosis
    23. Isolation of Faulty Components
    24. Environment Parity
    25. Production Environment Maintenance
    26. Site Reliability Engineering (SRE)
    27. Graceful Degradation
    28. Circuit Breaker
    29. Bulkhead
    30. Self-Test
    31. Ping
    32. Heartbeat
    33. Transactions
    34. Retry
    35. Watchdog
    36. Smoke Testing
    37. Nonstop Forwarding
    38. Timestamping
    39. Status Monitoring
    40. Failover Cluster
    41. Redundant Data Storage
    42. Rollback Mechanisms
    43. Blue-Green Deployment
    44. Feature Toggles
    45. Rolling Updates
    46. Dark Launches
    47. Canary Releases
    48. Fault-Tolerant Data Structures
    49. Fault Containment
    50. Error Correction Codes
    51. Error Reporting and Analysis
    52. Checksums
    53. Redundant Checksums
    54. Continuous Data Verification
    55. Plausibility Checks
    56. Restore Points
    57. Monitoring System Integrity
    58. Load Testing
    59. Regular Backups
    60. Incident Management
    61. Root Cause Analysis
    62. High Availability Architectures
    63. Error Logs
    64. Data Integrity
    65. Secure Software
    66. Regular Maintenance and Updates
    67. Continuous Integration and Delivery
    68. Immutable Infrastructure
    69. Automated Tests
    70. Error Budgets
    71. Blameless Postmortems
    72. Health Check Endpoints
    73. Timeout Management
    74. Rate Limiting
    75. Load Shedding
    76. Idempotency Design
    77. Saga Pattern
    78. Dead Letter Queue
    79. Write-Ahead Logging

    Performance Efficiency

    1. Caching
    2. Load Balancing
    3. Asynchronous Processing
    4. Asynchronous Logging
    5. Performance Budgets
    6. Resource Usage Optimization
    7. Compression
    8. API Calls Optimization
    9. Efficient Algorithms
    10. Database Optimization
    11. NoSQL Databases
    12. Graph Databases
    13. Load Testing
    14. Stress Testing
    15. Profiling
    16. Resource Pooling
    17. Parallelization
    18. Distributed Processing
    19. Concurrency
    20. Pipelining
    21. Streaming
    22. Elastic Scaling
    23. Vertical Scaling
    24. Horizontal Scaling
    25. Content Delivery Networks
    26. Static Site Generation
    27. Server Side Rendering
    28. Edge Computing
    29. Client Side Rendering
    30. Batch Processing
    31. In-Memory Processing
    32. Lazy Loading
    33. Deferred Static Generation
    34. Lazy Evaluation
    35. Adaptive Streaming
    36. Progressive Loading
    37. Pagination
    38. Infinite Scrolling
    39. Virtualized Lists
    40. Approximation Methods
    41. Predictive Loading
    42. Predictive Prefetching
    43. Code Splitting
    44. Tree Shaking
    45. Specialized Hardware
    46. Continuous Performance Monitoring
    47. Performance Measurements
    48. Static Code Analysis
    49. Dynamic Programming
    50. Probabilistic Data Structures
    51. Vectorization
    52. Performance Modeling
    53. Transparent Performance Metrics
    54. Serverless Computing
    55. Reactive Programming
    56. Mass Test Data Generation
    57. Memory Hierarchy
    58. Distributed Caching
    59. Data Partitioning
    60. Data Deduplication
    61. Data Aggregation
    62. Materialized Views
    63. Sampling
    64. Data Archiving
    65. Data Stream Processing
    66. Optimistic UI Updates
    67. Capacity Planning
    68. Backpressure
    69. CQRS
    70. Read Replicas
    71. Denormalization
    72. Connection Pooling
    73. Serialization Optimization
    74. Image and Asset Optimization
    75. Cold Start Mitigation
    76. Distributed Tracing

    Security

    1. Encryption
    2. Authentication
    3. Two-Factor Authentication
    4. Authorization
    5. Authorization Concept
    6. Role-Based Access Control
    7. Least Privilege
    8. Logging and Monitoring
    9. Input Validation
    10. Secure Session Management
    11. Secure Configuration
    12. Security Community
    13. Security Policies for Users
    14. Security Policies for Development
    15. Security Training
    16. Raising User Awareness
    17. Network Segmentation
    18. Secure Software Development
    19. Security by Design
    20. Security Frameworks
    21. Security Certification
    22. Security Audits
    23. Risk Analysis
    24. Incident Response Measures
    25. Backup and Recovery
    26. Secure Protocols
    27. Datensparsamkeit
    28. Security Tests
    29. Threat Intelligence
    30. Red Teaming
    31. Security Architecture Analysis
    32. Digital Forensics
    33. Honeypots
    34. Security Metrics
    35. Threat Modeling
    36. Abuse Case Definition
    37. Security Requirements Definition
    38. Secure by Default
    39. Trust Boundaries
    40. Data Flow Control
    41. Cryptographic Methods
    42. Key Management
    43. Secure Coding Guidelines
    44. Static Code Analysis
    45. Dynamic Code Analysis
    46. Secure Programming Interfaces
    47. Prepared Statements
    48. Output Encoding
    49. Canonicalization
    50. Fuzz-Testing
    51. Negative Testing
    52. Security Regression Tests
    53. Security Tests by External Parties
    54. Penetration Tests
    55. System Hardening
    56. Patch Management
    57. Defense Lines
    58. Malware Protection
    59. Security Monitoring
    60. Endpoint Detection and Response
    61. Vulnerability Scans
    62. Third-Party Dependency Check
    63. Configuration Checks
    64. Emergency Drills
    65. Physical Security
    66. Security Culture
    67. Zero Trust Architecture
    68. API Security
    69. Secret Management
    70. Certificate Management
    71. Digital Signatures
    72. Federated Identity (OAuth/OIDC)
    73. Privacy by Design
    74. Web Application Firewall
    75. Supply Chain Security
    76. Audit Trail Management

    Maintainability

    1. Domain-Driven Design
    2. Separation of Concerns
    3. Modularization
    4. Bubble Context
    5. Modulith
    6. Layered Architecture
    7. Pattern Language
    8. Anti Corruption Layer
    9. Architecture Reviews
    10. Walking Skeleton
    11. Technical Spike
    12. Clean Code
    13. SOLID Principles
    14. Refactoring
    15. Refactoring Katas
    16. Static Code Analysis
    17. Code Reviews
    18. Strategic Code Deletion
    19. Deprecation Strategy
    20. Ensemble Programming
    21. Pair Programming
    22. Open Development Practices
    23. Code Conventions
    24. Code Metrics
    25. Code Quality Gates
    26. Automated Tests
    27. Integration Tests
    28. Test-Driven Development (TDD)
    29. Behavior-Driven Development (BDD)
    30. Code Coverage Analysis
    31. Dependency Injection
    32. Dependency Injection Container
    33. Dependency Management
    34. Continuous Integration
    35. Short Iteration Cycles
    36. Architecture Workshops
    37. Architecture Review Board
    38. Architecture Governance
    39. Architecture Conformity Analysis
    40. Fitness Functions
    41. Architecture Roadmap
    42. Version Control
    43. Feature Toggles
    44. Logging
    45. Knowledge Management System
    46. Architecture Documentation
    47. Architecture Decision Records (ADR)
    48. Living Documentation
    49. Docs as Code
    50. API-First Design
    51. API Documentation
    52. Code Comments
    53. Fluent Interfaces
    54. Mutation Testing
    55. Property-Based Testing
    56. Aspect-Oriented Programming (AOP)
    57. Code Generation
    58. Continuous Delivery
    59. Continuous Deployment
    60. Microservices
    61. Containerization
    62. Infrastructure as Code
    63. Loose Coupling
    64. High Cohesion
    65. Hexagonal Architecture
    66. Event-Driven Architecture
    67. Strangler Fig Pattern
    68. Observability
    69. Contract Testing
    70. Trunk-Based Development
    71. Evolutionary Database Design
    72. Technical Debt Management

    Compatibility

    1. Standardized Interfaces
    2. Protocol Abstraction
    3. Data Formats
    4. Versioning Scheme
    5. Compatibility Testing
    6. Cross-Version Testing
    7. Continuous Integration
    8. Abstraction
    9. Adapter
    10. Facades
    11. Anti Corruption Layer
    12. Bridges
    13. Mediator
    14. Containerization
    15. Virtualization
    16. Emulation
    17. Standardized Protocols
    18. Cross-Platform Serialization
    19. Data Format Conversion
    20. Version Control for Compatibility
    21. API Versioning Strategy
    22. Backward Compatibility
    23. Backward Compatible APIs
    24. Forward Compatibility
    25. Isolated Test Environments
    26. Simulation Environments
    27. Compatibility Documentation
    28. Compatibility Matrix
    29. Compatibility Testing by Users
    30. Interoperability Tests
    31. Consumer Driven Contracts
    32. Backward-Compatible Schema Migrations
    33. Backward Compatible Data Formats
    34. Browser Compatibility
    35. Compatibility as Error
    36. Compatibility Requirements
    37. Compatibility Standards
    38. Compatibility Governance
    39. Compatibility Measurement
    40. Compatibility Certification
    41. Data Strategy
    42. Data Ecosystems
    43. Semantic Versioning
    44. API Deprecation Policy
    45. Tolerant Reader Pattern
    46. Canonical Data Model
    47. Content Negotiation
    48. Schema Registry
    49. API Gateway
    50. Service Mesh
    51. Event-Driven Integration
    52. Idempotent Operations
    53. Feature Detection
    54. Dependency Pinning

    Portability

    1. Containerization
    2. Platform-Independent Programming Languages
    3. Externalized Configuration
    4. Portability Checklists
    5. Cross-Platform Frameworks
    6. Standardized Data Formats
    7. Microservices Architecture
    8. Cloud-Native Development
    9. Abstraction Layers
    10. Virtualization
    11. API-First Development
    12. Dependency Injection
    13. Cross-Platform Build Tools
    14. Cross-Platform UI Frameworks
    15. Database Abstraction
    16. Object-Relational Mapping (ORM)
    17. Platform-Independent Configuration Management
    18. Portable Binary Formats
    19. Environment Variables for Configuration
    20. Platform Independence
    21. Platform-Independent Scripting Languages
    22. Virtual Development Environments
    23. Platform-Independent Data Storage
    24. Standardized Deployment Scripts
    25. Platform-Independent Build Pipelines
    26. Abstracted File System Access
    27. Platform-Independent Logging Frameworks
    28. Virtual Networks
    29. Platform-Independent Test Frameworks
    30. Containerized Databases
    31. Cross-Platform Encryption Libraries
    32. Platform-Independent Time Zone Handling
    33. Cross-Platform Graphics Libraries
    34. Cross-Platform Build Scripts
    35. Cross-Platform Package Managers
    36. Progressive Web App
    37. Multi-Cloud Infrastructure as Code
    38. Multi-Architecture Container Builds
    39. WebAssembly Portability
    40. Feature Detection
    41. Data Export and Liberation
    42. Automated Migration Tools
    43. Clean Uninstallation

    Quality Illusions

    1. Skeleton Screens
    2. Shimmer Effect
    3. Fake Progress Bar
    4. Navigation Maze
    5. Pseudo-Personalization
    6. Phantom Notifications
    7. Simulated Real-Time Data
    8. Artificial Delays
    9. Pseudo-AI Interactions
    10. Phantom Functionality
    11. Artificial Learning Curve
    12. Fake Localization
    13. Pseudo-Multitasking
    14. Fake Datensparsamkeit
    15. Compliance Theater
    16. Placebo Security
    17. Vanity Metrics Dashboard
    18. Wizard of Oz Backend
    19. Fake Social Proof
    20. Confirmshaming
    21. Artificial Scarcity Indicators

    Concluding Remarks

    Get the free sample chapters

    Click the buttons to get the free sample in PDF or EPUB, or read the sample online here

    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...

    Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

    We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

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

    In fact, authors have earned over $14 million writing, 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