Here is our monthly selection of knowledge on programming, software testing and project management. This month you will find some interesting information and opinions about Agile bullshit, teamwork complexity, unit testing, feature creep, Agile psychology, software architecture, testing frameworks, model-based engineering and using your browser for test automation.
Web site: The Agile Bullshit Generator
Text: Software Entropy Explained: Causes, Effects, and Remedies
Text: The Stages of Teamwork Complexity
Text: Unit testing private methods
Text: Feature Creep Isn’t the Real Problem
Text: Antimatter Evo
Text: What to Expect From Agile
Text: Aligning Projects with Business Goals
Text: How to Detect Agile Bullshit
Video: Agile Psychology of Teams & Individuals
Video: Mutation Testing: Making Mutants Work for You
Video: Programming with Objects and Functions and More
Video: Software Architecture: Technical, Business, and Social Influences
Video: Death by User Stories
Video: Architecture of Testing Frameworks
Book Review: Codemanship TDD. Like many Agile approaches, the principles of Test-Driven-Development (TDD) and its Red-Green-Refactor cycle seem deceptively simple. As often, things are more complicated in practice and this is why Jason Gorman wrote a 200 pages book about TDD that explores the multiples dimensions of this approach.
Tools: Capella is an open source solution for Model-Based Systems Engineering. Capella provides methodological guidance, intuitive model editing, and viewing capabilities for systems, software and hardware architects. It is based on Arcadia, a system engineering method based on the use of models, with a focus on the collaborative definition, evaluation and exploitation of its architecture.
Tools: Wildfire is a free extension for Chrome and Firefox that allows you to record your actions on the pages you visit, then replay those actions using a simulator. When actions are recorded or simulated, it produces a log which can be reviewed. You can then use the Workflow Editor to manipulate the behavior of the simulation.