Articles by ThoughtWorkers



Product Road-Mapping using Agile Principles, Anupam Kundu and Tiffany Lentz alphaIT journal, 8 February 2010
This paper outlines a modest agile-enabled framework adopted by the product wing of the digital division of a publishing house to charter their product roadmap and simultaneously enable their project team with the “big picture”. We adopted highly collaborative, feedback dependent, iterative and time boxed activities geared to developing and maintaining a rapidly evolving product roadmap. This article provides the tools to enable medium sized practicing agile teams and their product owner(s) to steer their product portfolio in the right direction.

Series on Evolutionary Architecture and Emergent Design, Neal Ford, IBM Developer Network, March 2009
This series aims to provide a fresh perspective on the often-discussed but elusive concepts of software architecture and design. Through concrete examples, Neal Ford gives you a solid grounding in the agile practices of evolutionary architecture and emergent design. By deferring important architectural and design decisions until the last responsible moment, you can prevent unnecessary complexity from undermining your software projects.

Behaviour-Driven Database Development, Pramod Sadalage, Methods and Tools, Winter 2008
The key principles of Behaviour Driven Development can be applied to database development. The database lends itself very well to the new way of thinking in the BDD space, where the behaviour of the objects is considered. This article shows how the BDD technique can be applied to database development and how this technique can be used to develop and design databases in an iterative and incremental way.

Biohazard: Engineering the Change Virus, Pat Kua, October 2008
We think that agile software development is currently the best way of developing software, yet it hasn’t been adopted by all software companies in the world. Why? The answer – it’s really hard for people to fully embrace change. This material includes: investigating the sources of resistance to Agile practices, patterns for helping others to embrace change, influence and different styles of influencing, case studies and where change patterns can fail.

Better Best Practices, Dan North, InfoQ, February 2008
Organisations often introduce Best Practices as part of a change program or quality initiative. These can take a number of forms, from cheat sheets to full-blown consultant-led methodologies, complete with the requisite auditing and accreditation. In this article, Dan North shows how best practices can not only fail to help, but even have a severe negative impact on your top performers.

A leaner start: Reducing team set up times, Pat Kua, InfoQ, November 2007
Pat Kua provides insight into oboarding strategies to help new members to agile teams become fully effective, contributing members quickly.

An interview about Guerilla SOA, Jim Webber, InfoQ, August 2007
Jim Webber is interviewed by Stephan Tilkov on his approach to SOA, a lightweight, hype-free technique he calls Guerilla SOA.

Maturing Best Practices: build and collaboration, Ross Pettit, Agile Journal, August 2007
Taking a staged, realistic approach to implementing Agile best practices for the development team.

The Agile Organisation, Ross Pettit, Agile Journal, June 2007
This article discusses the entire organisations' adjustment to Agile, necessary to realise the full benefits of an Agile approach to IT.

Adjusting Agile and Adjusting to Agile, Ross Pettit, Agile Journal, May 2007
This article explores the conscious effort to fit and mature best practices in an environment in shape an Agile process that delivers value. It considers: What will provide sufficient completion integrity for the work we do? What will create meaningful transparency of the work being done? What are the underlying organisational constraints that will impede changes in the way work is done?

Agile Development for delivering products on target, Summary of talks by Neal Ford and Venkat Subramaniam, The Server Side, March 2007
One aspect of creating quality software is delivering a product that meets users' needs and expectations. To do that, you must use an Agile development methodology; because those methodologies allow continuous communication with users during the entire development life-cycle.

Event Patterns (video), by Ian Cartwright, QCon, March 2007
Ian Cartwright presents some of his work (developed with Martin Fowler) on Event Patterns, including: Event Sourcing, Event Collaboration, Parallel Model, and Retroactive Event. These patterns can be used i scenarios where a sequence of domain model changes may need to be recorded, reversed, corrected, or simply observed.

Evaluating Options in Ruby, Jay Fields, InfoQ, Feb 2007
This article considers one of Ruby's strengths, the ability to evaluate a string or block of code, focussing on eval, instance_eval, and class_eval .

Simple Java and DotNet SOA interoperability by Ian Cartwright and Paul Hammant, InfoQ , May 2006
A discussion on REST and a simple, low dependency solution to interop between Java and .Net over the wire. This article shows how simple technology coupled with a document-centric approach can be used to deliver valuable business services without the use of proprietary middle-ware or the complexities of the web services stack. We take our inspiration from the REST architectural style, and the ability to move XML over HTTP.

Enterprise Development Trends by Neal Ford, SDA Asia, December 2005
This article investigates three trends shaping enterprise computing today. It provides background and insight into the future of platform consolidation, dynamic languages, and service-oriented architectures. These trends will affect your daily job sooner than you think.

Using the Ruby Development Tools Plug-in for Eclipse by Neal Ford, IBM developerWorks, October 2005
This article introduces using the Ruby Development Tools (RDT) plug-in for Eclipse, which allows Eclipse to become a first-rate Ruby development environment. Ruby developers who want to learn how to use the rich infrastructure of the Eclipse community to support their language will benefit, as will Java™ developers who are interested in using Ruby.

Enterprise Architects Join the Team by Rebecca Parsons, IEEE Software, Vol. 22 No. 5, September/October 2005
IT organisations are starting to recognise that having some level of enterprise standards can remove needless complexity from application portfolios and help enable the responsiveness that businesses demand.

Experts, Craftsmen, and Ignorance by Dave Hoover, StickyMinds, August 2005
Dave Hoover explains how to build confidence by showing the people who rely on you that delivering software involves a learning process. Then allow them to watch you grow.

Aspect-Oriented Programming by Matthew Deiters, MSDN, August 2005
A practical look at aspect-oriented programming demonstrating how to dynamically extend behaviour in Web-service client applications.

Open Source Middleware: Ready for Prime Time? by Ian Cartwright and Gregor Hohpe, Cutter Consortium Executive Update, July 2005
Open source software has captured enormous mindshare among not only developers but also consumers and enterprise users. This Executive Update focuses on integration middleware, a relatively recent development that has quickly become an integral part of almost any software infrastructure.

It's All in How You Slice It by Jeff Patton, Better Software, January 2005
Design your project in working layers to avoid half-baked incremental releases.

Test-Driven Development Isn't Testing by Jeff Patton, Better Software, January 2005
There's a common misconception that test-driven development is a testing technique when in fact it's a design technique. In this week's column, Jeff Patton explains this and how you might use your unit tests to explicitly guide and describe the design of your software.

XP: Lessons From the Front Lines by Fred George, SD Times, August 2004
Applying Extreme Programming to real programmers, real sponsors and real deadlines.

Distributed Agile Development and the Death of Distance by Matthew Simons, Cutter Consortium Executive Update, May 2004
Distributed Agile development marks a paradigm shift in development outsourcing. Learning to practice distributed Agile development can make the world seem like a very small place for your software development teams.

Value, Power and Agility by Dave Hoover, StickyMinds, May 2004
This article attempts to generate a greater awareness of power distributions and value conflicts among Agile teams and their parent organisations.

Components and the World of Chaos by Rebecca Parsons, IEEE Software, May/June 2003
Why chaos theory suggests that component assembly may not be as easy as it's cracked up to be.

ThoughtWorks is a global IT consultancy. We deliver bespoke applications, no-nonsense consulting and help organisations become agile.

ThoughtWorks Technologies (India) Pvt Ltd, 2nd Floor, Tower C, Corporate Block, Diamond District, Airport Road, Bangalore - 560 008, India
T +91 80 2508 9572,3,4 F +91 80 2508 9584 E info-in@thoughtworks.com


Perspectives



Thought Provoking

We would like to share our latest thinking with you.


[ ]