In this case study of a distributed agile team, the developers were in Cambridge, MA, the product owners were in San Francisco, the testers were in Bangalore, and the project manager was always flying somewhere, because the project manager was shared among several projects. The developers knew about timeboxed iterations, so they used timeboxes. Senior management had made the decision to fire all the local testers and buy cheaper tester time over the developers’ objections and move the testing to Bangalore.
In recent years within the object oriented and agile community, several approaches to software design and development have materialized and are in use by professional software developers. Test-Driven Development (TDD), Domain-Driven Design (DDD), Behavior-Driven Design (BDD) and Feature-Driven Design (FDD) are some of the more well known approaches. While these philosophies all imbibe the classic agile principles of an incremental and iterative mindset to software development, they subtly differ from each other.
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.
Better Software magazine editor Ken Whitaker highlights the contents of the July/August issue with two articles featuring mobile and wearable intelligent devices and the challenges they present to typical software development. Ken also provides information on ordering a print copy of Better Software.
Agile practices go a long way toward providing value to our customers. But in today's market, we must endeavor to adopt a more user-centered approach to create products our customers can't live without.
Extreme Programming (XP) takes practices that are known to be good and combines and applies them in a revolutionary way. Before you turn your team on to XP, check out the steps to take, and pitfalls to avoid, to make your project an "Xtreme" success.
In what ways should software be like a house? In a recent issue of STQE magazine, Technical Editor Brian Marick’s musings about the concept of “tinkerable software” generated some interesting discussion about the very nature of software design. This week’s column runs a portion of that piece so that our Sticky-minded readers can sink their thoughts into the concept.
DevOps and regulatory compliance are two critically important ingredients in today’s connected organizations. DevOps enables you to move quickly and respond to change in an era where change is increasing at an exponential rate with no sign of slowing down. Regulatory compliance ensures...
Leading a QA organization is not what it once was. Software and technology are exponentially more complex. The workforce is global. There are a variety of testing techniques and areas of focus. Tons of tools are available that help in a range of ways. Expectations of delivering quality...
The good news: Agile methods deliver superior results compared to traditional approaches. The bad news: For IT projects, mainstream agile methods-Scrum, Extreme Programming (XP), and Agile Modeling (AM)- provide only part of the overall solution. Agile IT projects require some time and effort for upfront planning at the start and activities for sophisticated deployment scenarios at the end. Additionally, most agile projects in large IT organizations cannot escape compliance with governance standards. Mark Lines describes and explores the realities of agile development in enterprise IT environments. Discover how IBM’s freely available Disciplined Agile Delivery (DAD) process framework combines common practices and strategies from mainstream agile methods to address the full delivery lifecycle-from project initiation to solution release into production.