Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that's just for starters. B
Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis
β Scribed by Tornhill, Adam
- Publisher
- Pragmatic Programmers, LLC, The
- Year
- 2018
- Tongue
- English
- Leaves
- 265
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
Cover; Table of Contents; Acknowledgments; The World of Behavioral Code Analysis; Why You Should Read This Book; Who Is This Book For?; How Should You Read This Book?; How Do I Get Behavioral Data for My Code?; Online Resources; Part I-Prioritize and React to Technical Debt; 1. Why Technical Debt Isn't Technical; Questioning Technical Debt; The Perils of Quantifying Technical Debt; Mine Your Organization's Collective Intelligence; Prioritize Improvements Guided by Data; 2. Identify Code with High Interest Rates; Measure Interest Rates; Prioritize Technical Debt with Hotspots.
β¦ Table of Contents
Cover
Table of Contents
Acknowledgments
The World of Behavioral Code Analysis
Why You Should Read This Book
Who Is This Book For?
How Should You Read This Book?
How Do I Get Behavioral Data for My Code?
Online Resources
Part I-Prioritize and React to Technical Debt
1. Why Technical Debt Isn't Technical
Questioning Technical Debt
The Perils of Quantifying Technical Debt
Mine Your Organization's Collective Intelligence
Prioritize Improvements Guided by Data
2. Identify Code with High Interest Rates
Measure Interest Rates
Prioritize Technical Debt with Hotspots. Evaluate Hotspots with Complexity TrendsUse X-Rays to Get Deep Insights into Code
Escape the Technical-Debt Trap
Exercises
3. Coupling in Time: A Heuristic for the Concept of Surprise
Uncover Expensive Change Patterns
Detect Cochanging Files
The Dirty Secret of Copy-Paste
The Power of Language-Neutral Analyses
Exercises
4. Pay Off Your Technical Debt
Follow the Principle of Proximity
Refactor Congested Code with the Splinter Pattern
Build Temporary Tests as a Safety Net
Turn Hotspot Methods into Brain-Friendly Chunks
The Curse of a Successful System. 5. The Principles of Code AgeStabilize Code by Age
The Three Generations of Code
Refactor Your Package Structure
Scale from Files to Systems
Exercises
Part II-Work with Large Codebases and Organizations
6. Spot Your System's Tipping Point
Is Software Too Hard?
Divide and Conquer with Architectural Hotspots
Analyze Subsystems
Fight the Normalization of Deviance
Toward Team-Oriented Measures
Exercises
7. Beyond Conway's Law
Software Architecture Is About Making Choices
Measure Coordination Needs
Code Ownership and Diffusion of Responsibility
Analyze Operational Team Boundaries. Social Groups: The Flip Side to Conway's LawCombine Social and Technical Information
8. Toward Modular Monoliths through the Social View of Code
Dodge the Silver Bullet
Layered Architectures and the Cost of Consistency
Monolithic Alternatives: Use Case and Feature-Centric
Discover Bounded Contexts Through Change Patterns
The Perils of Feature Teams
Clean and Dirty Architectures
Exercises
9. Systems of Systems: Analyzing Multiple Repositories and Microservices
Analyze Code in Multiple Repositories
Compare Hotspots Across Repositories
Track Change Patterns in Distributed Systems. Measure Technical SprawlDistribution Won't Cure the Dependency Blues
Exercises
10. An Extra Team Member: Predictive and Proactive Analyses
Detect Deviating Evolutionary Patterns
Catch the Absence of Change
Guide On- and Offboarding with Social Data
Know the Biases and Workarounds for Behavioral Code Analysis
Your Code Is Still a Crime Scene
Exercises
A1. The Hazards of Productivity and Performance Metrics
Adaptive Behavior and the Destruction of a Data Source
The Situation Is Invisible in Code
A2. Code Maat: An Open Source Analysis Engine
Run Code Maat
Data Mining with Code Maat.
β¦ Subjects
Electronic books
π SIMILAR VOLUMES
<p>Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that's just for starters
FrontCover; Refactoring forSoftware DesignSmells; Copyright; Dedication; Contents; Foreword by Grady Booch; Foreword by Dr. StΓ©phane Ducasse; Preface; WHAT IS THIS BOOK ABOUT?; WHAT DOES THIS BOOK COVER?; WHO SHOULD READ THIS BOOK?; WHAT ARE THE PREREQUISITES FOR READING THIS BOOK?; HOW TO READ THIS
Awareness of design smells β indicators of common design problems β helps developers or software engineers understand mistakes made while designing, what design principles were overlooked or misapplied, and what principles need to be applied properly to address those smells through refactoring. Deve
<p>Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that's just for starters
The market-leading book "Applied Behavior Analysis for Teachers" gives you what you need to understand to use the principles and practices of applied behavior analysis in the classroom. The content is presented clearly, in a friendly, accessible-even fun-manner. The ninth edition uses classroom-base