Impediments to agile development remain

Recently, David Rubinstein of the SD Times and I had a great conversation about the challenges companies face in adopting agile practices.  Part of his article is reproduced below and the full article may be viewed here.

The notion of agile software development has gained near-universal mind share in the eight years since the Agile Manifesto was penned. Meanwhile, adoption keeps ramping up as more organizations look to reap the benefits of getting usable software on time and within budget.

The idea of waterfall development—months of requirements gathering and writing, setting the project scope and estimating its cost and time to completion, writing the code, then throwing it over the wall to QA to make sure it works and does what is intended—seems so, well, last century.

Yet even knowing all this, organizations that are ready to move to agile—or think they are ready to move to agile—still find many impediments and pitfalls on the road to this different approach to software development.

Part of the problem lies with the expectations organizations have when they decide to adopt agile practices. “People tend to dive in with both feet and set up camps with opinions and views” of what they should gain from agile, said Alex Adamopoulos, founder of boutique agile consultancy Emergn.

“The expectations are unrealistic. Years ago, there was a silver bullet mentality toward agile. We spend a lot of time deprogramming people. You can’t have agile purists. You should apply it in an organization where it makes sense.”

The Minimum Defines the Value

I recently had the pleasure of being interviewed by David Rubinstein for the SD Times:

Minimum market feature set. That defines the baseline to satisfy the needs of a project. The automotive industry uses this to create a base model of a car, and then provides a list of options that can be added on to customize the car and give it more capabilities. This is true for software development as well.

But a potential pitfall, according to Alex Adamopoulos of agile project management company Emergn, is that as iterative development facilitates change throughout the process, the thinking is that the project must be delivered “fully loaded.” But understanding the minimum market feature set, he said, actually defines the true business value of the project, and eliminates waste of both manpower and money to deliver the finished product.

The full article may be viewed here, Short Takes: November 15, 2009.

Agile, Not Just a Development Approach

I recently had the pleasure of being interviewed by Dan Mondello for IT Knowledge Exchange‘s Software Quality Insights blog:

“For me, agile goes far beyond being a software development methodology. I view it as a culture and a transformation program,” Alex Adamopoulos founder and CEO of emergn, told me recently. This point of view led to emergn’s creation of AgilePMO, a unified sourcing framework for companies using agile principles released last week. AgilePMO’s focus on organizational issues as well as integration and implementation differs from traditional templates and kick the box contracts, he said.

Launched early this year, emergn is a sourcing strategy and agile enablement consultancy firm located in New York City. The company’s focus was born out of Adamopoulos’ 20 years in IT services, where he continuously saw companies executing an ad hoc, mishmash of business management strategies. He saw in Agile not only a development methodology but a template for bringing more adaptability into business processes.

“We are not strictly using agile guidelines just for software development. We have also focused our impact on organizations that have struggling IT portfolio management,” Adamopoulos said. “The whole idea in introducing agilePMO is to introduce an accelerated, more efficient and measurable way to run sourcing.”

AgilePMO is designed for a short implementation timeline. Adamopoulos stressed that the framework is set up to run after implementation, rather than requiring years of consultancy contracts. The goal of Agile and emergn, he said, is to get development and business processes moving along quickly and well without taking too much precious company time and revenue.

AgilePMO can be used by a broad array of development organizations, Adamopoulos said, but early adopters have been large enterprises. Moving to agile reshapes a company’s sourcing and other strategies, and “those are pretty important programs and ones that aren’t taken lightly,” he said. At this point, “we’ve found that the larger companies are more ready to do those than the smaller players.”

The full article may be viewed here, Agile not just a development approach, emergn CEO says.

What Does ‘Business Value’ Mean in Plain English?

This post was written and contributed to Global Services:

The VP of the business asks IT: “When is the new site going to be live with the advanced search function we discussed?”

IT answers: “That function is on the backlog as we discussed but there’s so much that has to get done before it is operational but don’t worry, we’ll have the site in stages starting in a few weeks. The bells and whistles will come at the end of the project … probably three or four months from now based on the current backlog we originally defined with you and your team.”

VP: “But 50 percent of my department’s revenue comes from people buying our market forecast reports that are buried on the site! If they can’t find the reports, revenue is going to take a big hit.”

IT: “Ok, so that search function isn’t just a bell or whistle for sales then, is it? Ok, we’ll make sure it get’s developed before the non-revenue generating features of the site.”

This discussion led to a facilitated meeting where the business leaders and the project team worked through each item on their backlog and assigned values in an effort to prioritize the backlog not just by perceived order of importance but also by the expected economic and business impact generated by each feature and/or function.

There are proven best practices and tools in teach both customers and service providers how to incorporate these steps and build value-driven business cases for what they are attempting to spend their budgets on but too often these steps are neglected.

There are some governing principles when discussing business value:

  • The proposed technical document (a scope of work, estimation, requirements definition or product backlog) should be translated into an itemized list of business driven features and functions
  • That list should be worked on by the customer and the service provider team to prioritize it first on perceived value and then by numerical (economic) value as it relates to financially impacting the business
  • There must be a mutual understanding and baseline established upfront as to what point in the project the software is usable to go live. It is typically at this point where things can get sticky and where the experience of someone who has operated in these trenches can be invaluable.

There is more to this than these simplistic steps but keeping the conversation simple is necessary before delving into a larger more complex discussion, which this can become. The bottom line is that the discussion of business value needs to be brought into every corner of the outsourcing discussion. Not only is today’s economic climate in support of such a dialogue but it will also help both customers and service providers build a more solid foundation for the objectives they are both trying to achieve.

Cut Costs, Keep Value (Chief Executive Magazine)

I’ve just been included in an article in Chief Executive Magazine:

‘Cost is a prime motivator for many clients, but with the economy how it is we must emphasize the importance of value over cost,’ says
Alex Adamopoulos, executive vice president of software outsourcing company Exigen Services. ‘Many large companies are re-evaluating their global sourcing strategy and choosing who they work with on the basis of value creation.’

The full article can be viewed here.

Vetting cloud providers is tricky business (InfoWorld)

Had a great conversation recently about choosing cloud vendors, for a blog post in Ephraim Schwartz’s Reality Check:

Sure, you can look at what level of CMMI (Capability Maturity Model Integration) certification their software and services have been certified. But as Adamopoulos warns, even organizations at Level 5 — the highest level of certification — still have project failures. Having a CMMI best-practices framework in place doesn’t mean there are people at the vendor with the discipline to keep it up on an ongoing basis.

“You can have the framework, but when you start bringing in new elements and people, how is it being all tied together, and how is it monitored?” Adamopoulos asks.

His suggestion? If you have a relationship with a company upstream from you, you might want to piggyback on their system.

“Consolidation will bring solutions to the front end faster. Sometimes it’s not realistic to bake your own.”

Agile Algorithms (Projects@Work)

I recently had the pleasure of being interviewed by Kathleen Ryan O’Connor for an article in Projects@Work: Agile Algoirthms.

As Alex Adamopoulos, Exigen’s executive vice president for global services has said, customers are demanding business value earlier in a project and Agile allows them to see working software more frequently so changes can be corrected in real time.

The full article also features Intronis CEO Sam Gutmann, and can be viewed here.

Will the Weight of EMRs Break IT?

This post was written and contributed to the Politics of Healthcare blog at Healthcare POV:

Pulling together as a nation to overhaul an aging, often paper-based medical records system is long overdue. We can all agree it will create jobs, pump money into various industries and make managing a fast-growing patient base much easier. With great potential comes great risk — in this case, risk of stretching an ailing health care IT industry to the breaking point. Legacy systems abound, support for decade’s-old central infrastructure no longer exists, and facilities must consider increased privacy and regulatory measures.

Clearly, outsourcing is the most attractive solution within an economy of reduced IT budgets — a solution that can be greatly improved for the betterment of all involved with the planning and building of EMRs. As a theme, “risk” often starts with traditional outsourcing arrangements emphasizing getting to the lowest bid…as opposed to getting to the best business value. The health care IT industry needs this to change. In my opinion, this change should follow a few basic guidelines.

1) Outsourcing should generate a favorable return. The goal of an outsourcing investment should be achieving a specific business result — not simply buying cheaper labor. Project risks and execution should be shared responsibilities between you and your outsourcing partner. If you structure the outsourcing partnership correctly, risk reduction happens automatically — thereby reducing your costs.

2) Methodology matters. Demand that the specific methodology of outsourcing and project execution is an explicit part of your vendor’s business proposition. Project governance should be the responsibility of the vendor. Make sure that methodology and governance address the risks of project execution, as well as unique risks of distributed development.

3) Success is a joint responsibility. Success is a function of the time and effort invested into the project by the stakeholders (engineering, IT and business users). The absolute key to success is frequent and timely feedback by the all the stakeholders, particularly on the business side. Whenever possible, clearly identify the decision-making criteria in advance so that the team can work most effectively to meet your business goals.

4) Things will change. Within any project, change is inevitable. Make sure the business model and the methodology are nimble enough to absorb business change, and that the sign-off approving project change is held in the relevant hands. To ensure maximum project return, reassess and reconfirm priorities periodically during the project as part of the project execution methodology.

5) Align end to end. Because outsourced projects rely on resources who are working for a different company, there is the potential for staff changes to affect your intellectual property and project control. The best way to minimize this risk is to make sure your outsourcing business model aligns you and your outsourcing vendor all the way from overall business goals down to the staff level. Specifically, verify that the HR and compensation strategy of the vendor aligns with your project goals.

The health care technology industry has already asked IT departments to do more with less, reduce staff and stretch existing legacy systems far beyond their original life expectancy. Under the normal circumstances of a down economy this is a risk organizations are forced to take. The mandated EMR system implementation compounds this situation and will push outsourcing practices to change.

Globalization & Agile

This post was written and contributed to Global Services:

The outsourcing industry is filled with key phrases and terms designed to describe it’s challenges, benefits and future direction. Recently the term “globalization” is resurfacing over and over as we are entering, what many believe, is the next era of the outsourcing market where the requirement to delivery services consistently on a global scale will be the primary decision making criteria for many companies that see outsourcing as a fundamental component of their IT and business strategy.

In the market now there are some important trends taking shape. Multi-national companies are initiating transformation and change programs around their sourcing strategy to develop an approach that is more efficient, streamlined and accountable. This involves several concurrent streams of work that include not only the typical vendor-management pieces (contract management, closed-loop RFP/Q, PMO/VMO) that many associate with the phrase sourcing strategy but also a focus on additional core areas that will drive a standardized approach to several other, much needed, components that support the globalization of outsourcing including; internal sourcing programs, business case and value creation to quantify the decisions made, human capital and competency, advanced solution and expansion development and enterprise adoption of methodology.

The list is not endless but it is larger and those that will undertake such an effort need to ensure they have the help and experience alongside them to do it well. Another important trend is the adoption of Agile as a software development methodology. Why is this important or relevant as it relates to the much larger topic of globalization? If you study the many successful implementations of Agile within enterprises just over the last twenty four months you can pull out several key trends that read much like a benefit list of globalization. Further, if you look at Gartner’s definition of Global Delivery Model, you will arrive at the same conclusion.

Agile is much more than just a way to make software. The guiding principles that underpin this methodology are having a significant impact on culture and company alike. The age old problem of aligning IT and the business is actually being addressed by the adoption of Agile in the enterprise. Clients I’ve worked with around the globe that are categorized in the Fortune 100 space are all moving past fiction into fact when it comes to tangible benefits around the use of Agile in their environments and many can now see, without hesitation, how this one change will help drive their global teams to reach much higher levels of productivity.

Let’s complete this discussion in practical terms. In the world of outsourcing we mean several things when we attach the term globalization to it. Some of the things we are thinking about and referencing when we say it include faster time-to-market, better cost management, improved quality and delivery assurance, and measurable performance and business value all centered around consistent and standardized process.

When we look at the key principles of Agile we find both an approach and a structure in support of globalization.

Key Agile Principles

How they support Globalization

Collaboration

and

Cooperation

The nature of this methodology is indeed a higher level of collaboration and communication across teams, whether they are local, dispersed within the building or located around the globe. Agile is disruptive and often requires changes in the behavior of teams and people yet it drives the formation of relationships, problem resolution, decision making, consistent delivery of software and time-to-market faster than any other approach.

IT & Business Alignment

Iterative development allows both IT and the Business to see working software sooner thus being able to adapt changes in support of market conditions and trends, validate initial requirements and get to a mutually agreed upon business value sooner. Agile continues to be instrumental in helping these two organizations communicate at a much higher level with better results.

Risk Mitigation

The process of testing early and often within Agile projects that deliver incremental releases provides an integrated approach to identify problems very early and get to immediate resolution. With automated testing, test driven development (XP) and involvement from QA teams, risk is controlled, managed and communicated continuously

Financial Management

Managing costs is only one side of the project objective. The other is determining a measurable business value on what you are actually making. Companies looking to implement a globalization strategy around software delivery need to pay attention to this principle. There are strategies for introducing methods to determine business value and in turn those strategies drive not only management of costs, but also how contracts are managed between company and service providers and what determines agreement on global delivery

When we dig deeper we will find other driving principles that support this correlation but settling on this list alone provides obvious benefits. Any organization, which is serious about their sourcing approach and realizes that a global, more integrated process is key needs to construct a story board of what these pieces need to look like. Globalization, like many other initiatives of this magnitude, are often engaged with a “boil the ocean” attitude, meaning that it is either approached in too large of a strategy manner without tangible parts or it is too theoretical and companies are not sure exactly where to start.

This is a big topic for another time but on the specific area of software development, Agile is no longer a silver bullet, a passing trend or a fad waiting for the next best thing. It is a real, practical, performance and measured program that drives exactly the change global companies need in a time like this.

Agile methodology benefits software outsourcing providers (Software Quality News)

From Software Quality News: Agile methodology benefits software outsourcing providers

More and more, customers are requesting to see business value earlier in a project, according to Alex Adamopoulos, chief operating officer of Exigen Services, a San Francisco-based software outsourcing services company with multiple global delivery centers. With agile methodology, he said, “[customers are] seeing working software more frequently, touching the features, so they can pinpoint immediately if a feature needs to be corrected or needs to be revised.”

With the waterfall methodology, he said, “you don’t provide views to the end user for longer periods of time.”

Exigen follows a variety of methodologies depending on client needs, but Adamopoulos said agile is the predominant approach. “We quickly realized the value of a development methodology that provided near-immediate results for clients, which is something lacking in the outsourcing world.”

Traditionally, he said, the outsourcer and the customer would sign a contract and then for every added feature or change, the client would receive a change request form, tacking most costs onto the project. “Agile allows [us], through iterative development, to flag those changes earlier in the lifecycle so changes won’t occur as often, and you’re building something more likely to be of value to the client,” Adamopoulos said.

“We practice exchange requests, not change requests. Customers can exchange priorities of what they want done,” he said.

For example, he said, a project is estimated and the customer and project team agree to the top 10 priorities. If a new priority arises, “you reprioritize the 10 so you’re not adding an 11th, and you stay within the budget. The essence of an agile sprint in Scrum methodology is you’re constantly reprioritizing.”

Exigen has dubbed its fixed-price, agile-based application development offering Flex-agility. “We’re taking on the estimation risk,” Adamopoulos explained. “We ask them to sign up for a fixed price and budget. The key deliverables we define allow customers to exit a project early if a mutually realized business value is achieved. They pay us an exit fee, and they’re allowed to save the balance of the budgeted amount. It’s a win/win for everyone.”

A challenge of moving to this methodology is the higher level of collaboration required from the customer, Adamopoulos said. “That disruption in the environment had many companies initially avoid adopting agile; they don’t know if they can sit in a meeting every two weeks looking at software. But once they found they were getting to market faster with a better product, people changed.”

Follow

Get every new post delivered to your Inbox.

Join 68 other followers