Agile Software Development Hits Stride After Years of Evangelism
As a user, Microsoft has one of the largest TFS installations in the world and one reason the company tweaked the tool was because it needed to bring it to a point where it could support the software giant's own needs, Bjork said. The starting point with this in the 2012 release was to focus on a typical Agile team in the company—a team of four or five developers, and a couple of quality assurance people—and address their needs. However, before implementing any real Agile support in the toolset, Bjork said Microsoft developers trying to follow Agile practices used three primary tools: TFS, Excel and whiteboards with sticky notes. "It was so much that when we got started [building in Agile support], the first thing we built was a virtual task board to replace those sticky notes. We had a daily standup meeting around that board, and we wanted to bring that into the tool." As evidence that Microsoft has gone all in with Agile, Bjork told eWEEK the Visual Studio team will soon be moving into a new building on Microsoft's campus that has no offices, just shared open spaces and team rooms that are conducive to Agile development. Microsoft uses the traditional waterfall method of development as well as Scrum, other Agile variants and Kanban. The waterfall model is a sequential design process, often used in software development processes, in which progress is seen as flowing steadily downward—like a waterfall—through the phases of conception, initiation, analysis, design, construction, testing, production and maintenance."The Agile movement has arrived," Bjork said. "Agile is about ways to deliver value to your customers faster and better." Joel Semeniuk, executive vice president of Telerik's Agile Project Management Division, told eWEEK, "The goal of Agile is to remove waste from what you are doing." This could mean something as simple as eliminating the need to redo certain tasks. Telerik makes and sells Agile project management and testing tools. "The entire company is Agile-based," Semeniuk said. "We think, we live and we breathe Agile inside the company." However, Agile is not just a switch that can be turned on, he said. "Agile itself needs to be adaptive and incremental. … We support an Agile buffet table. We don't promote a shotgun approach to Agile." This sentiment is shared by service providers and consultants that deliver Agile products and services for hire. Theo Schlossnagle, founder and CEO of OmniTI, an IT services company, said his team is versed in Agile practices and brings Agile to the table in its engagements. However, he said, "We have a lot of projects going on, and we try not to shake the boat. If a client is using Agile, we go in and use what they have or we use the tools we are familiar with—like JIRA or the entire Atlassian suite, which can be used in Agile and waterfall projects. It's really about good project management more than anything else. You have to be able to be flexible." Flexibility is essential in Agile development, said Michael Rosenbaum, founder and CEO of Baltimore-based Catalyst IT Services, which provides Agile onshore solutions for customers. Rosenbaum told eWEEK, "You need to be able to use the principles of Agile but have flexibility. ... We are less ideological about methodology. If you can match with the culture of the client, you can decide the best sub-methodology for the situation you're dealing with." Indeed, Rosenbaum said he typically sees two primary benefits to Agile development: IT alignment, or the alignment of technical teams with the goals of the business and enabling the technical teams to have a bigger role in the business, and innovation. "Technology is increasingly at the core of what is driving enterprise business models, so there needs to be technical folks who can participate in the conversation of what the new revenue lines should be," he said.
"Traditional waterfall development methods meant unending project schedules and almost farcical rates of project failure," said Jake Sorofman, a Gartner analyst in a blog post entitled "Agile Isn't Just for Geeks Anymore." "Far more often than not, the deliverable at the end of a 12-month cycle wildly missed the original requirements—or the requirements had changed in the fullness of time."