|
An Agile Approach to Release Management 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!."
|
|
|
Agile CMMI: KPIs for Agile Teams 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.
|
|
|
Applying the Inverted Pyramid to Agile Development 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.
|
|
|
The Trouble With Retrospectives Within the Agile community retrospectives are widely seen as the mechanism for promoting learning and change. But many teams fail to hold retrospectives, or fail to act on the findings, thus they fail to learn and improve. If we are going to fix this we need to change our approach to retrospectives, and find new ways to learn and create change.
|
|
|
Architectural Envisioning on Agile Projects One of the common misperceptions with agile software development is that agilists don't "do architecture." This completely ignores the 11th principle of the Agile Manifesto which states that the best architectures evolve over time. In this article Scott Ambler overviews an agile practice called "architecture envisioning" which enables you to gain the value from modeling without the cost of needless documentation.
|
|
|
An Uncomfortable Truth about Agile Testing One characteristic of agile development is continuous involvement from testers throughout the process. Testers have a hard and busy job. Jeff has finally starting to understand why testing in agile development is fundamentally different.
|
|
|
Is Collaboration the Right Way to Work? Do you manage a team or a group? How can you tell the difference, and is it important to differentiate the two? In this column, Esther Derby explains that identifying your associates as one or the other is paramount to how they should be managed.
|
|
|
How to Make Agile Reviews Effective In some organizations, reviews are a valuable aspect of the software lifecycle. In others, they are a necessary evil tainted with political bureaucracy and big egos. Suboptimal reviews conducted late in the lifecycle are often misguided due to few objective guidelines that help guide the review process. When used throughout the development lifecycle, code and design quality metrics are valuable inputs to the review process.
|
|
|
The Neglected Practice of Iteration In this week's column, Jeff Patton sends a reminder that software developers who neglect the practices of "iteration" and "incremental" will get caught either delivering poor quality software or delaying schedules in order to make time to iterate. We kick ourselves, or others, for not "getting [software] right up front" when we all know that the hardest part of software development is figuring out what to build. But there's hope, and it comes in the form of prototypes and frequent iterations.
|
|
|
Setting Up Global Agile Teams There are no best practices for creating a productive, global development organization, just a few good ideas to think about and tailor around your particular objectives. Consider three universal issues every organization must grapple with to make a global agile team successful: data considerations, communications needs, and a company's agile readiness. How you handle each of these issues will vary widely, and there is no one-size-fits-all solution for every organization.
|
|