The Latest

How to Fail Less and Enjoy More[magazine]

The shiniest software application in the world, shipped on time and under budget, is a failure if it doesn't make someone's job easier. Failures cost us customers and money. How can we design software that our customers want to use and that will reduce our cost of failure?

Frédéric Boulanger's picture Frédéric Boulanger
Advice for the New Leader[magazine]

As a new manager it's easy to fall into the trap of taking on more of your team's responsibilities than you should. Learn how to guide your team to success by stepping back and letting team members solve their own problems, learn from their mistakes, and most of all do what you hired them to do.

Michele Sliger's picture Michele Sliger
The Mission Is the Message[magazine]

A mission statement is supposed to guide and inspire the members of an organization as well as define the organization's purpose, the business it is in, and its responsibilities to its clients. Is your statement sending the right message?

Lee Copeland's picture Lee Copeland
Stop The Insanity! Using Root Cause Analysis to Avoid Repeating Your Mistakes[magazine]

We've all heard Einstein's definition of insanity, and it definitely holds true in software development. We "are" going to make mistakes in product development, but root-cause analysis can help us understand those mistakes and be proactive in not repeating them.

Ed Weller's picture Ed Weller
The Myth of Risk Management[magazine]

Risk management is an illusion. We must recognize that software projects are inherently risky and admit to ourselves that it's not the known problems that are going to cause our projects to fail. It's the risks that are unmentionable, uncontrollable, unquantifiable, or unknown that make projects crash and burn.

Pete McBreen's picture Pete McBreen
Agile Model-Driven Development[magazine]

Despite what you might have heard, modeling is an important part of agile software development. Find out how agile model-driven development fits into the overall agile development lifecycle in a lean and streamlined manner and can improve productivity on your team.

Scott W. Ambler's picture Scott W. Ambler
A ''D'' in Programming, Part 2[magazine]

In his final pitch for the D programming language, Chuck brings to "closure" (pun intended) a running example from previous Code Craft articles while exploring some powerful features of the D language.

Chuck Allison's picture Chuck Allison
Know Where Your Wheels Are[magazine]

Drawing from his experiences while learning to drive, Michael applies lessons he learned from written rules, experiential learning, and the advice of mentors to teaching new testers some valuable skills.

Michael Bolton's picture Michael Bolton
An Agile Approach to Release Management[article]

For teams practicing Agile Software development, value working software over other artifacts, a feature from the release plan is not complete until you can demonstrate it to your customer, ideally in a shippable state. Agile teams strive to have a working system ("potentially shippable") ready at the end of each iteration. Release Management should be easy for an ideal agile team, as agile teams, in theory, are ready to release at regular intervals, and the release management aspect is the customer saying, "Ship it!."

Eight Reasons Retrospectives Fail[article]

Retrospectives work for most teams, yet some teams are convinced that retrospectives will never work for them. When Esther Derby came across several of these teams for which retrospectives had failed, she questioned why and discovered eight common reasons for those failures. In this column, she details these eight reasons and offers solutions for each one.

Esther Derby's picture Esther Derby
Agile CMMI: KPIs for Agile Teams[article]

Today's Agile teams contend with challenges that few development visionaries could have imagined when the foundations for Agile were first put in place. In this article, we will examine Key Performance Indicators (KPIs) that Agile teams can use to achieve transparency into key development processes, and fulfill the customer requirements of our maturing world.

Roger N.  Dunn's picture Roger N. Dunn
Applying the Inverted Pyramid to Agile Development[article]

Modern day reporters tend to write their articles using what is known as the "inverted pyramid" style. They start with the most important information in the first sentence, followed by the next most important, and so on. This format not only gives the reader the biggest bang for his buck as he reads it also gives both the reporters and their editors huge flexibility in their uncertain and fast-changing environments. Clarke Ching shows how modern software development techniques use the same idea to give customers the best bang for their buck—in equally uncertain environments.

Clarke Ching's picture Clarke Ching
Testing Lessons Learned from Extreme Programmers[presentation]

One of the things testers often notice about Extreme Programming (XP) is that there is no defined role for testers on the team. Yet XP teams describe themselves as “test infected.” They practice Test-Driven Development (TDD), writing executable unit tests before writing the code...

Elisabeth Hendrickson, Quality Tree Software
When to Step Up, When to Step Back[magazine]

Leaders can stifle progress when they unnecessarily interfere with team processes. However, as a leader, you don't want your project to go over the cliff and fail miserably or deliver the wrong results either. There are times when leaders should stand back and let the team work things out for themselves—and other times when leaders should step up and really lead. 

Pollyanna Pixton's picture Pollyanna Pixton
The Accidental Complexity of Logic[magazine]

Much code complexity and no small number of program defects can be traced back to confusion over logical expressions and the expression of logic. Find out how you can get that complexity under control.

Kevlin Henney's picture Kevlin Henney


AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.