agile

Articles

Fast, Automatic Builds: the Agile Heartbeat

I think that the person most affected by the introduction of agile or extreme programming techniques is not the software or quality assurance engineer, but the build manager. Agile techniques are a throwback to the age when developers were able to work on small projects in small teams. Each developer once again concentrates on small building blocks of code and integrates regularly with other developers to ensure that the overall software project is progressing. For developers, agile techniques are a natural fit because they reflect how developers like to work best: on small, manageable pieces of code with regular feedback. However, even though developers are working on small sections of code, their overall projects are now large and continually growing. And it's the large body of code that the build manager is expected to work with, not the manageable chunks. While daunting, this precipitous increase in builds can be managed by carefully implementing continuous integration and making fast, automatic builds the quot;heartbeatquot; of your agile development.

John Graham-Cumming's picture John Graham-Cumming
Lean Metrics for Agile Software Configuration Management

Taking an lean-agile slant on metrics for configuration management, the authors focus on ways to measure the value CM and SCM adds to the project and product and how to measure flow and waste.

The Agile-V Balanced Scorecard Metrics

Much has been written about the balanced scorecard methodology. Its goal is to measure desired outcomes and predict drivers of those outcomes. For a properly implemented agile team, this line-of-site measurement happens naturally and is controlled daily. This article suggests a simple and natural scorecard that provides accurate daily visibility of drivers and outcomes for an agile team focused on delivering business value to its clients.

Guy Beaver's picture Guy Beaver
Go For The Low Hanging Fruit!

As professionals, we are always looking for ways to improve the way we work. We encounter ideas and methods that we start to implement, but often we fail. Does this sound familiar to you? How should you avoid this? You should focus on implementing the changes that have the highest benefit versus effort ratio for you and your team, or as the title of this article puts it, the low hanging fruit. To facilitate this, we suggest the following steps: Make a change backlog, Find your low hanging fruit, Establish a raiding party, Establish a success story, Go to war, Celebrate! And Start over.

Odd Martin Solem
Distributed Scrum In Large Projects

This article discusses the highlights of a distributed Scrum project run by SirsiDynix (Provo, UT) and StarSoft Development Labs (Cambridge, MA and St. Petersburg, Russia). The project focused on the new implementation of platform and system architecture for a complex Integrated Library System, which is best compared to a vertical market ERP system with a public portal interface used by more than 200 million people.

Peter Vaihansky's picture Peter Vaihansky
Why You Need to Be Specific about Agile Practice Adoption

Amr Elssamadisy presents one way to share our knowledge that is more specific than full methodologies and processes, more general than war stories, and will help new agile adopters get beyond the mantra "It depends!"

Amr Elssamadisy's picture Amr Elssamadisy
The Whole Product

It's easy to split user-experience experts and software architects into different categories and still grant them equal importance; the former deals with the façade of the software while the latter deals with the workings beneath the surface. This separate, but equal attitude changed for Jeff Patton after attending a workshop in which his eyes opened to an epiphany of holism in software development. From this enlightened moment, Jeff realized a way software development could change for the better.

Jeff Patton's picture Jeff Patton
Scaling Agile Development via Architecture

Every system has an architecture, even systems developed using agile methodologies. Whether you attempt to define that architecture up front in detail or whether it emerges over time is up to you. My experience is that most agile teams follow a strategy somewhere between these two extremes. That strategy, combined with proving your architectural ideas as soon as possible through working code. This article summarizes a collection of strategies for addressing architectural concerns on agile projects and discusses how such strategies can be applied to scale agile methods to large development efforts.

 

Scott W. Ambler's picture Scott W. Ambler
Managing Offshore XP Teams: Organizational Models and Tools

The essence of Extreme Programming (XP) is making the customer a part of the team who works very closely with the developers, ideally communicating on a daily basis. However, what about a situation where your development team is offshore? Is it possible to have the best of both worlds, realizing the gains of offshoring without losing the benefits of XP? How do you keep the momentum and the communication flow going, at the same time ensuring seamless integration of the deliverables into the customer's production environment at the XP pace?

Peter Vaihansky's picture Peter Vaihansky
Introducing XP Turns Waterfall Project Around

Conventional wisdom is that complex projects involving large groups of engineers can not benefit from the application of Agile techniques. Certain Agile practices, when properly used, can benefit even relatively large development projects with large teams. What's even more interesting, these practices can be introduced in "mid-stream" with little preparation to large teams of "old school" developers. These developers may initially resist the methodology, but the Agile practices still win people over and bring tremendous results in productivity, product quality, and team morale in a very short period of time.  

Peter Vaihansky's picture Peter Vaihansky

Pages

AgileConnection is a TechWell community.

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