InfoQ Homepage Software Craftsmanship Content on InfoQ
-
The Secret Sauce of Highly Productive Software Development
When Agile teams get stuck in the just-average Norming stage, rather than continuting to the exciting, high Performing stage of teamwork, sometimes they're suffering from an invisible "learning bottleneck" that stunts team performance. Agile practices require us to take time to reflect and learn - and a team that learns quickly succeeds.
-
Book Excerpt: Continuous Integration means Continuous Testing
Continuous Integration, a basic XP practice, has now become an accepted development best practice. InfoQ presents Chapter 6: Continuous Testing, with advice and examples for writing good tests to ensure system quality, from the book "Continuous Integration: Improving Software Quality and Reducing Risk," which aims help teams make CI a transparent "non-event".
-
Implementing Automated Governance for Coding Standards
Most development organizations of a significant size have some form of coding standards and best practices. Simply documenting these standards and keeping them up to date can be a significant challenge and enforcing them even harder. Our organization has found that enforcing coding standards and best practices in an automated fashion through our build process has been highly effective.
-
Agile, Architecture and the 5am Production Problem
Can refactoring and unit testing really create robust “working software” that survives the real world? In this story adapted from his book Release It! Michael Nygard contends that "abstractions leak": we need to attend to architecture, even in Agile projects, to guard ourselves against the 5AM failures that occur when foundational abstractions misbehave.
-
Unit-Testing XML
There are many occasions where software creates XML output: XML documents are used for data interchange between different applications, web application create (X)HTML output or respond to AJAX requests with XML, and this has to be tested as much as anything else. In this article, Stefan Bodewig explains how to perform those tests with the XMLUnit framework he has co-authored.
-
"Real Options" Underlie Agile Practices
Whether we realise it or not, "freedom to choose" is a principle underlying many Agile practices. By avoiding early commitments, we gain flexibility in the choices we make later. In this article, Chris Matts and Olav Maassen propose that an understanding of "Real Options" allows us to develop and refine new agile practices and take agile in directions it hasn't gone before.
-
Agile User Interface Development
The wider adoption of Agile software development has raised questions about how an approach that shuns up-front design and analysis can coexist with the emerging practice of user-centered design, which has a detailed user research and modeling phase before development begins. In this article Dave Churchville explores how the disciplines can be used together for an effective development process.
-
Case Study: Targeted Practice Adoption using Patterns
It's easy to forget what originally motivated us, once we're implementing Agile. Teams spin, trying to figure out which practices to start with, unsure which will have the biggest impact, or how they fit together. Amr Elssamadisy and John Mufarrige propose a customized adoption approach to help teams decide where to focus first - an alternative to adoption of pre-packaged methodologies.
-
Standish: Why were Project Failures Up and Cost Overruns Down in 1998?
Following InfoQ's August interview with Jim Johnson, creator of the CHAOS Chronicles on project failure, one important question remained: how does the Standish Group explain the amazing change in cost overrun from 189% in 1994 to 69% in 1998? In an excerpt from this month's CHAOS University newsletter, Johnson refers to events in 1996 that changed the complexion of project planning and execution.
-
Book Excerpt: Implementing Lean Software Development: From Concept to Cash
In 2003 Mary and Tom Poppendieck adapted the revolutionary principles of Lean manufacturing for software development. Their new book offers a blend of history, theory, and practice, drawing on their experience optimizing the software "value stream". They present the right questions to ask, the key issues to focus on, and techniques proven to work for those implementing a lean software process.
-
Interview: Jim Johnson of the Standish Group
Jim Johnson, founder and chairman of the Standish Group, took time out from his vacation to talk with InfoQ editor Deborah Hartmann about his research, and the role of Agile in changing the IT industry. Johnson is best known for creating the CHAOS Chronicles: 12 years of independent research on project performance, including data on over 50,000 completed IT projects.
-
Executive summary - An Adaptive Performance Management System
Traditional thinking has turned budgets into fixed performance contracts forcing managers at all levels to commit to specified financial outcomes, although many of the underlying variables are beyond their control. In this Cutter Executive Summary, Jim Highsmith offers an alternative for the adaptive organization: a project performance management system and a team performance management system.