InfoQ Homepage Quality Content on InfoQ
-
Agile Lessons from a Management Guru
Deming was one of a select group of thought leaders who have shaped modern management over the last century. He is best known for the impact he had on Japanese businesses with his teachings on design, manufacturing, sales and quality. The first three of Deming's fourteen points are examined in detail in the context of Agile software development.
-
Deployment is the Goal
When we write software, we're very good at getting requirements and turning them into code. To turn that beautiful code into working software we need to deploy and test it. Often, we fail to emphasize the latter as well as the former. Do you have a backlog of "code complete" software waiting to be deployed, tested, signed-off and made live?
-
Layered Architecture for Test Automation
In test automation, code involved in testing is not only test logic, but also a bunch of other supporting code, like URL concatenation, XML parsing, UI, etc. Test logic can be buried in this unrelated code, which has nothing to do with test logic itself, making test code hard to read and maintain. In this article, the layered architecture of test automation is presented to solve this problem.
-
Tips for Effective Software Reuse
Vijay Narayananoffers 10 practival tips on succeeding with systematic reuse of software components, based on his experience with multiple projects. The collection of tips is not intended to be exhaustive but will help developers and team leaders to appreciate the variety of strategies that one has to undertake in order to succeed with systematic reuse.
-
Book Excerpt: Agile Testing
This book is for testers on an agile team, test and quality assurance managers transitioning to agile development, and agile teams learning how to approach testing. The book introduces agile testing, how it's different from testing on a traditional team, and what makes agile testers different. The book contains dozens of stories about the various testing-related issues faced and resolved.
-
Book Excerpt and Review: Release It!
'Release It!: Design and Deploy Production-Ready Software' by Michael Nygard, which is nominated for a 2008 Jolt Award, discusses what it takes to make production-ready software and explains how this differs from feature-complete software. InfoQ spoke with Nygard about the areas that the book covers and some questions around how the book's philosophy fits in with concepts such as Agile.
-
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.
-
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.